* tests/depdemo-dups.test: Removed, as part of the patch
reversion below.
* ltmain.in: Revert my change from 2001-03-31. Although it
was technically correct, it opens a whole can of worms we don't
want to deal with right now.
from libtool link lines -- duplicates are somtimes necessary
to satisfy inter-library dependencies, and never cause link to
fail even if they are spurious.
* tests/depdemo-dups.test: New file. Make sure this bug doesn't
creep back in again!
* tests/Makefile.am (TESTS): Use the new test above.
program. Moved tag decision code after check for recognized
source file extension (fixes "suffix" test failure). Merged
Rhapsody support from main trunk.
(output_obj) Added missing '$' before "echo" command (fixes "sh"
test failure).
* tests/suffix.test: Corrected typo in error message, and improved
the message.
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'.
the list.
* ltcf-cxx.sh: Remove any residual `a.out' files resulting from
the "eval $output_verbose_link_cmds."
* ltconfig.in: Cleaned up nested quotes that were introduced with
the tags patch. This fixes part sh.test failure.
* ltmain.in: Check if "$run" is of zero length before creating a
`.lo' file. This fixes the dryrun.test failure.
Cleaned up nested quotes that were introduced with
the tags patch. This fixes another part sh.test failure.
Remove "$libobj" not "libobj."
Exit with an error if both $object_name and $old_object are set to
"none" in the corresponding `.lo' file. This should never happen.
Changed remaining uses of "mkdir" to "$mkdir."
Added dry run case to `.lo' case in link mode. This fixes the
link-2.test failure.
(object_name, old_object): Prepend the subdirectory the `.lo'
resides in to the object names extracted from the `.lo' file.
This fixes the build-relink2.test failure.
(tempemovelist): Use $echo "X..." instead of echo "..." since
$Xsed is being used. This fixes the last part of the sh.test
failure.
* tagdemo/Makefile.am, tagdemo/Makefile.in, tagdemo/README,
tagdemo/acinclude.m4, tagdemo/aclocal.m4, tagdemo/configure,
tagdemo/configure.in, tagdemo/foo.cpp, tagdemo/foo.h,
tagdemo/main.cpp, tests/tagdemo-conf.test tests/tagdemo-exec.test
tests/tagdemo-make.test tests/tagdemo-shared.test
tests/tagdemo-static.test: Added a new tagdemo that exercises
libtool's tagged configuration support found in the multilanguage
branch.
* tests/Makefile.am (TESTS): Added the tagdemo tests to the list.
* tests/quote.test: Updated to HEAD branch version. This fixes
the quote.test failure.
backticks within quotes.
* ltconfig.in, ltmain.in: Fix detected errors. Mark false
positives with a comment that disables the detector.
Reported by Akim Demaille <akim@epita.fr>
* 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
and `mv' are not guaranteed to preserve the timestamps of the
installed files. Instead of preserving them, just remove them
before the dry uninstall test. Redirect dry-run output to stderr,
so that it can be easily separated from the regular output.
cause main.o to be updated at the wrong time; the new approach is
to modify the libtool script so that it enables dry run depending
on whether an environment variable is set or not. I've also moved
`after' and `before' to a directory deep within $objdir, instead
of creating it in ../tests.
* tests/Makefile.am (CLEANFILES): Removed.
automake may use sub-makes, and the setting will not be propagated
to them on some makes. Instead, create a dry version of libtool
and switch between it and the original one before and after dry
runs.
* tests/Makefile.am (CLEANFILES): Added libtool-*, created by
dryrun.test.
(before, after): Create them within ../tests.
(libtool): Set to `/bin/sh ./libtool' by default, but use LIBTOOL,
SHELL and top_builddir from the environment if available. For dry
runs, use "$libtool -n".
* tests/Makefile.am (CLEANFILES): Added before and after.
* ltmain.in: Do not create links to object files in dry runs.
documented dryrun.test and depdemo*
* ltmain.in (lt_preloaded_symbols): dry-run mode bugfix
* tests/dryrun.test: new test to check whether the dry-run
mode works properly
the deplibs check is now optional
* libltdl/configure.in: read libtool --config only once,
merged AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE from libtool.m4
* libtool.m4: AC_SYS_SYMBOL_UNDERSCORE+AC_SYS_NM_PARSE were not
used, lt_dlopen and silent may be empty, AC_SYS_LIBTOOL_CYGWIN
no longer necessary
* ltconfig.in: NM is already checked in libtool.m4,
* ltmain.in: always link all static dependency_libs
* tests/Makefile.am: added deplibs.test
* tests/demo-exec.test, demo-inst.test: removed hell0
* tests/deplibs.test: new test to test the deplibs_check_method
archives with it, then link the program hell0 with both
* demo/hell1.c, demo/hell2.c: dummy files used to create the
libtool archives without introducing symbol conflicts
* tests/demo-exec.test, tests/demo-inst.test: run the new program
* ltconfig.in (irix5*, irix6*, deplibs_check_method): pass_all
* NEWS: improved support for BeOS and Cygwin
* TODO: ILD branch was merged, all internal variables and macros
are now documented
* demo/Makefile.am: use $(LIBS) instead of -lm
* doc/libtool.texi: documented new variable hardcode_into_libs
and thread_safe_flag_spec, renamed all AM_ENABLE/DISABLE_* macros
to AC_*, documented AC_DISABLE_FAST_INSTALL and AC_LIBTOOL_DLOPEN
* libltdl/ltdl.c: added two new error messages (cannot_open_error,
cannot_close_error), use them where approriate,
BeOS support (thanks to Xavier Pianet), on BeOS search modules
additionally in ADDON_PATH
* libtool.m4: rewrote AC_CHECK_LIBM: BeOS and Cygwin don't have
libm and *-ncr-sysv4.3* requires libmw
* ltconfig.in: don't check for LoadLibrary, hardcode dlopen
configuration for BeOS and Cygwin
* ltmain.in: fix sourcing of .la files on Solaris
(patch by Raja R Harinath)
* 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.
* doc/libtool.texi (libltdl interface): removed the line which
promised that lt_dlopen will return NULL if it can't resolve all
symbols
* libltdl/Makefile.am, libltdl/configure.in: fixed build problem:
renamed the convenience library to libltdlc.la and the
installed version to libltdl.la
* ltmain.in (wrapper script): replaced the "T" suffix of the program
file name with a "lt-" prefix
* mdemo/Makefile.am: use libltdlc.la
* tests/Makefile.am, tests/demo-nofast.test: added demo to
test --enable-fast-install=no
* demo/Makefile.am: renamed hell.debug to hell.static
(we're demonstrating static linking, not debugging)
* tests/demo*: ditto
* doc/libtool.texi (libltdl): documented new lt_dlopen(NULL)
feature
* libltdl/acconfig.h: required for config.h
* libltdl/configure.in: use config.h
* libltdl/ltdl.c: use config.h, support lt_dlopen(NULL)
(returns a handle for the program itself)
* ltconfig.in: minor reformatting
* ltmain.in: in lt_preloaded_symbols always define
the program's symbols first, for -export-dynamic list all
program symbols together, -export-symbols was broken for
programs, minor reformatting
* mdemo/Makefile.am: renamed mdemo.debug to mdemo.static
* tests/mdemo*: ditto, mdemo.test was completely broken