newsGNU Libtool - News


GNU libtool 2.4.3 released [stable]

Item posted by Gary V. Vaughan <gary> on Mon 27 Oct 2014 08:11:41 PM UTC.


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:   (1.7MB)   (928KB)

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 --recv-keys 151308092983D606

and rerun the 'gpg --verify' command.

This release was bootstrapped with the following tools:
  Autoconf 2.69
  Automake 1.14.1
  Gnulib v0.1-234-g8415b67


** New features:

  - Moved to gnulib release infrastructure.

  - M4 is now used for scanning the M4 macros in your 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
    tests with:

        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/ in recursive mode due to underquoting in a
    sed script.
  - 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 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
    '' (or '') that needs tracing to determine
    what modes and directories have been specified.

  - The use of the idiosyncratically named '' 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 '' in keeping with other
    GNU projects.

  - 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 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.


Back to the top

Powered by Savane 3.12.
Corresponding source code