Charles Wilson [Thu, 6 Nov 2003 14:21:15 +0000 (14:21 +0000)]
* ltmain.in (find_executable, check_executable) [cygwin*, mingw*]:
binary wrapper used with uninstalled executables breaks when
invoked via execlp/execvp (that is, via $PATH). Handle that case.
(fnqualify): Subsumed into find_executable.
Charles Wilson [Thu, 6 Nov 2003 13:57:25 +0000 (13:57 +0000)]
* m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin*, mingw*]:
when extracting symbols from an import lib (occurs if
--enable-shared --disable-static), the output of
$global_symbol_pipe is not the same as when extracting from a
static library (the default case). Add extra filters to
$export_symbols_cmds to process this sort of output in addition to
'normal' static-lib output.
Charles Wilson [Thu, 6 Nov 2003 13:41:52 +0000 (13:41 +0000)]
* libltdl/ltdl.c (LT_USE_POSIX_DIRENT): Factored out.
(LT_USE_WINDOWS_DIRENT_EMULATION): Move to after include "ltdl.h",
as they are affected by __WINDOWS__ definition.
(LT_READTEXT_MODE): Use textmode to read .la files.
(lt_dlinit): Use LoadLibrary loader as a fallback on cygwin.
Gary V. Vaughan [Thu, 6 Nov 2003 12:31:00 +0000 (12:31 +0000)]
* libltdl/ltdl.h (__WINDOWS__): Define this if _WIN32 or WIN32 are
defined, unless __CYGWIN__ or __CYGWIN32__ are defined.
(LT_SCOPE): Now set without reference to __CYGWIN__ definition,
since __WINDOWS__ now implies !__CYGWIN__ after canonicalisation.
(LT_PARAMS, lt_ptr): Use canonicalised __WINDOWS__ to determine
which values to set these macros to.
* ltmain.in: When relinking, place the -L parameter containing
the installation prefix directory after the intended destination,
so we don't accidentally link against an older installed library.
Peter O'Gorman [Thu, 30 Oct 2003 14:28:00 +0000 (14:28 +0000)]
* m4/libtool.m4 (Darwin): Fix stupidities for darwin tags support.
Makes it work again if AC_LIBTOOL_TAGS is specified in configure.ac.
Bug reported by Joe Orton and Christian Schaffner.
Gary V. Vaughan [Tue, 21 Oct 2003 15:03:57 +0000 (15:03 +0000)]
Start to eliminate the double run of configure in a fresh CVS
checkout by generating ltmain.sh, using that to create libtool,
and then adding the tags to that, all from config.status.
* configure.ac (AC_CONFIG_FILES): Make config/ltmain.sh, and copy
it to libltdl.
* Makefile.am ($(srcdir)/config/ltmain.sh): This file is now
created by config.status. Adjust this rule.
(libtoolize): Set CONFIG_COMMANDS to empty to prevent regenerating
the libtool script as a side effect of running this rule.
* libtool.m4: Bump serial number. Fix comment typos.
(_LT_CONFIG_LIBTOOL_INIT, _LT_CONFIG_LIBTOOL,
_LT_CONFIG_SAVE_COMMANDS, _LT_CONFIG_COMMANDS: New macros. They
don't work for some reason - the variable value quoting in the
init section is all wrong. Not used at the moment.
(AC_LIBTOOL_CONFIG): Generate libtool from config.status.
(_LT_AC_TAG_CONFIG): Add the tags in config.status.
(compiler_DEFAULT): Save the compiler value for the DEFAULT tag,
or it gets overwritten by the other macros.
(EOF): Globally replace with _LT_EOF to avoid namespace pollution.
* tests/demo/configure.ac (STATIC): Check $enable_static instead
of running ./libtool which doesn't exist yet.
(BINARY_HELLDL): Check $lt_cv_sys_global_symbol_pipe with case
instead of grepping ./libtool which doesn't exist yet.
* tests/pdemo/configure.ac (STATIC, BINARY_HELLDL): Ditto.
* doc/libtool.texi (AC_PROG_LIBTOOL): Add some notes about trying
to get config details from `libtool --config'.
* NEWS: Updated.
Gary V. Vaughan [Mon, 20 Oct 2003 13:45:51 +0000 (13:45 +0000)]
* bootstrap (reconfdirs): Overridable top dirs for bootstrap, for
those times when you don't want to wait for all of the test
directories to be rebootstrapped!
Kevin P. Fleming [Mon, 20 Oct 2003 13:36:10 +0000 (13:36 +0000)]
* ltmain.in: include --tag options, if specified, in the
relink_command in uninstalled .la files. Also, preserve --silent,
--debug options when libtool re-execs itself.
* NEWS: Updated.
Bob Friesenhahn [Fri, 17 Oct 2003 03:52:01 +0000 (03:52 +0000)]
* m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): For MinGW, reverted DLL
check method back to a working objdump-based test. This is not as
concrete a test as using the 'file' command, but it does not
require that the 'file' command be available.
Bob Friesenhahn [Wed, 15 Oct 2003 16:02:04 +0000 (16:02 +0000)]
* doc/libtool.texi (AC_LIBTOOL_TAGS): Incorporate documentation
for AC_LIBTOOL_TAGS macro to specifify libtool tags. The now
defunct --with-tags option was never documented.
* m4/libtool.m4: Restrict the list of tags that can be created
with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
--with-tags.
Gary V. Vaughan [Wed, 15 Oct 2003 11:01:12 +0000 (11:01 +0000)]
* demo/Makefile.am (libhell0_a_SOURCES): Do not name sources
already built with libtool...
(libhell0_a_LIBADD): ...instead name the objects directly. This
prevents a long standing warning from automake 1.7+.
* pdemo/Makefile.am (libhell0_a_SOURCES, libhell0_a_LIBADD):
Ditto.
Gary V. Vaughan [Wed, 15 Oct 2003 09:27:54 +0000 (09:27 +0000)]
* bootstrap: Make the fake files valid shell scripts with a
comment incase they get left around.
(LIBTOOLIZE): Use a dummy script to prevent the installed
`libtoolize' from trashing the distributed libtool.m4,
config.guess and config.sub.
Gary V. Vaughan [Tue, 14 Oct 2003 21:45:03 +0000 (21:45 +0000)]
Refactor all the test case common code into shell functions in
tests/defs, and move the various demo directories out of
$top_srcdir, and into tests too. The refactoring showed up a
number of inconsistencies and latent bugs, as well as fixing (I
think!!) the long-standing annoyance with some of the tests giving
spurious failures intermittently. While I was here, emacs kindly
removed a lot of bogus whitespace and added copyright notices for
us:
* cdemo, demo, depdemo, f77demo, mdemo, mdemo2, pdemo, tagdemo:
Moved from here...
* tests/cdemo, tests/demo, tests/depdemo, tests/f77demo,
tests/mdemo, tests/mdemo2, tests/pdemo, tests/tagdemo: ...to
here.
* tests/defs: Factor much common functionality from the test
scripts into shell functions. Added a copyright notice.
* tests/assign.test, tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/demo-conf.test,
tests/demo-deplibs.test, tests/demo-exec.test,
tests/demo-inst.test, tests/demo-make.test,
tests/demo-nofast.test, tests/demo-nopic.test,
tests/demo-pic.test, tests/demo-shared.test,
tests/demo-static.test, tests/demo-unst.test,
tests/depdemo-conf.test, tests/depdemo-exec.test,
tests/depdemo-inst.test, tests/depdemo-make.test,
tests/depdemo-nofast.test, tests/depdemo-shared.test,
tests/depdemo-static.test, tests/depdemo-unst.test,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/link-2.test, tests/link.test,
tests/mdemo-conf.test, tests/mdemo-exec.test,
tests/mdemo-inst.test, tests/mdemo-make.test,
tests/mdemo-shared.test, tests/mdemo-static.test,
tests/mdemo-unst.test, tests/mdemo2-conf.test,
tests/mdemo2-exec.test, tests/mdemo2-make.test, tests/nomode.test,
tests/pdemo-conf.test, tests/pdemo-exec.test,
tests/pdemo-inst.test, tests/pdemo-make.test,
tests/pdemo-unst.test, tests/quote.test, tests/sh.test,
tests/suffix.test, tests/tagdemo-conf.test,
tests/tagdemo-exec.test, tests/tagdemo-make.test,
tests/tagdemo-shared.test, tests/tagdemo-static.test: Refactored
to use new functions in tests/defs. Added a copyright notice.
* tests/hardcode.test, noinst-link.test,
tests/relink.test, tests/relink.test,
tests/mdryrun.test: Ditto. Moved from here...
* tests/demo-hardcode.test, demo-noinst-link.test,
tests/demo-relink.test, tests/depdemo-relink.test,
tests/mdemo-dryrun.test: ...to here respectively.
* Makefile.am: Added a copyright notice.
* tests/sh.test: Check libtoolize.in for non-portabilities too.
* libtoolize.in: Fix non-portabilities found by tests/sh.test.
* ltmain.in: Do not create `.o' objects when `-shared' is
specified in compile mode.
Do not make a static library when `-shared' is specified in link
mode.
* doc/libtool.texi (Compile mode): Document it.
* NEWS: Updated.
* doc/libtool.texi (Compile mode): Be more specific about the
effect of `-static'.
* ltmain.in: Do not create `.lo' objects when `-static' is
specified.
* NEWS: Updated.
Gary V. Vaughan [Tue, 7 Oct 2003 11:12:16 +0000 (11:12 +0000)]
* libtoolize.in: Completely rewritten.
* Makefile.am (AUTOMAKE_OPTIONS): Reduced to 1.7. The 1.8
requirement just made the distribution much smaller due to
m4_includes. 1.7 will bootstrap libtool just fine.
* NEWS: Updated.
* m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for linux*
solving many build problems on ARM, and hopefully preventing any
future ones.
(Debian Bug #191133 and #190569)
Gary V. Vaughan [Thu, 25 Sep 2003 11:22:29 +0000 (11:22 +0000)]
* bootstrap: Rewritten to use autoreconf.
* config.guess, config.sub, mkstamp: Moved from here...
* config/config.guess, config/config.sub, config/mkstamp: ...to
here, respectively.
* libtool.m4, ltdl.m4: Moved from here...
* m4/libtool.m4, m4/ltdl.m4: ...to here, respectively.
* configure.ac: Removed various acinclude.m4 hackery, as these
files are no longer needed with automake 1.8.
* Makefile.am: Removed various acinclude.m4 hackery, as these
files are no longer needed with automake 1.8.
(AUTOMAKE_OPTIONS): Require CVS automake.
(CONF_SUBDIRS, CFLAGS, CPPFLAGS, LDFLAGS, LIBS, FFLAGS, FLIBS):
Automake now makes a Make variable from every AC_SUBST, so these
are NOP.
(aclocal_macros): These files are now in their own m4 subdir.
Changed all clients.
(EXTRA_DIST): mkstamp has moved to the new config subdir. Changed
all clients.
(pkgdata_SCRIPTS): Ditto wrt config.guess and config.sub.
(pkgdata_DATA): Ditto wrt ltmain.sh.
* f77demo/configure.ac, libltdl/configure.ac (AM_CONFIG_HEADER):
Is deprecated in favour of AC_CONFIG_HEADERS. Updated to the
latter.
* Makefile.am, cdemo/Makefile.am, demo/Makefile.am,
depdemo/Makefile.am, f77demo/Makefile.am, mdemo/Makefile.am,
mdemo2/Makefile.am, pdemo/Makefile.am, tagdemo/Makefile.am
(EXTRA_DIST): Remove acinclude.m4.
(ACLOCAL_AMFLAGS): Search new `m4' macro directory.
* configure.ac, cdemo/configure.ac, demo/configure.ac,
depdemo/configure.ac, f77demo/configure.ac, mdemo/configure.ac,
mdemo2/configure.ac, pdemo/configure.ac, tagdemo/configure.ac
(AC_CONFIG_AUX_DIR): Declare that config helper scripts are now
kept in the new config subdir.
* libltdl/configure.ac (AC_CONFIG_AUX_DIR): Removed. Defaults to
`.' anyway.
* libtool.m4: allow STRIP to contain spaces and additional
arguments. (Debian Bug #183055)
* ltmain.in: include newline in "sensible default" for IFS.
(Debian Bug #98492 and #95447)
Peter O'Gorman [Wed, 10 Sep 2003 15:13:36 +0000 (15:13 +0000)]
* mdemo2/configure.ac: Use AC_LIBTOOL_DLOPEN.
* mdemo2/main.c: Use LTDL_SET_PRELOADED_SYMBOLS().
* mdemo2/Makefile.am: Set INCLUDES properly and add -dlopen force
to make sure the symbols file is included in the link line.
Peter O'Gorman [Wed, 10 Sep 2003 08:40:42 +0000 (08:40 +0000)]
* ltmain.in: Accept -framework for darwin and put it in
dependency_libs. For non-installed .la's try to avoid having
./.libs/.libs/libfoo.so on the link line.
Gary V. Vaughan [Wed, 27 Aug 2003 16:24:44 +0000 (16:24 +0000)]
* libtool.m4 (_LT_AC_CHECK_DLFCN): Use the interrim new
AC_CHECK_HEADER with compiler rather than preprocessor.
(AC_LIBTOOL_SETUP): ...which was introduced in autoconf-2.56, so
we AC_PREREQ that version.
* ltdl.m4 (AC_WITH_LTDL, AC_LIB_LTDL, AC_LTDL_FUNC_ARGZ): Ditto.
Jim Pick [Tue, 5 Aug 2003 16:05:01 +0000 (16:05 +0000)]
Much as we have tried not to make it the callers' responsibility
to maintain an lt_dlrealloc function pointer, it is too difficult
to implement realloc as malloc/memcpy/free without knowing the
size of the original block. rpl_realloc has been deprecated since
2002-10-30, but kaffe has real failures with that so it's time to
bite the bullet. Caller gets to maintain lt_dlrealloc:
* NEWS (1.5.1): Updated.
* libltdl/ltdl.c (LT_DLREALLOC): Use lt_dlrealloc so the user can
update the function pointer to match lt_dlmalloc.
(lt_emalloc): Use lt_dlrealloc rather than hardcoding realloc.
* doc/libtool.texi (Libltdl interface): Describe lt_dlrealloc now
that it too has become part of the exported interface to libltdl.
Peter O'Gorman [Fri, 1 Aug 2003 19:08:14 +0000 (19:08 +0000)]
* libtool.m4 (darwin): Use "-undefined dynamic_lookup" if the
user set MACOSX_DEPLOYMENT_TARGET to 10.3 or greater.
* libltdl/ltdl.c (dyld): Save the error from the first lookup
to report in lt_dlerror(). Otherwise the error is always
"Symbol _foo not in /usr/lib/libSystem.dylib".
Thanks to Chris Zubrzycki for reporting this.
Bob Friesenhahn [Tue, 15 Jul 2003 00:05:21 +0000 (00:05 +0000)]
* config.guess, config.sub: Synchronized from ftp.gnu.org since
Robert Millan's patch requires it.
* libtool.m4: Fixed to use the new GNU/FreeBSD triplet.
* ltdl.m4: Fixed to use the new GNU/FreeBSD triplet.
* ltmain.in: Remove GNU/FreeBSD cases, which are no longer needed.
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): For AmigaOS with pdksh,
set the maximum command line length to 8K since otherwise the test
takes over an hour to run.
Alexandre Oliva [Thu, 26 Jun 2003 06:55:19 +0000 (06:55 +0000)]
* libtool.m4: Replace mis-uses of path with pathname.
(AC_PROG_LD_GNU): Don't quote $LD when running it.
(_LT_AC_LANG_CXX_CONFIG): Use -nostdlib also when linking with g++
and non-GNU ld.
Gary V. Vaughan [Wed, 11 Jun 2003 15:09:24 +0000 (15:09 +0000)]
* ChangeLog: Restore missing entries from 2003-04-22.
* libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
mips*-linux* variants.
* libtool.m4 Switch on $CC and add paterns to cases.
* libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
value of shlibpath_overrides_runpath is used in the HARDCODE
test and is set in the DYNAMIC_LINKER test.
* ltmain.in [darwin]: We never need to relink on darwin.
* libtool.m4: Switch on $CC and add patterns to cases.
* tests/defs, tests/demo-conf.test, tests/demo-nofast.test,
tests/demo-nopic.test, tests/demo-pic.test,
tests/demo-shared.test, tests/demo-static.test,
tests/depdemo-conf.test, tests/depdemo-nofast.test,
tests/depdemo-shared.test, tests/depdemo-static.test:
Pass build system type to tests to support environment
where default system type not equal to build system type
(eg. 64-bit HP-UX).
Peter O'Gorman [Tue, 3 Jun 2003 15:36:58 +0000 (15:36 +0000)]
* libtool.m4 (darwin): Remove checks for Apple-specific gcc.
* libltdl/ltdl.c (HAVE_MACH_O_DYLD_H): #define
__private_extern__ for fsf gcc.
* ltmain.in (darwin): Only add new paths to newlib_search_path.
Robert Boehne [Mon, 2 Jun 2003 04:42:34 +0000 (04:42 +0000)]
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match all qnx-nto
as recent config.guess returns a slightly different string.
* ltmain.in: Replace use of "od" with tr.
Peter O'Gorman [Wed, 9 Apr 2003 17:54:06 +0000 (17:54 +0000)]
* libtool.m4: Move the AC_LIBTOOL_SYS_DYNAMIC_LINKER check
to be before AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH, becuase the
value of shlibpath_overrides_runpath is used in the HARDCODE
test and is set in the DYNAMIC_LINKER test.
* ltmain.in(darwin): We never need to relink on darwin.
Peter O'Gorman [Sat, 5 Apr 2003 19:32:58 +0000 (19:32 +0000)]
* libtool.m4: if ZSH_VERSION is set then setopt NO_GLOB_SUBST so
libtool works. Remove zsh echo test code, don't bother checking
for zsh anymore in the darwin archive_expsym_cmds.
Keith Packard [Mon, 31 Mar 2003 17:36:01 +0000 (17:36 +0000)]
* ltmain.in: New flag -version-number to be used for maintaining
compatability with a previously non-Libtool versioning scheme.
* doc/libtool.texi: Document it.