| 1 | HOWTO-RELEASE: | 
|---|
| 2 |  | 
|---|
| 3 | Notes on releasing. | 
|---|
| 4 |  | 
|---|
| 5 | 0. Make sure that you have current FSF releases of autoconf, automake, | 
|---|
| 6 | and libtool packages installed under a common installation prefix | 
|---|
| 7 | and that these tools are in your executable search path prior to | 
|---|
| 8 | any other installed versions.  Versions delivered with Linux may be | 
|---|
| 9 | altered so it is best to install official FSF releases. GNU 'm4' | 
|---|
| 10 | 1.4.6 or later is needed in order to avoid bugs in m4. These | 
|---|
| 11 | packages may be downloaded from the following ftp locations: | 
|---|
| 12 |  | 
|---|
| 13 | autoconf - ftp://ftp.gnu.org/pub/gnu/autoconf | 
|---|
| 14 | automake - ftp://ftp.gnu.org/pub/gnu/automake | 
|---|
| 15 | libtool  - ftp://ftp.gnu.org/pub/gnu/libtool | 
|---|
| 16 |  | 
|---|
| 17 | Release builds should only be done on a system with a functioning | 
|---|
| 18 | and correctly set system clock and on a filesystem which accurately | 
|---|
| 19 | records file update times.  Use of GNU make is recommended. | 
|---|
| 20 |  | 
|---|
| 21 | 1. Commit any unsaved changes. | 
|---|
| 22 |  | 
|---|
| 23 | 2. Create html/vX.X.html.  Take ChangeLog entries and html-ify in there. | 
|---|
| 24 | Easist thing to do is take html/vX.(X-1).html and use it as a template. | 
|---|
| 25 | Add that file to the list of EXTRA_DIST files in the html/Makefile.am. | 
|---|
| 26 |  | 
|---|
| 27 | 3. Update html/index.html to refer to this new page as the current release. | 
|---|
| 28 |  | 
|---|
| 29 | 4. Increment the release version in configure.ac.  Put 'alpha' or | 
|---|
| 30 | 'beta' after the version, if applicable.  For example: | 
|---|
| 31 |  | 
|---|
| 32 | 3.9.1 | 
|---|
| 33 | or | 
|---|
| 34 | 3.9.1beta | 
|---|
| 35 |  | 
|---|
| 36 | Version should be updated in two places: in the second argument of the | 
|---|
| 37 | AC_INIT macro and in LIBTIFF_xxx_VERSION variables. | 
|---|
| 38 |  | 
|---|
| 39 | 5. Add an entry to Changelog similar to: | 
|---|
| 40 |  | 
|---|
| 41 | * libtiff 3.9.1 released. | 
|---|
| 42 |  | 
|---|
| 43 | 6. In the source tree do | 
|---|
| 44 |  | 
|---|
| 45 | ./autogen.sh | 
|---|
| 46 |  | 
|---|
| 47 | This step may be skipped if you have already been using a | 
|---|
| 48 | maintainer build with current autoconf, automake, and libtool | 
|---|
| 49 | packages.  It is only needed when updating tool versions. | 
|---|
| 50 |  | 
|---|
| 51 | 7. It is recommended (but not required) to build outside of the source | 
|---|
| 52 | tree so that the source tree is kept in a pristine state.  This | 
|---|
| 53 | also allows sharing the source directory on several networked | 
|---|
| 54 | systems.  For example: | 
|---|
| 55 |  | 
|---|
| 56 | mkdir libtiff-build | 
|---|
| 57 | cd libtiff-build | 
|---|
| 58 | /path/to/libtiff/configure --enable-maintainer-mode | 
|---|
| 59 |  | 
|---|
| 60 | otherwise do | 
|---|
| 61 |  | 
|---|
| 62 | ./configure --enable-maintainer-mode | 
|---|
| 63 |  | 
|---|
| 64 | 8. In the build tree do | 
|---|
| 65 |  | 
|---|
| 66 | make release | 
|---|
| 67 |  | 
|---|
| 68 | This will update "RELEASE-DATE", "VERSION", and libtiff/tiffvers.h | 
|---|
| 69 | in the source tree. | 
|---|
| 70 |  | 
|---|
| 71 | 9. In the source tree, verify that the version info in RELEASE-DATE, | 
|---|
| 72 | VERSION and libtiff/tiffvers.h is right. | 
|---|
| 73 |  | 
|---|
| 74 | 10. In the build tree do | 
|---|
| 75 |  | 
|---|
| 76 | make | 
|---|
| 77 | make distcheck | 
|---|
| 78 |  | 
|---|
| 79 | If 'make distcheck' fails, then correct any issues until it | 
|---|
| 80 | succeeds. | 
|---|
| 81 |  | 
|---|
| 82 | Two files with names tiff-version.tar.gz and tiff-version.zip will | 
|---|
| 83 | be created in the top level build directory. | 
|---|
| 84 |  | 
|---|
| 85 | 11. In the source tree do | 
|---|
| 86 |  | 
|---|
| 87 | 'cvs commit'. | 
|---|
| 88 |  | 
|---|
| 89 | 12. In the source tree do | 
|---|
| 90 |  | 
|---|
| 91 | cvs tag Release-v3-9-1 | 
|---|
| 92 |  | 
|---|
| 93 | (or the appropriate name for the release) | 
|---|
| 94 |  | 
|---|
| 95 | 13. Copy release packages from the build tree to the | 
|---|
| 96 | ftp.remotesensing.org ftp site. | 
|---|
| 97 |  | 
|---|
| 98 | scp tiff-*.tar.gz tiff-*.zip \ | 
|---|
| 99 | frankw@upload.osgeo.org:/osgeo/download/libtiff | 
|---|
| 100 |  | 
|---|
| 101 | 14. Announce to list, tiff@lists.maptools.org | 
|---|
| 102 |  | 
|---|
| 103 | 15. Update libtiff page on freshmeat with new version announcement. | 
|---|
| 104 |  | 
|---|
| 105 |  | 
|---|