48667
|
1 Instructions to create pretest or release tarballs.
|
54148
|
2 -- originally written by Gerd Moellmann, amended by Francesco Potort�
|
|
3 with the initial help of Eli Zaretskii
|
48667
|
4
|
|
5 For each step, check for possible errors.
|
|
6
|
59969
|
7 1. cvs -q update -Pd
|
48667
|
8
|
|
9 2. Bootstrap to make 100% sure all elc files are up-to-date, and to
|
|
10 make sure that the later tagged version will bootstrap, should it be
|
|
11 necessary to check it out.
|
|
12
|
52662
|
13 3. Regenerate Emacs' AUTHORS file (M-x load-file RET
|
|
14 lisp/emacs-lisp/authors.el RET, then M-x authors RET, then save
|
|
15 the *Authors* buffer). This may require fixing syntactically
|
|
16 incorrect ChangeLog entries beforehand.
|
|
17
|
|
18 4. Set the version number (M-x load-file RET admin/admin.el RET, then
|
48667
|
19 M-x set-version RET). For a release, add released change log
|
|
20 entries (M-x add-release-logs RET).
|
|
21
|
59969
|
22 5. rm configure; make bootstrap
|
48667
|
23
|
74066
|
24 6. Commit configure, README, AUTHORS, lisp/finder-inf.el,
|
74069
|
25 lisp/version.el, man/emacs.texi, lispref/elisp.texi,
|
|
26 mac/Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings,
|
|
27 mac/src/Emacs.r, nt/emacs.rc. Copy lisp/loaddefs.el to
|
|
28 lisp/ldefs-boot.el and commit lisp/ldefs-boot.el. For a release,
|
|
29 also commit the ChangeLog files in all directories.
|
48667
|
30
|
59969
|
31 7. make-dist --snapshot. Check the contents of the new tar with
|
|
32 admin/diff-tar-files against an older tar file. Some old pretest
|
49345
|
33 tarballs are kept under fencepost.gnu.org:~pot/emacs-pretest/, while
|
|
34 old emacs tarballs are at <ftp://ftp.gnu.org/pub/gnu/emacs/>.
|
48667
|
35
|
59969
|
36 8. xdelta delta emacs-OLD.tar.gz emacs-NEW.tar.gz emacs-OLD-NEW.xdelta
|
48667
|
37
|
59969
|
38 9. tar -zxf emacs-NEW.tar.gz; cd emacs-NEW
|
61653
|
39 ./configure && make && make -n install
|
48805
bd5cc892ddde
Cleaned up, added reference to make-announce and to emacs-pretest-bug.
Francesco Potortì <pot@gnu.org>
diff
changeset
|
40 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>
diff
changeset
|
41 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>
diff
changeset
|
42 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>
diff
changeset
|
43 number of the old Emacs to __, do the same with the new log and do
|
61653
|
44 M-x ediff. Especially check that Info files aren't built.
|
48667
|
45
|
59969
|
46 10. cd EMACS_ROOT_DIR; cvs tag TAG
|
49345
|
47 TAG is EMACS_PRETEST_XX_YY_ZZZ for a pretest, EMACS_XX_YY for a
|
|
48 release.
|
48667
|
49
|
59969
|
50 11. admin/make-announcement OLD NEW
|
49345
|
51 This creates an announcement for pretests. OLD is the version used
|
59969
|
52 to make deltas with respect to NEW. Announcements for releases need
|
|
53 to be crafted by hand. Use an older announcement to start with:
|
|
54 look in ssh://fencepost.gnu.org/~pot/emacs-tarballs/.
|
48667
|
55
|
59969
|
56 12. Now you should upload the files to the GNU ftp server. In order to
|
|
57 do that, you must be registered as an Emacs maintainer and have your
|
|
58 GPG key acknowledged by the ftp people. Mail <ftp-upload@gnu.org>
|
|
59 for instructions. Once you are there, for each file FILE to be
|
|
60 released, create a detached GPG binary signature and a clearsigned
|
|
61 directive file like this:
|
|
62 gpg -b FILE
|
|
63 echo directory: emacs/pretest > FILE.directive (for a pretest)
|
|
64 echo directory: emacs > FILE.directive (for a release)
|
|
65 gpg --clearsign FILE.directive
|
73361
52051ccbb0d0
Fix upload instructions: pretest files should not be uploaded in
Romain Francoise <romain@orebokech.com>
diff
changeset
|
66 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>
diff
changeset
|
67 FILE.sig, FILE.directive.asc.
|
52051ccbb0d0
Fix upload instructions: pretest files should not be uploaded in
Romain Francoise <romain@orebokech.com>
diff
changeset
|
68 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>
diff
changeset
|
69 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>
diff
changeset
|
70 they appear on ftp://alpha.gnu.org/.
|
48667
|
71
|
59969
|
72 13. After five minutes, verify that the files are visible at
|
50201
|
73 ftp://alpha.gnu.org/gnu/emacs/pretest/ for a pretest, at
|
|
74 ftp://ftp.gnu.org/gnu/emacs/ for a release.
|
48669
|
75
|
69702
|
76 14. For a pretest, let Richard Stallman <rms@gnu.org> know about the new pretest and
|
50201
|
77 tell him to announce it using the announcement you prepared. Remind
|
|
78 him to set a Reply-to header to <emacs-pretest-bug@gnu.org>.
|
77484
|
79
|
|
80 15. Shortly before the release, cut the branch with the following commands:
|
|
81
|
|
82 cvs rtag EMACS_`NUMBER'_BASE
|
|
83 cvs rtag -b EMACS_`NUMBER'_RC -r EMACS_`NUMBER'_BASE
|
|
84
|
|
85 where `NUMBER' is the major version number of the release. This makes it
|
|
86 easier to see what changes have been applied to the branch with:
|
|
87
|
|
88 cvs diff -r EMACS_`NUMBER'_BASE -r EMACS_`NUMBER'_RC
|
|
89
|
|
90 or merge changes back to the trunk with "cvs update -j", if necessary.
|
|
91
|
77502
|
92 After doing this, increase the version number on the trunk as per step 4.
|
|
93
|
77484
|
94 16. For a release, Richard should prepare the announcement himself,
|
50201
|
95 possibly starting from a previous announcment.
|
52401
|
96
|
|
97 # arch-tag: c23c771f-ca26-4584-8a04-50ecf0989390
|