summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--HOWTO-RELEASE113
-rw-r--r--RELEASE-DATE2
-rw-r--r--VERSION2
-rwxr-xr-xautogen.sh2
-rwxr-xr-xconfigure24
-rw-r--r--configure.ac47
-rw-r--r--html/index.html4
-rw-r--r--html/v4.0.0.html72
-rw-r--r--libtiff/tiffvers.h4
10 files changed, 187 insertions, 89 deletions
diff --git a/ChangeLog b/ChangeLog
index cf899f58..dd4f976f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -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
diff --git a/VERSION b/VERSION
index e3a41561..a0e916f0 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-4.0.0beta3
+4.0.0beta4
diff --git a/autogen.sh b/autogen.sh
index 1849c4a4..56338850 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -1,6 +1,6 @@
#!/bin/sh
set -x
-#libtoolize --force --copy
+libtoolize --force --copy
aclocal -I ./m4
autoheader
automake --foreign --add-missing --copy
diff --git a/configure b/configure
index a40e51bf..64c55fe3 100755
--- a/configure
+++ b/configure
@@ -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