kusano 7d535a
HOWTO-RELEASE: 
kusano 7d535a
kusano 7d535a
Notes on releasing.
kusano 7d535a
kusano 7d535a
0. Make sure that you have current FSF releases of autoconf, automake,
kusano 7d535a
   and libtool packages installed under a common installation prefix
kusano 7d535a
   and that these tools are in your executable search path prior to
kusano 7d535a
   any other installed versions.  Versions delivered with Linux may be
kusano 7d535a
   altered so it is best to install official FSF releases. GNU 'm4'
kusano 7d535a
   1.4.16 is needed in order to avoid bugs in m4. These packages may
kusano 7d535a
   be downloaded from the following ftp locations:
kusano 7d535a
kusano 7d535a
     autoconf - ftp://ftp.gnu.org/pub/gnu/autoconf
kusano 7d535a
     automake - ftp://ftp.gnu.org/pub/gnu/automake
kusano 7d535a
     libtool  - ftp://ftp.gnu.org/pub/gnu/libtool
kusano 7d535a
     m4       - ftp://ftp.gnu.org/pub/gnu/m4
kusano 7d535a
kusano 7d535a
   Release builds should only be done on a system with a functioning
kusano 7d535a
   and correctly set system clock and on a filesystem which accurately
kusano 7d535a
   records file update times.  Use of GNU make is recommended.
kusano 7d535a
kusano 7d535a
1. Commit any unsaved changes. 
kusano 7d535a
kusano 7d535a
2. Create html/vX.X.html.  Take ChangeLog entries and html-ify in there. 
kusano 7d535a
   Easist thing to do is take html/vX.(X-1).html and use it as a template.
kusano 7d535a
   Add that file to the list of EXTRA_DIST files in the html/Makefile.am.
kusano 7d535a
kusano 7d535a
3. Update html/index.html to refer to this new page as the current release.
kusano 7d535a
kusano 7d535a
4. Increment the release version in configure.ac.  Put 'alpha' or
kusano 7d535a
   'beta' after the version, if applicable.  For example:
kusano 7d535a
kusano 7d535a
     4.0.0
kusano 7d535a
      or
kusano 7d535a
     4.0.0beta7
kusano 7d535a
kusano 7d535a
   Version should be updated in two places: in the second argument of the
kusano 7d535a
   AC_INIT macro and in LIBTIFF_xxx_VERSION variables.
kusano 7d535a
kusano 7d535a
5. Update library ELF versioning in configure.ac (LIBTIFF_CURRENT,
kusano 7d535a
   LIBTIFF_REVISION, and LIBTIFF_AGE).  These numbers have nothing to
kusano 7d535a
   do with the libtiff release version numbers.
kusano 7d535a
kusano 7d535a
   Note that as of libtiff 4.X, proper ELF versioning is used so
kusano 7d535a
   please follow the rules listed in configure.ac.  At a bare minimum,
kusano 7d535a
   you should increment LIBTIFF_REVISION for each release so that
kusano 7d535a
   installed library files don't overwrite existing files.  If APIs
kusano 7d535a
   have been added, removed, or interface structures have changed,
kusano 7d535a
   then more care is required.
kusano 7d535a
kusano 7d535a
6. Add an entry to Changelog similar to:
kusano 7d535a
kusano 7d535a
     * libtiff 4.0.0 released.
kusano 7d535a
kusano 7d535a
7. In the source tree do
kusano 7d535a
kusano 7d535a
     ./autogen.sh
kusano 7d535a
kusano 7d535a
   This step may be skipped if you have already been using a
kusano 7d535a
   maintainer build with current autoconf, automake, and libtool
kusano 7d535a
   packages.  It is only needed when updating tool versions.
kusano 7d535a
kusano 7d535a
8. It is recommended (but not required) to build outside of the source
kusano 7d535a
   tree so that the source tree is kept in a pristine state.  This
kusano 7d535a
   also allows sharing the source directory on several networked
kusano 7d535a
   systems.  For example:
kusano 7d535a
kusano 7d535a
     mkdir libtiff-build
kusano 7d535a
     cd libtiff-build
kusano 7d535a
     /path/to/libtiff/configure --enable-maintainer-mode
kusano 7d535a
kusano 7d535a
   otherwise do
kusano 7d535a
kusano 7d535a
     ./configure --enable-maintainer-mode
kusano 7d535a
kusano 7d535a
9. In the build tree do
kusano 7d535a
kusano 7d535a
     make release
kusano 7d535a
kusano 7d535a
   This will update "RELEASE-DATE", "VERSION", and libtiff/tiffvers.h
kusano 7d535a
   in the source tree.
kusano 7d535a
kusano 7d535a
10. In the source tree, verify that the version info in RELEASE-DATE,
kusano 7d535a
   VERSION and libtiff/tiffvers.h is right.
kusano 7d535a
kusano 7d535a
11. In the build tree do
kusano 7d535a
kusano 7d535a
      make
kusano 7d535a
      make distcheck
kusano 7d535a
kusano 7d535a
    If 'make distcheck' fails, then correct any issues until it
kusano 7d535a
    succeeds.
kusano 7d535a
kusano 7d535a
    Two files with names tiff-version.tar.gz and tiff-version.zip will
kusano 7d535a
    be created in the top level build directory.
kusano 7d535a
kusano 7d535a
12. In the source tree do
kusano 7d535a
kusano 7d535a
      'cvs commit'.
kusano 7d535a
kusano 7d535a
13. In the source tree do
kusano 7d535a
kusano 7d535a
      cvs tag Release-v4-0-0
kusano 7d535a
kusano 7d535a
    (or the appropriate name for the release)
kusano 7d535a
kusano 7d535a
14. Copy release packages from the build tree to the
kusano 7d535a
    ftp.remotesensing.org ftp site.
kusano 7d535a
kusano 7d535a
      scp tiff-*.tar.gz tiff-*.zip \
kusano 7d535a
    	 warmerdam@upload.osgeo.org:/osgeo/download/libtiff
kusano 7d535a
kusano 7d535a
15. Announce to list, tiff@lists.maptools.org
kusano 7d535a
kusano 7d535a
16. Update libtiff page on freshmeat with new version announcement.
kusano 7d535a
kusano 7d535a