support for Darwin and Rhapsody. Now correctly hardcodes the
library path and adds versioning. Other small fixes.
* ltmain.in: Fixed special cases for libc and libm on Rhapsody and
Darwin. One of them was misplaced. Added version_type case for
Rhapsody and Darwin, named "darwin".
* doc/libtool.texi (Thread Safety in libltdl): New node describing
the application the new MT API.
* libltdl/ltdl.h: Prototypes.
* libltdl/ltdl.c: Use these functions throughout the rest of
the file to provide thread locking.
(lt_dlmutex_register): New function to set callbacks for
multi-threaded calls into libltdl.
(lt_dl_mutex_lock): Type of a locking callback function.
(lt_dl_mutex_lock): Type of an unlocking callback function.
(lt_dl_mutex_seterror): Type of a callback function to save the
last libltdl error message in thread local storage.
(lt_dl_mutex_geterror): Type of a callback function to retrieve
the last saved error message from thread local storage.
* ltconfig.in: Likewise.
* ltcf-c.sh: Likewise.
* ltcf-cxx.sh: Likewise.
* ltcf-gcj.sh: Likewise.
file_magic_test_file): Arghh! I keep forgetting that this stuff
has been moved...
* libtool.m4 (lt_cv_deplibs_check_method, lt_cv_file_magic_cmd,
lt_cv_file_magic_test_file): ...to here. Now fixed (again).
Quote all the macro names when defined.
Some minor formatting changes.
(AM_PROG_LIBTOOL, AM_ENABLE_SHARED, AM_ENABLE_STATIC)
(AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_PROG_LD, AM_PROG_NM):
Don't use indir when useless. Don't add trailing `dnl' either.
the file command use this environment variable to hold the
location of the magic database.
* ltconfig.in (MAGIC_CMD): ditto.
Reported by Marc Espie <Marc.Espie@liafa.jussieu.fr>
* libtool.m4 (pw32): Initial support for pw32, assuming that
libtool's behaviour in this environment is identical to under
cygwin.
* ltconfig.in (pw32): ditto.
* ltmain.in (pw32): ditto.
* NEWS: Updated.
(LT_AC_PROG_GCJ): Use AC_CHECK_TOOL. Set GCJ to `no' if not
found.
* configure.in: Use LT_AC_PROG_GCJ.
Reported by Nick Hudson <nick@nthcliff.demon.co.uk>
* ltcf-cxx.sh (archive_cmds, archive_expsym_cmds,
hardcode_libdir_flag_spec, export_dynamic_flag_spec,
whole_archive_flag_spec, with_gnu_ld): Added two default
configurations for GNU g++ (one for g++ with GNU ld, and one for
g++ with native linker). Updated all platform-specific g++
configurations to only be used if GNU ld isn't the backend linker.
Added support for the KCC (Kuck and Associates, Inc. (KAI) C++
Compiler) to the Linux and OSF/1 configurations.
(ac_cv_prog_cc_wl): Added KAI C++ configuration.
(archive_expsym_cmds): Some configurations were missing the
argument that sets the name of the output library.
* libltdl/ltdl.c, libltdl/libltdl.h: Synchronized with HEAD branch
versions.
* ltcf-cxx.sh (whole_archive_flag_spec): Added missing back quotes
(`) around a command that had to be evaluated. This fixes GNU ld
"--whole-archive" support detection.
(wlarc): Fixed usage of $wlarc, which must be $wl in all cases,
but when really using $LD for linking.
* ltmain.in (deplibs): Add the library paths to end of the
deplibs, instead of the beginning, since deplibs is reordered
later on.
Add ltcf-c.sh to LIBTOOL_DEPS. Run AC_LIBTOOL_CXX and
AC_LIBTOOL_GCJ on demand.
(AC_PROVIDE_IFELSE): Define for non-CVS autoconf compatibility.
(AC_LIBTOOL_CXX): Accept multiple executions. Add ltcf-cxx.sh
to LIBTOOL_DEPS. Reset config.log output.
(AC_LIBTOOL_GCJ): New macro.
* libtoolize.in: Copy ltcf-cxx.sh if AC_PROG_CXX is found.
Copy ltcf-gcj.sh when appropriate.
* doc/libtool.texi (AC_LIBTOOL_CXX): Doesn't have to be
explicitly called.
(AC_LIBTOOL_GCJ): Document.
* tagdemo/configure.in (AC_LIBTOOL_CXX): Don't call.
branch.
(AC_LIBTOOL_CXX): Made sure CXX is exported to ltconfig.
* ltcf-cxx.sh (ac_ext): Changed test source extension to "cc" to
avoid potential ambiguities when using case-insensitive shells.
(archive_expsym_cmds): Make sure soname is set otherwise
-retain-symbol-file feature won't work. The change was made for
the Linux Compaq C++ and GNU G++ configurations.
Reported by Stephan Kulow <coolo@kde.org>.
* ltconfig.in, ltmain.in: Merged in changes from the HEAD branch.
* tests/Makefile.am (clean-local): Fixed typo where a "distclean"
was done in `mdemo' instead of the `tagdemo'.
(AC_PROG_LIBTOOL): Just AC_REQUIRE(_AC_PROG_LIBTOOL), to avoid
effects of multiple runs.
(_AC_PROG_LIBTOOL): Use AC_BEFORE to warn if called before
AC_LIBTOOL_CXX.
branch version.
* ltmain.in: Merged in changes from most recent HEAD branch
version (ILD updates), and fixed parallel build error.
* tagdemo/acinclude.m4, tagdemo/aclocal.m4, tagdemo/configure:
regenerated these files against updated libtool.m4.
line argument in call to `ltconfig'. This fixes a problem that
was occuring when a host type was specified by the user. Also
added missing "$reload_flag" environment.
AC_OBJEXT and AC_EXEEXT and then restore the previous one when
done, instead of doing an AC_BEFORE(...AC_LANG_CPLUSPLUS...). A
warning would always occur anyway because AC_PROG_CXX calls
AC_LANG_CPLUSPLUS.
the autoconf test language (e.g. AC_LANG_CPLUSPLUS). Autoconf's
AC_EXEEXT macro only works for C compilers. AC_EXEEXT gets
confused and thinks that an extension such as the C++ source file
extenstion ".C" is an executable file extension, which screws up
the libtool configuration.
Pass the same autoconf variables used in the main ltconfig run to
the ltconfig configuration tag run (with the exception of a few).
This probably isn't necessary but I think it is a good idea to do
so.
one in AC_PROG_LIBTOOL. This adds some ILD related flags to the
invocation, in addition to providing the $libtool_flags to
ltconfig that was previously in AC_PROG_LIBTOOL (via
AC_LIBTOOL_SETUP). This fixes an ILD related bug with the C++
support, and also fixes a problem where both the static and shared
libraries were being built even if one of them was explicitly
disabled.
"AC_LIBTOOL_CPP" to "AC_LIBTOOL_CXX." "CPP" is typically
associated with preprocessors, whereas CXX is associated with C++
compilers.
Moved LTCC before CC in call to ltconfig to make sure LTCC is not
set to the compiler pointed to by CC after CC has been reset to
another compiler.
Call ltconfig with ${CONFIG_SHELL-/bin/sh} just like we do in
AC_PROG_LIBTOOL.
Save value of $CC and $CFLAGS before resetting them for use with
configuration tags.