[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
GNU Libtool-2.4.3 released [stable]
Gary V . Vaughan
GNU Libtool-2.4.3 released [stable]
Mon, 27 Oct 2014 21:44:02 +0000
The Libtool Team is pleased to announce the release of libtool 2.4.3.
GNU Libtool hides the complexity of using shared libraries behind a
consistent, portable interface. GNU Libtool ships with GNU libltdl, which
hides the complexity of loading dynamic runtime libraries (modules)
behind a consistent, portable interface.
This is an interrim release with a few known small regressions, as yet
unfixed due to a lack of man-power. But rather than make you wait any
longer to enjoy the new features and cleaner build using the latest
autotools, gnulib, config.guess, config.sub and bootstrap scripts, with
support for several new systems and system revisions, we're releasing
it now in anticipation of your patches for the remaining nits and
Here are the compressed sources:
Here are the GPG detached signatures[*]:
Use a mirror for higher download bandwidth:
[*] Use a .sig file to verify that the corresponding file (without the
.sig suffix) is intact. First, be sure to download both the .sig file
and the corresponding tarball. Then, run a command like this:
gpg --verify libtool-2.4.3.tar.gz.sig
If that command fails because you don't have the required public key,
then run this command to import it:
gpg --keyserver keys.gnupg.net --recv-keys 151308092983D606
and rerun the 'gpg --verify' command.
This release was bootstrapped with the following tools:
* Noteworthy changes in release 2.4.3 (2014-10-27) [stable]
** New features:
- Moved to gnulib release infrastructure.
- M4 is now used for scanning the M4 macros in your configure.ac that
'libtoolize' looks at to determine what files you want, and where you
would like them installed. This means that you can compose your
version number or any other argument that Libtoolize needs to know at
M4 time using git-version-gen from gnulib, for example.
- Invoking 'libtoolize --ltdl' no longer maintains a separate autoconf
macro directory in the libltdl tree, but automatically adjusts the
installed libltdl configuration files to share whatever macro
directory is declared by the parent project. (Note: if you were
already sharing a macro directory with AC_CONFIG_MACRO_DIR(ltdl/m4)
or similar, that still works as does any other directory choice).
- Invoking 'libtoolize --ltdl' no longer maintains a separate auxiliary
scripts directory in the libltdl tree, but automatically adjusts the
installed libltdl configuration files to share whatever auxiliary
scripts directory is declared by the parent project. (Note: if you
were already sharing an auxiliary directory with subproject libltdl
using AC_CONFIG_AUX_DIR(ltdl/config) or similar, that still works as
does any other directory choice).
- The legacy tests have all been migrated to the Autotest harness.
- The Autotest testsuite can be run without the especially time consuming
make check-local TESTSUITEFLAGS='-k "!expensive"'
** Bug fixes:
- Fix a long-standing latent bug in autom4te include path for autotests
with VPATH builds.
- Fix a long-standing latent bug in libtoolize that could delete lines
from libltdl/Makefile.am in recursive mode due to underquoting in a
- Fix a long-standing bug in libtoolize, by outputting the 'putting
auxiliary files in' header with 'libtoolize --ltdl --subproject'.
- Fix a long-standing bug in libtoolize subproject installation, by not
installing a set of autoconf macro files into the parent project if
there is no configure.ac present to use them.
- The libtoolize subproject mode selector is now named '--subproject'
and is equivalent to the implied '--subproject' mode when no other
mode is selected; '--standalone' never worked, and is no longer
- Libtool and libtoolize no longer choke on paths with a comma in them.
- In the case where $SHELL does not have the same enhanced features
(e.g. the ability to parse 'var+=append') as $CONFIG_SHELL, libtool
will now correctly fallback to using only vanilla shell features
instead of failing with a parse at startup.
- Correctly recognize import libraries when Microsoft dumpbin is used
as the name lister and extend the dumpbin wrapper to find symbols
in import libraries using the -headers option of dumpbin. Also fix a
bug in the dumpbin wrapper that could lead to broken symbol listings
in some corner cases.
- Use the improved Microsoft dumpbin support to mend preloading of
import libraries for Microsoft Visual C/C++.
- No longer mangle module-definition (.def) files when feeding them to
the Microsoft Visual C/C++ linker via the -export-symbols argument to
the libtool script, thus matching how .def files are handled when
using GNU tools.
- Recognize more variants (e.g. those starting with a LIBRARY statement)
of module-definitions (.def) files when using them instead of a raw
list of symbols to export.
- Fix a long-standing bug when using libtoolize without automake; we
no longer remove install-sh with --force, since it's not a file
libtoolize will reinstall without --install..
** Important incompatible changes:
- GNU M4 is required to run libtoolize in a directory with a
'configure.ac' (or 'configure.in') that needs tracing to determine
what modes and directories have been specified.
- The use of the idiosyncratically named 'Makefile.inc' in nonrecursive
libltdl builds is deprecated, although it will be supported for one
more year or until the next release, whichever takes longer. Please
upgrade to the more standard naming of 'ltdl.mk' in keeping with other
- libtoolize now behaves consistenty in respect of multiple directory
arguments to ACLOCAL_AMFLAGS and multiple invocations of AC_CONFIG-
_MACRO_DIRS, where the first directory is always selected. Previous
releases took the first ACLOCAL_AMFLAGS argument, but the last
invocation of AC_CONFIG_MACRO_DIRS.
- The libtoolize program now advises use of the new Autoconf
AC_CONFIG_MACRO_DIRS declaration. If you follow that advice, all
your developers will need at least autoconf-2.70 and automake-1.13
to rebootstrap your probject. If you still need to support
bootstrap with older Autotools, then you should add the following
to your configure.ac file:
- Overhead of probing for a non-backslash crippled echo equivalent
during initialization of every script has been removed in favor of
trusting that "printf %s\n" works out of the box on all non-museum
host architectures. Manually setting ECHO appropriately in the
build environment will be necessary on some ancient architectures.
** Changes in supported systems or compilers:
- Support for bitrig (*-*-bitrig*).
- Solaris 7 and earlier requires ECHO=/usr/ucb/echo in the build
environment, to build and use libtool.
- GNU Libtool-2.4.3 released [stable],
Gary V . Vaughan <=