* Only add `-preRELEASE' to the version if STABLE != 1.

* Documented release procedures.
This commit is contained in:
Eelco Dolstra 2004-04-26 09:52:06 +00:00
parent d4779abc04
commit bcce9c1ff5
2 changed files with 40 additions and 4 deletions

View File

@ -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)

View File

@ -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).