diff options
-rw-r--r-- | configure.ac | 14 | ||||
-rw-r--r-- | doc/dev/release-procedures.txt | 30 |
2 files changed, 40 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac index 90da6e8cc68d..2c1d9055b28f 100644 --- a/configure.ac +++ b/configure.ac @@ -3,11 +3,17 @@ AC_CONFIG_SRCDIR(README) AC_CONFIG_AUX_DIR(config) AM_INIT_AUTOMAKE +# Change to `1' to produce a `stable' release (i.e., the `preREVISION' +# suffix is not added). +STABLE=0 + # Put the revision number in the version. -if REVISION=`test -d $srcdir/.svn && svnversion $srcdir 2> /dev/null`; then - VERSION="${VERSION}pre${REVISION}" -elif REVISION=`cat $srcdir/svn-revision 2> /dev/null`; then - VERSION="${VERSION}pre${REVISION}" +if test "$STABLE" != "1"; then + if REVISION=`test -d $srcdir/.svn && svnversion $srcdir 2> /dev/null`; then + VERSION="${VERSION}pre${REVISION}" + elif REVISION=`cat $srcdir/svn-revision 2> /dev/null`; then + VERSION="${VERSION}pre${REVISION}" + fi fi AC_PREFIX_DEFAULT(/nix) diff --git a/doc/dev/release-procedures.txt b/doc/dev/release-procedures.txt new file mode 100644 index 000000000000..deccb1091006 --- /dev/null +++ b/doc/dev/release-procedures.txt @@ -0,0 +1,30 @@ +To produce a `stable' release from the trunk: + +0. Make sure that the trunk builds in the release supervisor. + +1. Branch the trunk, e.g., `svn cp .../trunk + .../branches/0.5-release'. + +2. Switch to the branch, e.g., `svn switch .../branches/0.5-release'. + +3. In `configure.ac', change `STABLE=0' into `STABLE=1' and commit. + +4. In the release supervisor, add a one-time job to build + `.../branches/0.5-release'. + +5. Make sure that the release succeeds. + +6. Move the branch to a tag, e.g., `svn mv .../branches/0.5-release + .../tags/0.5'. + + Note that the branch should not be used for maintenance; it should + be deleted after the release has been created. A maintenance + branch (e.g., `.../branches/0.5') should be created from the + original revision of the trunk (since maintenance releases should + also be tested first; hence, we cannot have `STABLE=1'). The same + procedure can then be followed to produce maintenance release; just + substitute `.../branches/VERSION' for the trunk. + +7. Switch back to the trunk. + +8. Bump the version number in `configure.ac' (in AC_INIT). |