aboutsummaryrefslogtreecommitdiffstats
path: root/admin
diff options
context:
space:
mode:
authorGlenn Morris2014-05-02 15:45:17 -0400
committerGlenn Morris2014-05-02 15:45:17 -0400
commit283d38edc96eb5e764ccc094d6affaef9e9d2c95 (patch)
treef8ff05d51a8288e7d429598296506b10bf593be0 /admin
parent6f074205d30c6922db52fdf9a63b9e0467fd82c1 (diff)
downloademacs-283d38edc96eb5e764ccc094d6affaef9e9d2c95.tar.gz
emacs-283d38edc96eb5e764ccc094d6affaef9e9d2c95.zip
admin/make-tarball.txt: Misc small updates/edits
Diffstat (limited to 'admin')
-rw-r--r--admin/make-tarball.txt77
1 files changed, 42 insertions, 35 deletions
diff --git a/admin/make-tarball.txt b/admin/make-tarball.txt
index 50183f75561..a2e8a9e7da3 100644
--- a/admin/make-tarball.txt
+++ b/admin/make-tarball.txt
@@ -5,6 +5,11 @@ Instructions to create pretest or release tarballs. -*- coding: utf-8 -*-
5 5
6Steps to take before starting on the first pretest in any release sequence: 6Steps to take before starting on the first pretest in any release sequence:
7 7
80. The release branch (e.g. emacs-24) should already have been made
9 and you should use it for all that follows. Diffs from this
10 branch should be going to the emacs-diffs mailing list (see
11 admin/notes/bzr section on bzr-email plugin).
12
81. Decide on versions of automake and autoconf, and ensure you will 131. Decide on versions of automake and autoconf, and ensure you will
9 have them available for the duration of the release process. 14 have them available for the duration of the release process.
10 15
@@ -14,17 +19,15 @@ Steps to take before starting on the first pretest in any release sequence:
14 when preparing the first pretest for a major Emacs release.) 19 when preparing the first pretest for a major Emacs release.)
15 Commit cus-edit.el if changed. 20 Commit cus-edit.el if changed.
16 21
223. Remove any old pretests from ftp://alpha.gnu.org/gnu/emacs/pretest.
23 You can use `gnupload --delete' (see below for more gnupload details).
17 24
18General steps (for each step, check for possible errors): 25General steps (for each step, check for possible errors):
19 26
201. `bzr update' (for a bound branch), or `bzr pull'. 271. `bzr update' (for a bound branch), or `bzr pull'.
21 bzr status # check for locally modified files 28 bzr status # check for locally modified files
22 29
232. Bootstrap to make 100% sure all elc files are up-to-date, and to 302. Regenerate the etc/AUTHORS file:
24 make sure that the later tagged version will bootstrap, should it be
25 necessary to check it out.
26
273. Regenerate the etc/AUTHORS file:
28 M-: (require 'authors) RET 31 M-: (require 'authors) RET
29 M-x authors RET 32 M-x authors RET
30 33
@@ -39,7 +42,7 @@ General steps (for each step, check for possible errors):
39 authors-ambiguous-files or authors-aliases, and repeat. 42 authors-ambiguous-files or authors-aliases, and repeat.
40 Commit any fixes to ChangeLogs or authors.el. 43 Commit any fixes to ChangeLogs or authors.el.
41 44
424. Set the version number (M-x load-file RET admin/admin.el RET, then 453. Set the version number (M-x load-file RET admin/admin.el RET, then
43 M-x set-version RET). For a release, add released ChangeLog 46 M-x set-version RET). For a release, add released ChangeLog
44 entries (M-x add-release-logs RET). 47 entries (M-x add-release-logs RET).
45 48
@@ -54,31 +57,37 @@ General steps (for each step, check for possible errors):
54 emacs-XX.Y-rc1.tar. If all goes well in the following week, you 57 emacs-XX.Y-rc1.tar. If all goes well in the following week, you
55 can simply rename the file and use it for the actual release. 58 can simply rename the file and use it for the actual release.
56 59
575. autoreconf -i -I m4 --force 604. autoreconf -i -I m4 --force
58 make bootstrap 61 make bootstrap
59 62
60 make -C etc/refcards 63 make -C etc/refcards
61 make -C etc/refcards clean 64 make -C etc/refcards clean
62 65
636. Copy lisp/loaddefs.el to lisp/ldefs-boot.el. 665. Copy lisp/loaddefs.el to lisp/ldefs-boot.el.
64 67
65 Commit etc/AUTHORS, lisp/ldefs-boot.el, and the files changed 68 Commit etc/AUTHORS, lisp/ldefs-boot.el, and the files changed
66 by M-x set-version. 69 by M-x set-version. Use a commit log message that bzrmerge.el
70 will ignore (eg "Bump version...").
67 For a release, also commit the ChangeLog files in all directories. 71 For a release, also commit the ChangeLog files in all directories.
68 72
697. ./make-dist --snapshot --no-compress 73 If someone else made a commit between step 1 and now,
74 you need to repeat from step 4 onwards. (You can commit the files
75 from step 2 and 3 earlier to reduce the chance of this.)
76
776. ./make-dist --snapshot --no-compress
70 78
71 Check the contents of the new tar with 79 Check the contents of the new tar with admin/diff-tar-files
72 admin/diff-tar-files against an older tar file. Some old pretest 80 against the previous release (if this is the first pretest) or the
73 tarballs may be found at <ftp://alpha.gnu.org/gnu/emacs/pretest>; 81 previous pretest. If you did not make the previous pretest
74 old release tarballs are at <ftp://ftp.gnu.org/pub/gnu/emacs/>. 82 yourself, find it at <ftp://alpha.gnu.org/gnu/emacs/pretest>.
83 Releases are of course at <ftp://ftp.gnu.org/pub/gnu/emacs/>.
75 84
76 If this is the first pretest of a major release, just comparing 85 If this is the first pretest of a major release, just comparing
77 with the previous release may overlook many new files. You can try 86 with the previous release may overlook many new files. You can try
78 something like `find . | sort' in a clean bzr tree, and compare the 87 something like `find . | sort' in a clean bzr tree, and compare the
79 results against the new tar contents. 88 results against the new tar contents.
80 89
818. tar -xf emacs-NEW.tar; cd emacs-NEW 907. tar -xf emacs-NEW.tar; cd emacs-NEW
82 ./configure --prefix=/tmp/emacs && make && make install 91 ./configure --prefix=/tmp/emacs && make && make install
83 Use `script' or M-x compile to save the compilation log in 92 Use `script' or M-x compile to save the compilation log in
84 compile-NEW.log and compare it against an old one. The easiest way 93 compile-NEW.log and compare it against an old one. The easiest way
@@ -87,25 +96,21 @@ General steps (for each step, check for possible errors):
87 M-x ediff. Especially check that Info files aren't built, and that 96 M-x ediff. Especially check that Info files aren't built, and that
88 no autotools (autoconf etc) run. 97 no autotools (autoconf etc) run.
89 98
909. cd EMACS_ROOT_DIR && bzr tag TAG 998. cd EMACS_ROOT_DIR && bzr tag TAG
91 TAG is emacs-XX.Y.ZZ for a pretest, emacs-XX.Y for a release. 100 TAG is emacs-XX.Y.ZZ for a pretest, emacs-XX.Y for a release.
92 101
93 Shortly before the release, cut the version branch also, and open 1029. Decide what compression schemes to offer.
94 a Savannah support request asking for commits to the new branch to
95 be sent to the emacs-diffs mailing list (by default, the list
96 normally only gets commits to the trunk).
97
9810. Decide what compression schemes to offer.
99 For a release, at least gz and xz: 103 For a release, at least gz and xz:
100 gzip --best -c emacs-NEW.tar > emacs-NEW.tar.gz 104 gzip --best -c emacs-NEW.tar > emacs-NEW.tar.gz
101 xz -c emacs-NEW.tar > emacs-NEW.tar.xz 105 xz -c emacs-NEW.tar > emacs-NEW.tar.xz
106 For pretests, just xz is probably fine (saves bandwidth).
102 107
103 Now you should upload the files to the GNU ftp server. In order to 108 Now you should upload the files to the GNU ftp server. In order to
104 do that, you must be registered as an Emacs maintainer and have your 109 do that, you must be registered as an Emacs maintainer and have your
105 GPG key acknowledged by the ftp people. For instructions, see 110 GPG key acknowledged by the ftp people. For instructions, see
106 http://www.gnu.org/prep/maintain/html_node/Automated-Upload-Registration.html 111 http://www.gnu.org/prep/maintain/html_node/Automated-Upload-Registration.html
107 The simplest method is to use the gnulib <http://www.gnu.org/s/gnulib/> 112 The simplest method to upload is to use the gnulib
108 script "build-aux/gnupload" to upload each FILE, like this: 113 <http://www.gnu.org/s/gnulib/> script "build-aux/gnupload":
109 114
110 For a pretest: 115 For a pretest:
111 gnupload [--user your@gpg.key.email] --to alpha.gnu.org:emacs/pretest \ 116 gnupload [--user your@gpg.key.email] --to alpha.gnu.org:emacs/pretest \
@@ -136,19 +141,21 @@ General steps (for each step, check for possible errors):
136 For a pretest, place the files in /incoming/alpha instead, so that 141 For a pretest, place the files in /incoming/alpha instead, so that
137 they appear on ftp://alpha.gnu.org/. 142 they appear on ftp://alpha.gnu.org/.
138 143
13911. After five minutes, verify that the files are visible at 14410. After five minutes, verify that the files are visible at
140 ftp://alpha.gnu.org/gnu/emacs/pretest/ for a pretest, or 145 ftp://alpha.gnu.org/gnu/emacs/pretest/ for a pretest, or
141 ftp://ftp.gnu.org/gnu/emacs/ for a release. 146 ftp://ftp.gnu.org/gnu/emacs/ for a release.
142 147
143 Download them and check the signatures. Check they build. 148 Download them and check the signatures. Check they build.
144 149
14512. For a pretest, announce it on emacs-devel and info-gnu-emacs@gnu.org. 15011. Send an announcement to: emacs-devel, and bcc: info-gnu-emacs@gnu.org.
146 Probably should also include the platform-testers list: 151 For a pretest, also bcc: platform-testers@gnu.org.
147 https://lists.gnu.org/mailman/listinfo/platform-testers 152 (The reason for using bcc: is to make it less likely that people
148 For a release, also announce it on info-gnu@gnu.org. (Probably 153 will followup on the wrong list.)
149 bcc the info- addresses to make it less likely that people will 154 See the info-gnu-emacs mailing list archives for the form
150 followup on those lists.) 155 of past announcements. The first pretest announcement, and the
151 156 release announcement, should have more detail.
15213. For a release, update the Emacs homepage in the web repository. 157
153 Also add the new NEWS file as NEWS.xx.y. 15812. For a release, update the Emacs homepage in the web repository.
154 Maybe regenerate the html manuals, update the FAQ, etc, etc. 159 Also update history.html, and add the new NEWS file as NEWS.xx.y.
160 Regenerate the html manuals (use make-manuals from admin.el).
161 If there are new manuals, add appropriate index pages.