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
|
84414
|
13 3. Regenerate Emacs' etc/AUTHORS file (M-x load-file RET
|
52662
|
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
|
87777
|
24 6. Commit configure, README, doc/emacs/emacs.texi,
|
|
25 doc/lispref/elisp.texi, etc/AUTHORS, lisp/version.el,
|
97043
|
26 nt/emacs.rc. Copy lisp/loaddefs.el to
|
74069
|
27 lisp/ldefs-boot.el and commit lisp/ldefs-boot.el. For a release,
|
|
28 also commit the ChangeLog files in all directories.
|
48667
|
29
|
59969
|
30 7. make-dist --snapshot. Check the contents of the new tar with
|
|
31 admin/diff-tar-files against an older tar file. Some old pretest
|
49345
|
32 tarballs are kept under fencepost.gnu.org:~pot/emacs-pretest/, while
|
|
33 old emacs tarballs are at <ftp://ftp.gnu.org/pub/gnu/emacs/>.
|
48667
|
34
|
59969
|
35 8. xdelta delta emacs-OLD.tar.gz emacs-NEW.tar.gz emacs-OLD-NEW.xdelta
|
48667
|
36
|
59969
|
37 9. tar -zxf emacs-NEW.tar.gz; cd emacs-NEW
|
61653
|
38 ./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
|
39 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
|
40 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
|
41 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
|
42 number of the old Emacs to __, do the same with the new log and do
|
61653
|
43 M-x ediff. Especially check that Info files aren't built.
|
48667
|
44
|
59969
|
45 10. cd EMACS_ROOT_DIR; cvs tag TAG
|
49345
|
46 TAG is EMACS_PRETEST_XX_YY_ZZZ for a pretest, EMACS_XX_YY for a
|
|
47 release.
|
48667
|
48
|
98088
|
49 Shortly before the release, cut the branch with the following commands:
|
|
50
|
|
51 cvs rtag EMACS_`NUMBER'_BASE
|
|
52 cvs rtag -b EMACS_`NUMBER'_RC -r EMACS_`NUMBER'_BASE
|
|
53
|
|
54 where `NUMBER' is the major version number of the release. This
|
|
55 makes it easier to see what changes have been applied to the
|
|
56 branch with:
|
48667
|
57
|
98088
|
58 cvs diff -r EMACS_`NUMBER'_BASE -r EMACS_`NUMBER'_RC
|
|
59
|
|
60 or merge changes back to the trunk with "cvs update -j", if
|
|
61 necessary.
|
|
62
|
|
63 After doing this, increase the version number on the trunk as per
|
|
64 step 4.
|
|
65
|
|
66 11. Now you should upload the files to the GNU ftp server. In order to
|
59969
|
67 do that, you must be registered as an Emacs maintainer and have your
|
|
68 GPG key acknowledged by the ftp people. Mail <ftp-upload@gnu.org>
|
|
69 for instructions. Once you are there, for each file FILE to be
|
|
70 released, create a detached GPG binary signature and a clearsigned
|
|
71 directive file like this:
|
|
72 gpg -b FILE
|
|
73 echo directory: emacs/pretest > FILE.directive (for a pretest)
|
|
74 echo directory: emacs > FILE.directive (for a release)
|
|
75 gpg --clearsign FILE.directive
|
73361
52051ccbb0d0
Fix upload instructions: pretest files should not be uploaded in
Romain Francoise <romain@orebokech.com>
diff
changeset
|
76 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
|
77 FILE.sig, FILE.directive.asc.
|
52051ccbb0d0
Fix upload instructions: pretest files should not be uploaded in
Romain Francoise <romain@orebokech.com>
diff
changeset
|
78 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
|
79 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
|
80 they appear on ftp://alpha.gnu.org/.
|
48667
|
81
|
98088
|
82 For a release, upload a bz2 tarfile as well; this can save a lot
|
|
83 of bandwidth.
|
|
84
|
|
85 12. After five minutes, verify that the files are visible at
|
50201
|
86 ftp://alpha.gnu.org/gnu/emacs/pretest/ for a pretest, at
|
|
87 ftp://ftp.gnu.org/gnu/emacs/ for a release.
|
48669
|
88
|
98088
|
89 13. For a pretest, announce it on emacs-devel and BCC the pretesters.
|
|
90 For a release, announce it on info-gnu@gnu.org,
|
|
91 info-gnu-emacs@gnu.org, and emacs-devel.
|
77484
|
92
|
52401
|
93
|
|
94 # arch-tag: c23c771f-ca26-4584-8a04-50ecf0989390
|