diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | HOWTO-RELEASE | 113 | ||||
-rw-r--r-- | RELEASE-DATE | 2 | ||||
-rw-r--r-- | VERSION | 2 | ||||
-rwxr-xr-x | autogen.sh | 2 | ||||
-rwxr-xr-x | configure | 24 | ||||
-rw-r--r-- | configure.ac | 47 | ||||
-rw-r--r-- | html/index.html | 4 | ||||
-rw-r--r-- | html/v4.0.0.html | 72 | ||||
-rw-r--r-- | libtiff/tiffvers.h | 4 |
10 files changed, 187 insertions, 89 deletions
@@ -1,3 +1,9 @@ +2009-08-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> + + * libtiff 4.0.0alpha4 released. + + * HOWTO-RELEASE: Improved release instructions. + 2009-08-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> * man/{TIFFClose.3tiff,raw2tiff.1,tiffcmp.1,tiffsplit.1}: Applied diff --git a/HOWTO-RELEASE b/HOWTO-RELEASE index 23aae5a5..942f5fe1 100644 --- a/HOWTO-RELEASE +++ b/HOWTO-RELEASE @@ -1,54 +1,113 @@ HOWTO-RELEASE: -Notes on releasing. You will need appropriate autoconf, automake and libtool -utilities to release a package. +Notes on releasing. -1. Commit any unsaved changes. +0. Make sure that you have current FSF releases of autoconf, automake, + and libtool packages installed under a common installation prefix + and that these tools are in your executable search path prior to + any other installed versions. Versions delivered with Linux may be + altered so it is best to install official FSF releases. GNU 'm4' + 1.4.6 or later is needed in order to avoid bugs in m4. These + packages may be downloaded from the following ftp locations: + + autoconf - ftp://ftp.gnu.org/pub/gnu/autoconf + automake - ftp://ftp.gnu.org/pub/gnu/automake + libtool - ftp://ftp.gnu.org/pub/gnu/libtool -2. "make clean" + Release builds should only be done on a system with a functioning + and correctly set system clock and on a filesystem which accurately + records file update times. Use of GNU make is recommended. -3. Create html/vX.X.html. Take ChangeLog entries and html-ify in there. +1. Commit any unsaved changes. + +2. Create html/vX.X.html. Take ChangeLog entries and html-ify in there. Easist thing to do is take html/vX.(X-1).html and use it as a template. Add that file to the list of EXTRA_DIST files in the html/Makefile.am. -3.5. Update html/index.html to refer to this new page as the current release. +3. Update html/index.html to refer to this new page as the current release. -4. Increment version in configure.ac. Put 'alpha' or 'beta' after - the version, if applicable. +4. Increment the release version in configure.ac. Put 'alpha' or + 'beta' after the version, if applicable. For example: - eg. - 3.5.7 - or - 3.5.8beta + 4.0.0 + or + 4.0.0beta Version should be updated in two places: in the second argument of the AC_INIT macro and in LIBTIFF_xxx_VERSION variables. -5. ./autogen.sh +5. Update library ELF versioning in configure.ac (LIBTIFF_CURRENT, + LIBTIFF_REVISION, and LIBTIFF_AGE). These numbers have nothing to + do with the libtiff release version numbers. + + Note that as of libtiff 4.X, proper ELF versioning is used so + please follow the rules listed in configure.ac. At a bare minimum, + you should increment LIBTIFF_REVISION for each release so that + installed library files don't overwrite existing files. If APIs + have been added, removed, or interface structures have changed, + then more care is required. + +6. Add an entry to Changelog similar to: + + * libtiff 4.0.0alpha released. + +7. In the source tree do + + ./autogen.sh + + This step may be skipped if you have already been using a + maintainer build with current autoconf, automake, and libtool + packages. It is only needed when updating tool versions. -6. sh configure +8. It is recommended (but not required) to build outside of the source + tree so that the source tree is kept in a pristine state. This + also allows sharing the source directory on several networked + systems. For example: -7. make release -- this will update "RELEASE-DATE" and "VERSION" in the top - level dir, and libtiff/tiffvers.h. + mkdir libtiff-build + cd libtiff-build + /path/to/libtiff/configure --enable-maintainer-mode -8. Please verify that the version info in RELEASE-DATE, VERSION and - libtiff/tiffvers.h is right. + otherwise do -9. make; make distcheck (to test). + ./configure --enable-maintainer-mode -10. make distclean +9. In the build tree do -11. cvs commit + make release -12. cvs tag Release-v3-5-7 (or the appropriate name for the release) + This will update "RELEASE-DATE", "VERSION", and libtiff/tiffvers.h + in the source tree. + +10. In the source tree, verify that the version info in RELEASE-DATE, + VERSION and libtiff/tiffvers.h is right. + +11. In the build tree do + + make + make distcheck + + If 'make distcheck' fails, then correct any issues until it + succeeds. -13. configure; make dist Two files with names tiff-version.tar.gz and tiff-version.zip will - be created in the top level package directory. + be created in the top level build directory. + +12. In the source tree do + + 'cvs commit'. + +13. In the source tree do + + cvs tag Release-v4-0-0 + + (or the appropriate name for the release) + +14. Copy release packages from the build tree to the + ftp.remotesensing.org ftp site. -14. Copy to ftp.remotesensing.org ftp site. - scp tiff-*.tar.gz tiff-*.zip \ - frankw@upload.osgeo.org:/osgeo/download/libtiff + scp tiff-*.tar.gz tiff-*.zip \ + frankw@upload.osgeo.org:/osgeo/download/libtiff 15. Announce to list, tiff@lists.maptools.org diff --git a/RELEASE-DATE b/RELEASE-DATE index 0676215d..c15e48f5 100644 --- a/RELEASE-DATE +++ b/RELEASE-DATE @@ -1 +1 @@ -20080518 +20090827 @@ -1 +1 @@ -4.0.0beta3 +4.0.0beta4 @@ -1,6 +1,6 @@ #!/bin/sh set -x -#libtoolize --force --copy +libtoolize --force --copy aclocal -I ./m4 autoheader automake --foreign --add-missing --copy @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.64 for LibTIFF Software 4.0.0beta3. +# Generated by GNU Autoconf 2.64 for LibTIFF Software 4.0.0beta4. # # Report bugs to <tiff@lists.maptools.org>. # @@ -698,8 +698,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='LibTIFF Software' PACKAGE_TARNAME='tiff' -PACKAGE_VERSION='4.0.0beta3' -PACKAGE_STRING='LibTIFF Software 4.0.0beta3' +PACKAGE_VERSION='4.0.0beta4' +PACKAGE_STRING='LibTIFF Software 4.0.0beta4' PACKAGE_BUGREPORT='tiff@lists.maptools.org' PACKAGE_URL='' @@ -1495,7 +1495,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures LibTIFF Software 4.0.0beta3 to adapt to many kinds of systems. +\`configure' configures LibTIFF Software 4.0.0beta4 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1570,7 +1570,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of LibTIFF Software 4.0.0beta3:";; + short | recursive ) echo "Configuration of LibTIFF Software 4.0.0beta4:";; esac cat <<\_ACEOF @@ -1733,7 +1733,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -LibTIFF Software configure 4.0.0beta3 +LibTIFF Software configure 4.0.0beta4 generated by GNU Autoconf 2.64 Copyright (C) 2009 Free Software Foundation, Inc. @@ -2457,7 +2457,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by LibTIFF Software $as_me 4.0.0beta3, which was +It was created by LibTIFF Software $as_me 4.0.0beta4, which was generated by GNU Autoconf 2.64. Invocation command line was $ $0 $@ @@ -3384,7 +3384,7 @@ fi # Define the identity of the package. PACKAGE='tiff' - VERSION='4.0.0beta3' + VERSION='4.0.0beta4' cat >>confdefs.h <<_ACEOF @@ -3451,12 +3451,12 @@ fi LIBTIFF_MAJOR_VERSION=4 LIBTIFF_MINOR_VERSION=0 LIBTIFF_MICRO_VERSION=0 -LIBTIFF_ALPHA_VERSION=beta3 +LIBTIFF_ALPHA_VERSION=beta4 LIBTIFF_VERSION=$LIBTIFF_MAJOR_VERSION.$LIBTIFF_MINOR_VERSION.$LIBTIFF_MICRO_VERSION$LIBTIFF_ALPHA_VERSION LIBTIFF_RELEASE_DATE=`date +"%Y%m%d"` LIBTIFF_CURRENT=5 -LIBTIFF_REVISION=0 +LIBTIFF_REVISION=1 LIBTIFF_AGE=0 LIBTIFF_VERSION_INFO=$LIBTIFF_CURRENT:$LIBTIFF_REVISION:$LIBTIFF_AGE @@ -18918,7 +18918,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by LibTIFF Software $as_me 4.0.0beta3, which was +This file was extended by LibTIFF Software $as_me 4.0.0beta4, which was generated by GNU Autoconf 2.64. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -18982,7 +18982,7 @@ Report bugs to <tiff@lists.maptools.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -LibTIFF Software config.status 4.0.0beta3 +LibTIFF Software config.status 4.0.0beta4 configured by $0, generated by GNU Autoconf 2.64, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/configure.ac b/configure.ac index e68c466f..6bc3a8d0 100644 --- a/configure.ac +++ b/configure.ac @@ -25,7 +25,7 @@ dnl OF THIS SOFTWARE. dnl Process this file with autoconf to produce a configure script. AC_PREREQ(2.64) -AC_INIT([LibTIFF Software],[4.0.0beta3],[tiff@lists.maptools.org],[tiff]) +AC_INIT([LibTIFF Software],[4.0.0beta4],[tiff@lists.maptools.org],[tiff]) AC_CONFIG_AUX_DIR(config) AC_CONFIG_MACRO_DIR(m4) AC_LANG(C) @@ -42,31 +42,42 @@ dnl Don't fill the ALPHA_VERSION field, if not applicable. LIBTIFF_MAJOR_VERSION=4 LIBTIFF_MINOR_VERSION=0 LIBTIFF_MICRO_VERSION=0 -LIBTIFF_ALPHA_VERSION=beta3 +LIBTIFF_ALPHA_VERSION=beta4 LIBTIFF_VERSION=$LIBTIFF_MAJOR_VERSION.$LIBTIFF_MINOR_VERSION.$LIBTIFF_MICRO_VERSION$LIBTIFF_ALPHA_VERSION dnl This will be used with the 'make release' target LIBTIFF_RELEASE_DATE=`date +"%Y%m%d"` -dnl Following version updating rules are quoted from the libtool manual. +dnl Libtool library revision control info +dnl See the libtool documentation under the heading "Libtool's versioning +dnl system" in order to understand the meaning of these fields dnl -dnl - Update the version information only immediately before a public -dnl release of your software. More frequent updates are unnecessary, -dnl and only guarantee that the current interface number gets larger -dnl faster. +dnl current +dnl The most recent interface number that this library implements. +dnl revision +dnl The implementation number of the current interface. +dnl age +dnl The difference between the newest and oldest interfaces that +dnl this library implements. In other words, the library implements +dnl all the interface numbers in the range from number current - +dnl age to current. dnl -dnl - If the library source code has not changed at all since the last -dnl update, then increment REVISION (`C:R:A' becomes `C:r+1:A'). +dnl Here are a set of rules to help you update your library version +dnl information: dnl -dnl - If any interfaces have been added, removed, or changed since the -dnl last update, increment CURRENT, and set REVISION to 0. -dnl -dnl - If any interfaces have been added since the last public release, -dnl then increment AGE. -dnl -dnl - If any interfaces have been removed since the last public release, -dnl then set AGE to 0. +dnl 1. Start with version information of `0:0:0' for each libtool library. +dnl 2. Update the version information only immediately before a public +dnl release of your software. More frequent updates are unnecessary, and +dnl only guarantee that the current interface number gets larger faster. +dnl 3. If the library source code has changed at all since the last update, +dnl then increment revision (`c:r:a' becomes `c:r+1:a'). +dnl 4. If any interfaces have been added, removed, or changed since the last +dnl update, increment current, and set revision to 0. +dnl 5. If any interfaces have been added since the last public release, then +dnl increment age. +dnl 6. If any interfaces have been removed since the last public release, +dnl then set age to 0. LIBTIFF_CURRENT=5 -LIBTIFF_REVISION=0 +LIBTIFF_REVISION=1 LIBTIFF_AGE=0 LIBTIFF_VERSION_INFO=$LIBTIFF_CURRENT:$LIBTIFF_REVISION:$LIBTIFF_AGE diff --git a/html/index.html b/html/index.html index 90d2b54d..d1bcd255 100644 --- a/html/index.html +++ b/html/index.html @@ -28,7 +28,7 @@ </tr> <tr> <th>Latest Development Release</th> - <td><a href="v4.0.0.html">v4.0.0alpha</a></td> + <td><a href="v4.0.0.html">v4.0.0beta4</a></td> </tr> <tr> <th>Master Download Site</th> @@ -128,7 +128,7 @@ Joris Van Damme and Lee Howard. </ul> <hr> <p> - Last updated $Date: 2009-08-20 22:57:39 $. + Last updated $Date: 2009-08-27 17:40:50 $. </p> </body> </html> diff --git a/html/v4.0.0.html b/html/v4.0.0.html index b75bbe22..7f7c1207 100644 --- a/html/v4.0.0.html +++ b/html/v4.0.0.html @@ -16,7 +16,7 @@ <UL> <HR SIZE=4 WIDTH=65% ALIGN=left> <B>Current Version</B>: v4.0.0<BR> -<B>Previous Version</B>: <A HREF=v3.8.2.html>v3.8.2</a><BR> +<B>Previous Version</B>: <A HREF=v3.9.0.html>v3.9.0</a><BR> <B>Master FTP Site</B>: <A HREF="ftp://ftp.remotesensing.org/pub/libtiff"> ftp.remotesensing.org</a>, directory pub/libtiff</A><BR> <B>Master HTTP Site</B>: <A HREF="http://download.osgeo.org/libtiff"> @@ -142,6 +142,21 @@ Other important backward incompatible changes in the public API: <UL> + <LI>Updated autotools: Autoconf 2.64, Automake 1.11, libtool + 2.2.6. + + <LI>Enabled support for Automake silent build rules + (--enable-silent-rules or 'make V=0') + + <LI>Enabled support for Automake colorized and parallel tests. + + <LI>Added detection of 64-bit integer types since libtiff 4.0 + requires use of 64-bit signed and unsigned integer types. + + <LI>Libtiff now provides a more comprehensive test suite with + over 72 tests, which may be executed on Unix-like systems, or + under Microsoft Windows using MinGW/MSYS or Cygwin. + </UL> <P><HR WIDTH=65% ALIGN=left> @@ -152,29 +167,36 @@ Other important backward incompatible changes in the public API: <UL> - <LI>There is considerable change in some files - like tif_dirread and tif_dirwrite. These changes don't impact backwards - compatibility, they are mostly a clean rewrite that does allow BigTIFF - support as well as somewhat more - robust reading of the unexpected already and will also serve future API - extension but does not impact current API or functionality in a negative way - that you need to know about. - - <LI>Although there is still a functional definition for types like toff_t - (file offset), tstrip_t (strip index number), etc, we recommend against - using these in newer code. We have learned that it is next to impossible to - use these consistently and make real abstraction of the binary format of - these types. Instead, at a certain level we always end up doing casts - anyway, and taking the exact binary format into account, so these types are - nothing but dangerously misleading and obfuscating. You do not need to - update calling code that uses them, as 99.9% of such code will continue to - work. But we recommend against using them in newer calling code, and we - started replacing them with binary clear types like uint16, uint32 and such - in the library. - - <LI>We do use and will continue to use one functional type that is an - exception to the above rule, being tmsize_t. This is a signed memory size - type, i.e. it is int32 on 32bit machines, or int64 on 64bit machines. + <LI>Patches/fixes made to stable libtiff (v3.9.0) are also + applied to 4.0.0. There are too many to list here. See the + distribution ChangeLog for a detailed change list. + + <LI>There is considerable change in some files like + tif_dirread and tif_dirwrite. These changes don't impact + backwards compatibility, they are mostly a clean rewrite that + does allow BigTIFF support as well as somewhat more robust + reading of the unexpected already and will also serve future + API extension but does not impact current API or functionality + in a negative way that you need to know about. + + <LI>Although there is still a functional definition for types + like toff_t (file offset), tstrip_t (strip index number), etc, + we recommend against using these in newer code. We have + learned that it is next to impossible to use these + consistently and make real abstraction of the binary format of + these types. Instead, at a certain level we always end up + doing casts anyway, and taking the exact binary format into + account, so these types are nothing but dangerously misleading + and obfuscating. You do not need to update calling code that + uses them, as 99.9% of such code will continue to work. But we + recommend against using them in newer calling code, and we + started replacing them with binary clear types like uint16, + uint32 and such in the library. + + <LI>We do use and will continue to use one functional type + that is an exception to the above rule, being tmsize_t. This + is a signed memory size type, i.e. it is int32 on 32bit + machines, or int64 on 64bit machines. </UL> @@ -197,7 +219,7 @@ Other important backward incompatible changes in the public API: <UL> </UL> -Last updated $Date: 2008-05-18 16:25:50 $. +Last updated $Date: 2009-08-27 17:40:50 $. </BODY> </HTML> diff --git a/libtiff/tiffvers.h b/libtiff/tiffvers.h index 742e9e71..064d38ef 100644 --- a/libtiff/tiffvers.h +++ b/libtiff/tiffvers.h @@ -1,4 +1,4 @@ -#define TIFFLIB_VERSION_STR "LIBTIFF, Version 4.0.0beta1\nCopyright (c) 1988-1996 Sam Leffler\nCopyright (c) 1991-1996 Silicon Graphics, Inc." +#define TIFFLIB_VERSION_STR "LIBTIFF, Version 4.0.0beta4\nCopyright (c) 1988-1996 Sam Leffler\nCopyright (c) 1991-1996 Silicon Graphics, Inc." /* * This define can be used in code that requires * compilation-related definitions specific to a @@ -6,4 +6,4 @@ * version checking should be done based on the * string returned by TIFFGetVersion. */ -#define TIFFLIB_VERSION 20080518 +#define TIFFLIB_VERSION 20090827 |