Imported Upstream version 2.1.16
[platform/upstream/gpg2.git] / README.maint
1             Notes for the GnuPG maintainer  (GIT only)
2            ============================================
3
4 Here are some notes on how to maintain GnuPG.
5
6 Release Planning:
7 =================
8
9 If you are planning a new release and strings have changed you should
10 send a notification to all translators, so that they have time to
11 update their translations.  scripts/mail-to-translators is useful for
12 this.  It might need some tweaking and it needs to be armored for
13 actual sending.  Running it as is to see what will happen is a good
14 idea, though.
15
16
17
18 Release process:
19 ================
20
21   * Make sure that all new PO files are checked in.
22
23   * Decide whether you want to update the automake standard files
24     (Mainly config.guess and config.sub).
25
26   * [2.0] Copy needed texinfo files from master:
27       make -C doc update-source
28
29   * Run:
30       make -C po update-po
31
32   * Write NEWS entries and set the release date in NEWS.
33
34   * Commit all changes to GIT with a message of "Release n.m.o."
35
36   * Create a signed tag with the name "gnupg-x.y.z".
37
38   * Run "./autogen.sh --force"
39     (--force is required for the git magic in configure.ac and a good
40     idea in any case)
41
42   * Run "configure --enable-maintainer-mode".
43
44   * Run "make distcheck".
45
46   * Build and test the new tarball (best on a different machine).
47
48   * Build and test the W32 version.
49
50   * [2.x only] Using the final test build run a "make -C doc online".
51
52   * Sign the tarball
53
54   * Get the previous tarball and run "mkdiff gnupg".
55     You might need to set a different signature key than mine.  mkdiff
56     has an option for this.
57
58   * Push the git changes and the tag.
59
60   * Copy the files to the FTP server
61
62   * Update the webpages - at least the file swdb.mac needs an update.
63
64   * Add a new headline to NEWS.
65
66   * Bump the version number in configure.ac up, add an empty NEWS
67     entry, commit, and push that.
68
69   * Write an announcement.
70
71   * Update https://savannah.gnu.org/projects/gnupg .
72
73
74
75 Gotchas
76 =======
77
78 - If during "make distcheck" you get an error about a permission
79   problem moving foo.new.po to foo.po; this is caused by a check
80   whether the po files can be re-created.  Now if the first tarball
81   has been created in a different top directory and if there exists a
82   no distributed file with the string "GNU gnupg" (e.g. a log file
83   from running make) you end up with different comments in the po
84   files.  Check out /usr/lib/gettext/project-id for that silliness.
85   As a hack we added this string into configure.ac.