binary wrapper used with uninstalled executables breaks when
invoked via execlp/execvp (that is, via $PATH). Handle that case.
(fnqualify): Subsumed into find_executable.
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.
(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.
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.
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.
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.
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.
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.
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.
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.
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.
* 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.
* 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.
* 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.
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.
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.
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.
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 (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/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).
* configure.ac: Bumped version to 1.5a.
GNU libtool 1.5 was released.
* configure.ac: Bumped version to 1.5.
* NEWS: updated.
* README-alpha: Updated upload instructions.
* README: Changed typo in version description.
* config.guess, config.sub, texinfo.tex: Synchronized from
ftp.gnu.org.
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.
* tests/defs: Set CONFIG_SITE to /nonexistent, except on DJGPP,
which requires its config.site, to work correctly.
* tests/cdemo-conf.test, tests/cdemo-shared.test,
tests/cdemo-static.test, 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, tests/f77demo-conf.test,
tests/f77demo-shared.test, tests/f77demo-static.test,
tests/mdemo-conf.test, tests/mdemo-shared.test,
tests/mdemo-static.test, tests/pdemo-conf.test,
tests/tagdemo-conf.test, tests/tagdemo-shared.test,
tests/tagdemo-static.test: Don't set CONFIG_SITE, now that
tests/defs sets it.
* tests/cdemo-exec.test, tests/demo-exec.test,
tests/demo-inst.test, tests/depdemo-exec.test,
tests/depdemo-inst.test, tests/f77demo-exec.test,
tests/mdemo-exec.test, tests/mdemo-inst.test,
tests/pdemo-exec.test, tests/pdemo-inst.test,
tests/tagdemo-exec.test: When checking for the existence
of executables, use the executable file extension from $EXEEXT.
* configure.ac: Fix misapplied patch in last commit
* libtool.m4 (darwin): Check compiler is apple gcc, add -single_module
support so that dyloading c++ shared libraries will work.
* libtool.m4 (_LT_AC_TAGCONFIG): Add test -n to the tests so that
it will work outside of libtool.
* doc/PLATFORMS: Add darwin
* f77demo/configure.ac: Add config.h which was misapplied previously.
Changes for darwin building. Warn if linking against libs linked
with -module. Use module_cmds if available and building a module,
move convenience double lib check,
* libltdl/ltdl.c: ltdl support for darwin (first blush)
* libltdl/README: note that darwin is supported
* ltdl.m4: Changes for darwin, and for new shrext
* libtool.m4: Changed the way darwin builds stuff (make check passes)
added module_cmds, module_expsym_cmds and hardcode_automatic and put
them in the libtool script. check for zsh's removal of escapes. Allow
libraries to be stripped on darwin.
* TODO: Remove the todo about zsh's removal of excapes. note that zsh
echo works perfectly well, eval is screwed up. Seems to be fixed in
latest zsh.
* THANKS: added self :)
* f77demo/configure.ac: Use config.h or it doesn't work.
auxilary files in the libltdl directory.
* Makefile.am: Add to the ltmain.sh rule to copy it into the
libltdl subdirectory.
* bootstrap: Explicitly handle ltmain.sh in libltdl, and pass
--copy to automake.
(--version): Mention only the most recent copyright year.
* libtoolize.in (--help): Show mailing-address for bug reports.
(--version): Mention only the most recent copyright year.
Prefix -soname, -set_version and their arguments with ${wl}. Add
-melf* linker scripts to LD, and use them to determine libsuff,
shlibsuff and libmagic.
the value of the shrext (aka shared_ext) variable and delete it
from the library_names_spec and soname_spec definitions. That
way the user can omit the shared library suffix by setting it
to the empty string.
(AC_LIBTOOL_LANG_CXX_CONFIG): Strengthen renaming commands for
the KCC compiler.
* doc/libtool.texi (Link mode): Update the manual.
to use with uninstalled executables on cygwin/mingw.
Make sure that --mode=clean gets shell wrapper and
binary wrapper. When sourcing the shell wrapper,
invoke using a terminal `.' on cygwin/mingw to
avoid the automatic append-.exe behavior.
a patch by Ross Alexander <ross.alexander@uk.neceur.com>.
Credit to Ross! Use +b to hardcode library runtime path.
Add new variable, $hardcode_libdir_flag_spec_ld, that
is equivalent to $hardcode_libdir_flag_spec but is used
when ld is used for linking. This works around having to
set wl=''.
"-shrext" option so that is works properly under Darwin.
Modify the processing of 'gcc -print-search-dirs' under
Darwin to make it behave like GNU gcc does.
(AC_LIBTOOL_CONFIG): Single quote $shrext.
* ltimain.in: Expand shared_ext just before it is used
so that it can be conditional on the value of $module.
* ltmain.in: New link option -shrext.
* libtool.m4 (AC_LIBTOOL_CONFIG): New libtool variable shrext.
(AC_LIBTOOL_SYS_DYNAMIC_LINKER): Replace all hard coded shared
library file name extensions in library_names_spec and
soname_spec with $shrext.
* doc/libtool.texi (Link mode): Document it.
$archive_expsym_cmds to restore support for using
.def files via the -export-symbols switch.
(AC_LIBTOOL_PROG_LD_SHLIBS([TAGNAME]): in both the [CXX]
branch and the default branch, improve $export_symbols_cmds
so that DATA symbols are properly labelled. In the default
branch, duplicate the _CXX_CONFIG correction for
$archive_expsym_cmds.
AC_LIBTOOL_PROG_CC_C_O): Changed method for compilation with
custom flags to be language-independent. Thereby removed
CFLAGS/GCJFLAGS mixup bug. Imitate Autoconf-style logging.
Log entries no longer discarded by compilation failures.
(_LT_AC_LANG_C_CONFIG, _LT_AC_LANG_CXX_CONFIG,
_LT_AC_LANG_GCJ_CONFIG): Tuned settings of
lt_simple_compile_test_code and lt_simple_link_test_code
to avoid warnings that could break some option detections.
(AC_LIBTOOL_PROG_COMPILER_NO_RTTI): Removed
redundant "-c conftest.$ac_ext" in the argument to
AC_LIBTOOL_COMPILER_OPTION.
(AC_LIBTOOL_PROG_LD_SHLIBS): Replaced C-specific conftest
source code with $lt_simple_compile_test_code, to support
the "-lc" test with other languages.
via $compiler_flags in order to pass architecture information to
the linker (e.g. 32 vs 64-bit). This may also be accomplished via
-Wl,-mfoo but this is not reliable with gcc because gcc may use
-mfoo to select a different linker, different libraries, etc, while
-Wl,-mfoo simply passes -mfoo to the linker. If there is a better
solution, please let me know what it is.
does not appear to be necessary given that Automake makes this
assignment by default. The condition is removed since Automake
1.7.1 complains about it.