annotate admin/make-tarball.txt @ 102696:bd9ea8026984

*** empty log message ***
author Alan Mackenzie <acm@muc.de>
date Sun, 22 Mar 2009 15:09:48 +0000
parents 56670ab44a20
children e23e74725563
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
1 Instructions to create pretest or release tarballs.
54148
229b09cd4c04 Correct original attribution
Francesco Potortì <pot@gnu.org>
parents: 52929
diff changeset
2 -- originally written by Gerd Moellmann, amended by Francesco Potort́
229b09cd4c04 Correct original attribution
Francesco Potortì <pot@gnu.org>
parents: 52929
diff changeset
3 with the initial help of Eli Zaretskii
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
4
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
5 For each step, check for possible errors.
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
6
59969
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
7 1. cvs -q update -Pd
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
8
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
9 2. Bootstrap to make 100% sure all elc files are up-to-date, and to
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
10 make sure that the later tagged version will bootstrap, should it be
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
11 necessary to check it out.
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
12
84414
931690a65909 Add etc/ to AUTHORS.
Juri Linkov <juri@jurta.org>
parents: 77502
diff changeset
13 3. Regenerate Emacs' etc/AUTHORS file (M-x load-file RET
52662
d46a70300b43 Mention regenerating Emacs' AUTHORS file.
Lute Kamstra <lute@gnu.org>
parents: 52401
diff changeset
14 lisp/emacs-lisp/authors.el RET, then M-x authors RET, then save
d46a70300b43 Mention regenerating Emacs' AUTHORS file.
Lute Kamstra <lute@gnu.org>
parents: 52401
diff changeset
15 the *Authors* buffer). This may require fixing syntactically
d46a70300b43 Mention regenerating Emacs' AUTHORS file.
Lute Kamstra <lute@gnu.org>
parents: 52401
diff changeset
16 incorrect ChangeLog entries beforehand.
d46a70300b43 Mention regenerating Emacs' AUTHORS file.
Lute Kamstra <lute@gnu.org>
parents: 52401
diff changeset
17
d46a70300b43 Mention regenerating Emacs' AUTHORS file.
Lute Kamstra <lute@gnu.org>
parents: 52401
diff changeset
18 4. Set the version number (M-x load-file RET admin/admin.el RET, then
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
19 M-x set-version RET). For a release, add released change log
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
20 entries (M-x add-release-logs RET).
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
21
101762
1851b1154a27 Mention pretest version numbering.
Glenn Morris <rgm@gnu.org>
parents: 98088
diff changeset
22 For a pretest, start at version .90. After .99, use .990 (so that
1851b1154a27 Mention pretest version numbering.
Glenn Morris <rgm@gnu.org>
parents: 98088
diff changeset
23 it sorts).
1851b1154a27 Mention pretest version numbering.
Glenn Morris <rgm@gnu.org>
parents: 98088
diff changeset
24
102286
56670ab44a20 Add note about configure patch.
Chong Yidong <cyd@stupidchicken.com>
parents: 101787
diff changeset
25 5. rm configure; autoconf
56670ab44a20 Add note about configure patch.
Chong Yidong <cyd@stupidchicken.com>
parents: 101787
diff changeset
26
56670ab44a20 Add note about configure patch.
Chong Yidong <cyd@stupidchicken.com>
parents: 101787
diff changeset
27 Patch configure: See
56670ab44a20 Add note about configure patch.
Chong Yidong <cyd@stupidchicken.com>
parents: 101787
diff changeset
28 http://lists.gnu.org/archive/html/emacs-devel/2009-02/msg00851.html
56670ab44a20 Add note about configure patch.
Chong Yidong <cyd@stupidchicken.com>
parents: 101787
diff changeset
29
56670ab44a20 Add note about configure patch.
Chong Yidong <cyd@stupidchicken.com>
parents: 101787
diff changeset
30 make bootstrap
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
31
87777
b3c42ad1c59b Update for doc/ directory.
Glenn Morris <rgm@gnu.org>
parents: 84414
diff changeset
32 6. Commit configure, README, doc/emacs/emacs.texi,
b3c42ad1c59b Update for doc/ directory.
Glenn Morris <rgm@gnu.org>
parents: 84414
diff changeset
33 doc/lispref/elisp.texi, etc/AUTHORS, lisp/version.el,
97043
9592c50233ab Remove support for Mac Carbon.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 87903
diff changeset
34 nt/emacs.rc. Copy lisp/loaddefs.el to
74069
63bb14878bb5 Add three additional files to commit.
Chong Yidong <cyd@stupidchicken.com>
parents: 74066
diff changeset
35 lisp/ldefs-boot.el and commit lisp/ldefs-boot.el. For a release,
63bb14878bb5 Add three additional files to commit.
Chong Yidong <cyd@stupidchicken.com>
parents: 74066
diff changeset
36 also commit the ChangeLog files in all directories.
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
37
59969
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
38 7. make-dist --snapshot. Check the contents of the new tar with
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
39 admin/diff-tar-files against an older tar file. Some old pretest
49345
79a402242606 Improve some rough ends.
Francesco Potortì <pot@gnu.org>
parents: 48805
diff changeset
40 tarballs are kept under fencepost.gnu.org:~pot/emacs-pretest/, while
79a402242606 Improve some rough ends.
Francesco Potortì <pot@gnu.org>
parents: 48805
diff changeset
41 old emacs tarballs are at <ftp://ftp.gnu.org/pub/gnu/emacs/>.
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
42
101787
fae9e26f5047 Add some stuff on checking first pretest tarball of a major release.
Glenn Morris <rgm@gnu.org>
parents: 101762
diff changeset
43 If this is the first pretest of a major release, just comparing
fae9e26f5047 Add some stuff on checking first pretest tarball of a major release.
Glenn Morris <rgm@gnu.org>
parents: 101762
diff changeset
44 with the previous release may overlook many new files. You can try
fae9e26f5047 Add some stuff on checking first pretest tarball of a major release.
Glenn Morris <rgm@gnu.org>
parents: 101762
diff changeset
45 something like `find -f | grep -v CVS...etc' in a clean CVS tree,
fae9e26f5047 Add some stuff on checking first pretest tarball of a major release.
Glenn Morris <rgm@gnu.org>
parents: 101762
diff changeset
46 and compare the results against the new tar contents.
fae9e26f5047 Add some stuff on checking first pretest tarball of a major release.
Glenn Morris <rgm@gnu.org>
parents: 101762
diff changeset
47
59969
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
48 8. xdelta delta emacs-OLD.tar.gz emacs-NEW.tar.gz emacs-OLD-NEW.xdelta
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
49
59969
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
50 9. tar -zxf emacs-NEW.tar.gz; cd emacs-NEW
61653
4fedc3d06aec Don't commit lisp/loaddefs.el.
Lute Kamstra <lute@gnu.org>
parents: 59969
diff changeset
51 ./configure && make && make -n install
48805
bd5cc892ddde Cleaned up, added reference to make-announce and to emacs-pretest-bug.
Francesco Potortì <pot@gnu.org>
parents: 48670
diff changeset
52 Use `script' or M-x compile to save the compilation log in
bd5cc892ddde Cleaned up, added reference to make-announce and to emacs-pretest-bug.
Francesco Potortì <pot@gnu.org>
parents: 48670
diff changeset
53 compile-NEW.log and compare it against an old one. The easiest way
bd5cc892ddde Cleaned up, added reference to make-announce and to emacs-pretest-bug.
Francesco Potortì <pot@gnu.org>
parents: 48670
diff changeset
54 to do that is to visit the old log in Emacs, change the version
bd5cc892ddde Cleaned up, added reference to make-announce and to emacs-pretest-bug.
Francesco Potortì <pot@gnu.org>
parents: 48670
diff changeset
55 number of the old Emacs to __, do the same with the new log and do
61653
4fedc3d06aec Don't commit lisp/loaddefs.el.
Lute Kamstra <lute@gnu.org>
parents: 59969
diff changeset
56 M-x ediff. Especially check that Info files aren't built.
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
57
59969
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
58 10. cd EMACS_ROOT_DIR; cvs tag TAG
49345
79a402242606 Improve some rough ends.
Francesco Potortì <pot@gnu.org>
parents: 48805
diff changeset
59 TAG is EMACS_PRETEST_XX_YY_ZZZ for a pretest, EMACS_XX_YY for a
79a402242606 Improve some rough ends.
Francesco Potortì <pot@gnu.org>
parents: 48805
diff changeset
60 release.
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
61
98088
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
62 Shortly before the release, cut the branch with the following commands:
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
63
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
64 cvs rtag EMACS_`NUMBER'_BASE
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
65 cvs rtag -b EMACS_`NUMBER'_RC -r EMACS_`NUMBER'_BASE
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
66
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
67 where `NUMBER' is the major version number of the release. This
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
68 makes it easier to see what changes have been applied to the
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
69 branch with:
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
70
98088
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
71 cvs diff -r EMACS_`NUMBER'_BASE -r EMACS_`NUMBER'_RC
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
72
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
73 or merge changes back to the trunk with "cvs update -j", if
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
74 necessary.
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
75
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
76 After doing this, increase the version number on the trunk as per
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
77 step 4.
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
78
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
79 11. Now you should upload the files to the GNU ftp server. In order to
59969
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
80 do that, you must be registered as an Emacs maintainer and have your
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
81 GPG key acknowledged by the ftp people. Mail <ftp-upload@gnu.org>
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
82 for instructions. Once you are there, for each file FILE to be
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
83 released, create a detached GPG binary signature and a clearsigned
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
84 directive file like this:
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
85 gpg -b FILE
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
86 echo directory: emacs/pretest > FILE.directive (for a pretest)
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
87 echo directory: emacs > FILE.directive (for a release)
6af50633a8f1 ftp upload procedure finally described
Francesco Potortì <pot@gnu.org>
parents: 54148
diff changeset
88 gpg --clearsign FILE.directive
73361
52051ccbb0d0 Fix upload instructions: pretest files should not be uploaded in
Romain Francoise <romain@orebokech.com>
parents: 69702
diff changeset
89 Upload by anonymous ftp to ftp://ftp-upload.gnu.org/ the files FILE,
52051ccbb0d0 Fix upload instructions: pretest files should not be uploaded in
Romain Francoise <romain@orebokech.com>
parents: 69702
diff changeset
90 FILE.sig, FILE.directive.asc.
52051ccbb0d0 Fix upload instructions: pretest files should not be uploaded in
Romain Francoise <romain@orebokech.com>
parents: 69702
diff changeset
91 For a release, place the files in the /incoming/ftp directory.
52051ccbb0d0 Fix upload instructions: pretest files should not be uploaded in
Romain Francoise <romain@orebokech.com>
parents: 69702
diff changeset
92 For a pretest, place the files in /incoming/alpha instead, so that
52051ccbb0d0 Fix upload instructions: pretest files should not be uploaded in
Romain Francoise <romain@orebokech.com>
parents: 69702
diff changeset
93 they appear on ftp://alpha.gnu.org/.
48667
7ce5464da6b5 Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff changeset
94
98088
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
95 For a release, upload a bz2 tarfile as well; this can save a lot
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
96 of bandwidth.
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
97
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
98 12. After five minutes, verify that the files are visible at
50201
d0449a23c8d9 Release instructions added.
Francesco Potortì <pot@gnu.org>
parents: 49634
diff changeset
99 ftp://alpha.gnu.org/gnu/emacs/pretest/ for a pretest, at
d0449a23c8d9 Release instructions added.
Francesco Potortì <pot@gnu.org>
parents: 49634
diff changeset
100 ftp://ftp.gnu.org/gnu/emacs/ for a release.
48669
4e9688417aed Check the ftp site.
Francesco Potortì <pot@gnu.org>
parents: 48667
diff changeset
101
98088
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
102 13. For a pretest, announce it on emacs-devel and BCC the pretesters.
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
103 For a release, announce it on info-gnu@gnu.org,
b72d358fea71 Update instructions.
Chong Yidong <cyd@stupidchicken.com>
parents: 97043
diff changeset
104 info-gnu-emacs@gnu.org, and emacs-devel.
77484
d7dd3448e6d3 Add note about cutting the branch.
Nick Roberts <nickrob@snap.net.nz>
parents: 74069
diff changeset
105
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 50201
diff changeset
106
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 50201
diff changeset
107 # arch-tag: c23c771f-ca26-4584-8a04-50ecf0989390