libtool/NEWS

270 lines
13 KiB
Plaintext
Raw Normal View History

1997-11-15 02:04:44 +08:00
NEWS - list of user-visible changes between releases of GNU Libtool
1997-04-02 03:19:30 +08:00
New in 1.3b: 1999-??-??; CVS version 1.3a, Libtool team:
* merged my inter-library dependencies code from the ILD branch: * NEWS: inter-library dependencies are now supported * configure.in: add the depdemo subdirectory * depdemo/*: new demo to demonstrate inter-library dependencies * tests/depdemo*: new tests for depdemo * ltconfig.in: added hardcode_into_libs (whether library paths should be hardcoded into the libraries), it currently defaults to 'no' * ltmain.in: new internal 'relink' mode to relink libraries on platforms with hardcode_into_libs=yes, save command line arguments in libtool_args, accept relative -L directories, ignore -lm on BeOS and Cygwin, always ignore -lc, handle -l, -L and .la arguments later, always make the library installation directory (-rpath) absolute, in relink mode don't delete the not-relinked library and exit immediately after relinking, try to find already-installed libtool libraries that were specified using -l, support hardcoding of library paths into libraries too, export shlibpath before linking libraries, and a lot of other big changes that I don't want to describe here... please read the source. * merged Gary's Win32 code from the ILD branch: * NEWS: Win32 DLLs are now supported * TODO: removed .a library namespace clash for win32. It is now resolved. * ltconfig.in (cygwin, library_names_spec): removed $libname.a. Creating a dll with libtool no longer creates an import library. * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does not exist -- i.e. we need to generate import an import library in a directory which has no libs of its own. * doc/libtool.texi (old_archive_from_expsyms_cmds, extract_expsyms_cmds): documented these new variables. * ltconfig.in (extract_expsyms_cmds): New variable. Commands to extract the exported symbol list from a dll. (old_archive_from_expsyms_cmds): New variable. Commands to build an old archive from the extracted expsyms list. * ltmain.in: run the cmds in extract_expsyms_cmds and old_archive_from_expsyms_cmds as necessary. * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer required. * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even sure whether win32 honours the runpath at all when searching for a dll to load! Anyway, when set to yes this prevents a gratuitous warning. * ltmain.in (deplib): The cygwin environment doesn't actually have -lm, and although the linker fakes having one, specifiying it to libtool will break ILD, so we ignore it when generating dependencies.
1999-03-19 05:57:08 +08:00
* Complete inter-library dependencies support. It's now possible
to link libtool libraries against other libtool libraries.
* Libtool is able to find already-installed libtool libraries.
* merged my inter-library dependencies code from the ILD branch: * NEWS: inter-library dependencies are now supported * configure.in: add the depdemo subdirectory * depdemo/*: new demo to demonstrate inter-library dependencies * tests/depdemo*: new tests for depdemo * ltconfig.in: added hardcode_into_libs (whether library paths should be hardcoded into the libraries), it currently defaults to 'no' * ltmain.in: new internal 'relink' mode to relink libraries on platforms with hardcode_into_libs=yes, save command line arguments in libtool_args, accept relative -L directories, ignore -lm on BeOS and Cygwin, always ignore -lc, handle -l, -L and .la arguments later, always make the library installation directory (-rpath) absolute, in relink mode don't delete the not-relinked library and exit immediately after relinking, try to find already-installed libtool libraries that were specified using -l, support hardcoding of library paths into libraries too, export shlibpath before linking libraries, and a lot of other big changes that I don't want to describe here... please read the source. * merged Gary's Win32 code from the ILD branch: * NEWS: Win32 DLLs are now supported * TODO: removed .a library namespace clash for win32. It is now resolved. * ltconfig.in (cygwin, library_names_spec): removed $libname.a. Creating a dll with libtool no longer creates an import library. * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does not exist -- i.e. we need to generate import an import library in a directory which has no libs of its own. * doc/libtool.texi (old_archive_from_expsyms_cmds, extract_expsyms_cmds): documented these new variables. * ltconfig.in (extract_expsyms_cmds): New variable. Commands to extract the exported symbol list from a dll. (old_archive_from_expsyms_cmds): New variable. Commands to build an old archive from the extracted expsyms list. * ltmain.in: run the cmds in extract_expsyms_cmds and old_archive_from_expsyms_cmds as necessary. * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer required. * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even sure whether win32 honours the runpath at all when searching for a dll to load! Anyway, when set to yes this prevents a gratuitous warning. * ltmain.in (deplib): The cygwin environment doesn't actually have -lm, and although the linker fakes having one, specifiying it to libtool will break ILD, so we ignore it when generating dependencies.
1999-03-19 05:57:08 +08:00
* Support for linking DLLs on Win32
* New demos and tests
* Various bugfixes
New in 1.3: 1999-04-??; CVS version 1.2g, Libtool team:
* AM_PROG_LIBTOOL is smaller and faster
* Shared libraries on AmigaOS up to version 4 are now disabled
since they don't meet libtool's requirements for shared libraries
* -L supports now relative directories
* Libltdl has a new license: LGPL with a special exception
* Libltdl can be used as stand-alone package
* dlopen support for BeOS
* Improved support for AIX, BeOS, Cygwin, DJGPP and HP/UX
* Documentation updates
* New tests
* Bugfixes
* merged my inter-library dependencies code from the ILD branch: * NEWS: inter-library dependencies are now supported * configure.in: add the depdemo subdirectory * depdemo/*: new demo to demonstrate inter-library dependencies * tests/depdemo*: new tests for depdemo * ltconfig.in: added hardcode_into_libs (whether library paths should be hardcoded into the libraries), it currently defaults to 'no' * ltmain.in: new internal 'relink' mode to relink libraries on platforms with hardcode_into_libs=yes, save command line arguments in libtool_args, accept relative -L directories, ignore -lm on BeOS and Cygwin, always ignore -lc, handle -l, -L and .la arguments later, always make the library installation directory (-rpath) absolute, in relink mode don't delete the not-relinked library and exit immediately after relinking, try to find already-installed libtool libraries that were specified using -l, support hardcoding of library paths into libraries too, export shlibpath before linking libraries, and a lot of other big changes that I don't want to describe here... please read the source. * merged Gary's Win32 code from the ILD branch: * NEWS: Win32 DLLs are now supported * TODO: removed .a library namespace clash for win32. It is now resolved. * ltconfig.in (cygwin, library_names_spec): removed $libname.a. Creating a dll with libtool no longer creates an import library. * ltconfig.in (extract_expsyms_cmds): Create $objdir if it does not exist -- i.e. we need to generate import an import library in a directory which has no libs of its own. * doc/libtool.texi (old_archive_from_expsyms_cmds, extract_expsyms_cmds): documented these new variables. * ltconfig.in (extract_expsyms_cmds): New variable. Commands to extract the exported symbol list from a dll. (old_archive_from_expsyms_cmds): New variable. Commands to build an old archive from the extracted expsyms list. * ltmain.in: run the cmds in extract_expsyms_cmds and old_archive_from_expsyms_cmds as necessary. * ltconfig.in (cygwin, old_archive_from_new_cmds): no longer required. * ltconfig.in (cygwin, shlibpath_overrides_runpath): I'm not even sure whether win32 honours the runpath at all when searching for a dll to load! Anyway, when set to yes this prevents a gratuitous warning. * ltmain.in (deplib): The cygwin environment doesn't actually have -lm, and although the linker fakes having one, specifiying it to libtool will break ILD, so we ignore it when generating dependencies.
1999-03-19 05:57:08 +08:00
New in 1.2f: 1999-03-15; CVS version 1.2e, Libtool team:
1999-03-08 02:32:07 +08:00
* libtool will correctly link uninstalled libraries into programs
and prefer uninstalled libraries to installed ones
* Library paths that are in the system default run-time search path
are no longer hardcoded into executables.
1999-03-08 02:32:07 +08:00
* New fast installation mode, which links the final executable
in order to avoid relinking during installation.
Programs in the build-tree are relinked when executed.
* New AC_DISABLE_FAST_INSTALL macro to set the default for
the fast-install mode to disabled
1999-03-08 02:32:07 +08:00
* New -export-symbols-regex flag, to export symbols selectively by
a regular expression
* Support -R for specifying run-time path of programs and library dependencies
* New -avoid-version option to avoid versioning for libraries
* libtool module names no longer need to have a "lib" prefix
(requires automake 1.4).
* New -thread-safe flag, to build thread-safe libraries
1999-03-08 02:32:07 +08:00
* Major improvements in libltdl: API documentation, installable version,
support for module search paths, support for lt_dlopen(0),
can be embedded into packages as a tar file (libltdl.tar.gz),
dynamic buffer allocation and buffer overflow checks,
new macro LTDL_SET_PRELOADED_SYMBOLS() which must be used in the
main program, dynamic memory allocation functions are user-defineable
* New AC_LIBLTDL_CONVENIENCE and AC_LIBLTDL_INSTALLABLE macros, to select
convenience and/or installable versions of libltdl.
* libltdl is now built and installed unless --disable-ltdl-install
1999-03-08 02:32:07 +08:00
* New "-dlopen self" flag for dlopening the executable itself
* New AC_LIBTOOL_DLOPEN macro to check for dlopen support,
required if you use -dlopen or -dlpreopen
* If libtool could not satisfy all dependencies of a module
it will only build a static version of it
* dld_preloaded_symbols was renamed to lt_preloaded_symbols
1999-01-02 04:01:09 +08:00
* Support for BeOS
* Improved support for FreeBSD, AIX, IRIX, OSF, SysV 4.3, HP/UX, DJGPP
1999-03-08 02:32:07 +08:00
BSD/OS 4.x and NetBSD
* In order for libtool to attempt to link a shared library (dll) on win32
platforms, you must pass the -no-undefined flag to libtool in link mode.
* The path to GNU ld now works on cygwin-b18 to cygwin-b20.2 at least.
* Support for IRIX library versioning.
* New demos and tests
1998-12-30 19:36:22 +08:00
* Various bugfixes
1999-03-08 02:32:07 +08:00
New in 1.2d: 1998-12-16; CVS version 1.2c, Libtool team:
* libtool will correctly link already-installed libraries into programs.
* New -module flag, to create loadable modules.
* New libltdl, a small library for portable dlopening of modules.
1999-03-08 02:32:07 +08:00
It is still undocumented, but you can already find some examples in:
* New mdemo directory, with tests of -module and dlopening examples.
1999-03-08 02:32:07 +08:00
Be aware that libltdl is only known to work on a few platforms such as
GNU/Linux and Solaris2. Some mdemo tests are known to FAIL on several
other platforms; please ignore these failures by now (or work to fix
them :-).
* Inter-library dependencies patch finally integrated, but there's
1999-03-08 02:32:07 +08:00
still much porting to do. See PORTING for details (some plans for the
future in mail/deplibs in the CVS tree).
* New option -export-symbols to control symbol exporting when possible.
* Fixed -export-dynamic problem with C++ programs in egcs 1.1.
* New dlpreopen structure.
* libtool now supports `-c -o' and subdirectories in sources and
1999-03-08 02:32:07 +08:00
target object names even in platforms whose compilers do not support
this. In this case, file locking occurs to avoid problems with
parallel builds.
* New `echo' variant that should fix most problems with long command
1999-03-08 02:32:07 +08:00
lines and broken printf programs.
* Support for DG/UX, UnixWare 7.x and FreeBSD 3.0, and improved
1999-03-08 02:32:07 +08:00
support for Microsoft Windows
* Various bugfixes
* We now have anonymous CVS access to GNU libtool. CVSROOT is
1999-03-08 02:32:07 +08:00
:pserver:anoncvs@anoncvs.gnu.org:/gd/gnu/anoncvsroot. The password
is empty. The directory is libtool. Check our home-page at
http://www.gnu.org/software/libtool/libtool.html for details.
* Alexandre Oliva, Thomas Tanner and Gary V. Vaughan have taken over
1999-03-08 02:32:07 +08:00
the maintenance of libtool.
1998-08-20 23:48:13 +08:00
* Arguments to ltconfig have been changed to allow creation of a
1999-03-08 02:32:07 +08:00
libtool C program, totally unusable as of this release.
1998-07-01 16:12:49 +08:00
New in 1.2b - 1998-07-01, Gordon Matzigkeit:
* Libtool needs a new maintainer, since Gordon Matzigkeit has quit.
1999-03-08 02:32:07 +08:00
If you think you can do the job, send mail to bug-libtool@gnu.org.
1998-07-01 16:12:49 +08:00
* Bug fixes.
* Support for libtool convenience archives.
1999-03-08 02:32:07 +08:00
1998-04-20 03:29:28 +08:00
New in 1.2a - 1998-04-19, Gordon Matzigkeit:
1998-04-15 00:29:20 +08:00
* Bug fixes.
1998-04-20 03:29:28 +08:00
* ltconfig accepts an `--output' option to specify the name of the
generated libtool.
1998-04-15 00:29:20 +08:00
* New `--debug' flag to turn on shell script tracing for libtool,
libtoolize, and ltconfig.
1998-04-20 03:29:28 +08:00
* Added `libtool --config' to print out all configuration variables.
1998-04-15 00:29:20 +08:00
* Support for *-*-hpux11*.
1998-04-20 03:29:28 +08:00
1998-03-20 15:58:42 +08:00
New in 1.2 - 1998-03-20, Gordon Matzigkeit:
* Minor bug fixes to provide a stable public release.
* Libtool no longer causes Solaris printf to barf due to silly
2110-byte static buffers.
1998-04-20 03:29:28 +08:00
1998-03-09 13:34:02 +08:00
New in 1.1 - 1998-03-08, Gordon Matzigkeit:
* Bug fixes.
1998-03-06 00:22:50 +08:00
* http://www.profitpress.com/libtool/ is libtool's homepage.
1998-03-09 13:34:02 +08:00
* `AM_PROG_LIBTOOL' supports turning shared or static libraries off
with the `--enable-shared=PKGS' and `--enable-static=PKGS' configure
1998-03-06 00:22:50 +08:00
flags. See (libtool)AM_PROG_LIBTOOL.
1998-03-09 13:34:02 +08:00
* Use the `AM_DISABLE_SHARED' or `AM_DISABLE_STATIC' macros if you
wish to modify the default behaviour of `AM_PROG_LIBTOOL' for your
package.
* New rules for `AM_PROG_LD' to use gcc's `-print-prog-name' flag in
order to find ld, if possible.
* Suppress duplicate compiler output during `compile' mode.
* Deleted `dlname' mode. Dlopen applications should only use the
runtime search method described in (libtool)Finding the dlname.
* Experimental support for dynamically loaded modules, even on
static-only platforms, via new `-dlopen' and `-dlpreopen' link
flags.
1998-03-06 00:22:50 +08:00
* `compile' mode honours the `-static' flag to prevent libtool
from building PIC objects.
1998-03-09 13:34:02 +08:00
* New `execute' mode to support debugging uninstalled libtool
libraries and executables.
* `-allow-undefined' is now the default. You can use `-no-undefined'
to declare that a shared library is completely self-contained.
1998-01-26 03:35:11 +08:00
* Inter-library dependencies are automatically handled when linking
1998-03-09 13:34:02 +08:00
against an uninstalled `.la' file.
* New `-all-static' flag to prevent any dynamic linking. The regular
`-static' flag now just prevents dynamic linking of libtool libraries.
1998-02-06 15:36:38 +08:00
* New `-release' flag to encode release numbers into libtool
libraries. This breaks binary compatibility, but is useful for
libraries whose interfaces change very frequently. See
(libtool)Versioning.
1997-09-15 20:31:09 +08:00
* The `-rpath' flag can be used to hardcode absolute directories when
linking executables using libtool.
1998-03-09 13:34:02 +08:00
* New robust quoting code to handle any metacharacters passed in
1997-08-29 11:09:18 +08:00
arguments to libtool commands.
1997-11-15 02:04:44 +08:00
* Full support for broken collect2 on AIX 3. Shared libraries
can now be built with all working versions of GCC on AIX.
1998-03-09 13:34:02 +08:00
* Shell script speed optimizations for old and buggy /bin/sh systems,
such as HP-UX 9 and SunOS 4.1.4.
1997-11-15 02:04:44 +08:00
* Maybe use `_libs' as a temporary libtool directory instead of `.libs'
in order to cope with MS-DOS filenames.
1998-03-09 13:34:02 +08:00
* Portability fixes for Windows NT.
* Refuse to create libtool libraries that don't begin with `lib'.
This allows us to correctly handle OSes that don't have the `lib'
prefix by default, such as OS/2.
* Support for *-*-amigaos*, *-*-os2*, *-*-sysv4.2uw2*, and *-*-uts4*.
1997-07-13 05:39:00 +08:00
1997-11-15 02:04:44 +08:00
New in 1.0 - 1997-07-08, Gordon Matzigkeit:
1997-04-02 03:21:43 +08:00
* Bug fixes.
1997-06-19 12:30:26 +08:00
* Better configuration test to find the system linker. The old test
was failing because people frequently install GNU ld, but don't
necessarily configure GCC to use it.
1997-04-02 03:21:43 +08:00
* Automake support for Libtool now uses the LTLIBRARIES primary. See
the Automake documentation for more information.
1997-05-25 06:50:52 +08:00
* Added new `--disable-static' flag to disable building static
libraries on platforms that have shared libs.
1997-06-07 05:55:10 +08:00
* New `-allow-undefined' link flag to build shared libs that contain
1997-06-06 02:00:56 +08:00
references to unresolved symbols.
1997-06-12 01:13:23 +08:00
* Removed all support for creating static-only libraries.
1997-04-06 02:48:44 +08:00
* Basic support for dynamically loaded modules: new `-export-dynamic'
1997-04-25 01:51:39 +08:00
linking flag and corresponding `dlname' mode.
* New `--features' flag to display configured libtool attributes.
1997-06-14 05:40:39 +08:00
* Added support for installing libtool objects, both in absolute and
relative directories.
1997-04-02 03:21:43 +08:00
* Support *-*-linux-gnu* as an alias for *-*-linux*.
1997-06-07 05:55:10 +08:00
* Support for *-*-openbsd* and *-*-freebsd3*.
1997-04-02 03:21:43 +08:00
1997-11-15 02:04:44 +08:00
New in 0.9 - 1997-02-03, Gordon Matzigkeit:
1997-04-02 03:19:30 +08:00
* Bug fixes.
* The libtool demo now uses the libm cos(3) function, to demonstrate
inter-library dependencies.
* The PLATFORMS file has been moved to doc/platforms.texi.
1997-11-15 02:04:44 +08:00
New in 0.8 - 1997-01-26, Gordon Matzigkeit:
1997-04-02 03:00:38 +08:00
* Bug fixes, and more documentation.
* Basic support for other language compilers (C++, Fortran, and
preprocessed assembler).
1997-04-02 03:02:08 +08:00
* Libtool is now more persistent when linking with the `-static'
flag fails.
* New test for hardcoding system linkers, to verify that libtool
neither creates incorrect binaries, nor takes unnecessary
precautions while linking against uninstalled shared libraries.
1997-04-02 03:04:40 +08:00
* For clarity, the demo subdirectory no longer uses ansi2knr, and has
been rewritten to avoid ANSI-only constructs.
1997-04-02 03:02:08 +08:00
* Support for *-*-irix5, *-*-irix6*, and *-*-sco3.2v5*.
1997-04-02 03:00:38 +08:00
1997-11-15 02:04:44 +08:00
New in 0.7 - 1996-12-08, Gordon Matzigkeit:
1997-04-02 02:29:23 +08:00
* Total rewrite of libtool, along with a new model for library building.
1997-04-02 02:46:48 +08:00
* Completely rewritten documentation for the new paradigm.
* Sane handling of broken system linkers, such as the ones on AIX
1997-04-02 02:29:23 +08:00
and HP-UX.
* configure mode is now a separate program, `ltconfig'
1997-04-02 02:46:48 +08:00
* The libinfo helper script has been incorporated into the main
libtool program.
1997-04-02 02:29:23 +08:00
* Automatic mode guessing, based on the command line.
1997-04-02 02:57:49 +08:00
* Full support for Automake 1.2 (including ansi2knr features).
* Support to create reloadable objects using link mode.
1997-04-02 02:46:48 +08:00
* Support for new `-static' linking flag.
1997-04-02 02:53:35 +08:00
* Support for stripping libraries during installation.
1997-04-02 02:49:25 +08:00
* Library version information is now passed on the command line, not
through a version file.
1997-04-02 02:29:23 +08:00
1997-04-02 02:46:48 +08:00
Version 0.6 was never released.
1997-04-02 02:29:23 +08:00
New in 0.5:
* Disabled install-progs until next version, when it will be correctly
implemented.
* Clearer library versioning documentation. See (libtool)Versioning.
* Renamed gm_PROG_LIBTOOL to AM_PROG_LIBTOOL
* Libtool now creates pseudo-objects named foo.lo and pseudo-archives named
libfoo.la instead of foo.o and libfoo.a. See the documentation.
* libtool compile doesn't interfere with user CFLAGS if they don't
conflict with the current objtype. From Karl Berry.
* Created new libinfo helper script.
* libversion.in files are obsolete -- libtool uses libinfo to read the
new LIBINFO files.
* Libtool is better at finding its config file and helper scripts.
* Support for *-*-gnu*
New in 0.4:
* Bug fixes and new regression tests
* On unsupported configurations, ``libtool configure'' demotes OBJTYPES to
`standard' instead of aborting
* Added new object type, `t', for tcov(1) support
* Support for *-*-aix3*, *-*-aix4*, *-*-hpux10*, *-*-osf3*, and *-*-solaris2*
New in 0.3:
* Bug fixes and new regression tests
* Added new uninstall-libs mode
* Added a host argument to configure mode
* Fixed debugging/hyper-optimizing flags conflict (from Karl Berry)
* Support for --no-whole-archive when needed by GNU ld (from Ulrich Drepper)
* Implementation of --enable-linktype, --enable-profile, --enable-shared,
--enable-static in gm_PROG_LIBTOOL macro
* New `libtoolize' program (modeled after GNU gettext's `gettextize') to help
conversion to libtool
* New ABOUT-LIBS document for inclusion with libtool-supported packages
New in 0.2:
* Support for *-*-linux
* Better checking for GNU ld
* Reimplemented the config file so that it corresponds more closely to the
variables listed in (libtool)Porting Libtool.
* Reimplemented the shared library version scheme. See (libtool)Versioning.
* Replaced `--config-file' and `--version-file' options with `--confdir'
* Added new install-libs and install-progs modes
New in 0.1:
* First release of libtool
* Support for: *-*-freebsd*, *-*-netbsd*, *-*-sunos4*, *-*-ultrix4*