Mercurial > emacs
annotate admin/make-tarball.txt @ 88240:5b69f29cba30
*** empty log message ***
author | Henrik Enberg <henrik.enberg@telia.com> |
---|---|
date | Fri, 20 Jan 2006 16:54:06 +0000 |
parents | d7ddb3e565de |
children |
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. |
88155 | 2 -- originally written by Gerd Moellmann, amended by Francesco Potort́ |
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 |
88155 | 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 |
88155 | 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
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 |
88155 | 22 5. rm configure; make bootstrap |
48667
7ce5464da6b5
Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff
changeset
|
23 |
88155 | 24 6. Commit configure, README, AUTHORS, lisp/cus-load.el, |
25 lisp/finder-inf.el, lisp/version.el, man/emacs.texi, | |
26 lispref/elisp.texi. Copy lisp/loaddefs.el to lisp/ldefs-boot.el | |
27 and commit lisp/ldefs-boot.el. For a release, also commit the | |
28 ChangeLog files in all directories. | |
48667
7ce5464da6b5
Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff
changeset
|
29 |
88155 | 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
7ce5464da6b5
Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff
changeset
|
34 |
88155 | 35 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
|
36 |
88155 | 37 9. tar -zxf emacs-NEW.tar.gz; cd emacs-NEW |
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>
parents:
48670
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>
parents:
48670
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>
parents:
48670
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>
parents:
48670
diff
changeset
|
42 number of the old Emacs to __, do the same with the new log and do |
88155 | 43 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
|
44 |
88155 | 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
7ce5464da6b5
Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff
changeset
|
48 |
88155 | 49 11. admin/make-announcement OLD NEW |
49345 | 50 This creates an announcement for pretests. OLD is the version used |
88155 | 51 to make deltas with respect to NEW. Announcements for releases need |
52 to be crafted by hand. Use an older announcement to start with: | |
53 look in ssh://fencepost.gnu.org/~pot/emacs-tarballs/. | |
48667
7ce5464da6b5
Instructions to create pretest or release tarballs.
Francesco Potortì <pot@gnu.org>
parents:
diff
changeset
|
54 |
88155 | 55 12. Now you should upload the files to the GNU ftp server. In order to |
56 do that, you must be registered as an Emacs maintainer and have your | |
57 GPG key acknowledged by the ftp people. Mail <ftp-upload@gnu.org> | |
58 for instructions. Once you are there, for each file FILE to be | |
59 released, create a detached GPG binary signature and a clearsigned | |
60 directive file like this: | |
61 gpg -b FILE | |
62 echo directory: emacs/pretest > FILE.directive (for a pretest) | |
63 echo directory: emacs > FILE.directive (for a release) | |
64 gpg --clearsign FILE.directive | |
65 Upload by anonymous ftp to ftp://ftp-upload.gnu.org/incoming/ftp/ | |
66 the files FILE, FILE.sig, FILE.directive.asc | |
48669 | 67 |
88155 | 68 13. After five minutes, verify that the files are visible at |
69 ftp://alpha.gnu.org/gnu/emacs/pretest/ for a pretest, at | |
70 ftp://ftp.gnu.org/gnu/emacs/ for a release. | |
71 | |
72 14. For a pretest, let Richard Stallman know about the new pretest and | |
73 tell him to announce it using the announcement you prepared. Remind | |
74 him to set a Reply-to header to <emacs-pretest-bug@gnu.org>. | |
75 For a release, Richard should prepare the announcement himself, | |
76 possibly starting from a previous announcment. | |
77 | |
78 # arch-tag: c23c771f-ca26-4584-8a04-50ecf0989390 |