Thomas Tanner [Tue, 2 Nov 1999 12:33:05 +0000 (12:33 +0000)]
* NEWS: updated
* THANKS: added Olly Betts and Pavel Roskin
* doc/libtool.texi: fix typo
* fix major bugs which rendered libtool virtually
unusable (i.e. not portable):
* ltconfig.in: don't hardcode system dependent variables in ltconfig!!
but set sane defaults
* Makefile.am: pass variables from AC_LIBTOOL_SETUP to ltconfig
* libtool.m4: ditto, fix typo in AC_PROG_LD_RELOAD_FLAG
* ltconfig.in: use old_deplibs for archives, too
remove second occurence of sysv5
* ltmain.in: fix typo, fix the second occurence of -DPIC, too
* libltdl/Makefile.am: increment version number, fix typo
* libltdl/ltdl.c (lt_dlsym): don't report an error if the
libltdl-style symbol name wasn't found
* ltconfig.in: add support for Unixware (sysv4.2uw2*)
Tor Lillqvist [Wed, 20 Oct 1999 18:30:08 +0000 (18:30 +0000)]
* libtool.m4: these was a missing `*' in the -mno-cygwin
match.
* ltconfig.in (cygwin, ltdll_obj): fixed a quoting error.
(export_symbols_cmds): added missing cosmetic newline.
Tor Lillqvist [Mon, 18 Oct 1999 20:03:57 +0000 (20:03 +0000)]
* libtool.m4: test command used == which should be =.
Support -mno-cygwin flag for building mingw32 dlls.
* ltconfig.in (file_magic_cmd): add missing quotes.
(deplibs_check_method): and here.
Gary V. Vaughan [Thu, 7 Oct 1999 15:40:07 +0000 (15:40 +0000)]
* libtool.m4 (AC_PATH_PROG_VERSION_GREP): removed in favour of the
more general AC_PATH_PROG_GREP_OUTPUT.
(AC_PATH_TOOL_VERSION_GREP): removed in favour of the more general
AC_PATH_TOOL_GREP_OUTPUT.
(AC_PROG_LIBTOOL): Search for a working find program in the
user's PATH using the new macros.
Gary V. Vaughan [Mon, 4 Oct 1999 14:44:15 +0000 (14:44 +0000)]
* ltmain.in (-no-install): This doesn't work on win32 since
the search path for libraries is not encoded in the binary,
and dlls not in $PATH won't be found. Fall back to -no-fast-install
instead.
Gary V. Vaughan [Sun, 3 Oct 1999 20:41:21 +0000 (20:41 +0000)]
* ltconfig.in: Set $FILE to @FILE@ for substitution with
the value found in libtool.m4 at configure time.
* libtool.m4 (AC_PATH_TOOL_GREP_VERSION): New macro, combines
AC_PATH_PROG and AC_CHECK_TOOL with a test which greps the
output of $ac_dir/${ac_prefix}<tool> --version for a
given regex.
(AC_PATH_PROG_GREP_VERSION): New macro used by the above.
(AC_LIBTOOL_SETUP): Use the new macros to search the PATH
[starting at /usr/bin] for a file program which accepts
--version and has "file" in its --version output.
Gary V. Vaughan [Fri, 1 Oct 1999 16:07:39 +0000 (16:07 +0000)]
* libtool.m4: be sure to AC_SUBST values no longer tested in
ltconfig.in.
* ltconfig.in: replaced several of the simple feature tests with
substitutions from config.status.
* Makefile.am (ltconfig): generate ltconfig with config.status.
* configure.in (AC_OUTPUT): generate ltconfig with config.status.
Gary V. Vaughan [Wed, 29 Sep 1999 23:15:35 +0000 (23:15 +0000)]
* ltconfig.in (whole-archive-flag-spec): I had been
wondering why my file system was filling up with empty
files named `71'... seems I forgot to hold in the
shift key when redirecting stderr, 2>&1. Doh!
Thomas Tanner [Tue, 24 Aug 1999 11:05:14 +0000 (11:05 +0000)]
* NEWS: mention fixes
* doc/PLATFORMS: GNU/Hurd update
* depdemo: make use of variables
* ltconfig.in: use CC -E when checking for ELF support
on NetBSD (reported by Todd Vierling <tv@pobox.com>),
replace all occurences of 'linkopts' with 'linker_flags'
* ltmain.in: move ltdll.c and impgen.c to ltconfig.in and
only add them to the libtool script if it's necessary
* ltconfig.in: add support for UnixWare 7.X.X
* doc/PLATFORMS: add new platforms
* doc/libtool.texi: document use of noinst_LTLIBRARIES for
convenience libraries
* ltconfig.in: check for freebsdelf3, not just freebsd3.
Set hardcode_into_libs=yes for FreeBSD 3.0 and 3.1
* ltmain.in: enable workaround for freebsdelf3.0
* ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
Olly Betts [Mon, 2 Aug 1999 22:40:36 +0000 (22:40 +0000)]
* doc/libtool.texi (Compile mode): typo correction.
(Link mode): and another.
(Release numbers): and another.
(Distributing libltdl): and another.
(Test descriptions): and another.
(libtool script contents): and one more.
* libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): On second
thoughts, only probe for -mdll vs -dll on mingw, and revert to
the old `-Wl,--dll -nostartfiles' on cygwin.
* NEWS: Note new user visible changes.
* libtool.m4 (mingw32, AC_LIBTOOL_SETUP): probe for -mdll vs -dll
under cygwin/mingw.
probe whether the cygwin/mingw library supplies a stub DllMain
(but this information isn't yet used).
* ltconfig.in (mingw32, extract_expsyms_cmds): if HOST_CC is set,
use that to build impgen so we can use it when cross-compiling.
use correct entry points for mingw so static C++ constructors get
called for code in the DLL.
* ltmain.in (impgen.c): define O_BINARY to 0 if it is not in the
system headers.
Gary V. Vaughan [Tue, 20 Jul 1999 09:29:31 +0000 (09:29 +0000)]
* configure.in (AC_PROG_RANLIB): No longer required as we now use
AC_CHECK_TOOL in AC_LIBTOOL_SETUP.
* libtool.m4 (AC_PROG_LIBTOOL): Pass the $build variable to
ltconfig.
(AC_PROG_RANLIB): replaced with AC_CHECK_TOOL.
* ltconfig.in (build): new variable to hold the build triplet
which is now checked for unless --no-verify is specified.
(--build): new argument to set the build triplet.
(ranlib): Prefer ${host_alias}-ranlib[.exe] if $build is different
to $host.
* doc/libtool.texi (Invoking ltconfig): Document --build option.
* NEWS: Note --build option.
Thomas Tanner [Sat, 17 Jul 1999 09:00:53 +0000 (09:00 +0000)]
* NEWS, TODO: updated (pic flags)
* libtool.m4 (AC_PROG_LIBTOOL): added --with-pic flag
* ltconfig.in: new pic_mode variable and --prefer[-non]-pic flags,
fixed the strip check (reported by Keith Bostic <bostic@bostic.com>)
* ltmain.in (compile mode): build only PIC/non-PIC code depending
on pic_mode
* libltdl/README: document the supported dlopen interfaces
* doc/libtool.texi (tests): documented new tests
* tests/Makefile.am: added new tests
* tests/demo-pic.test: new test to test --with-pic
* tests/demo-nopic.test: new test to test --without-pic
* tests/build-relink2.test: variant of build-relink.test that
uses depdemo
Thomas Tanner [Wed, 30 Jun 1999 12:50:59 +0000 (12:50 +0000)]
* demo/foo.h: use LT_PARAMS instead of LTDL_PARAMS (this is not libltdl)
* tests/build-relink.test: also check for hardcode_into_libs = yes,
if set, we need to relink at install-time
Thomas Tanner [Tue, 29 Jun 1999 17:37:06 +0000 (17:37 +0000)]
* NEWS: mention -no-fast-install, rename dummy to force
* doc/PLATFORMS: 1.3b passes all tests on GNU/Linux,
FreeBSD (2.2.6 and 3.1)
* doc/libtool.texi: it's possible to link libtool libraries
using -L and -l, better documentation of uninstall and clean mode,
rename dummy to force, documented -no-fast-install,
AC_LIBLTDL_* must be called before AC_PROG_LIBTOOL,
documented hardcode_into_libs and striplib/old_striplib,
* ltconfig.in: search for strip program, added hardcode_into_libs
and striplib/old_striplib variables, set strip commands for GNU strip,
on FreeBSD >= 3.2 set hardcode_into_libs to yes,
fast-install mode doesn't work if hardcode_into_libs = yes
* ltmain.in: reimplemented hardcoding into libraries:
new relink mode, preserve all libtool args, relink libraries
when installing if necessary
added -no-fast-install flag, removed unnecessary `dlname'
initialization, use striplib/old_striplib for stripping libraries,
dlname is always soname or in library_names so we don't need
to handle different file names
Alexandre Oliva [Tue, 29 Jun 1999 08:56:55 +0000 (08:56 +0000)]
* ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to yes
up to release 3.1, and to no from 3.2 on.
Reported by Pavel Roskin <pavel_roskin@geocities.com>
Alexandre Oliva [Fri, 25 Jun 1999 23:10:24 +0000 (23:10 +0000)]
* ltconfig.in (linux-gnu*, deplibs_check_method): Use pass_all on
alpha, x86 and sparc architectures by now, reverting to file_magic
at least on ARM, where it breaks.
Gary V. Vaughan [Wed, 23 Jun 1999 12:50:23 +0000 (12:50 +0000)]
* ltconfig.in (cygwin, export_symbols_cmds): If there is already
an extracted and compiled ltdll.c, then don't delete, reextract
and recompile.
(cygwin, archive_expsym_cmds): Make sure the ltdll source has been
extracted and compiled before referencing the object, since there
are paths through the code which run archive_expsym_cmds without
running export_symbols_cmds.
Thomas Tanner [Fri, 18 Jun 1999 14:49:47 +0000 (14:49 +0000)]
* ltconfig.in (bsdi4, deplibs_check_method): use a less restrictive
regex (reported by Chris P. Ross <cross@eng.us.uu.net>)
* ltmain.in: support `-dlopen self', define lt_preloaded_symbols
if dlself != no
* doc/libtool.texi (Compile and Link mode): document it,
documented the -Wc, -Wl flags, libtool does also support non C
source code
* ltconfig.in: CR/LF fix for broken DJGPP bash
* ltmain.in: CR/LF fix for DJGPP
Gary V. Vaughan [Wed, 16 Jun 1999 14:49:41 +0000 (14:49 +0000)]
* libltdl/ltdl.c (sys_wll_open): libltdl expects this function to
fail if it is unable to physically load the library. Sadly,
LoadLibrary will search the loaded libraries for a match and
return one of them if the path search load fails. Simulate a
failure in this case for compatibility with the other APIs.
Also, LoadLibrary takes the liberty of adding `.dll' to library
names passed without an extension, we now add a trailing `.' to
prevent this from happening.
Gary V. Vaughan [Tue, 15 Jun 1999 19:31:08 +0000 (19:31 +0000)]
* libltdl/ltdl.c (sys_wll_close): Strangely enough, Microsoft have
decided that LoadLibrary returns `0' for success, yet FreeLibrary
returns `0' for failure! The FreeLibrary call used to interpret
`0' as success for both functions.
Thomas Tanner [Fri, 11 Jun 1999 23:46:47 +0000 (23:46 +0000)]
* ltmain.in: store old archives in deplibs and old_deplibs,
retain the order of dependency libraries (even old archives),
determining the absolute directory name didn't work due to a typo,
add the library search paths of all dependency libraries when
linking a library (fixes IRIX 5.2 bug)
Alexandre Oliva [Thu, 10 Jun 1999 14:42:34 +0000 (14:42 +0000)]
* ltconfig.in: Reverted June 6's patch for new GNU ld output, it
is no longer needed, as ld reverted to the original format.
* NEWS: Likewise.
* ltconfig.in: When testing self-dlopening, test whether dlclose
crashes. On FreeBSD 3.1, it does. :-(
* libltdl/configure.in: Likewise.
* NEWS: Note work-around.
Reported by Pavel Roskin <pavel_roskin@geocities.com>
Gary V. Vaughan [Wed, 9 Jun 1999 13:11:13 +0000 (13:11 +0000)]
* ltconfig.in (exeext): autoconf's AC_EXEEXT uses "no" to indicate
no extension, and we must do the same in order to share the cache
value. Also we must ignore conftest.err which HPsUX (at least)
fills with gratuitous warnings.
(objext): for consistency, do the same as above.
Reported by Pavel Roskin <pavel_roskin@geocities.com>
Gary V. Vaughan [Wed, 9 Jun 1999 10:23:58 +0000 (10:23 +0000)]
* ltconfig.in: Reordered tests to be more like configure.in's
recommended order (programs first, then libraries, etc.).
Performed a manual ``constant folding pass'' (eg: s/eval "test
"echo '$''{'lt_cv_dlopen'+set}'`" != set/test
"${lt_cv_dlopen+set}" != set/).
s/test "${foo+set}" = "set"/test "X${foo+set}" = Xset/g
Gary V. Vaughan [Wed, 9 Jun 1999 08:50:03 +0000 (08:50 +0000)]
* ltconfig.in (link_static_flag): Accept, in order of decreasing
preference: the cached value; the default value for the current
host. Also test that the compiler accepts the flag, and cache
that result too.
Gary V. Vaughan [Wed, 9 Jun 1999 08:34:28 +0000 (08:34 +0000)]
* ltconfig.in (pic_flag): Accept, in order of decreasing
preference: the cached value; the default value for the current
host. Also test that the compiler accepts the flag, and cache
that result too.
Gary V. Vaughan [Tue, 8 Jun 1999 15:20:28 +0000 (15:20 +0000)]
* ltconfig.in (LN_S): Accept, in order of decreasing preference:
the cached value; an environment setting; ``ln -s'' if it works;
``ln'' if ``ln -s'' doesn't appear to work.
Gary V. Vaughan [Tue, 8 Jun 1999 14:19:02 +0000 (14:19 +0000)]
* ltconfig.in (RANLIB): Accept, in order of decreasing preference:
the cached value; an environment setting; the first file called
``ranlib'' in the user's path.
Gary V. Vaughan [Tue, 8 Jun 1999 12:52:33 +0000 (12:52 +0000)]
* ltmain.in (exeext): Use $exeext when working out the names of
programs (but not the wrapper script itself due to a stupidity in
win32 which hardwires the .exe extension to the binary loader!).
* ltconfig.in (exeext): Now that the wrapper script tries to move
executables, we need to know whether they have an extension (ala
AC_EXEEXT). Since we can't rely on AC_EXEEXT having been called
in configure.in, we must be able to check for ourselves, though we
can look for a cached result incase AC_EXEEXT was called.
Gary V. Vaughan [Tue, 8 Jun 1999 10:03:41 +0000 (10:03 +0000)]
* ltconfig.in (cygwin, pic_flag): Force separate compilation of
objects for dlls vs. objects for static archives. Using a cpp
macro also allows us to decide whether or not we need to use
dllexport/import declarations.
Alexandre Oliva [Sun, 6 Jun 1999 23:52:36 +0000 (23:52 +0000)]
* ltconfig.in: Support new GNU ld --help output format.
* NEWS: Likewise.
Reported by Gaël Quéri <gael@baoule.dyndns.org> and
H.J. Lu <hjl@varesearch.com>.
Mark Kettenis [Sat, 5 Jun 1999 09:31:39 +0000 (09:31 +0000)]
* ltconfig.in: Update support for the Hurd. Make sure that the
soname includes the major version number and create the right
links. Allow shared objects without the `lib' prefix and without
version information.
Alexandre Oliva [Thu, 27 May 1999 21:29:29 +0000 (21:29 +0000)]
* TODO: Remove the short list of people interested in C++
constructors; it's not meaningful, since there are so many more
people requesting this feature, and we just can't maintain it
accurate.
Alexandre Oliva [Thu, 27 May 1999 10:52:48 +0000 (10:52 +0000)]
* ltmain.in: Only create directory into which to extract
convenience libraries when $convenience is not empty. It would
always be created on systems that did not support
whole_archive_flag_spec.
Alexandre Oliva [Thu, 27 May 1999 10:45:32 +0000 (10:45 +0000)]
* ltconfig.in (export_symbols_cmds): Add $convenience.
(cygwin, export_symbols_cmds): Ditto.
* ltmain.in: Generate export symbol list before expanding
convenience libraries, to avoid passing whole_archive_flag_spec to
$NM.
Reported by Godmar Back <gback@cs.utah.edu>
Alexandre Oliva [Wed, 26 May 1999 00:00:40 +0000 (00:00 +0000)]
* ltmain.in: Revert to stripping .exe on all platforms.
* TODO: Note about this problem. Demo is fixed on win32. -Wl and
-Wc are implemented for release 1.4. Support `empty' convenience
libraries.
Alexandre Oliva [Tue, 25 May 1999 18:33:03 +0000 (18:33 +0000)]
* ltconfig.in (solaris*, ld_shlibs): Do not enable shared
libraries with GNU ld 2.8.*, it's broken. Emit a warning
suggesting an upgrade.
Reported by Brian Ford <ford@vss.fsi.com> and Ronald Pijnacker
<Ronald.Pijnacker@best.ms.philips.com>