Mini Shell
2015-02-15 Gary V. Vaughan <gary@gnu.org>
version 2.4.6
* NEWS: Record release date.
2015-02-06 Gary V. Vaughan <gary@gnu.org>
libtool: don't execute automake and autoconf on every invocation.
Regression from 2.4.2 was causing noticable slow-down in builds
that call libtool many times.
* build-aux/ltmain.in (func_help): Override func_help() from
gl/build-aux/options-parser to only run automake --version and
autoconf --version when libtool --help is executed on the command
line.
* NO-THANKS: Add Robert Yang.
Reported by Robert Yang
2015-01-20 Gary V. Vaughan <gary@gnu.org>
maint: undo copyright years regression.
* gl/build-aux/options-parser: Undo copyright years regression.
* bootstrap: Regenerate.
bootstrap: sync with upstream.
* gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
gl/build-aux/funclib.sh, gl/build-aux/options-parser: Sync with
upstream.
* bootstrap: Regenerate.
2015-01-20 Pavel Raiskup <praiskup@redhat.com>
libtool: respect config.site LT_SYS_LIBRARY_PATH
Libtool generator code needs to remember the configure time
LT_SYS_LIBRARY_PATH content to allow config.status properly
instantiate default LT_SYS_LIBRARY_PATH libtool run-time value;
Thats because config.status has no idea what the contents of
config.site file is (by default).
* m4/libtool.m4 (_LT_CONFIG): Use the _LT_DECLared
$configure_time_lt_sys_library_path variable as the default for
LT_SYS_DLSEARCH_PATH at run-time.
(_LT_SYS_DYNAMIC_LINKER): Don't change ac_cv_* variable if it is
not necessary. New $configure_time_lt_sys_library_path variable.
* NEWS: Update.
libtool.m4: typofix, subst last '$' with quadrigraph
* m4/libtool.m4 (_LT_LIBTOOL_TAG_VARS): Encase the
configure/libtool shared function into parseable borders; for
testing purposes.
(func_munge_path_list): Typo s/$/@S|@/.
* tests/configure-funcs.at: New testcase.
* Makefile.am (TESTSUITE_AT): Mention new testcase.
* NEWS: Update.
tests: fix an ltdl dryrun race condition.
* tests/testsuite.at (LT_AT_ACLOCAL): Inject a 1 second sleep
after aclocal to ensure subsequently generated autotools files
will be newer.
* NEWS: Update.
2015-01-19 Gary V. Vaughan <gary@gnu.org>
maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
version 2.4.5
* NEWS: Record release date.
2015-01-18 Gary V. Vaughan <gary@gnu.org>
maint: update copyright statements to include 2015.
* AUTHORS, HACKING, Makefile.am, NEWS, README.md, TODO,
bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/build-aux/inline-source, gl/build-aux/options-parser,
libltdl/README, libltdl/configure.ac,
libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__argz_.h,
libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
libltdl/lt__argz.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
libltdl/ltdl.h, libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in,
m4/autobuild.m4, m4/libtool.m4, m4/ltargz.m4, m4/ltdl.m4,
m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.in,
m4/lt~obsolete.m4, m4/m4.m4, tests/am-subdir.at,
tests/archive-in-archive.at, tests/bindir.at, tests/cdemo.at,
tests/cmdline_wrap.at, tests/configure-iface.at,
tests/convenience.at, tests/ctor.at, tests/cwrapper.at,
tests/darwin.at, tests/demo.at, tests/depdemo.at,
tests/deplib-in-subdir.at, tests/deplibs-ident.at,
tests/deplibs-mingw.at, tests/destdir.at, tests/dlloader-api.at,
tests/dumpbin-symbols.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/exceptions.at,
tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
tests/export.at, tests/f77demo.at, tests/fail.at,
tests/fcdemo.at, tests/flags.at, tests/help.at,
tests/indirect_deps.at, tests/infer-tag.at,
tests/inherited_flags.at, tests/install.at,
tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
tests/need_lib_prefix.at, tests/no-executables.at,
tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
tests/resident.at, tests/runpath-in-lalib.at,
tests/search-path.at, tests/shlibpath.at, tests/slist.at,
tests/standalone.at, tests/static.at, tests/stresstest.at,
tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
tests/template.at, tests/testsuite.at, tests/versioning.at,
tests/with-pic.at: Update copyright statement to include 2015.
* cfg.mk: Adjust old_NEWS_hash accordingly.
2015-01-16 Gary V. Vaughan <gary@gnu.org>
gnulib: sync with upstream.
* gnulib: Sync with upstream.
* doc/.gitignore: Regenerate.
2015-01-16 Pavel Raiskup <praiskup@redhat.com>
libtoolize: fix ltdl installation order.
Fixes regression caused by commit 99a808be.
Makefile.in has aclocal.m4 as prerequisite, so Makefile.in
should be installed later to avoid unnecessary rebuild by
(versioned) aclocal.
* Makefile.am (pkgltdl_files): Move the Makefile.in file down in
the list after aclocal.m4.
* tests/libtoolize.at: Adjust to match reordered output.
2014-12-12 Gary V. Vaughan <gary@gnu.org>
libtool: check Sun Pro CXX ABI postdeps at libtool time.
* m4/libtool.m4 (_LT_PREPARE_CC_BASENAME): Factor cc_basename
calculation into a shell function...
(_LT_CONFIG_SAVE_COMMAND): ...and expand it into generated
libtool script.
(_LT_CC_BASENAME): Adjust accordingly.
(_LT_FUNC_SUNCC_CSTD_ABI): Remove from here...
* build-aux/ltmain.in (func_suncc_cstd_abi): ...and reimplement
here.
* m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Remove postdeps
augmentation from here...
* build-aux/ltmain.in (func_mode_link): ...and reimplement here
just before postdeps are added.
* NEWS: Update.
libtool: more carefully avoid automatic -Cstd -Crun on Sun Pro CXX.
* m4/libtool.m4 (_LT_FUNC_SUNCC_CSTD_ABI): New function factored out
of repeated code. Take note of other known -Cstd incompatible
compiler flags.
(_LT_SYS_HIDDEN_LIBDEPS): Use it to determine whether -Cstd -Crun
can be safely added to postdeps with Sun Pro CXX.
* NEWS: Update.
* NO-THANKS: Add Marc Glisse.
Reported by Marc Glisse
libtool: take care not to double-apply LT_SYS_LIBRARY_PATH.
* m4/libtool.m4 (_LT_CONFIG_SAVE_COMMANDS): Copy configure-time
LT_SYS_LIBRARY_PATH settings as default, but allow run-time
override.
(_LT_SYS_DYNAMIC_LINKER): Save the unmunged
sys_lib_dlsearch_path_spec value, and use it for _LT_DECL,
but then munge it with LT_SYS_LIBRARY_PATH for use in ltdl.m4
macros, such as LT_SYS_DLSEARCH_PATH.
2014-12-11 Pavel Raiskup <praiskup@redhat.com>
libtool: support LT_SYS_LIBRARY_PATH for adjusting bad guesses.
Revert 8728e07 and 440fee6.
Some GNU/Linux distributions install libraries into /lib64 (or
/usr/lib64) on 64-bit machines, while /lib (/usr/lib
respectively) stays for multilib variant. Other distributions
keep /usr/lib for 64-bit variant and reserve other directory for
multilib. Detection of what approach a given system uses is
difficult, however, especially because Glibc's ldconfig does not
report the full and correct list of search paths. Allow the user
to adjust Libtools heuristically determined search paths with
the new LT_SYS_LIBRARY_PATH environment variable at both
compile-time, when libtool is called, and at configure time.
* m4/libtool.m4 (_LT_PREPARE_MUNGE_PATH_LIST): Define a new
function to munge a libtool path list according to a user
supplied colon-delimited path.
(_LT_SYS_DYNAMIC_LINKER): Require _LT_PREPARE_MUNGE_PATH_LIST.
Mark LT_SYS_LIBRARY_PATH as precious to autoconf (to survive
automatic "autoreconf").
Call the new func_munge_path_list function on
sys_lib_dlsearch_path_spec - this propagates results to
generated libtool script.
(_LT_CONFIG): Expand _LT_PREPARE_MUNGE_PATH_LIST into generated
libtool script.
* build-aux/ltmain.in (func_mode_link): Call it to adjust
sys_lib_dlsearch_path according to LT_SYS_LIBRARY_PATH.
* doc/libtool.texi: Document new LT_SYS_LIBRARY_PATH.
* doc/notes.texi: Likewise.
* NEWS: Update.
References: http://thread.gmane.org/gmane.comp.gnu.libtool.general/8339/focus=8345
2014-12-11 Gary V. Vaughan <gary@gnu.org>
maint: fix syntax-check failures.
* m4/m4.m4 (AC_PROG_GNU_M4): Reverse some test arguments for
sc_prohibit_test_const_follows_var.
Remove some spurious braces for
sc_useless_braces_in_variable_drefs.
bootstrap: sync with upstream.
* gl/build-aux/extract-trace (func_find_tool): Quote a bare
variable expansion in a test argument.
* bootstrap: Regenerate.
2014-12-05 Gary V. Vaughan <gary@gnu.org>
libtool: s390x is also a 64bit glibc/ELF platform.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LIB): Add s390x to glibc/ELF
compatible CPUs that have /lib64 and /usr/lib64 in
sys_lib_dlsearch_path_spec.
Reported by Pavel Raiskup
2014-12-04 Gary V. Vaughan <gary@gnu.org>
libtool: for 64bit GNU arches, add /lib64 and /usr/lib64 to sys_lib_dlsearch_path.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <linux*, k*bsd*-gnu>
<kopensolaris*-gnu, gnu*>: If $host_cpu contains "64", add /lib64
and /usr/lib64 to sys_lib_dlsearch_path_spec.
Reported by Orion Poplawski, Christian Rössel, Olly Betts et. al.
libltdl: fix gcc compiler warning for unused attributes.
* libltdl/ltdl.c, libltdl/loaders/dld_link.c,
libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: For at
least gcc 4.8.3 and 4.9.1, __attribute__((__unused)) should
follow the unused parameter declaration.
* NO-THANKS: Add Дилян Палаузов.
Reported by Дилян Палаузов
2014-12-04 Eric Bavier <bavier@cray.com>
tests: do not assume compiler prefers shared libraries.
Testing whether -static-libtool-libs causes a non-libtool library to be
linked dynamically is effectively a test of the compiler's preference in
this case. The Cray compiler prefers static libraries if not told
otherwise.
* tests/static.at [static linking flags for programs]: Do not expect
-static-libtool-libs to fail.
2014-12-04 Norihiro Tanaka <noritnk@kcn.ne.jp>
libtool: fix sys_lib_dlsearch_path_spec for ia64 HP-UX.
The run-time loader does not search /usr/local or subdirectories
by default on ia64 HP-UX.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix
sys_lib_dlsearch_path_spec for ia64 HP-UX.
* NEWS: Update.
2014-12-04 Gary V. Vaughan <gary@gnu.org>
libltdl: edit AM_CPPFLAGS correctly for libltdl/Makefile.am.
* libltdl/ltdl.mk (AM_CPPFLAGS): Make sure the sed expression to
remove the first libltdl/ on each line is not confused by misuse
of linebreaks.
* Makefile.am (lt_Makefile_am): Also edit out the duplicated
include paths after libltdl/ elimination.
* NEWS: Update.
Reported by Michael Wobst
2014-12-04 Tijl Coosemans <tijl@FreeBSD.org>
libtool: commit forgotten soname_spec for freebsd-elf in bb7cef9.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <freebsd-elf>: Set
soname_spec correctly, per original patch.
* NEWS: Update.
2014-12-03 Gary V. Vaughan <gary@gnu.org>
bootstrap: sync with upstream for runtime M4 checking functions.
* gl/build-aux/extract-trace: Sync with upstream for runtime M4
checking functions.
* bootstrap: Regenerate.
* NEWS: Update.
configury: bail out early if GNU M4 is not on the path.
Now that libtoolize requires an installed GNU M4 to parse
configure.ac and aclocal.m4 sources for libltdl macros, let the
user know at configure time when it is missing.
* m4/m4.m4: New file for rejecting non-GNU and buggy GNU versions
of M4. Copied from GNU Autoconf m4.m4.
* Makefile.am (lt_aclocal_m4_deps): Add m4/m4.m4.
* configure.ac (AC_PROG_GNU_M4): Call it.
* NEWS: Update.
Reported by Michael Felt
2014-11-29 Gary V. Vaughan <gary@gnu.org>
maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
version 2.4.4
* NEWS: Record release date.
gnulib: sync with upstream.
* gnulib: sync with upstream.
2014-11-29 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
libtool: optional filename-based shlib versioning on aix.
Support filename-based shared library versioning on AIX with the
lib.so library filename extension, which is used with runtime
linking only. Runtime linking is enabled by the -brtl linker
flag for executables and the -G linker flag for Shared Objects.
The behaviour is similar to Linux/SVR4 DT_SONAME, hence the name
"aix-soname=svr4".
* Makefile.am (TESTS_ENVIRONMENT): Pass with_aix_soname value
via lt_cv_with_aix_soname into testsuite.
* configure.ac: AC_SUBST with_aix_soname for testsuite.
* libltdl/loaders/dlopen.c (vm_open): Use RTLD_MEMBER flag for
dlopen when the filename does specify an archive member between
"()". Otherways, retry with appending LT_SHARED_LIB_MEMBER when
loading fails without but archive file seems to exist.
* m4/libtool.m4 (dynamic_linker): Describe configured shared
library versioning variant according to with_aix_soname and
runtime linking.
(soname_spec, library_names_spec, shlibpath_overrides_runpath)
(postinstall_cmds, postuninstall_cmds, hardcode_direct)
(hardcode_direct_absolute, no_undefined_flag)
(allow_undefined_flag): Set according to with_aix_soname and
runtime linking configuration.
(export_symbols_cmds): Decorate symbols with the weak keyword.
(archive_expsym_cmds): Create both shared libraries according to
with_aix_soname and runtime linking configuration. Filter -brtl
linker flag from compiler_flags for shared libraries due to its
side effects.
(enable_static): Respect with_aix_soname for disabling as well.
* m4/ltdl.m4 (LT_SHARED_LIB_MEMBER): Define, set based on the
value of the shared_archive_member_spec libtool variable.
* m4/ltoptions.m4 (_LT_WITH_AIX_SONAME): New. Provides
commandline option --with-aix-soname=aix|svr4|both. Declares
$shared_archive_member_spec as libtool variable.
(_LT_SET_OPTIONS): Define LT_INIT options "aix-soname=aix",
"aix-soname=svr4", "aix-soname=both". Default is
"aix-soname=aix".
* doc/libtool.texi (LT_INIT): Document new options.
* tests/deplibs-ident.at: To define whether this test should
XFAIL, use hardcode_action, hardcode_direct,
hardcode_direct_absolute configuration settings instead of
platforms aix, bitrig, hppa-hpux, interix or openbsd.
* tests/versioning.at: When shared_archive_member_spec is defined
and LDFLAGS contain -brtl, we can run the versioning check.
* NEWS: Update.
2014-11-28 Tijl Coosemans <tijl@FreeBSD.org>
libtoolize: no need for umask 0 now that copying does not use tar.
The umask calls seem to be left over as a workaround for several
releases ago when libtoolize copied libltdl sources with the help
of tar. Now that we use cp or ln -s exclusively, this just
needlessly makes the files world writable; we should just respect
the users' own umask setting.
* libtoolize.in (func_copy): Remove umask 0 calls and simplify.
2014-11-28 Gary V. Vaughan <gary@gnu.org>
maint: syntax-checks don't like ${ even in comments!
* m4/ltdl.m4: Fix a comment to appease syntax-check rules.
2014-11-28 Tijl Coosemans <tijl@FreeBSD.org>
libtool: use a modern library version scheme for freebsd-elf.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Adopt downstream patch
used by FreeBSD for versioned library filenames.
* build-aux/ltmain.in (func_mode_link): Replace conflicting
freebsd-elf version_type case branches with a single calculation
setting major and versuffix to match downstream FreeBSD.
libtool: split sco version into its own type.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Set version type to
"sco" for sco based hosts.
* build-aux/ltmain.in (func_mode_link): Accept new "sco"
version_type as equivalent to freebsd-elf.
2014-11-28 Gary V. Vaughan <gary@gnu.org>
configury: detect dlsym underscore prefix without dlopen self.
* m4/ltdl.m4 (LT_FUNC_DLSYM_USCORE): Compile, load and get the
address of a symbol from a separate loadable module, rather than
assuming dlopen self works.
* NEWS: Update.
Reported by KO Myung-Hun
2014-11-26 Gary V. Vaughan <gary@gnu.org>
ltdl: fix a long standing duplicate `-ldl' bug in the link line.
* m4/ltdl.m4 (LT_LIB_DLLOAD): Save contents of LIBS before
calling AC_SEARCH_LIBS, which prepends to LIBS by default, and
restore afterwards. We set LIBADD_DLOPEN and LIBADD_SHL_LOAD
so that dynamic loader libraries can be added selectively only
where they are needed.
* NEWS: Update.
2014-11-21 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
tests: do not test undef symbols across shlibs on AIX.
On AIX, undefined symbols across shared libraries can work only
when the main program explicitly exports those symbols. As this
is bad practice anyway and -no-undefined should be preferred, we
skip this.
* tests/template.at: Skip test with undef syms across libraries
on AIX.
tests: question mark is extended regex for non-GNU grep.
Accepting \? for at-most-once in basic regex is a GNU grep
extension, not accepted by AIX grep for example.
* tests/libtool.at: Use \{0,1\} instead of ? with GREP.
2014-11-18 Gary V. Vaughan <gary@gnu.org>
maint: Fox a resent smelling mystique.
* build-aux/git-log-fix: ChangeLog edit.
Reported by Eric Blake
bootstrap: make sure gnulib file droppings are removed.
* bootstrap.conf (libtool_cleanup_empty_dirs): Recent bootstrap
updates set source_base to null, so we need to use ${x:-y} to
override the null. Autoconf Shellology says that ancient BSD
/bin/sh chokes on :- defaults, but bootstrap is a developer tool,
and so we can reasonably expect a developer to have a working
/bin/sh to run the bootstrap script.
bootstrap: add missing debug preambles.
* bootstrap.conf (libtool_prep, func_require_ltdl_dir)
(libtool_require_package_url): Add missing $debug_cmd calls.
2014-11-18 Vincent Lefevre <vincent@vinc17.net>
NEWS: Fix an ancient spelling mistake.
* NEWS: s/propogate/propagate/.
* cfg.mk (old_NEWS_hash): Update.
2014-11-17 Vincent Lefevre <vincent@vinc17.net>
libtool: fix comment typo.
* m4/libtool.m4: Fix -fvisbility=hidden typo in a comment.
2014-11-04 Gary V. Vaughan <gary@gnu.org>
maint: fix a syntax-check failure.
* tests/cmdline_wrap.at (fail_list): quote test arguments to
satisfy failing syntax-checks.
libtool: fix universal library building on darwin.
* build-aux/ltmain.in (func_extract_archives): $basename is now
spelled $sed_basename.
* NO-THANKS: Update.
Reported by Misty De Meo
tests: update fat binary test case for modern darwin.
* tests/darwin.at: Use "-arch x86_64", which works on modern
Apple hardware, rather than "-arch ppc", which generally does not.
tests: fix false positive in failed test check for cmdline_wrap.at.
* tests/cmdline_wrap.at (fail_list): non-matching globs return as
a plain unexpanded string, so we also need to test for file
existence before expanding into fail_list.
bootstrap: sync with upsteram.
* gl/build-aux/bootstrap.in: Sync with upstream.
* bootstrap: Regenerate.
2014-11-04 KO Myung-Hun <komh@chollian.net>
libtool: support versioning on OS/2.
* build-aux/ltmain.in (func_mode_link) <*-os2*>: Set major and
versuffix.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <*-os2*>: Set
version_type to windows. Add a version information to soname_spec.
* NEWS: Update.
libtool: support -export-symbols and -export-symbols-regex on OS/2.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
<*-os2*>: Set archive_expsym_cmds.
* NEWS: Update.
libtool: add -os2dllname option.
On OS/2, if there are many DLLs whose prefix is the same and
very long, the resulting DLLs are overwritten. Provide a new
option to force a DLL name.
* build-aux/ltmain.in (func_mode_help): Add a description for
-os2dllname.
(func_mode_link): Add -os2dllname.
* doc/libtool.texi: Document it.
* NEWS: Update.
libtool: fix DLL creation/installation/uninstallation on OS/2.
OS/2 can only load a DLL with a base name of 8 characters or
less. Also, on OS/2 don't install or uninstall using a link.
* build-aux/ltmain.in: Do not strip an import lib.
* m4/libtool.m4: Set variables to fix DLL creation, installation
and uninstallation.
libtool: support -Zxxx options used on OS/2.
* build-aux/ltmain.in (func_mode_link): Add -Z* case, treating
them specially on os2 only.
libtool: set lt_cv_deplibs_check_method to pass_all on OS/2.
* m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Same as the title.
libtool: there is no need to relink DLLs on OS/2.
* build-aux/ltmain.in (func_mode_link) <*-os2*>: need_relink=no.
ltdl: OS/2 uses other APIs to load a DLL than LoadLibrary() on Windows.
* m4/ltdl.m4: Remove os2* from a list for loadlibrary.la.
libtool: support to link against static libraries on OS/2.
* m4/libtool.m4 (_LT_COMPILER_PIC): Set lt_prog_compiler_static to
$wl-static.
libtool: don't eliminate duplications in $postdeps and $predeps on OS/2
* build-aux/ltmain.h (libtool_validate_options): Add *os2* to the list.
2014-11-03 Gary V. Vaughan <gary@gnu.org>
configury: create installation dir before writing to it.
* Makefile.am (install-scripts-local): Don't forget to make the
installation target directory before writing to it.
* NO-THANKS: Update.
Reported by Allan McRae
maint: .PHONY rules to protect gmake from pathological file names.
* Makefile.am (.PHONY): Add install-scripts-local,
check-interactive, check-noninteractive-old,
check-noninteractive-new and check-noninteractive.
2014-11-02 Arkadiusz Miśkiewicz <arekm@maven.pl>
tests: fix typo in cmdline_wrap skip check.
* tests/cmdline_wrap.at (fail_list): fix a typo in loop script
text.
2014-11-02 Gary V. Vaughan <gary@gnu.org>
libtoolize: don't forget to remove old non-gnulib argz files.
* libtoolize.in (all_pkgltdl_files): Add back argz.c and argz_.h,
as installed by previous libtool releases.
libltdl: move libltdl argz module into LT namespace.
To avoid clashes with gnulib argz module in ltdl client projects,
move ours into its own namespace.
* libltdl/argz_.h, libltdl/argz.c, m4/argz.m4: Move from here...
* libltdl/libltdl/lt__argz_.h, libltdl/lt__argz.c, m4/ltargz.m4:
...to here.
* Makefile.am, libltdl/libltdl/lt__glibc.h, libltdl/ltdl.mk,
libtoolize.in, m4/ltdl.m4: Adjust accordingly.
* tests/libtoolize.at, tests/ltdl-api.at, tests/nonrecursive.at,
tests/old-ltdl-iface.at: Adjust for different libtoolize output.
* libltdl/.gitignore: Adjust accordingly.
* NEWS: Update.
Reported by Pavel Raiskup
maint: whitespace cleanup.
* Makefile.am ($(thanks)): Fix several whitespace syntax-check
failures.
2014-11-02 Pavel Raiskup <praiskup@redhat.com>
libtoolize: do not remove gnulib files with --force.
* libtoolize.in (func_require_seen_libtool): Do not remove
snippet/* files which are from Gnulib.
2014-10-30 Gary V. Vaughan <gary@gnu.org>
tests: set bindir and libdir at configure time.
In particular, openSuSE on x86_64 uses CONFIG_SITE to set libdir
to "${exec_prefix}/lib64", which confuses testcases that check
the contents of "${prefix}/lib". In general, tests that expect
to find installed files in specific directories should explicitly
set those directories at configure time.
* tests/testsuite.at (LT_AT_CONFIGURE): Make sure exec_prefix,
bindir and libdir point to known subdirectories we can check the
contents of later on in a test case.
(prefixdir): Rename from this...
(prefix): ...to this. All test cases that set or use the config
prefix directory must now refer to `prefixdir` for the helper
macros in this file to work in hostile build environments such
as CONFIG_SITE setting openSuSE.
* tests/demo.at, tests/depdemo.at, tests/mdemo.at,
tests/tagdemo.at: Adjust accordingly.
Reported by Peter Breitenlohner.
2014-10-29 Reuben Thomas <rrt@sc3d.org>
libtool: -rdynamic support for tcc.
* m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set
export_dynamic_flag_spec appropriately when using tcc.
libtool: preliminary support for tcc on linux*.
* m4/libtool.m4 (_LT_LINKER_SHLIBS) <linux*>: Set archive_cmds and
ld_shlibs appropriately when using tcc.
* NEWS: Update.
2014-10-29 Gary V. Vaughan <gary@gnu.org>
maint: fix README-alpha version match.
With simplified release version numbering (thank you, git!), be
careful to recognize four part alpha versions, or short git
revision suffixed alpha versions correctly.
* Makefile.am (re_odd_version): Remove.
(re_alpha_version): Recognize alpha version numbers.
($(readme)): Adjust accordingly.
maint: autogenerate THANKS.
More automation == less time wasted on menial tasks.
* build-aux/thanks-gen: script inspired by coreutils.
* Makefile.am (THANKS): Based on rule from coreutils/Makefile.am.
* NO-THANKS: New file. Configure thanks-gen output.
* THANKS: Remove.
maint: fix prefix and suffix installs for libtoolize.
* Makefile.am (install-data-local): Depend on new
install-scripts-local, and move libtoolize install from here...
(install-scripts-local): ...to here.
Pass libtoolize destination through program transform expression.
(uninstall-hook): Likewise, prior to removal.
* NEWS: Update.
* THANKS: Update.
Reported by Václav Zeman
2014-10-27 Gary V. Vaughan <gary@gnu.org>
maint: move Peter O'Gorman and Ralf Wildenhues to past maintainers.
* AUTHORS: Move Peter O'Gorman and Ralf Wildenhues from current
to past maintainers list.
maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
version 2.4.3
* NEWS: Record release date.
bootstrap: sync with upstream.
* gl/build-aux/bootstrap.in, gl/build-aux/funclib.sh: Sync with
upstream.
* bootstrap: Regenerate.
testsuite: fixes required for `make distcheck CC=g++`.
* tests/demo.at (Pdemo conf): Overide _LT_DEMO_SETUP foo.h to
declare foo2.
* tests/mdemo.at (_LT_SETUP): Don't wrap `sub` dectlaration in
C++ guards, because sub.c is also compiled with g++ in this test.
* tests/old-ltdl-iface.at (old.c): Add a return type to main
declaration as required by C++.
maint: fix a typo in THANKS.
* THANKS: s/macports\.com/macports.org/
syntax-check: use strlcpy instead of strncpy.
* libltdl/loaders/dyld.c (vm_sym): Use strlcpy to pacify syntax
checks.
* libltdl/ltdl.c (try_dlopen): Likewise.
2014-10-25 Gary V. Vaughan <gary@gnu.org>
libtool: fix GCC linking with -fstack-protector.
* build-aux/ltmain.in (func_mode_link): Pass -fstack-protector*
to the linker as it is required at link time to resolve libssp symbols.
From Yaakov Selkowitz
libtool: support Mac OS 10.10 and newer.
The current template mistakenly treats a MACOSX_DEPLOYMENT_TARGET
value of "10.10" as "10.1" followed by junk. Thinking that the
build is targeting 10.1 Puma instead of 10.10 Yosemite, it tells
the linker to ignore undefined symbols instead of dynamically
resolving them. This can cause runtime crashes* and will affect
subsequent versions of OS X.
* libtool.mk (_LT_REQUIRED_DARWIN_CHECKS): Improve case match so
as to reject 10.10.x on the 10.1 and 10.2 branch.
* THANKS: Add Lawrence Velázquez.
From Lawrence Velázquez
bootstrap: commit latest to avoid regeneration at build time.
* bootstrap: Regenerate.
gnulib: sync with upstream.
* gnulib: Sync with upstream.
2014-05-13 Peter Rosin <peda@lysator.liu.se>
libtool: delay expansion of $ECHO until the wrapper script runs
Expanding $ECHO too early leads to unquoted \n when ECHO='printf %s\n'.
Fixes bug#17478. Reported by Egmont Koblinger.
* build-aux/ltmain.in (func_emit_wrapper) [fast_install]: Quote the
$ECHO, and delay the expansion.
2014-05-06 Peter Rosin <peda@lysator.liu.se>
libtool: fix nm test for MSYS/MinGW
The check for the -B option of nm does not work as intended on MSYS/MinGW.
MSYS converts /dev/null to the DOW/Windows "equivanent" special file NUL,
but the MinGW nm treats this file as any empty file. This means that
you might end up with some fallback nm instead of the desired nm. This
is not normally a problem, but if one nm is built without lto support, it
starts to matter.
Fixes sr #108558, reported by LRN.
* m4/libtool.m4 (LT_PATH_NM) [MSYS]: Use a non-existant file instead of
/dev/null when checking if nm supports -B.
2014-05-05 Peter Rosin <peda@lysator.liu.se>
libtool: speed up ltwrapper_script detection in execute mode
Execute mode is slow and might even DOS the computer in extreme
cases when a parameter is a big binary file without newlines.
Work around this with different truncation if a suitable dd
utility is found.
Fixes bug#13472 and bug#16662.
Reported by Pavel Raiskup and Nick Bowler.
* m4/libtool.m4 (_LT_PATH_DD): New macro, for finding a dd utility
that works for the below purpose.
(_LT_CMD_TRUNCATE): New macro, for finding out how to truncate binary
pipes (fallback to the old sed truncation if no suitable dd is found
in _LT_PATH_DD).
(_LT_SETUP): Require _LT_CMD_TRUNCATE.
(LT_INIT): Require Autoconf 2.62, as needed by _LT_PATH_DD.
* build_aux/ltmain.in (func_lalib_p): Factor out the actual "generated
by libtool" test into...
(func_generated_by_libtool_p): ...this new function...
(func_ltwrapper_script_p): ...so that it can be reused here, when
truncating the pipe according to _LT_CMD_TRUNCATE.
* THANKS: Update.
2014-05-02 Peter Rosin <peda@lysator.liu.se>
libtool: prevent lto from stripping the magic cookie from the cwrapper
Whole program optimization may remove unused symbols unless told they
are really needed. Fixes sr #108559 reported by LRN.
* build-aux/ltmain.in (func_emit_cwrapperexe_src:MAGIC_EXE): Try to ensure
that the magic cookie is preserved.
2014-02-12 Peter Rosin <peda@lysator.liu.se>
tests: sprinkle -no-undefined when linking libraries
* tests/duplicate_conv.at, tests/f77demo.at, tests/fcdemo.at: Here.
2014-02-12 Peter Rosin <peda@lysator.liu.se>
libtool: actually strip -Wl when relinking with $LD
Fixes the regression from commit v2.4.2.444 which is causing a
testsuite failure in duplicate_conv.at (seen on Cygwin).
* build-aux/ltmain.in (func_mode_link): $reload_cmds typically
starts with "$LD$reload_flag ..." when $LD is used to relink.
Make the case expression match that when checking if $LD is in
fact used to relink.
2014-02-10 Peter Rosin <peda@lysator.liu.se>
bootstrap: fix description of func_sort_ver to match recent sort change
gl/build-aux/funclib.sh: Update comment to match reality.
bootstrap: Regenerate.
2014-02-05 Gary V. Vaughan <gary@gnu.org>
doc: remove redundant "in order to" phrase where possible.
* doc/libtool.texi: Remove many occurrences of the redundant
phrase "in order to", where ever "to" is as clear or clearer.
* THANKS: Add attribution.
Reported by Dave Yost
2014-02-03 Bruce Korb <bkorb@gnu.org> (tiny change)
bootstrap: check for git tree with .git/. in case of soft links.
* gl/build-aux/bootstrap.in (func_require_git): Use
`test -d .git/.` to defeat soft-links versus non-GNU test.
* bootstrap: Regenerate.
* THANKS: Remove duplicate Bruce Korb entry.
2014-01-27 Gary V. Vaughan <gary@gnu.org> (tiny change)
bootstrap: use `-d .git` to check whether we are in a git tree.
* gl/build-aux/bootstrap.in (func_require_git): .git is not a
regular file, use -d to check its existence.
* bootstrap: Regenerate.
* THANKS: Add Bruce Korb.
Reported by Bruce Korb
2014-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
libtool: opt_duplicate_compiler_generated_deps is harmful on Solaris
Fix for http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452.
* build-aux/ltmain.in (libtool_validate_options): disable the
opt_duplicate_compiler_generated_deps optimization for Solaris2 so
that gcc-4.9+ compiled C++ code with -Wl,-Bdirect on 64-bit Solaris
x86 can avoid unwinding failures caused by accidental mixing of the
libc and libgcc_s unwinders in a single executable.
2014-01-15 Gary V. Vaughan <gary@gnu.org>
bootstrap: check for git checkout correctly.
* gl/bulid-aux/bootstrap.in (func_require_git): Use .git instead
of .gitignore to recognise a git checkout.
* bootstrap: Regenerate.
2014-01-11 Todd C. Miller <Todd.Miller@courtesan.com> (tiny change)
libtoolize: don't remove install-sh.
If you are not using automake, libtoolize would remove install-sh.
It needs the same treatment as config.guess and config.sub.
* libtoolize.in (func_require_seen_libtool): Remove install-sh
from $all_pkgaux_files, the list of files removed by
`libtoolize --force`.
* THANKS: Add Todd C. Miller.
* NEWS: Update.
2014-01-07 Gary V. Vaughan <gary@gnu.org>
options-parser: --version works with 'DO NOT EDIT' preamble again.
* gl/build-aux/options-parser (func_version): Don't quit on first
leading '##' line, otherwise DO NOT edit warnings prevent version
information from being extracted correctly.
* bootstrap: Regenerate.
bootstrap: specify particular version in buildreq with =x.y.
* gl/build-aux/bootstrap.in (func_check_versions): If the version
number begins with '=' then it must match the installed version of
the named tool exactly.
* gl/doc/bootstrap.texi (buildreq): Document the '=vernum' feature.
* bootstrap: Regenerate.
2014-01-05 Gary V. Vaughan <gary@gnu.org>
bootstrap: remove conftest.sed file droppings.
* gl/build-aux/funclib.sh: Remove conftest.sed when no longer
needed.
* bootstrap: Regenerate.
2014-01-04 Gary V. Vaughan <gary@gnu.org>
bootstrap: replace spurious hyphen in some section comments.
* gl/build-aux/bootstrap.in: replace spurious hypen in same
section header comments with a space.
* gl/build-aux/extract-trace, gl/build-aux/options-parser:
Likewise.
* bootstrap: Regenerate.
2014-01-03 Gary V. Vaughan <gary@gnu.org>
inline-source: DO NOT EDIT warning only for top-level file.
* gl/build-aux/inline-source (func_include): When recursing, pass
through the value of `magic` so that only the very first #! magic
number has a DO NOT EDIT warning injected.
* bootstrap: Regenerate.
inline-source: gawk doesn't have boolean constants.
I've been writing a lot of Lua lately, but still a silly mistake:(
* gl/build-aux/inline-source (func_include): Use `magic` variable
to count #! lines found, and only output the DO NOT EDIT warning
after the first one.
edit-readme-alpha: adjust for recent README edits.
* build-aux/edit-readme-alpha: Adjust regexps for recent README
improvements.
* README.md: Fix a SPACE-TAB sanity check failure.
bootstrap: fix test-dollar sanity check failure.
* gl/build-aux/bootstrap.in (func_ensure_README): quote argument.
* bootstrap: Regenerate.
libtool: rearrange header comments for correct version/help extraction.
* m4/libtool.m4 (_LT_COPYING): Rearrange the comments output to
the generated libtool script so that --version and --help behave
the same as pre-funclib.sh revisions.
(_LT_CONFIG_SAVE_COMMANDS): Likewise.
README: Tweak into markdown format and fix some bitrot.
* README: Moved from here...
* README.md: ...to here. Make some changes to be valid markdown
format, and fix some inaccuracies in text that is out of date.
* .gitignore: Add README.
bootstrap: support automake README requirement.
* gl/build-aux/bootstrap.in (func_ensure_README): New function.
Link missing README to existing alternative naming.
(require_automake_options): New functions. Fetch AM_INIT_AUTOMAKE
options from configure.ac.
(func_reconfigure): If we're using automake, and it's not in
foreign mode, link a README file if possible.
* bootstrap: Regenerate.
configury: use bootstrap ChangeLog management feature.
* gl/build-aux/bootstrap.in (func_autoreconf): Accept an optional
directory argument to pass to $AUTORECONF.
Update doc-comment.
* bootstrap.conf (func_reconfigure): Remove. Don't completely
overwrite bootstrap's func_reconfigure, shadowing auto-ChangeLog
management.
(func_autopoint, func_libtoolize): Overwrite these un-needed
calls instead.
(libtool_autoreconf_libltdl): New hook function to run second
autoreconf in libltdl directory.
(libtool_force_changelog): Remove. This is all handled by
bootstrap's func_reconfigure again.
* bootstrap: Regenerate.
bootstrap: force remove file droppings from previous run.
Now that we generate bootstrap.new with no write permission,
we have to force remove it before writing now content to the file.
* bootstrap.in (require_bootstrap_uptodate): Remove old
bootstrap.new output.
* bootstrap: Regenerate.
inline-source: add a DO NOT EDIT notice to generated files.
* gl/build-aux/inline-source (func_include): Add a DO NOT EDIT
notice below the #! magic number of generated files.
* gl/build-aux/bootstrap.in (func_require_bootstrap_uptodate):
Remove write bit from regenerated bootstrap.new if it differs
from incumbent bootstrap.
Change the update instructions to recommend `mv -f` to cope with
no write permission on old bootstrap script.
bootstrap: move included files below DO NOT EDIT comment.
* gl/build-aux/bootstrap.in: Reorder sections to load external
libraries as late as possible, leaving DO NOT EDIT comment
visible near the top of the generated bootstrap script.
maint: use before-save-hook in Emacs footers.
Updating to Emacs 24 now gives me warnings about write-file-hooks
being obsolete.
* gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
gl/build-aux/funclib.sh, gl/build-aux/inline-source,
gl/build-aux/options-parser: Set before-save-hook in Emacs file
footers instead of obsolete write-file-hooks.
libtoolize: use printf '%s\n' unconditionally.
It's been a year since the as_echo probes were removed in Autoconf,
so we can follow suit and remove our equivalent bs_echo probing
now. Retain $ECHO in case users need to override default printf
calls in museum piece environments.
* gl/build-aux/funclib.sh (ECHO): Default to 'printf %s\n'.
(bs_echo): Remove.
Adjust all bs_echo callers to use $ECHO instead.
* bootstrap: Regenerate.
* NEWS: Update.
2014-01-02 Gary V. Vaughan <gary@gnu.org>
bootstrap: push Peter's version sort fix back into funclib.sh.
Peter's a7462c5 fix was applied to the generated bootstrap script
instead of the funclib.sh source, and had have been overwritten
the next time bootstrap was regenerated.
* gl/build-aux/funclib.sh (func_sort_ver): Sort numerically on the
non-primary keys as well.
* bootstrap: Regenerate, with the change applied.
2014-01-01 Gary V. Vaughan <gary@gnu.org>
maint: change history.
* NEWS: Remove alpha release header.
* cfg.mk (old_NEWS_hash): Update.
libtool: only strip -Wl when linking with $LD.
* build-aux/ltmain.in (func_mode_link): Don't strip -Wl from the
linker flags, except when linking with $LD, otherwise compiler
drivers that don't recognize and pass linker flags through will
choke on unrecognized options.
bootstrap: fix gitlog-to-changelog detection.
* gl/build-aux/bootstrap.in (func_ifcontains): Use a for loop
that relies on $IFS for element splitting instead of a one-shot
case glob that is not tolerant to \n in $gnulib_modules.
* THANKS: Add Reuben Thomas.
Reported by Reuben Thomas
maint: update copyright notices to include 2014.
* .x-update-copyright: New file. Exclude files not owned by this
project from update-copyright rules.
* doc/libtool.texi: Replace m-dash with n-dash in texinfo
copyright notice so that update-copyright matches correctly.
Undo bogus copyright updates to example output from gdb session.
Bump copyright year.
* Changelog.old: Revert bogus updates from previous years
without .x-update-copyright.
AUTHORS, HACKING, Makefile.am, NEWS, README, THANKS, TODO,
bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk,
configure.ac, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/build-aux/inline-source, gl/build-aux/options-parser,
libltdl/README, libltdl/argz.c, libltdl/argz_.h,
libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
tests/am-subdir.at, tests/archive-in-archive.at,
tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
tests/cwrapper.at, tests/darwin.at, tests/demo.at,
tests/depdemo.at, tests/deplib-in-subdir.at,
tests/deplibs-ident.at, tests/deplibs-mingw.at,
tests/destdir.at, tests/dlloader-api.at,
tests/dumpbin-symbols.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/exceptions.at,
tests/execute-mode.at, tests/exeext.at, tests/export-def.at,
tests/export.at, tests/f77demo.at, tests/fail.at,
tests/fcdemo.at, tests/flags.at, tests/help.at,
tests/indirect_deps.at, tests/infer-tag.at,
tests/inherited_flags.at, tests/install.at,
tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
tests/need_lib_prefix.at, tests/no-executables.at,
tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
tests/resident.at, tests/runpath-in-lalib.at,
tests/search-path.at, tests/shlibpath.at, tests/slist.at,
tests/standalone.at, tests/static.at, tests/stresstest.at,
tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
tests/template.at, tests/testsuite.at, tests/versioning.at,
tests/with-pic.at: Bump copyright year.
gnulib: update to latest upstream revision.
* gnulib: Update.
tests: gcj cannot reliably compile directly to .o from .java
Some 4.3.x and 4.4.x releases of gcj insert a spurious 'dummy'
symbol into every object file when compiling directly from .java
to .o:
* tests/convenience.at (GCJ): make .class files from .java
sources first, and then compile those to native objects. This
works around http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42143
2014-01-01 Gary V. Vaughan <gary@gnu.org>
testsuite: with SunStudio12.x f77, don't fail on system symbols
Modern SunStudio f77 is just a wrapper for f90, which
explains why current master fails these test groups with:
Undefined first referenced
symbol in file
__f90_slw_ch .libs/foof2.o
__f90_sslw .libs/foof2.o
__f90_eslw .libs/foof2.o
ld: fatal: symbol referencing errors. No output written to
.libs/libfoo2.so.0.0.0
So we allow some undefined symbols in the libraries, which are
resolved by the $(FLIBS) added to the final binaries in the tests.
This seems like the simpler, and less error inducing solution to
me (compared to adding $(FLIBS) to every library LDFLAGS line).
* tests/f77demo.at (libfoo_la_LDFLAGS, libfoo2_la_LDFLAGS)
(libfoo3_la_LDFLAGS, libmix_la_LDFLAGS): Remove -no-undefined
flag.
* tests/fcdemo.at: Likewise.
2014-01-01 Gary V. Vaughan <gary@gnu.org>
maint: use $SED and $GREP, not sed and grep in all scripts.
Choosing between hardcoding a tool's name, or using the shell
variable with a path to the user's prefered implementation or
configure's idea of the best available is a premature
optimisation.
* build-aux/ltmain.in, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
libtoolize.in: Use $SED and $GREP consistently throughout,
instead of hardcoding sed and grep.
* bootstrap: Regenerate.
tests: use TESTS_ENVIRONMENT for EGREP and FGREP.
Be consistent about passing commands to the testsuite, and use
TESTS_ENVIRONMENT consistent.
* Makefile.am (TESTS_ENVIRONMENT): Add EGREP and FGREP.
* tests/testsuite.at: Remove EGREP and FGREP extractions from
generated libtool script.
tests: use $GREP throughout.
Trust the user, and use $GREP from TESTS_EVVIRONMENT uniformly.
* Makefile.am (TESTS_ENVIRONMENT): Add GREP setting.
* tests/am-subdir.at, tests/archive-in-archive.at, tests/bindir.at,
tests/configure-iface.at, tests/cwrapper.at, tests/darwin.at,
tests/demo.at, tests/destdir.at, tests/dumpbin-symbols.at,
tests/early-libtool.at, tests/execute-mode.at, tests/export-def.at,
tests/export.at, tests/f77demo.at, tests/fcdemo.at, tests/flags.at,
tests/help.at, tests/inherited_flags.at, tests/install.at,
tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
tests/localization.at, tests/lt_dladvise.at, tests/lt_dlopen.at,
tests/lt_dlopenext.at, tests/ltdl-api.at, tests/ltdl-libdir.at,
tests/mdemo.at, tests/old-m4-iface.at, tests/pic_flag.at,
tests/resident.at, tests/runpath-in-lalib.at, tests/search-path.at,
tests/static.at, tests/sysroot.at, tests/template.at,
tests/testsuite.at, tests/versioning.at: Replace all hardcoded grep
invocations with $GREP.
tests: use $SED throughout.
Trust the user, and use $SED from TESTS_ENVIRONMENT uniformly.
Hardcoding 'sed' for "simple" edits is a premature optimisation.
* tests/cdemo.at, tests/cmdline_wrap.at, tests/cwrapper.at,
tests/darwin.at, tests/demo.at, tests/duplicate_conv.at,
tests/duplicate_members.at, tests/execute-mode.at, tests/export.at,
tests/inherited_flags.at, tests/install.at, tests/libtoolize.at,
tests/mdemo.at, tests/need_lib_prefix.at, tests/old-m4-iface.at,
tests/sysroot.at, tests/tagdemo.at, tests/testsuite.at: Replace all
hardcoded sed invocations with $SED.
tests: run cmdline_wrap last, or not at all if anything else failed.
* Makefile.am (TESTSUITE_AT): Move stresstest.at and cmdline_wrap.at
to the end of the list.
* tests/cmdline_wrap.at: If previous tests have failed, then we
already know that rerunning them will fail too, so save time by
skipping in that case.
configury: remove spurious g modifier in sed expression.
* Makefile.am (rebuild): Remove useless g modifier from sed
expression.
configury: use $(SED) where input does not end in newline.
On Solaris machines the system sed does not process the last
line of input unless it ends with a newline, which means it
cannot be used to massage the output of git-version-gen, because
it deliberately omits the terminating newline.
* Makefile.am (rebuild): Use the sed command found by configure,
which has a better chance of working properly than the first sed
on PATH.
tests: skip fcdemo checks when $FC cannot compile fortran90.
Avoid spurious fcdemo failures when Autoconf picks f77 or
similar for a fortran90 compiler.
* tests/testsuite.at (LT_AT_TAG): Using FC and FCFLAGS from make
TESTS_ENVIRONMENT, check that we really can compile fortran90
or else skip.
funclib.sh: improve comments.
* gl/build-aux/funclib.sh: Add a comment explaining the need for
extra SED and GREP searches.
2013-12-09 Peter Rosin <peda@lysator.liu.se>
maint: fix out-of-tree autoreconf w/o manual rebootstrap
build-aux/ltmain.in: Look for funclib.sh and options-parser in
the same location ltmain.in is found.
2013-11-19 Peter Rosin <peda@lysator.liu.se>
bootstrap: fix version sort
Reported by Ozkan Sezer who suffered from makeinfo 4.13 being detected
as lesser than the required makeinfo 4.8.
* bootstrap (func_sort_ver): Sort numerically on the non-primary keys
as well.
2013-11-08 Peter Rosin <peda@lysator.liu.se>
tests: Use a basic grep that matches the basic regexp style.
Fixes a testsuite failure on Cygwin.
* tests/tagdemo.at: Use grep instead of egrep.
2013-10-29 Gary V. Vaughan <gary@gnu.org>
bootstrap: fix a quoting error.
* gl/build-aux/bootstrap.in (func_require_buildreq_autoconf): Quote
the extracted version number correctly so that it is displayed in
verbose mode.
2013-10-28 Gary V. Vaughan <gary@gnu.org>
funclib.sh: simplify version comparison functions.
* gl/build-aux/funclib.sh (func_sort_ver): Much simplified.
(func_lt_ver): New function, return true if arguments are in
ascending order.
* gl/build-aux/bootstrap.in: Simplify with func_lt_ver.
* gl/build-aux/do-release-commit-and-tag.diff: Likewise.
* bootstrap: Regenerate.
Co-Authored-by: Paul Eggert <eggert@cs.ucla.edu>
2013-10-28 Gary V. Vaughan <gary@gnu.org>
bootstrap: show found GREP and SED in verbose mode.
* gl/build-aux/bootstrap.in (EGREP, FGREP, GREP, SED): Remove.
These are already set by funclib.sh.
(func_prep): After --verbose has been processed, show the paths
to GREP and SED found by funclib.sh.
* bootstrap: Regenerate.
refactor: simplify program path searching in funclib.sh.
* gl/build-aux/funclib.sh (func_path_progs): New function. Factor
out common code from GREP and SED searches.
(func_check_prog_sed, func_check_prog_grep): New functions, for
non-common code.
(scriptversion): Update.
* bootstrap: Regenerate.
bootstrap: search for a non-truncating grep binary.
On at least Unixware 7.1.4, the first grep binary on PATH is
unable to process the extract-trace scripts.
* gl/build-aux/funclib.sh (GRUP): Search PATH for a grep binary
that doesn't truncate its own output if available, and set GREP
accordingly.
* Makefile.am (SCRIPT_ENV): Add setting for GREP.
* bootstrap: Regenerate.
Reported by Tim Rice.
bootstrap: search for a non-truncating sed binary.
On at least Unixware 7.1.4, the first sed binary on PATH is
unable to process the extract-trace scripts.
* gl/build-aux/funclib.sh (PATH_SEPARATOR): Set to : or ;
according to a feature test.
(func_executable_p): New function.
(SED): Search PATH for a sed binary that doesn't truncate its
own output if available, and set SED accordingly.
(scriptversion): Update.
* Makefile.am (SCRIPT_ENV): New macro, for propagating configured
variables.
(ltdl_ac_aux_dir, $(ltmain_sh), install-data-local): Use it.
* bootstrap: Regenerate.
Reported by Tim Rice.
2013-10-27 Gary V. Vaughan <gary@gnu.org>
tests: use autotest as_unset rather than rerolling $unset locally.
On at least Unixware 7.1.4, the shell variable 'unset' gets set
to 'no' during the testsuite run, breaking several test cases.
We should have been using Autotest $as_unset anyway.
* tests/testsuite.at (unset): Remove test and variable setting.
(LT_AT_MAKE): Use $as_unset as provided by autotest boilerplate
instead of our own $unset.
* tests/demo.at (uninstalled libraries ave priority): Likewise.
Reported by Tim Rice.
maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2013-10-26 Gary V. Vaughan <gary@gnu.org>
version 2.4.2.418
* NEWS: Record release date.
gnulib: update to latest upstream revision.
* gnulib: Update.
gnulib: use func_sort_ver instead of GNU sort -V in do-release-commit-and-tag.
* gl/build-aux/do-release-commit-and-tag: Source funclib.sh and
then use portable func_sort_ver rather than force installation of
all GNU coreutils just for sort -V support.
refactor: move func_sort_ver from bootstrap.in to funclib.sh.
* gl/build-aux/bootstrap.in (func_sort_ver): Move from here...
* gl/build-aux/funclib.sh (func_sort_ver): ...to here.
* bootstrap: Regenerate.
tests: use K&R main() syntax for old-ltdl-iface.at.
At least Mac OS 10.8.5 clang chokes on the previous
'const void *argv[]' parameter, but since we don't use it
anyway, keep to the theme of old api support and use K&R
syntax.
* tests/old-ltdl-iface.at (old.c): Use 'main ()' instead of
unportable 'int main (int argc, const void *argv[])'.
libltdl: bump -version-info revision by 1.
The only changes to libltdl sources since v2.4.2 have been
cosmetic and stylistic.
* libltdl/ltdl.mk (LTDL_VERSION_INFO): For a release with no
interface changes C:R:A becomes C:R+1:A.
maint: Update README-release for Makefile.inc -> ltdl.mk rename.
* gl/top/README-release.diff: s/Makefile.inc/ltdl.mk/g
maint: bump serials on m4 sources changed since v2.4.2.
* m4/argz.m4: Bump serial to 6.
* m4/libtool.m4: Bump serial to 58.
* m4/ltdl.m4: Bump serial to 19.
* m4/ltoptions.m4: Bump serial to 8.
maint: fix a syntax-check violation from commit 12641bd.
* build-aux/ltmain.in (func_mode_link): Reverse test operands to
forestall misinterpretation of contests of shell variable as
operand 1.
2013-10-10 Vadim Zeitlin <vz-libtool@zeitlins.org> (tiny change)
libtool: Don't fall back to static libraries if building them was disabled
If -no-undefined was not specified but the platform didn't
support shared libraries with undefined symbols (e.g. Cygwin/
MinGW), static libraries were built instead of shared ones,
even if building them was explicitly disabled with --disable-
static configure option.
Fix this by stopping with a fatal error if a shared library
can't be built in this case instead of unexpectedly building a
static library instead.
* libltdl/config/ltmain.m4sh (func_mode_link()): Stop with
fatal error when trying to build a shared library without -no-
undefined on a platform not supporting undefined symbols in
shared libraries.
2013-10-10 Brooks Moses <bmoses@google.com>
libtool: Remove unneeded quotes in assignment.
The quotes in this assignment cause "make syntax-check" to
fail. Thus, this patch removes them.
2013-10-09 Fabian Groffen <grobian@gentoo.org> (tiny change)
libtool: Fix x86_64-pc-solaris2.* GNU ld breakage
Since commit [1] libtool tries to set a 64-bits target for GNU
ld. However, it does so wrongly for x86_64-pc-solaris2.*
targets, causing libtool to believe the linker is called
ld_sol2. There is no such thing, and it obviously breaks
things further down. Some people wrongly assume there is
supposed to be an ld_sol2 on their systems, e.g. [2].
I think the original change is fragile, because it assumes it
has all CHOSTs matched, then appends _sol2. In the wild,
people have used amd64-pc-solaris2* too, so perhaps it would
be safer if the code only appended _sol2 if there is actually
an explicit target set.
Anyhow, since the 64-bits sparc target is called sparc64-* or
sparcv9-*, the sparc case is already correctly handled, so in
the attached patch, I just added an x86_64-* case, although I
could imagine relaxing the i?86 case to *86*-pc-solaris2* too.
In any case, defaulting to a linker called ld_sol2 is wrong.
[1] http://lists.gnu.org/archive/html/libtool-commit/2011-02/
msg00000.html
[2] http://osdyson.org/issues/8
2013-10-09 Olivier Blin <olivier.blin@softathome.com> (tiny change)
libtool: Fix detection of ld version with parentheses.
ld from crosstool-NG reports a version string with an extra
version number in a parenthetical note:
GNU ld (crosstool-NG 1.13.0) 2.21.1
This made libtool assume that the ld version was the
crosstool-NG version (1.13.0) instead of the real ld version
(2.21.1).
To fix the ld version string, this patch filters out any string
between parentheses that is followed by a space.
Because of this bug, filtering of exported symbols was not
taking place with crosstool-NG toolchains.
This issue has bee noticed when building pango, which exported
harfbuzz symbols that should have remained hidden.
2013-10-09 Brooks Moses <bmoses@google.com>
libtool: Fix comment indentation
This trivial patch fixes indentation on a comment to match
the style used elsewhere in m4/libtool.m4.
2013-10-09 DJ Delorie <dj@redhat.com>
libtool: Add TPF settings for LT_SYS_DLOPEN_SELF
* m4/libtool.m4: Since we know that all TPF builds are cross-
builds, do not attempt to run linker tests during config. Use
known constants instead, since we know how dlopen() is
implemented.
2013-10-09 Vincent Lefevre <vincent@vinc17.net> (tiny change)
libtool: Fix $wl setting for tcc on GNU systems
(This addresses http://bugs.debian.org/663945. See there for
more-detailed discussion.)
tcc gained support for "-Wl,-rpath -Wl,<directory>" in its
commit 7fb0482a ("Support linker options passed in several -Wl
param", 2012-03-14) but libtool doesn't know to use it. Teach
it.
Without this change, running "make check" on MPFR when it has
been built with tcc and shared libraries doesn't work because
libtool generates a -rpath option, which tcc doesn't support.
2013-10-09 Peter Johansson <trojkan@gmail.com>
libtool: use AS_HELP_STRING in LT_WITH_SYSROOT help message.
This patch fixes so help output is formatted similar with
other macros using AS_HELP_STRING. Also it outputs '[=DIR]'
as I suspect intended rather than '=DIR'.
2013-10-09 Joseph Prostko <joe.prostko@gmail.com> (tiny change)
libtool: Haiku change for shlibpath_overrides_runpath
Pretty much all changes to Haiku for Libtool have been
upstreamed, however we currently have an incorrect value for
shlibpath_overrides_runpath. It should be "no" instead of
"yes".
Previously Scott McCreary had submitted patches for us, but I
told him I would work to get this committed, as he is quite
busy lately.
Here is a commit he made to our Haiku Ports site though, that
shows the exact change I am proposing done against Libtool
2.4.2.
http://ports.haiku-files.org/browser/haikuports/sys-devel/
libtool/patches/libtool-2.4.2.patch
2013-10-09 Brooks Moses <bmoses@google.com> (tiny change)
Johannes Obermayr <johannesobermayr@gmx.de>
libtool: Discard "-mllvm $arg" options when linking.
Clang accepts options of the form "-mllvm $arg", and passes the
argument as an option to LLVM. These options caused problems
for Libtool when linking; in some cases, the -mllvm option is
passed through but the corresponding argument is dropped. (See
for example http://llvm.org/bugs/show_bug.cgi?id=14716.)
This patch resolves the issue by explicitly matching -mllvm and
taking an argument. Since Clang never uses LLVM for linking,
the matched "-mllvm $arg" option is irrelevant for the link
step, and we can simply discard it once we've recognized it.
2013-10-09 Ondřej Bílka <neleai@seznam.cz>
maint: Fix various comment and documentation typos.
Ondřej writes: "Hi, this is upstream version of patch that I
sent to gcc. I generated this patch with tool that I am
writing: https://github.com/neleai/stylepp"
(Note: The generated patch was adjusted to retain the non-US
but correct spelling of 'rigourous' before commit. --Brooks)
2013-10-08 David 'Digit' Turner <digit@google.com>
libtool: Add Android/Linux support.
This patch adds proper Android support to libtool. The main
issues are the following:
- Versioned libraries are not supported by the platform and
its build/packaging tools.
- The dynamic linker is not GNU ld, there is no support for
DT_RUNPATH.
- Similarly, there is no ldconfig.
2013-09-17 Peter Rosin <peda@lysator.liu.se>
libtool: trust -print-search-dirs from recent GCC
Alan Modra hints in [1] that -print-search-dirs was fixed in
GCC 4.2(?), so that it nowadays automatically appends
-print-multi-os-directory for the applicable directories. I.e.
it should no longer be necessary for libtool to append a second
../lib64 when GCC has already done so. Also, the multi-os
appending loop seems to have been added specifically for early
(arguably broken) bi-arch enabled GCCs that printed -m32
directories even though -m64 was the default [2]. So, my
conclusion is that we want any libtool magic to affect
-print-search-dirs output from contemporary GCCs as little as
possible, while continuing to append the
-print-multi-os-directory for the legacy case.
Fixes bug#15321 reported by Ozkan Sezer.
[1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20425
[2] http://lists.gnu.org/archive/html/bug-libtool/2006-09/msg00019.html
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): If any of the
directories printed by -print-search-dirs ends with the
content of -print-multi-os-directory, then assume that
GCC adds the multi-os-directory where appropriate all by
itself and hence don't try to second guess when to add
it manually.
* THANKS: Update.
2013-09-16 Gary V. Vaughan <gary@gnu.org>
bootstrap: clean up spurious 'gnulib-cache.m4 missing' error.
* gl/build-aux/bootstrap.in (func_reconfigure): Don't show an
error when running without gnulib-cache.m4.
* bootstrap: Regenerate.
2013-09-15 Gary V. Vaughan <gary@gnu.org>
bootstrap: make ensure_changelog work for update mode projects.
* gl/build-aux/bootstrap.in (func_bootstrap): Move
func_changelog_ensure invocation from here...
(func_reconfigure): ...to here. If gnulib_modules is empty, then
grep gnulib-cache.m4 for gitlog-to-changelog before invoking
func_changelog_ensure.
* bootstrap: Regenerate.
bootstrap: fetch defaults from gnulib-cache.m4 for non-imported projects.
Recent changes uncovered some bugs in handling of gnulib-tool
options for projects that check in gnulib-cache.m4 rather than
keep a separate list of modules and options in bootstrap.conf.
* gl/build-aux/bootstrap.in (func_require_doc_base)
(func_require_gnulib_name, func_require_local_gl_dir): New
functions to set defaults from gnulib-cache.m4 in projects that
use gnulib-tool in --update mode.
(func_require_gnulib_tool_base_options): Use them to fetch
defaults.
(func_require_gnulib_copy_cmd): New function to calculate the
options required for gnlib-tool copy command.
(func_gnulib_tool_copy_file): Simplify accordingly.
(scriptversion): Bump.
2013-09-05 Gary V. Vaughan <gary@gnu.org>
maint: normalise formatting of recent commit log entry.
* build-aux/git-log-fix: Add a summary line to ChangeLog entry of
most recent commit.
2013-09-05 Brooks Moses <bmoses@google.com>
maint: add Brooks Moses to AUTHORS file.
* AUTHORS: Add myself to committers list.
2013-08-29 Gary V. Vaughan <gary@gnu.org>
bootstrap: gnulib_tool=true means no gnulib submodule.
* gl/build-aux/bootstrap.in (func_require_gnulib_tool): No
sneaking off and cloning gnulib when the user already specified
gnulib_tool=true in their bootstrap.conf!
* bootstrap: Regenerate.
2013-08-23 Alan Modra <amodra@bigpond.net.au>
bootstrap: make first char of IFS a space.
Putting tab first in IFS breaks func_echo_all usage of $*,
resulting in failure of func_infer_tag to match a command line
using a $CC with trailing spaces. The trailing spaces were
stripped out of CC_expanded but words in $CC were separated by
tabs. This didn't match the makefile expansion of $CC using the
standard IFS with a first char of space.
* gl/build-aux/funclib.sh (IFS): Make first char a space.
* bootstrap: Regenerate.
2013-08-23 Gary V. Vaughan <gary@gnu.org>
bootstrap: support --no-git and --no-po options.
* gl/build-aux/bootstrap.in (bootstrap_parse_options): Accept
--no-git as an alias for --skip-git for compatibility with gnulib
bootstrap, and --no-po for symmetry.
Reported by Mike Miller.
bootstrap: support gnulib gnulib_tool_option_extras settings.
* gl/build-aux/bootstrap.in (func_gnulib_tool): Even though we
don't need it, support gnulib_tool_option_extras for bootstrap.conf
ported from gnulib bootstrap.
* bootstrap: Regenerate.
Reported by Mike Miller.
bootstrap: support sha1 binary on OpenBSD.
* gl/build-aux/bootstrap.in (func_update_po_files): Remove the
use of --status in a way that will suppress all error messages,
but since this is only used to minimize updates, it shouldn't
cause an issue.
Look for a sha1 binary if the other SHA1SUM settings are not
found.
Also exit early if there is a problem updating the po file
checksums.
* bootstrap: Regenerate.
Ported from a gnulib patch by Padraig Brady.
bootstrap: support tools that don't accept '--version' in buildreq.
* gl/build-aux/bootstrap.in (func_check_tool): Check whether there
is an executable as given or on the command PATH.
(func_check_version): Use func_check_tool to avoid invoking --version
when buildreq specifies '-' for the version number.
* bootstrap: Regenerate.
Reported by Mike Miller.
bootstrap: diagnose bad $buildreq formatting.
Particularly when porting from gnulib bootstrap to libtool
bootstrap, it's easy to forget the extra URL column used for
error reporting.
* gl/build-aux/bootstrap.in (func_check_versions): A non-URL
pattern in the 3rd column of buildreq triggers a fatal error.
* bootstrap: Regenerate.
Reported by Mike Miller.
2013-08-23 Gary V. Vaughan <gary@gnu.org> (tiny change)
bootstrap: support OpenBSD sed.
* gl/build-aux/bootstrap.in (func_insert_if_absent): Work around
the problem of OpenBSD sed not supporting '-' as a notation for
standard input.
* bootstrap: Regenerate.
* THANKS: Add Mike Miller.
Reported by Mike Miller.
2013-08-23 Steve Ellcey <sellcey@mips.com>
Gary V. Vaughan <gary@gnu.org>
libtool: set correct linker ABI flags on mips64 linux.
m4/libtool.m4 (_LT_ENABLE_LOCK): Select the n32 or n64 ABI when
linking to match the ABI produced with the user's compiler flags.
2013-08-23 Gary V. Vaughan <gary@gnu.org>
maint: correct many abuses of the word "which".
* HACKING, NEWS, TODO, bootstrap, bootstrap.conf,
build-aux/ltmain.in, cfg.mk, configure.ac, doc/libtool.texi,
doc/notes.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/doc/bootstrap.texi, libltdl/libltdl/lt_system.h,
libltdl/loaders/loadlibrary.c, libltdl/lt__strl.c,
libltdl/lt_dlloader.c, libltdl/ltdl.c, libtoolize.in,
m4/libtool.m4, m4/ltdl.m4, m4/ltsugar.m4, m4/lt~obsolete.m4,
tests/exceptions.at, tests/need_lib_prefix.at, tests/static.at:
Use "which" correctly, or replace with "that", "where" or "what"
as appropriate.
2013-08-23 Brook Moses <bmoses@google.com>
libtool: improve comments for _LT_ENABLE_LOCK implementation.
* m4/libtool.m4 (_LT_ENABLE_LOCK): enhance comments to explain
why the code looks odd with 32bit flags in the 64bit section and
vice versa.
2013-08-22 Alan Modra <amodra@bigpond.net.au>
libtool: fix refixed unmangled powerpc*le-linux support patch
* m4/libtool.m4: fix refixed badly unmangled hunks from earlier
powerpc*le changeset.
Reported by Peter Rosin.
libtool: refix unmangled powerpc*le-linux support patch
* m4/libtool.m4: refix badly unmangled hunks from earlier
powerpc*le changeset.
Reported by Peter Rosin.
2013-08-22 Gary V. Vaughan <gary@gnu.org>
libltdl: don't trip subdir-objects warning from Automake >= 1.14.
Latest Automake releases now warn when subdir-objects is not
specified in preparation for Automake 2.0. The option has been
in Automake for more than a decade, so there's minimal risk of
someone using the next release of Libtool alongside an ancient
release of Automake when bootstrapping libltdl client projects.
* libltdl/configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects.
libtool: refactor powerpc*le-linux case branch expressions.
libtool (_LT_ENABLE_LOCK): make inner case branch expressions
consistent with outer case expression.
Reported by Peter Rosin.
2013-08-22 Alan Modra <amodra@bigpond.net.au>
libtool: fix mangled powerpc*le-linux support patch
* m4/libtool.m4: unmangled badly pasted hunks from previous
changeset.
libtool: initial powerpc*le-linux support
* m4/libtool.m4 (ld -m flags): Remove non-canonical ppc host match.
Support little-endian powerpc linux host.
2013-06-17 Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
libtool: fix conversion warnings in cwrapper
build-aux/ltmain.in (func_emit_cwrapperexe_src:main): XMALLOC wants a
size_t. Also use int instead of intptr_t for the return value (which
is fine since the _spawnv call is synchronous).
(func_emit_cwrapper_src) [MSVC]: Remove the intptr_t helper define.
(func_emit_cwrapperexe_src:find_executable): Use size_t for variables
involved in strlen computations.
(func_emit_cwrapperexe_src:lt_setenv): Likewise.
(func_emit_cwrapperexe_src:lt_extend_str): Likewise.
(func_emit_cwrapperexe_src:lt_update_exe_path): Likewise.
THANKS: Update.
2013-04-28 Peter Rosin <peda@lysator.liu.se>
libtool: break all the way out when a good nm is found
The current code tries to locate a compatible nm tool. It starts with
a prefixed nm tool (great!) and includes a plain nm too (that's fine).
The problem is that the code searches for the prefixed nm before the
plain nm (normally fine), but doesn't break once it has found a valid
match, and the plain nm ends up the winner.
Report and analysis by Mike Frysinger.
* m4/libtool.m4 (LT_PATH_NM): Break all the way out on a good match.
2013-01-28 Peter Rosin <peda@lysator.liu.se>
maint: update email address...
* THANKS: ...of Jan Engelhardt.
2013-01-28 Jan Engelhardt <jengelh@inai.de>
doc: fix an orthographic error
* doc/libtool.texi (Install mode): Ensure, not insure.
2013-01-27 Gary V. Vaughan <gary@gnu.org>
bootstrap: fix func_insert_if_absent bugs.
* gl/build-aux/bootstrap.in (func_insert_if_absent): Print verbose
message when there is a new entry to add.
Also, make sure to update the .gitignore file when changed.
* bootstrap: Regenerate.
* THANKS: Add Pádraig Brady.
Reported by Pádraig Brady.
bootstrap: factor out gnulib-tool option calculations.
* gl/build-aux/bootstrap.in (func_gnulib_tool): Factor base option
settings out...
(require_gnulib_tool_base_options): ...to here.
* bootstrap: Regenerate.
syntax-check: fix a quoted_test_operand violation.
* gl/build-aux/bootstrap.in (func_insert_if_absent): Make sure
test operands are quoted correctly.
* bootstrap: Regenerate.
syntax-check: fix new SPACE-TAB violations.
* build-aux/ltmain.in (func_dll_def_p): Replace SPACE-TAB by
TAB-SPACE.
* m4/libtool.m4 (_LT_DLL_DEF_P): Likewise.
2013-01-26 Bernhard Voelker <mail@bernhard-voelker.de>
Gary V. Vaughan <gary@gnu.org>
bootstrap: always auto-add .gitignore files at the top.
* gl/build-aux/bootstrap.in (func_gitignore_entries): New function.
Strip comments and blank lines.
(func_insert_sorted_if_absent): Renamed...
(func_insert_if_absent): ...to this. Adjust all callers.
Instead of comparing the sorted new file with the original,
compare the line count, being careful to diagnose duplicate
entries which would otherwise skew the count.
2013-01-26 Gary V. Vaughan <gary@gnu.org>
maint: patch gitlog-to-changelog to reduce bogus warnings.
Rather than trying to find a new useful warning among the 55
expected warnings from vanilla gitlog-to-changelog, patch it to
elide the bogus warnings from duplicate log entries.
* gl/bulid-aux/gitlog-to-changelog.diff: Omit-from-ChangeLog is
a new log entry tag to skip legitimate log duplicates.
* build-aux/git-log-fix: Instead of deleting all content of
duplicates and generating a warning, append the new
Omit-from-ChangeLog tag to elide silently.
* Makefile.am *($(changelog)): Remove the 'expect 55 warnings'
echo.
2013-01-22 Peter Rosin <peda@lysator.liu.se>
libtool: factor out the dll .def file test and improve it
Resolves bug#13414. Problem reported by Erik van Pienbroek
and Martin Doucha.
build-aux/ltmain.in (func_mode_link): Factor out the test if a
given symbol file is a module-definition (.def) file into...
(func_dll_def_p): ...this function, which also improves the check.
m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
<cygwin, mingw, pw32, cegcc>: Similarly, factor out the test if
a given symbol file is a module-definition (.def) file into...
(_LT_DLL_DEF_P): ...this macro, which also improves the check.
tests/export-def.at: New test.
Makefile.am (TESTSUITE_AT): Add above test.
NEWS: Update.
THANKS: Update.
2013-01-21 Peter Rosin <peda@lysator.liu.se>
libtool: allow tabs in *_cmds variables
This is in preparation for the next patch, which needs to have literal
tab characters survive the evaluation of the *_cmds variables.
build-aux/ltmain.in (func_execute_cmds, func_mode_link): Don't collapse
tabs and surrounding whitespace into a single space when executing a
tilde-separated cmds construct, instead keep any tabs intact.
2013-01-19 Peter Rosin <peda@lysator.liu.se>
libtool: avoid tabs in all *_cmds variables.
This is in preparation for the next change, which will preserve
tabs when the *_cmds variables are evaluated. Removing tabs first
ensures that the libtool output stays the same when tabs are not
collapsed with surrounding whitespace.
m4/libtool.m4: Convert indenting tabs to spaces for all *_cmds
variables.
2013-01-16 Peter Rosin <peda@lysator.liu.se>
libtool: align archive_cmds with archive_expsym_cmds for MSVC
m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
<archive_cmds>: Specify the import library name, aligning with
archive_expsym_cmds.
libtool: feed .def files verbatim to the MSVC linker
m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
<archive_expsym_cmds>: When the symbol list isn't really a symbol list,
but instead a .def file, copy it to a file with .def extension so that
MSVC recognizes it as a module-definition file and feed it verbatim.
NEWS: Update
2013-01-15 Peter Rosin <peda@lysator.liu.se>
Revert "libtool: use false or : for $always_export_symbols, and simplify"
This reverts commit 5ed7430fcb48c862c9d76ef497b73485d580338e, which is
totally bogus as the variable is also set in libtool.m4. Sorry for the
noise.
libtool: use false or : for $always_export_symbols, and simplify
* build-aux/ltmain.in (func_mode_link): Save a string comparison
by setting $lways_export_symbols to false or : and using it directly
as the first argument to if. Make sure that it is always initialized
while at it.
2013-01-09 Peter Rosin <peda@lysator.liu.se>
tests: fix nits in path handling
tests/bindir.at: func_save_and_prepend_path is already checking
$bindirneeded internally, so remove checks from call sites. Add
proper quoting while at it.
(func_save_and_prepend_path): Use $PATH_SEPARATOR instead of a literal
colon (in both instances).
2013-01-08 Peter Rosin <peda@lysator.liu.se>
libtool: simplify quoting and code for symbols exporting sed programs
* m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
<archive_expsym_cmds>: Make the sed programs easier to read (and
recover some backslashes for later in the process).
2013-01-03 Peter Rosin <peda@lysator.liu.se>
tests: don't feed -no-undefined to the linker during configure.
* tests/deplibs-mingw.at: Restore LDFLAGS for the configure run so that
the linker does not see -no-undefined. Makes the test pass instead of
skip on MinGW.
2013-01-03 Gary V. Vaughan <gary@gnu.org>
maint: note warnings during ChangeLog generation are normal.
* Makefile.am ($(changelog)): Output a note that 55 empty commit
log warning messages during ChangeLog generation are expected.
git: ignore .serial file.
* .gitignore: ignore .serial file.
maint: fix recent badly formatted ChangeLog entry.
* build-aux/git-log-fix: No empty lines in a single commit.
syntax-check: fix a useless_quotes_in_assignment violation.
* gl/build-aux/inline-source (func_require_AWK): Remove useless
quotes.
syntax-check: fix prohibit_strcmp syntax-check violation.
* build-aux/ltmain.in (func_generate_dlsyms): Add a definition for
STREQ, and then use it in place of !strcmp.
docs: update copyright dates in libtool.texi.
It seems `make update-copyright' missed the texinfo copyright
notice.
* doc/libtool.texi: Update copyright dates for 2013.
2013-01-03 Brad Smith <brad@comstyle.com>
libtool: add bitrig support.
* build-aux/ltmain.in (func_mode_link): Add bitrig support.
* m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE, LT_CMD_MAX_LEN)
(_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Ditto.
* m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Ditto.
* tests/deplibs-ident.at(build tree relpaths): Ditto.
* NEWS: Updated.
2013-01-01 Peter Rosin <peda@lysator.liu.se>
maint: check if git works before relying on it
Makefile.am (m4/ltversion.m4): Take the opportunity to regenerate
$(srcdir)/.serial whenever git is actually working.
(git_version_gen): Provide a fallback version for the git-version-gen
script to use when .tarball-version does not exist and git is not
working.
maint: really do update to latest upstream gnulib
Commit 9a7071e668d044c1c47c855d2f0bc7cadb235071 "maint: update
copyright notices to include 2013." states that this was done, but
it actually was not.
gnulib/: Update to latest upstream.
2013-01-01 Gary V. Vaughan <gary@gnu.org>
maint: remove unsupported Tested-by: tag.
* build-aux/git-log-fix: Tested-by: line should not appear in the
ChangeLog.
2013-01-01 Peter Rosin <peda@lysator.liu.se>
bootstrap: update README-release patch
gl/top/README-release.diff: Update to match latest gnulib changes.
2013-01-01 Gary V. Vaughan <gary@gnu.org>
maint: update copyright notices to include 2013.
* gnulib/: Update to latest upstream.
* AUTHORS, ChangeLog.old, HACKING, Makefile.am, NEWS, README,
THANKS, TODO, bootstrap, bootstrap.conf,
build-aux/edit-readme-alpha, build-aux/ltmain.in, cfg.mk,
configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/build-aux/inline-source, gl/build-aux/options-parser,
libltdl/README, libltdl/argz.c, libltdl/argz_.h,
libltdl/configure.ac, libltdl/libltdl/lt__alloc.h,
libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
libltdl/loaders/shl_load.c, libltdl/lt__alloc.c,
libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c,
libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h,
libltdl/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
tests/am-subdir.at, tests/archive-in-archive.at,
tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
tests/cwrapper.at, tests/darwin.at, tests/demo.at,
tests/depdemo.at, tests/deplib-in-subdir.at,
tests/deplibs-ident.at, tests/deplibs-mingw.at,
tests/destdir.at, tests/dlloader-api.at,
tests/dumpbin-symbols.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/exceptions.at,
tests/execute-mode.at, tests/exeext.at, tests/export.at,
tests/f77demo.at, tests/fail.at, tests/fcdemo.at,
tests/flags.at, tests/help.at, tests/indirect_deps.at,
tests/infer-tag.at, tests/inherited_flags.at, tests/install.at,
tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
tests/need_lib_prefix.at, tests/no-executables.at,
tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
tests/resident.at, tests/runpath-in-lalib.at,
tests/search-path.at, tests/shlibpath.at, tests/slist.at,
tests/standalone.at, tests/static.at, tests/stresstest.at,
tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
tests/template.at, tests/testsuite.at, tests/versioning.at,
tests/with-pic.at: Bump copyright year.
2012-12-19 Peter Rosin <peda@lysator.liu.se>
libtool: Drop $LDFLAGS when invoking the toolchain
m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [Solaris] <archive_cmds>: Drop
$LDFLAGS as it is a user variable that is usually used when invoking
libtool. As such, it should not be used by libtool when it invokes the
toolchain as it contains options intended for libtool, not the
toolchain. Fixes export.at and other tests that add -no-undefined to
LDFLAGS.
2012-12-19 Richard Palo <richard.palo@baou.fr> (tiny change)
libtool: Add SONAME to the so when exporting explicit symbols on Solaris
m4/libtool.m (_LT_LANG_CXX_CONFIG) [Solaris] <archive_expsym_cmds>: Feed
-h $soname to the linker just as is done in archive_cmds.
THANKS: Update.
2012-11-02 Peter Rosin <peda@lysator.liu.se>
libtool: add @INIT@ to the preloader, for data imports on Windows
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Adjust
lt_cv_sys_global_symbol_to_cdecl so that it declares imported
data symbols as __declspec(dllimport). Adjust
lt_cv_sys_global_symbol_to_c_name_address and
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix so that they
fill in "(void*) 0" for imported data symbols. Add new
lt_cv_sys_global_symbol_to_import which finds imported data
symbols if non-empty and export this variable to the libtool script
in the global_symbol_to_import variable. Adjust
lt_cv_sys_global_symbol_pipe so that data imports can be located.
* build-aux/ltmain.in (func_generate_dlsyms): When data imports
are present, as indicated by global_symbol_to_import, generate
a relocation function lt_syminit that fills in the addresses
of data imports at runtime and point to the new function with a
new virtual @INIT@ entry in the symbol list.
* libltdl/loaders/preopen.c (add_symlist): Look for the virtual
@INIT@ symbol (i.e. lt_syminit) and call it.
(vm_sym): Step past the @INIT@ symbol, if present.
* tests/demo.at (dlmain.c): Call the @INIT@ symbol, if present.
* NEWS: Update.
2012-11-02 Peter Rosin <peda@lysator.liu.se>
libtool: unify the global symbol transformations
Since it is safe for $lt_cv_sys_global_symbol_to_cdecl to match
with a simple /^T .* .*$/ type expression, it is ok for the other
transformations as well. At least if you require at least one
$symcode at the start of the line, so that the just generated output
doesn't match the next sed expression.
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unify the matching expressions
in the sed programs that transform the extracted symbol lines.
2012-11-02 Peter Rosin <peda@lysator.liu.se>
libtool: break up long lines
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Break up long lines when
assigning the sed scripts that transform the extracted symbol lines.
2012-10-25 Gary V. Vaughan <gary@gnu.org>
bootstrap: use a decent awk if /bin/awk is hopeless.
Bootstrap used to fail without an explicit AWK environment
setting on machines with both nawk and awk, but where awk is a
museum piece.
* gl/build-aux/inline-source (AWK): Remove initial setting.
(require_awk): Search PATH for a gawk, mawk or nawk before
settling on awk, just like configure does.
(func_include): Use it.
bootstrap: be sure to register gnulib submodule.
* gl/build-aux/bootstrap.in (require_gnulib_submodule): Register
the gnulib submodule before updating it, even with a shallow
clone of gnulib.
* bootstrap: Regenerate.
Reported by Robert Boehne.
bootstrap: fix a typo in a find invocation.
* gl/build-aux/bootstrap.in (require_buildreq_patch): Fix a typo.
* bootstrap: Regenerate.
bootstrap: bash versions 3.00.x do not have += functionality.
* gl/build-aux/funclib.sh: Fix a typo in fork minimisation for
bash versions 3.00.x.
* bootstrap: Regenerate.
maint: fix missing command error in make dist.
* Makefile.am ($(readme)): Don't forget the 'test'!
tests: fixup experr for addition whitespace in error prefix.
Fix spurious test failures due to unmatched experr output.
* tests/libtoolize.at, tests/old-ltdl-iface.at: Add the addition
2 spaces now used to justify error prefixes.
bootstrap: use of ';' in sed scripts is not portable.
* gl/build-aux/bootstrap.in (require_buildreq_automake)
(require_dotgitmodules_parameters, require_package)
(func_update_po_files): Use '\n' or -e to separate sed commands,
instead of ';'.
* gl/build-aux/extract-trace (func_autoconf_configure)
(func_extract_trace_first): Likewise.
* gl/funclib.sh: Likewise.
(func_tr_sh): Likewise.
* gl/build-aux/options-parser (func_usage_message): Likewise.
* bootstrap: Regenerate.
Reported by Robert Boehne.
bootstrap: don't $tc_standout spaces, it's ugly!
* gl/build-aux/funclib.sh (func_error): Move the prefix indent
before $tc_standout to avoid bright red inverse spaces.
* bootstrap: Regenerate.
bootstrap: fix rectangle select induced trailing spaces.
* gl/build-aux/funclib.sh (require_term_colors): Delete trailing
whitespace.
* bootstrap: Regenerate.
bootstrap: display prerequisite program environment vars.
Be more helpful when a prerequisite program from $buildreq
cannot be located, by showing what variable to export if it
is already installed but not in PATH.
* gl/build-aux/bootstrap.in (func_check_versions): Display
associated environment variables for not found prerequisite
programs.
* bootstrap: Regenerate.
bootstrap: honor COLORTERM and USE_ANSI_COLORS.
Plenty of machines use a terminfo database that doesn't have
entries for color escape sequences, even though the terminal
itself most likely supports ANSI color escapes.
* gl/build-aux/funclib.sh (require_term_colors): If COLORTERM
or USE_ANSI_COLORS are set, then ignore what terminfo says,
and use standard ANSI color escape sequences.
* bootstrap: Regenerate.
bootstrap: make error messages prettier.
* gl/build-aux/funclib.sh (func_error): Indent 'error' prefix by
two additional spaces to line up nicely with 'warning' and
'running'.
* bootstrap: Regenerate.
2012-10-24 Gary V. Vaughan <gary@gnu.org>
bootstrap: emphasize command executions with terminal bold.
* bootstrap.in (func_show_eval): Use $require_term_colors to
embolden the command about to be executed in output.
* bootstrap: Regenerate.
* bootstrap.conf (libtool_build_prerequisites): Use the standard
(colorful!) bootstrap func_show_eval here too.
bootstrap: show output from 'make bootstrap-deps'.
* bootstrap.conf (libtool_build_prerequisites): Add support for
AM_V_GEN and AM_V_at to the temporary pre-configure Makefile.
Instead of eliding non-error output from bootstrap-deps, show
the results, with verbosity set according to $opt_verbose.
* Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh, libtool)
(README): Fix the display rules to correctly fall-back to
AM_DEFAULT_VERBOSITY when V=1 is not passed to make invocation.
2012-10-22 Gary V. Vaughan <gary@gnu.org>
maint: fixup badly formatted ChangeLog entries.
* build-aux/git-log-fix: Mostly missing category tags and refilling
to 64 columns, but also deleting duplicate entries from merging the
gary/reredo-test-operand-order branch.
* g/build-aux/gitlog-to-changelog.diff: Local patch to prevent
printing unqualified header lines for deleted duplicate patches.
* THANKS: Put email address for Paul Seidler here...
* build-aux/git-log-fix: ...and remove from ChangeLog here.
bootstrap: regenerate to propagate Bob's func_split_equals fix.
* bootstrap: regenerate.
2012-10-22 Mikhail Zabaluev <mikhail.zabaluev@gmail.com> (tiny change)
configury: make LT_INIT options pic-only and no-pic work.
* m4/ltoptions.m4 (_LT_WITH_PIC): Set pic_mode at m4 time.
2012-10-22 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
options-parser: fix regexp quoting error.
* gl/build-aux/options-parser (func_split_equals): Fixed expr
regexp quoting syntax error encountered with non-XSI shells.
Problem was noticed under Solaris 10.
2012-10-21 Gary V. Vaughan <gary@gnu.org>
syntax-check: fix violations and implement sc_old_style_quoting.
Modern GNU ASCII quoting in output and comments is done
'like this'.
* cfg.mk (sc_old_style_quoting): Try to catch most instances
of `old style quoting' so that it is not accidentally re-
introduced to the code.
* HACKING, Makefile.am, NEWS, PORTING, README, TODO, bootstrap,
bootstrap.conf, build-aux/edit-readme-alpha,
build-aux/git-hooks/commit-msg, build-aux/ltmain.in,
doc/libtool.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/build-aux/inline-source, gl/build-aux/options-parser,
libltdl/libltdl/slist.h, libltdl/loaders/loadlibrary.c,
libltdl/ltdl.c, libltdl/slist.c, libtoolize.in, m4/argz.m4,
m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4,
tests/cmdline_wrap.at, tests/configure-iface.at, tests/demo.at,
tests/depdemo.at, tests/deplib-in-subdir.at,
tests/deplibs-mingw.at, tests/destdir.at, tests/execute-mode.at,
tests/f77demo.at, tests/fail.at, tests/inherited_flags.at,
tests/libtool.at, tests/libtoolize.at, tests/lt_dladvise.at,
tests/lt_dlexit.at, tests/mdemo.at, tests/need_lib_prefix.at,
tests/old-ltdl-iface.at, tests/old-m4-iface.at, tests/static.at,
tests/stresstest.at, tests/testsuite.at, tests/versioning.at:
Convert to upright quotes.
tests: remove spurious shell variable braces.
* tests/testsuite.at: Allow the shell braces syntax check to pass
again.
bootstrap: add missing bootstrap override module file.
* gl/modules/bootstrap: Forgot to add this file in a previous
commit.
bootstrap: allow bootstrap.texi to pass syntax-check.
* cfg.mk (sc_require_function_nl_brace): Skip texi files.
* gl/doc/bootstrap.texi: Fix assorted syntax-check violations.
bootstrap: move into local gl overrides directory.
In order to work as if it were already adopted by upstream
gnulib, put bootstrap and supporting scripts into the local
gnulib overrides directory.
* bootstrap, build-aux/extract-trace, build-aux/funclib.sh,
build-aux/inline-source, build-aux/options-parser: Move from
here...
* gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
gl/build-aux/funclib.sh, gl/build-aux/inline-source,
gl/build-aux/options-parser: ...to here.
* gl/build-aux/options-parser (func_version): Show only the
first copyright notice on files generated with inline-source.
* gl/doc/bootstrap.texi: Developer documentation for bootstrap.
* gl/modules/extract-trace, gl/modules/funclib.sh,
gl/modules/inline-source, gl/modules/options-parser: Describe
dependencies for gnulib-tool.
* bootstrap.conf (gnulib_modules): Add extract-trace,
inline-source and options-parser modules.
* bootstrap: Regenerated from gnulib overrides as a mono-
lithic script file using gl/build-aux/inline-source.
2012-10-20 Gary V. Vaughan <gary@gnu.org>
tests: make sure AC_CONFIG_MACRO_DIR is still supported.
* tests/old-m4-iface.at (AC_CONFIG_MACRO_DIR support): New test.
Make sure we continue to support AC_CONFIG_MACRO_DIR using
projects.
libtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.
* tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIRS directories):
New test to ensure multiple directory arguments mork correctly.
* libtoolize.in (func_require_ac_macro_dir): Use expr to discard
any additional space delimited entries in the first
AC_CONFIG_MACRO_DIRS argument.
* bootstrap (func_require_macro_dir): Likewise.
libtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.
* libtoolize.in (func_install_pkgmacro_files): Uee
AC_CONFIG_MACRO_DIRS.
(func_check_macros): Advise using AC_CONFIG_MACRO_DIRS.
(require_ac_macro_dir): Give priority to AC_CONFIG_MACRO_DIRS.
(require_macro_dir): Likewise.
* bootstrap: Give priority to AC_CONFIG_MACRO_DIRS.
* configure.ac: Define dummy AC_CONFIG_MACRO_DIRS for older
Autotools, that is allow bootstrap with current release versions.
Use AC_CONFIG_MACRO_DIRS instead of AC_CONFIG_MACRO_DIR.
* tests/testsuite.at: Source build-aux/extract-trace for access
to func_extract_trace.
(LT_AT_ACLOCAL): Use it to get the AC_CONFIG_MACRO_DIRS argument
to pass manually to aclocal for compatibility with old Automake.
Add a fallback AC_CONFIG_MACRO_DIRS definition to acinclude.m4
in the test directory.
(LT_AT_AUTORECONF): Likewise.
* tests/cdemo.at, tests/configure-iface.at, tests/darwin.at,
tests/demo.at, tests/depdemo.at, tests/early-libtool.at,
tests/libtoolize.at, tests/mdemo.at, tests/no-executables.at,
tests/nonrecursive.at, tests/old-ltdl-iface.at,
tests/recursive.at, tests/subproject.at, tests/tagdemo.at,
tests/template.at: Likewise.
* doc/libtool.texi: Update.
* NEWS: Update.
2012-10-19 Peter Rosin <peda@lysator.liu.se>
libtool: parse "dumpbin -headers" to get symbols exported from implibs
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Extract symbols
imported from DLLs by import libraries in the Microsoft dumpbin
wrapper.
(LT_PATH_NM): Add -headers option if dumpbin is the located name
lister to feed the above new code.
* NEWS: Update.
libtool: make func_win32_libid work when the name lister is MS dumpbin
* m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [MSVC]: Use
func_win32_libid as file_magic_cmd when the name lister
is MS dumpbin.
(_LT_CMD_GLOBAL_SYMBOLS): Export the new veriable nm_interface
to the libtool script.
* build-aux/ltmain.in (func_cygming_gnu_implib_p)
(func_cygming_ms_implib_p): Move up to before...
(func_win32_libid): ...which now uses them to determine if
the object is an import library when the nm_interface is
"MS dumpbin".
* NEWS: Update.
2012-10-19 Gary V. Vaughan <gary@gnu.org>
bootstrap: always extract only the first AC_CONFIG_MACRO_DIR arg.
Previous versions of bootstrap concatenated all the arguments to
multiple invocations of AC_CONFIG_MACRO_DIR when extracting the
macro_dir directory name. This change enforces correct and
consistent behaviour.
* libtoolize.in (func_require_macro_dir): Use the new
func_extract_trace_first function to make sure the first argument
is always used.
(func_require_aux_dir, func_require_gnulib_mk)
(func_require_source_base): Future proof these functions against
multiple invocations or additional arguments to the macros they
trace.
bootstrap: extract *first* ACLOCAL_AMFLAGS -I argument.
* bootstrap (func_require_macro_dir): .* is greedy, so _G_sed_scan
as it was will always return the last -I argument, which is wrong.
Move to a shell loop to ensure we always get the first -I argument
if any. (code from libtoolize.in).
bootstrap: use short gnu.org urls consistently.
* bootstrap.conf (buildreq): Use gnu.org/s/ style urls to match
the ones added automatically by the main bootstrap script.
libtoolize: fix a misspelled variable name.
* libtoolize.in (func_require_am_macro_dir): The loop uses _G_arg
not _G_opt. Now spelled correctly.
tests: always extract only the first AC_CONFIG_MACRO_DIR arg.
Previous releases of libtoolize used the final invocation when
there were several, and after the rewrite over extract-trace,
all the invocation directories were concatenated. This change
enforces correct and consistent behaviour.
* tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIR invocation):
New test.
* build-aux/extract-trace (func_extract_trace_first): New function
for clients that source this file, which returns only the first
argument to the first invocation of the named macros.
* libtoolize.in (func_require_ac_macro_dir): Use it to make sure
the first argument is always used.
(func_require_ac_aux_dir, func_require_ac_ltdl_dir)
(func_require_ac_ltdl_options): Future proof these functions against
multiple invocations or additional arguments to the macros they
trace.
* News (Important incompatible changes): Note change in semantics.
Reported by Eric Blake.
tests: always extract only the first ACLOCAL_AMFLAGS include arg.
* tests/libtoolize.at (libtoolize ACLOCAL_AMFLAGS extraction):
New test.
* libtoolize.in (func_check_macros): Display the correct advice
when ACLOCAL_AMFLAGS specifies a macrodir, but AC_CONFIG_MACRO_DIR
does not.
doc: add a missing period following @xref.
* doc/libtool.texi: Silence a warning by adding back a missing
period.
2012-10-19 Peter Rosin <peda@lysator.liu.se>
libtool: avoid non-underscore symbols in the "dumpbin -symbols" wrapper
If an object has a symbol lacking an expected leading underscore,
the symbol name is not printed, but the symbol type is, leading
to output such as:
T _normal _normal
T T _another _another
when the expected output would have been something like:
T _normal _normal
T no_underscore no_underscore
T _another _another
However, symbols lacking an expected leading underscore are
not "real" symbols, they are internal symbols which we don't
care about, therefore drop them instead.
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Output the whole
symbol line in one go.
* NEWS: Update.
2012-10-18 Peter Rosin <peda@lysator.liu.se>
libtool: unbreak Windows path quoting
The lt_sed_naive_backslashify variable lost its lt_ prefix
when m4sh was dropped. But not everywhere.
* build-aux/ltmain.in (func_convert_core_file_wine_to_w32)
(func_convert_core_msys_to_w32): Drop the lt_ prefix from
the lt_sed_naive_backslashify variable.
libtool: kill leftover m4 quoting
* build-aux/ltmain.in (func_mode_compile): Use literal ] and [.
2012-10-18 Gary V. Vaughan <gary@gnu.org>
syntax-check: exclude false positive nested quote test.
* build-aux/funclib.sh (func_echo_infix_1): These quotes are not
actually nested, so add an exclude marker for the syntax-check.
libtool: don't set auxscriptsdir at bootstrap time.
* build-aux/ltmain.in: Declare relative paths to aux scripts from
source commands, for early inlining during bootstrap.
* Makefile.am (bootstrap_edit): Move auxscriptsdir
substitution from here....
(configure_edit): ...to here.
($(ltmain_sh)): Feed ltmain.in through inline-source as ltmain.sh
is generated to remove relative paths to aux scripts.
(install-data-local): Simplify. No need for special treatment for
ltmain.sh during installation, since aux scripts have already
been inlined.
Reported by Peter Rosin.
extract-trace: only source funclib.sh when $progname is extract-trace.
* build-aux/extract-trace: $usage is too generic, and can cause
sourced extract-trace to re-source options-parser. We already
require that funclib.sh be sourced before sourcing options-parser,
so it's safer to check that $progname is correct before sourcing
options-parser again from here.
2012-10-18 Peter Rosin <peda@lysator.liu.se>
libtool: fix spelling nit
* build-aux/ltmain.in (func_generate_dlsyms): Fix spelling nit.
* libltdl/libltdl/lt_system.h: Likewise.
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise.
2012-10-12 Gary V. Vaughan <gary@gnu.org>
maint: remove m4sh support.
Now that the code base has coalesced around a single option
parser, there's no need for the unused getopt.m4sh and support.
* build-aux/getopt.m4sh, build-aux/general.m4sh,
tests/getopt-m4sh.at: Remove.
* Makefile.am (m4sh_dir, LT_M4SH, general_m4sh, getopt_m4sh)
(sh_files): Remove.
(TESTSUITE_AT): Remove tests/getopt-m4sh.at.
(TESTS_ENVIRONMENT): Remove M4SH.
* bootstrap.conf (libtool_build_prerequisites): Remove M4SH.
* configure.ac (M4SH): Remove.
* HACKING (Editing `.m4sh' Files): Remove and renumber following
sections.
libtool: rewritten over funclib.sh instead of general.m4sh.
* Makefile.am (ltmain_m4sh, ltmain_sh_edit): Remove.
(ltmain_in): Path to ltmain.in.
(ltmain_sh): Generate ltmain.sh from ltmain.in using
$(bootstrap_edit).
* build-aux/ltmain.m4sh: Remove.
* build-aux/ltmain.in: Rewritten as a client of funclib.sh.
libtoolize: inline sourced helper scripts during install.
* build-aux/inline-source: New file.
* Makefile.am (inline_source): Path to inline-source script.
(EXTRA_DIST): Distribute inline-source too.
(helper_scripts): Remove.
(install-data-local): Inline sourced helper scripts during
installation.
Don't install helper_scripts.
(uninstall-hook): Don't uninstall helper_scripts.
libtoolize: rewritten over funclib.sh instead of general.m4sh.
* Makefile.am (libtoolize_m4sh): Remove.
(EXTRA_DIST): Delete libtoolize_m4sh.
(libtoolize_in): Remove rule.
(libtoolize): Apply bootstrap_edit to libtoolize.in too.
* configure.ac (AC_CONFIG_SRCDIR): Refer to libtoolize.in.
* libtoolize.m4sh: Remove.
* libtoolize.in: Rewrite as a client of options-parser and the
new funclib.sh, avoiding the m4sh expansion step.
* tests/libtoolize.at, tests/old-ltdl-iface.at (experr): adjust
to match funclib.sh error output.
options-parser: correctly quote shell meta-characters in arguments.
When any argument contains a shell meta-character, it needs to be
quoted when passed around. We already pass parameter lists as
space delimited strings of arguments, and pass the string through
eval to turn it back into a list before re-assigning using `set'.
To prevent the shell from interpreting any meta-characters during
an `eval set dummy $argumentlist', they must be quoted again
inside the quoted argument list.
* build-aux/funclib.sh (func_quote_for_eval): Be careful to keep
a separate tally of quoted and unquoted argument lists, to
conform to the API of the single argument func_quote_for_eval
implementation in build-aux/general.m4sh.
* bulid-aux/options-parser (func_run_hooks): To account for the
doubly quoted meta-character argument lists, we must eval the
parameter reassignment `set' call separately from evaluating the
dynamically named hook results variable.
maint: factor common shell code into build-aux/funclib.sh.
Moving potentially reusable code into a common file that can
be sourced by clients, and adjusting for impedance mismatch
or necessary renames during integration.
* build-aux/funclib.sh: New file.
* build-aux/options-parser (Shell normalisation)
(User overrideable command paths, Global variables, func_append)
(require_term_colors, func_echo, func_echo_infix_1, func_warn)
(func_error, func_fatal_error, func_quote_for_eval, func_verbose):
Move from here...
* build-aux/funclib.sh (Shell normalisation, User overrideable
command paths, Global variables, func_append)
(require_term_colors, func_echo, func_echo_infix_1)
(func_warn_and_continue, func_error, func_fatal_error)
(func_quote_for_eval, func_verbose): ...to here.
* build-aux/general.m4sh (func_arith, func_basename)
(func_dirname, func_dirname_and_basename, func_echo_all)
(func_grep, func_len, func_mkdir_p, func_mktempdir)
(func_normal_abspath, func_relative_path, func_quote_for_expand)
(func_stripname, func_show_eval, func_tr_sh): Move from here...
* build-aux/funclib.sh(func_arith, func_basename)
(func_dirname, func_dirname_and_basename, func_echo_all)
(func_grep, func_len, func_mkdir_p, func_mktempdir)
(func_normal_abspath, func_relative_path, func_quote_for_expand)
(func_stripname, func_show_eval, func_tr_sh): ...to here.
* bootstrap (usage message): Document `-no-warn' option.
(func_append_u, func_warning): Move from here...
* build-aux/funclib.sh (func_append_uniq, func_warning): ...to
here.
* bootstrap, build-aux/extract-trace: Source build-aux/funclib.sh
before build-aux/options-parser.
* build-aux/options-parser (usage, long_help_message): Set
default values to match what is parsed by the unmodified parser.
* build-aux/extract-trace (usage, long_help_message): Only set
from func_main, so that clients sourcing this file can still use
the correct defaults from build-aux/options-parser.
* bootstrap (bootstrap_options_prep, bootstrap_parse_options):
Move warning option parsing from here...
* build-aux/option-parser (func_options_prep)
(func_parse_options): ...to here, where all clients can benefit.
* Makefile.am (funclib_sh): New macro; path to funclib.sh.
(EXTRA_DIST): Add $(funclib_sh).
libtoolize: source extract-trace rather than fork and execute each call.
Rather than forking and executing a full $SHELL for each macro
extraction, source the script and its dependencies into our
execution space and use the provided func_extract_trace API.
* libtoolize.m4sh: Source extract-trace from an appropriate
directory determined presently by make.
(func_extract_trace): Remove this wrapper.
* Makefile.am (abs_aux_dir): Absolute path to extract-trace
directory.
(configure_edit): Inject abs_aux_dir into uninstalled libtoolize.
(bin_SCRIPTS): Remove libtoolize.
(uninstall-hook): Manually uninstall libtoolize.
(install-data-local): Inject pkgauxdir into installed libtoolize
during installation.
options-parser: employ fork minimisation.
* build-aux/options-parser (_G_HAVE_XSI_OPS): Environment
overrideable defaults for bash and zsh, which are known to
support XSI extensions.
(_G_HAVE_PLUSEQ_OP): Similarly for new enough versions of bash,
which are known to have += support.
(func_append): Only perform the shell += probe when state of
support is unknown.
(func_split_equals, func_split_short_opt): Similarly for XSI
probe to select fastest working implementation.
options-parser: keep non-option arguments separate!
* build-aux/options-parser (func_parse_options): When there is
more than one non-option argument, "$*" forces all of them into
a single string. Use ${1+"$@"} to set arguments correctly.
options-parser: prefix usage message with "Usage: ".
* build-aux/options-parser (func_usage_message): Prefix usage
message with "Usage: ".
bootstrap: work when using fallback shallow gnulib clone.
Bootstrapping without --gnulib-srcdir creates a shallow gnulib
clone to run gnulib-tool out of, except that the parent package
is almost certainly using a revision of gnulib before just tha
most recent 2 gnulib revisions.
* bootstrap (func_require_gnulib_submodule): Pull the most
recent 365 revisions, which ought to be enough for a well-
maintained parent package.
Don't forget to run 'git submodule update' to select the correct
gnulib revision.
bootstrap: require GNU make to bootstrap.
Make is not installed by default in some environments, such as
cygwin... which is slow enough already without having to wait
for gnulib-tool, bootstrap and half of configure to complete
before getting an error.
* bootstrap.conf (buildreq): Add recent GNU make to bootstrap
requirements. Now missing make is diagnosed in the earliest
part of bootstrap.
maint: simplify "Local variables:" footer with time-stamp-pattern.
* bootstrap, build-aux/extract-trace, build-aux/options-parser
(Local variables): Use time-stamp-pattern to set number of
searched lines to 10, and to replace time-stamp-start,
time-stamp-end and time-stamp-format.
2012-10-08 Peter Rosin <peda@lysator.liu.se>
tests: skip the with-pic test only if DLL_EXPORT is defined
For some systems with PIC as default, the test was inadvertently
skipped. Issue introduced in commit 4440d65.
* tests/with-pic.at: Skip the test for systems that define
DLL_EXPORT.
Reported by Roumen Petrov.
tests: rerefix line ending problems on MinGW.
The previous commit broke Linux->MinGW cross-compiling.
* tests/mdemo.at: Normalize line endings after $EGREP.
Reported by Roumen Petrov.
2012-10-06 Peter Rosin <peda@lysator.liu.se>
tests: refix line ending problems on MinGW.
In commit 22f5750, one of the hunks actually introduced
line ending problems. Revert that hunk.
* tests/mdemo.at: Use AT_DATA for expected output when the
output from compiled programs is fed through $EGREP.
tests: use dry runs in both parts of 'check link mode operation'
MSVC exits with status 2 instead of the expected 1 when a
real link is attempted.
* tests/libtool.at (check link mode operation): Use a dry run and
expect a clean exit status instead of expecting a fail.
2012-10-06 Gary V. Vaughan <gary@gnu.org>
tests: sanitise the libtool quote checking Autotests.
Carefully comment the maze of quoting and escaping needed to
pass through M4, $SHELL, and grep before regexp matching.
* tests/libtool.at (quote shell meta-characters in filenames):
Split backslash into a separate test group, because it needs
additional escaping.
Use grep consistently for the entire test group.
Use AT_CHECK rather than LT_AT_CHECK to avoid problems with
escaping literal $ correctly with LT_ESCAPE.
Use the correct number of backslashes for each sub-group.
Escape double-quote literals portably.
Reported by Peter Rosin.
tests: ensure mdemo.at doesn't rely on installed libltdl.
* tests/mdemo.at (configuer.ac): Build an included convenience
libltdl.
(Makefile.am): Add subdir-objects.
Remove override rules from legacy mdemo tests to reuse parent
libltdlc.la.
(LT_AT_CHECK_CONFIG): Add --with-included-ltdl to configure
arguments so that test cases always use the subproject libltdl
in preference to any installed libltdl.
Reported by Peter Rosin.
tests: allow for unstable fortran output ordering.
Due to differences in line-endings between C stdout and Fortran
stdout, as well as unpredictable output ordering between
platforms and runtimes, weaken success criteria to not require
the entire output of fortran programs to match a test case.
* itests/fcdemo.at, tests/f77demo.at (_LT_CHECK_EXECUTE):
Improve comments, and weaken test case to grep for a known line
in the f77 runtime output.
2012-10-05 Peter Rosin <peda@lysator.liu.se>
tests: make LT_AT_HOST_DATA retain whitespace on MinGW
Fixes issues with depdemo.at, f77demo.at and fcdemo.at.
* tests/testsuite.at (LT_AT_HOST_DATA) [MinGW]: Keep leading
and trailing spaces and tabs when converting line endings.
tests: fix line ending problems on MinGW
* tests/cdemo.at: Use LT_AT_HOST_DATA for expected output from
compiled programs.
* tests/demo.at: Likewise.
* tests/depdemo.at: Likewise.
* tests/f77demo.at: Likewise.
* tests/fcdemo.at: Likewise.
* tests/mdemo.at: Likewise.
* tests/tagdemo.at: Likewise.
2012-10-05 Gary V. Vaughan <gary@gnu.org>
tests: remove last vestiges of the legacy test harness.
All legacy tests have been fully migrated to Autotest, so
no need to cling to the legacy scaffolding any more.
* tests/defs.m4sh: Delete file.
* configure.ac (AM_INIT_AUTOMAKE): Remove unused color-tests and
parallel-tests options.
* Makefile.am (defs_m4sh, defs_in, defs, TESTS): Remove.
Adjust all dependencies.
tests: migrate legacy tagtrace.test to Autotest.
* tests/tagtrace.test: Delete file.
* tests/libtool.at (test LT_SUPPORTED_TAG interface): Add
Autotest equivalent.
* Makefile.am (TESTS): Remove tests/tagtrace.test.
tests: migrate legacy objectlist.test to Autotest.
* tests/objectlist.test: Delete file.
* tests/libtool.at (check objectlist file operation): Add
Autotest equivalent.
* Makefile.am (TESTS): Remove tests/objectlist.test.
tests: migrate legacy link.test and link-2.test to Autotest.
* tests/link.test, tests/link-2.test: Delete files.
* tests/libtool.at (Check link operation): Add Autotest
equivalent.
* Makefile.am (TESTS): Remove tests/link.test and
tests/link-2.test.
tests: migrate legacy nomode.test to Autotest.
* tests/nomode.test: Delete file.
* test/libtool.at (Check help output, No mode diagnostic): Add
equivalent tests in Autotest.
* Makefile.am (TESTS): Remove tests/nomode.test.
tests: migrate legacy suffix.test to Autotest.
* tests/suffix.test: Delete file.
* tests/libtool.at (Transform source suffices): Add Autotest
equivalent.
* Makefile.am (TESTS): Remove tests/suffix.test.
tests: migrate legacy quote.test to Autotest.
* tests/quote.test: Moved from here...
* tests/libtool.at: ...to here, and updated to Autotest.
* Makefile.am (TESTS): Remove tests/quote.test.
(TESTSUITE_AT): Add tests/libtool.at.
2012-10-04 Gary V. Vaughan <gary@gnu.org>
maint: add missing 2012 copyright to newly pushed old files.
* tests/cdemo.at, tests/demo.at, tests/depdemo.at,
tests/f77demo.at, tests/fcdemo.at, tests/mdemo.at,
tests/tagdemo.at (Copyright): Update with missing 2012.
syntax-check: remove test/demo directories from exemption regexps.
* cfg.mk (exclude_file_name_regex--sc_bindtextdomain)
(exclude_file_name_regexp--sc_program_name): Remove. The excluded
directories no longer exist.
(exclude_file_name_regexp--sc_prohibit_strcmp): Remove subexpression
for matching removed demo directories.
configure: remove unused conditionals and support for order only rules.
Clean up some more unused cruft.
* configure.ac (HAVE_CXX, HAVE_F77, HAVE_FC, HAVE_GCJ, HAVE_RC):
Remove. These were only used by the recently removed legacy
tests.
[order-only prerequisites]: Ditto.
bootstrap: remove support for `-r' and `reconf_dirs'.
With all those extra demo directories out of the way, we can
revert to a more canonical bootstrap process, and jettison the
cruft that was only there to work around the pain of
needing to autoreconf 11 directories. Bootstrap is now an order
of magnitude faster.
* bootstrap.conf (require_ltdl_dir): New function. Factored out
of `libtool_build_prerequisites'.
(libtool_build_prerequisites): Adjust.
(func_reconfigure): Use `require_ltdl_dir' to determine the name
of the other directory we need to autoreconf during bootstrap.
(libtool_options_prep, libtool_parse_options)
(libtool_validate_options): Remove.
tests: let pic_flag and with-pic Autotests work on non-VPATH builds.
* tests/pic_flag.at: Use _LT_DEMO_SETUP to generate a demo style
project, rather than relying on $abs_top_srcdir/configure.
* tests/with-pic.at: Likewise.
* Makefile.am (TESTSUITE_AT): Move tests/pic_flag.at and
tests/with-pic.at so that they run immediately following
tests/demo.at.
tests: migrate legacy tests/fcdemo tests to Autotest.
Along with the demise of the last demo directory, so all the
cruft for re-autotooling and distributing the additional
directories is no longer necessary.
* tests/fcdemo.at: New autotest groups, based on...
* tests/fcdemo-conf.test, tests/fcdemo-exec.test,
tests/fcdemo-make.test, tests/fcdemo-shared-exec.test,
tests/fcdemo-shared-make.test, tests/fcdemo-shared.test,
tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
tests/fcdemo-static.test: ...these legacy tests, now removed.
* tests/fcdemo/Makefile.am, tests/fcdemo/README,
tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
tests/fcdemo/foo.h, tests/fcdemo/fooc.c, tests/fcdemo/foof.f90,
tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
tests/fcdemo/fprogram.f90: Remove.
* configure.ac (CONF_SUBDIRS, DIST_MAKEFILE_LIST): Remove.
* Makefile.am (DIST_SUBDIRS, FC_TESTS, clean-local-legacy)
(configure-subdirs, distclean-recursive, distdir)
(fake-distclean-legacy, $(DIST_MAKEFILE_LIST)): Remove.
(COMMON_TESTS): Rename from this...
(TESTS): ...to this.
tests: migrate legacy tests/f77demo tests to Autotest.
* tests/f77demo.at: New autotest groups, based on...
* tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared-exec.test,
tests/f77demo-shared-make.test, tests/f77demo-shared.test,
tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
tests/f77demo-static.test: ...these legacy tests, now removed.
* tests/f77demo/Makefile.am, tests/f77demo/README,
tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/f77demo/foof.f,
tests/f77demo/foof2.f, tests/f77demo/foof3.f,
tests/f77demo/fprogram.f: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/f77demo.
tests: migrate legacy tests/mdemo2 tests to Autotest.
This test was just a small non-ltdl aware library to load a
library from the legacy mdemo test, which in turn used ltdl to
call functions from modules. No need to create a whole other
test group with copies of everything from mdemo setup - just
tack the additional test on the end of the mdemo group.
* tests/mdemo.at (link with library that loads ltdl modules):
New test, based on...
* tests/mdemo2-conf.test, tests/mdemo-exec.test,
tests/mdemo-make.test: ...these legacy tests, now removed.
* tests/mdemo2/Makefile.am, tests/mdemo2/README,
tests/mdemo2/configure.ac, tests/mdemo2/main.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/mdemo2.
* Makefile.am: Adjust.
tests: migrate legacy tests/mdemo tests to Autotest.
* tests/mdemo.at: New autotest groups, based on...
* tests/mdemo-conf.test, tests/mdemo-dryrun.test,
tests/mdemo-exec.test, tests/mdemo-inst.test,
tests/mdemo-make.test, tests/mdemo-shared-exec.test,
tests/mdemo-shared-inst.test, tests/mdemo-shared-make.test,
tests/mdemo-shared-unst.test, tests/mdemo-shared.test,
tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
tests/mdemo-static.test, tests/mdemo-unst.test: ...these legacy
tests, now removed.
* tests/mdemo/Makefile.am, tests/mdemo/README,
tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
tests/mdemo/sub.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/mdemo.
* Makefile.am: Adjust.
tests: migrate legacy tests/pdemo tests to Autotest.
This test was a thinly veiled copy of the basic legacy
demo-conf.test series, with the addition of long file names that
are not unique in the first 17 characters of their name, mashed
up with the cmdline_wrap.at max_cmd_len limits. Migrating to
Autotest means that this test will be automatically rerun with
max_cmd_len=24 as cmdline_wrap.at recurses through the whole
testsuite, so the migrated pdemo test is now simply another test
case in demo.at with longer file names.
* test/demo.at (linking with long file names): New test, based
on...
* tests/pdemo-conf.test, tests/pdemo-exec.test,
tests/pdemo-inst.test, tests/pdemo-make.test: ...these legacy
tests, now removed.
* tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
tests/pdemo/longer_file_name_foo.c,
tests/pdemo/longer_file_name_foo2.c,
tests/pdemo/longer_file_name_hell1.c,
tests/pdemo/longer_file_name_hell2.c,
tests/pdemo/longer_file_name_hello.c,
tests/pdemo/longer_file_name_main.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/pdemo.
* Makefile.am: Adjust.
tests: migrate legacy tests/tagdemo tests to Autotest.
* tests/tagdemo.at: New autotest groups, based on...
tests/tagdemo-conf.test, tests/tagdemo-exec.test,
tests/tagdemo-make.test, tests/tagdemo-shared-exec.test,
tests/tagdemo-shared-make.test, tests/tagdemo-shared.test,
tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
tests/tagdemo-static.test, tests/tagdemo-undef-exec.test,
tests/tagdemo-undef-make.test, tests/tagdemo-undef.test:
...these legacy tests, now removed.
* tests/tagdemo/.gitignore, tests/tagdemo/Makefile.am,
tests/tagdemo/README, tests/tagdemo/baz.cpp,
tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
tests/tagdemo/main.cpp: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/tagdemo.
* Makefile.am: Adjust.
tests: migrate legacy tests/depdemo tests to Autotest.
* tests/depdemo.at: New autotest groups, based on...
* tests/depdemo-conf.test, tests/depdemo-exec.test,
tests/depdemo-inst.test, tests/depdemo-make.test,
tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
tests/depdemo-nofast.test, tests/depdemo-relink.test,
tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
tests/depdemo-shared.test, tests/depdemo-static-exec.test,
tests/depdemo-static-inst.test, tests/depdemo-static-make.test,
tests/depdemo-static-unst.test, tests/depdemo-static.test,
tests/depdemo-unst.test: ...these legacy test cases, now
removed.
* tests/depdemo/Makefile.am, tests/depdemo/README,
tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
tests/depdemo/l4/l4.h, tests/depdemo/main.c,
tests/depdemo/sysdep.h: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/depdemo.
* Makefile.am: Adjust.
tests: migrate legacy tests/demo tests to Autotest.
* tests/demo.at: New autotest groups, based on...
* tests/demo-conf.test, tests/demo-deplibs.test,
tests/demo-exec.test, tests/demo-hardcode.test,
tests/demo-inst.test, tests/demo-make.test,
tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
tests/demo-nofast.test, tests/demo-noinst-link.test,
tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
tests/demo-nopic.test, tests/demo-pic-exec.test,
tests/demo-pic-make.test, tests/demo-pic.test,
tests/demo-relink.test, tests/demo-shared-exec.test,
tests/demo-shared-inst.test, tests/demo-shared-make.test,
tests/demo-shared-unst.test, tests/demo-shared.test,
tests/demo-static-exec.test, tests/demo-static-inst.test,
tests/demo-static-make.test, tests/demo-static-unst.test,
tests/demo-static.test, tests/demo-unst.test: ...these legacy
test cases, now removed.
* tests/demo/Makefile.am, tests/demo/README,
tests/demo/configure.ac, tests/demo/dlmain.c, tests/demo/foo.c,
tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
tests/demo/hello.c, tests/demo/main.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/demo.
* Makefile.am: Adjust.
tests: migrate legacy tests/cdemo tests to Autotest.
* tests/cdemo.at: New Autotest groups, based on...
* tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared-exec.test,
tests/cdemo-shared-make.test, tests/cdemo-shared.test,
tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
tests/cdemo-static.test, tests/cdemo-undef-exec.test,
tests/cdemo-undef-make.test, tests/cdemo-undef.test: ...these
legacy test cases, now removed.
tests/cdemo/Makefile.am, tests/cdemo/README,
tests/cdemo/configure.ac, tests/cdemo/foo.c, tests/cdemo/foo.h,
tests/cdemo/main.c: Remove.
* configure.ac (CONF_SUBDIRS): Remove tests/cdemo.
* Makefile.am: Adjust.
maint: distribute a single ChangeLog file.
* ChangeLog.1996, ChangeLog.1997, ChangeLog.1998, ChangeLog.1999,
ChangeLog.2000, ChangeLog.2001, ChangeLog.2002, ChangeLog.2003,
ChangeLog.2004, ChangeLog.2005, ChangeLog.2006, ChangeLog.2007,
ChangeLog.2008, ChangeLog.2009, ChangeLog.2010: Remove. Content
moved from here...
* ChangeLog.old: ...to here.
* Makefile.am (EXTRA_DIST): Update list of ChangeLog files.
(changelog_old): New variable to hold path to ChangeLog.old file.
($(changelog)): Update to concatenate non-distributed
ChangeLog.old file to distributed ChangeLog after git log entries.
syntax-check: fix violations and implement sc_prohibit_space_semicolon.
No need for a spurious space before a command ending semi-colon.
* cfg.mk (sc_prohibit_space_semicolon): New test to catch
accidental reintroduction of spurious spaces removed by this
changeset.
* bootstrap, build-aux/general.m4sh, build-aux/ltmain.m4sh,
libltdl/lt__strl.c, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at:
Remove spurious spaces.
2012-10-03 Gary V. Vaughan <gary@gnu.org>
Merge branch 'gary/reredo-test-operand-order'
The original manually applied changeset 962aa91 contained several
errors (some corrected by subsequent patches on master, others not)
and many unrelated (although in this case, correct) changes were also
committed in the same changeset.
The merged branch gary/reredo-test-operand-order factors the
unrelated changes out into separate commits, and performs the work
that should have been in 962aa91 with a script, the results of which
were then painstakingly inspected for errors.
This merge moves the corrections for errors made in the original
manual patch from the branch onto master. Please inspect the many
separate changesets on the branch rather than the original patch
when you bisect or otherwise find your way to an error caused by
962aa91.
2012-10-02 Gary V. Vaughan <gary@gnu.org>
tests: simplify some shell code.
* tests/fail.at: Simplify.
* tests/static.at: Likewise.
libtool: unroll complex nested compound statements
* build-aux/ltmain.m4sh: Use an if statement instead of ugified
compound statements.
libtool: unroll nested if into a single case statement.
* build-aux/ltmain.m4sh (func_mode_link): Unroll a hard to
understad nested if statement into a more readable single case
statement.
libtool: simplify $skipped_export blocks
* build-aux/ltmain.m4sh (func_mode_link): Save an if statement
with '$skipped_export && { block; }' instead of 'if $skipped_export;
then block; fi'.
libtool: simplify an if statement
* build-aux/ltmain.m4sh (func_mode_link): Reverse the branch
order for an if statement for readability.
* m4/libtool.m4: Likewise.
libtool: save an if statement, with a compound statement.
* build-aux/ltmain.m4sh (func_mode_link): Simplify.
libtool: simplify multiple string tests
* build-aux/ltmain.m4sh (func_mode_link): Save test invocations
by using 'test x,y = "$a,$b"' instead of 'test x = "$a" && test y
= "$b"'.
* m4/libtool.m4: Likewise.
libtool: fold if into a compound OR statement when more readable
* build-aux/ltmain.m4sh (func_mode_link): For readability, use
'test string = "$var" || { stuff; }' in preference to
'if test string != "$var"; then stuff; fi'.
libtool: use false or : for $rmforce, and simplify
* build-aux/ltmain.m4sh (func_mode_uninstall): Save a string
comparison by setting $rmforce to false or : and using it
directly as the first argument to if.
libtool: use false or : for $wrappers_required, and simplify
* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $wrappers_required to false or : and using
it directly with a ored block rather than an if statement.
libtool: use false or : for $linkalldeplibs, and simplify
* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $linkalldeplibs to false or : and using it
directly as the first argument to if.
libtool: use false or : for $valid_a_lib, and simplify
* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $valid_a_lib to false or : and using it
directly as the first argument to if.
libtool: use false or : for $found, and simplify
* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $found to false or : and using it directly
as the first argument to if.
libtool: use false or : for $alldeplibs, and simplify
* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $alldeplibs to false or : and using it
directly as the first argument to if.
libtool: use false or : for $preload, and simplify
* build-aux/ltmain.m4sh (func_mode_link): Save a string
comparison by setting $preload to false or : and using it directly
instead of if statements.
libtool: use false or : for $my_pic_p, and simplify
* build-aux/ltmain.m4sh (func_generate_dlsyms): Save a string
comparison by setting $my_pic_p to false or : and using it directly
instead of calling if.
Adjust all callers.
libtool: use false or : for $finalize, and simplify
* build-aux/ltmain.m4sh (func_mode_install): Save a string
comparison by setting $finalize to false or : and using it
directly as the first argument to if.
libtool: use false or : for $isdir, and simplify
* build-aux/ltmain.m4sh (func_mode_install): Save a string
comparison by setting $isdir to false or : and using it directly
as the first argument to if.
syntax-check: [REDO] fix violations and implement
sc_prohibit_test_const_follows_var.
To safely use a non-literal fist argument to 'test', you must
always prepend a literal non-'-' character, but often the second
operand is a constant that doesn't begin with a '-' already, so
always use 'test a = "$b"' instead of the noisy 'test "X$b" = Xa'.
* cf.mk (sc_prohibit_test_const_follws_var): New syntax-check
rule to ensure we don't reintroduce noisy test operands.
bootstrap, build-aux/extract-trace, build-aux/general.m4sh,
build-aux/ltmain.m4sh, configure.ac, doc/libtool.texi, libtoolize.m4sh,
m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at, tests/defs.m4sh,
tests/demo-relink.test, tests/demo/configure.ac,
tests/depdemo-relink.test, tests/destdir.at, tests/duplicate_conv.at,
tests/fail.at, tests/getopt-m4sh.at, tests/help.at, tests/libtoolize.at,
tests/link-2.test, tests/link-order2.at, tests/lt_dlopenext.at,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/need_lib_prefix.at, tests/nocase.at, tests/pdemo/configure.ac,
tests/pic_flag.at, tests/search-path.at, tests/shlibpath.at,
tests/static.at, tests/sysroot.at, tests/tagtrace.test,
tests/testsuite.at, tests/with-pic.at: Swap operands to avoid useless
noise.
2012-09-19 Peter Rosin <peda@lysator.liu.se>
tests: skip with-pic test when no "real" pic flag is used.
* tests/with-pic.at: Windows uses "-DDLL_EXPORT -DPIC" as the pic
"flag", but never applies it to static libraries. Cater for this
and skip if no "real" pic flag is in use.
2012-09-16 Gary V. Vaughan <gary@gnu.org>
syntax-check: fix texinfo formatting flagged by
prohibit_undesirable_word_seq.
* doc/libtool.text: Fix several misuses of @xref and @pxref so that
the prohibit_undesirable_word_seq syntax check passes again.
syntax-check: remove useless_braces_in_variable_derefs.
* build-aux/general.m4sh: Remove spurious braces around
${ZSH_VERSION} dereference.
* build-aux/ltmain.m4sh (func_mode_link): Likewise for ${wl}.
syntax-check: skip prohibit_strncpy.
* cfg.mk (local-checks-to-skip): sc_prohibit_strncpy.
syntax-check: skip prohibit_always_true_header_tests rule.
* cfg.mk (local-checks-to-skip): Add
sc_prohibit_always_true_header_tests.
maint: Revert "bootstrap: delete unneeded README-release patch"
This reverts commit 11cd425e7d47111956381dba28f8c1b34e14653f.
These instructions are hard to find for new maintainers, so it's
good to keep them to hand with the release notes.
And the additional distchecks are important prior to a release.
maint: remove unused cvsu script.
* build-aux/cvsu: Remove. This script is not useful now that
Libtool's repository is hosted in git.
* Makefile.am (build_scripts): Remove cvsu reference.
maint: run update-copyright for missing 2011 and 2012 years.
See maintain.texi (Copyright Notices) for rules for maintaining
the years in copyright notices.
* All Files (Copyright): Updated with missing 2011 and 2012.
bootstrap: use gnulib update-copyright script.
See maintain.texi (Copyright Notices) for rules for maintaining
the years in copyright notices.
* bootstrap.conf (gnulib_modules): Add update-copyright.
* cfg.mk (update-copyright-env): Set environment variables for
update-copyright script.
bootstrap: update bootstrap script to latest upstream.
* bootstrap, build-aux/options-parser: apply upstream fixes and
enhancements.
git: don't complain about new parallel tests driver and file droppings.
* build-aux/.gitignore: Ignore parallel `test-driver' script.
* tests/.gitignore: Ignore `test-driver' .trs file droppings.
gnulib: update local gnulib patches.
* gl/build-aux/announce-gen.diff: Remove hunks adopted upstream.
* gl/build-aux/do-release-commit-and-tag.diff: Refresh this patch
to match current gnulib.
gnulib: update gnulib submodule.
bootstrap: ensure there is a ChangeLog before running automake.
Automake refuses to run in GNU-mode unless there is a ChangeLog file
in the top-level directory.
* bootstrap.conf (libtool_force_changelog): Create a dummy ChangeLog.
libtoolize: improve verbose mode output.
* libtoolize (func_require_seen_ltdl)
(func_require_seen_libtool): Output success message in verbose
mode.
2012-08-22 Peter O'Gorman <peter@pogma.com>
libtool: Add the 'n' to then.
* m4/libtool.m4: fix typo.
Reported by Brad Smith.
2012-08-22 Andreas Schwab <schwab@linux-m68k.org>
libtool: Pass through -g* so that debugging information is not dropped
* ltmain.m4sh (func_mode_link): Pass through -g*.
2012-08-22 David Edelsohn <dje.gcc@gmail.com>
libtool: AIX PIC shared library support
* m4/libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.
2012-08-22 Brad Smith <brad@comstyle.com>
libtool: Update/simplify OpenBSD support
* m4/libtool.m4: Forget about 11 year old releases.
2012-08-19 Peter Rosin <peda@lysator.liu.se>
libtool: quote progpath properly
Attempt to handle spaces in paths better.
* build-aux/ltmain.m4sh (func_mode_install, func_mode_link): Quote
$progpath.
* THANKS: Update.
2012-04-19 Mike Frysinger <vapier@gentoo.org>
libtool: Handle getconf returning "undefined".
* m4/libtool.m4: Check for "undefined" from `getconf`.
2012-03-17 Peter Rosin <peda@lysator.liu.se>
bootstrap: delete unneeded README-release patch
* gl/top/README-release.diff: Delete.
2012-03-16 Peter O'Gorman <peter@pogma.com>
libtool: Fix typo that caused sys_lib_search_path_spec to be wrong.
* m4/libtool.m4: s/lt_fooi/lt_foo/.
Reported by Paul Seidler.
2012-02-21 Samuel Thibault <samuel.thibault@gnu.org>
libtool: Improve GNU/Hurd support.
* m4/libtool.m4: Add gnu* match where it was missing.
2012-02-19 Titus von Boxberg <titus@v9g.de>
libtool: Accept clang's -stdlib linker flag.
build-aux/ltmain.m4sh: Don't drop the -stdlib= flag.
2012-02-19 Juergen Reuter <reuter@t00pcx17094.desy.de>
libtool: Enable nagfor fortran compiler support
* build-aux/ltmain.m4sh: nagfor compatible version string.
* m4/libtool.m4: nagfor support.
2012-02-19 Juergen Reuter <reuter@theoc01.desy.de>
libtool: Fixing -shared error message for nagfor compiler.
* m4/libtool.m4: Fix -shared.
2012-02-19 Pavel (Pasha) Shamis <shamisp@ornl.gov>
ltdl: Improve debug error reporting in ltdl.
* libltdl/ltdl.c: Print the error message if loading fails.
2012-02-19 Peter O'Gorman <peter@pogma.com>
maint: Deleted unneeded gitlog-to-changelog patch
* gl/build-aux/gitlog-to-changelog.diff: Delete.
2012-02-02 Roumen Petrov <bugtrack@roumenpetrov.info> (tiny change)
fixup: restore EXPORTS test
Commit v2.4.2-120-g962aa91
syntax-check: fix violations and implement sc_prohibit_test_const_follows_var
inadvertedly reversed the meaning of the comparison.
* build-aux/ltmain.m4sh (func_mode_link) [cygwin|mingw|cegcc]: Restore
the EXPORTS test. We need to look at the symbols when it's _not_
already a .def file (in which case we trust the user input blindly).
2012-01-30 Peter Rosin <peda@lysator.liu.se>
cwrapper: avoid surplus strlen calculations.
* build-aux/ltmain.m4sh (func_emit_cwrapperexe_src:lt_update_exe_path):
Avoid surplus strlen calculations.
2011-12-24 Gary V. Vaughan <gary@gnu.org>
bootstrap: fix Autoconf version typo.
* build-aux/options-parser: s/2\.62/2.68/
gnulib: update gnulib submodule.
Among others, this fixes the reference to a local commit.
* gnulib: Updated to todays master HEAD revision.
* gl/top/README-release.diff: Update to account for changes to
gnulib/top/README-release since the last gnulib update.
2011-12-18 Gary V. Vaughan <gary@gnu.org>
libtool: make fork minimisation compatible with dash and zsh.
* build-aub/general.m4sh (lt_HAVE_PLUSEQ_OP): Instead of using
$((..)) arithmetic, which causes an error on dash, use a case
based bash version check.
(lt_HAVE_ARITH_OP, lt_HAVE_XSI_OPS): Also short circuit the
feature probing forks and set these automatically when zsh is
detected.
Reported by Stefano Lattarini.
bootstrap: adopt autoconf echo normalization code.
Dash shipped with Ubutu-11.10 as /bin/sh, among others, still
has a crippled echo builtin that mis-handles backslashes.
* build-aux/options-parser (bs_echo): Adopt the autoconf echo
normalization code to find a suitable replacement for buggy echo
commands.
Adjust all uses of echo to $bs_echo.
* build-aux/extract-trace (func_extract_trace, func_main):
Likewise.
* bootstrap: To retain some execution speed on platforms with
buggy builtin echo, replace most occurrences of `echo' with
`$bs_echo' - except where its arguments will obviously never
contain backslashes or be overly long.
Reported by Reuben Thomas.
libtool: minimise forks per invocation under bash.
* build-aux/general.m4sh (lt_HAVE_PLUSEQ_OP, lt_HAVE_ARITH_OP)
(lt_HAVE_XSI_OPS): Set these without forking a test script when
running under bash, to avoid a few unnecessary forks.
2011-12-13 H.J. Lu <hongjiu.lu@intel.com>
libtool: Support x32.
* m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.
2011-12-08 Gary V. Vaughan <gary@gnu.org>
maint: disable prohibit_always-defined_macros syntax check.
Aside from Apple grep silently failing to run this test and
report violations, libtool still uses non-gnulib versions of
dirent.h and argz.h which use the same macros, but are not
always-defined.
* cfg.mk (local-checks-to-fix): Move
sc_prohibit_always-defined_macros from here...
(local-checks-to-skip): ...to here.
Reported by Peter O'Gorman.
tests: s/snippit/snippet/.
* tests/demo/foo.h, tests/pdemo/foo.h: Spell `snippet' correctly.
Reported by Stefano Lattarini.
tests: make sure file restore traps are called correctly on AIX.
* tests/demo-noinst-link.test (func_save_files): set the restore
trap outside a function, otherwise AIX 5.3 /bin/sh will run the
trap at the end of the function, instead of when the script
exits.
* tests/demo-relink.test (func_save_files): Ditto.
* tests/depdemo-relink.test (func_save_files): Ditto.
Reported by Stefano Lattarini.
maint: eliminate some more spurious leading Xs.
* m4/libtool.m4: Reverse argument order to eliminate spurious
leading X's.
bootstrap: put back missing spaces before parens.
* bootstrap (func_require_buildreq_autobuild)
(func_require_buildreq_automake): Vi's delete word command is
too greedy and also eats trailing whitespace before following
non-word-chars. Put back the spaces it ate so that
syntax-checks pass once again.
libtoolize: refactor copying filter creation.
Prevent the various require_filter functions from becoming too
long by factoring common code into new functions.
* libtoolize (func_make_relative_dir_filter)
(func_make_relative_ltdl_filter): New functions. Generalize and
consolidate the various similar snippets for concatenating
together the sed scripts for func_copy filtering.
(require_filter_Makefile_am, require_filter_aclocal_m4)
(require_filter_configure_ac): Simplify.
(require_ltdl_relative_aux_dir): Remove.
(require_ltdl_relative_macro_dir): Ditto.
maint: pick XSI funcs at runtime, not configure time.
Determine, on a function by function basis, what XSI features
are available in the shell that is actually running the script,
rather than the one that was picked at configure time by the
re-execution engine.
* m4/libtool.m4 (_LT_PROG_FUNCTION_REPLACE)
(_LT_PROG_REPLACE_SHELLFNS): Remove.
(_LT_CHECK_SHELL_FEATURES): Remove tests for XSI and += support.
* build-aux/general.m4sh (func_append, func_append_quoted)
(func_arith, func_len, func_basename, func_dirname)
(func_dirname_and_basename, func_stripname): List both enhanced
and fallback implementations, and choose one based on whether
the enhanced features required by the fastest version are
available.
* build-aux/getopt.m4sh (func_split_short_opt)
(func_split_long_opt): Ditto.
* build-aux/ltmain.m4sh (func_lo2o, func_xform): Ditto.
* tests/getopt-m4sh.at: Add tests for enhanced and fallback
implementations of func_arith, func_len, func_stripname and
func_dirname_and_basename.
* NEWS: Updated.
maint: share useful functions from general.m4sh.
* build-aux/ltmain.m4sh (func_append, func_append_quoted)
(func_arith, func_len): Removed from here...
* build-aux/general.m4sh (func_append, func_append_quoted)
(func_arith, func_len): ...and added to here.
(func_dirname, func_dirname_and_basename, func_normal_abspath)
(func_relative_path): Use func_append.
* tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): Removed.
Fallback functions are now in any m4sh generated file
automatically.
libtoolize: reorder function definitions to keep func_filter_* together.
* libtoolize: Restore asciibetical order, so that all the
filter function definitions are together.
libtoolize: use _filter as a prefix for better ordering.
* libtoolize.m4sh (require_Makefile_am_filter)
(require_ltdl_mk_filter, require_aclocal_m4_filter)
(require_configure_ac_filter): Rename these functions from this...
(require_filter_Makefile_am, require_filter_ltdl_mk)
(require_filter_aclocal_m4, require_filter_configure_ac): ...to
this, respectively. Adjust all callers.
(Makefile_am_filter, ltdl_mk_filter, aclocal_m4_filter)
(configure_ac_filter): Rename these global variables from this...
(filter_Makefile_am, filter_ltdl_mk, filter_aclocal_m4)
(filter_configure_ac): ...to this, respectively.
libtoolize: rename ltdl.mk filter function.
* libtoolize.m4sh (require_Makefile_inc_filter): Rename from
this...
(require_ltdl_mk_filter): ...to this. Adjust all callers.
bootstrap: escape quotes properly in generated functions.
* bootstrap: Although not a real bug, for consistency, be sure
to correctly escape single quotes inside a single quoted
function generator.
bootstrap: reorder function definitions to keep func_buildreq_* together.
* bootstrap: Restore asciibetical order, so that all the
buildreq function definitions are together.
bootstrap: use _buildreq as a prefix for better ordering.
* bootstrap (require_autobuild_buildreq)
(require_autoconf_buildreq, require_automake_buildreq)
(require_autopoint_buildreq, require_libtoolize_buildreq)
(require_patch_buildreq): Rename from these...
(require_buildreq_autobuild, require_buildreq_autoconf)
(require_buildreq_automake, require_buildreq_autopoint)
(require_buildreq_libtoolize, require_buildreq_patch): ...to
these, respectively. Adjust all callers.
bootstrap: ensure consistent function header comments.
* bootstrap (require_bootstrap_uptodate)
(require_buildtools_uptodate): Use `require_...' in header
comment for these functions to be consistent with the rest,
rather than `func_require_...'.
bootstrap: make sure patch is available to bootstrap if necessary.
Make sure we're not lacking any functionality provided by the
incumbent gnulib bootstrap script, and where it's easy to do so
(like it is here), provide better functionality!
* bootstrap (require_patch): Make sure that PATCH expands to the
best `patch' command available on the system, honouring
overrides in the users environment.
(require_patch_buildreq): Automatically add a requirement for a
patch command to buildreq when there are diff files in
$local_gl_dir.
(func_require_buildtools_uptodate): Call require_patch_buildreq
before testing build tool versions.
(func_gnulib_tool_copy_file): Make sure PATCH is set before using
gnulib-tool to copy files.
2011-11-26 Gary V. Vaughan <gary@gnu.org>
m4: fix logic error leading to -fno-rtti being added wrongly.
* m4/libtool.m4 (_LT_COMPILER_OPTION): Negate comparison so that
compiler flags are added correctly.
maint: Fix generated ChangeLog typos.
* build-aux/git-log-fix: Spell Stefano Lattarini's name
correctly.
Don't use my home email address for GNU commits.
2011-11-25 Gary V. Vaughan <gary@gnu.org>
syntax-check: fix violations and implement sc_useless_braces_in_variable_derefs.
Until now, libtool sources have used braced variable names
seemingly at random! Almost always the braces are just noise, so
remove all the unnecessary ones.
* cfg.mk (sc_useless_braces_in_variable_derefs): New syntax
check rule to ensure we only reintroduce braced variable
dereferences if they are followed by a valid variable name
character.
build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
libltdl/configure.ac, m4/libtool.m4, m4/ltdl.m4,
m4/ltoptions.m4, tests/defs.m4sh, tests/demo-nopic.test,
tests/depdemo/configure.ac, tests/flags.at, tests/link.test,
tests/objectlist.test, tests/quote.test, tests/static.at: Remove
spurious braces.
syntax-check: fix violations and implement sc_prohibit_sed_s_comma.
I like to name temporary directories that I will remove shortly
with two leading commas so that they sort lexicographically at
the top of `ls' output. Now, `./configure
--prefix=`pwd`/,,inst' works again, for the first time in
several years.
* cfg.mk (sc_prohibit_sed_s_comma): Comma is too common a
character to use routinely as the separator for sed
substitutions on file paths and other variables determined by
the user, causing bugs like the one I describe above. Make sure
we don't accidentally reintroduce any comma separators in
future.
* Makefile.am, bootstrap, bootstrap.conf, build-aux/extract-trace,
build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
build-aux/git-log-fix, build-aux/ltmain.m4sh, libtoolize.m4sh,
m4/libtool.m4, m4/ltdl.m4, tests/cdemo-undef.test,
tests/cmdline_wrap.at, tests/darwin.at, tests/defs.m4sh,
tests/getopt-m4sh.at, tests/install.at, tests/libtoolize.at,
tests/mdemo/Makefile.am, tests/need_lib_prefix.at,
tests/sysroot.at, tests/tagdemo-undef.test, tests/testsuite.at:
Try to use `|' as the default separator wherever possible,
otherwise something else that doesn't occur in the substitution
expression.
* NEWS: Updated.
syntax-check: fix violations and implement sc_prohibit_bare_basename.
* cfg.mk (sc_prohibit_bare_basename, sc_prohibit_basename_with_sed):
Make sure not to go back to using occasional `|$basename' or
`|$dirname' syntax.
* build-aux/git-hooks/commit-msg, build-aux/ltmain.m4sh,
* build-aux/options-parser, tests/fcdemo-conf.test,
* tests/fcdemo-shared.test, tests/fcdemo-static.test,
* tests/libtoolize.at: Fix violations.
tests: migrate tests/sh.test checks to syntax-checks.
Some modernization of the legacy testsuite.
* tests/sh.test: Remove.
* Makefile.am (COMMON_TESTS): Adjust.
* cfg.mk (sc_libtool_m4_cc_basename, sc_prohibit_bracket_as_test)
(sc_prohibit_nested_quotes, sc_prohibit_set_dummy_without_shift)
(sc_prohibit_set_minus_minus, sc_prohibit_test_binary_operators)
(sc_prohibit_test_dollar, sc_prohibit_test_minus_e)
(sc_prohibit_test_unary_operators, sc_prohibit_test_X)
(sc_prohibit_Xsed_withou_X, sc_require_function_nl_brace):
Functionally identical tests to what used to be performed by
sh.test, only with coverage of all files.
* bootstrap, build-aux/edit-readme-alpha,
build-aux/extract-trace, build-aux/getopt.m4sh,
build-aux/ltmain.m4sh, configure.ac, m4/libtool.m4, m4/ltdl.m4,
tests/bindir.at, tests/configure-iface.at, tests/cwrapper.at,
tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
tests/dlloader-api.at, tests/exceptions.at,
tests/getopt-m4sh.at, tests/lalib-syntax.at, tests/link-2.test,
tests/link-order2.at, tests/loadlibrary.at,
tests/lt_dladvise.at, tests/lt_dlexit.at, tests/lt_dlopen_a.at,
tests/lt_dlopenext.at, tests/need_lib_prefix.at,
tests/nonrecursive.at, tests/recursive.at, tests/resident.at,
tests/standalone.at, tests/static.at, tests/stresstest.at,
tests/subproject.at, tests/sysroot.at, tests/tagtrace.test,
tests/testsuite.at: Fix violations of the new syntax checks.
syntax-check: fix violations and implement sc_useless_quotes_in_assignment.
Contrary to popular belief, Bourne shell does not resplit RHS of
assignments after expansion, so if there are no unquoted shell
metacharacters or whitespace, the quotes are useless.
* cfg.mk (_sc_search_regexp_or_exclude): A variation of gnulib's
_sc_search_regexp that also allows individual exclusions at the
site of what would otherwise match by adding a comment.
(sc_useless_quotes_in_assignment): New syntax-check rule to
ensure we don't reintroduce useless quoted assignments.
* bootstrap, bootstrap.conf, build-aux/edit-readme-alpha,
build-aux/general.m4sh, build-aux/getopt.m4sh,
build-aux/ltmain.m4sh, build-aux/options-parser, configure.ac,
doc/libtool.texi, libtoolize.m4sh, m4/libtool.m4, m4/ltdl.m4,
m4/ltoptions.m4, tests/cwrapper.at, tests/defs.m4sh,
tests/lalib-syntax.at, tests/libtoolize.at,
tests/lt_dlopenext.at, tests/mdemo/configure.ac,
tests/mdemo2/configure.ac, tests/need_lib_prefix.at,
tests/no-executables.at, tests/quote.test, tests/suffix.test:
Remove spurious quotes.
syntax-check: fix violations and implement sc_useless_quotes_in_case.
Contrary to popular belief, Bourne shell does not resplit case
expressions after expansion, so if there are no unquoted shell
metacharacters or whitespace, the quotes are useless.
* cfg.mk (sc_useless_quotes_in_case): New syntax-check rule to
ensure we don't reintroduce useless quoted case expressions.
* build-aux/ltmain.m4sh, m4/libtool.m4, tests/bindir.at,
tests/darwin.at, tests/defs.m4sh, tests/demo-hardcode.test,
tests/demo-nopic.test, tests/link-2.test, tests/quote.test,
tests/sysroot.at: Remove spurious quotes.
maint: quote $file correctly in bootstrap.
* bootstrap (func_insert_sorted_if_absent): Don't forget the
double quotes, since we can't control the content of $file.
Reported by Stefano Lattarini.
build: fix a quoting bug when regenerating with bootstrap_edit.
* Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh): The
bootstrap_edit make macro already contains double quotes, so
when echoing it, don't surround it with more double quotes since
it is not escaped.
2011-11-17 Gary V. Vaughan <gary@gnu.org>
dist: hook syntax-check into `make distcheck'.
To make sure we don't accidentally release anything with
failing syntax-checks, have `make distcheck' run the
syntax-checks automatically.
* Makefile.am (distcheck-hook): New rule depending on
syntax-check.
syntax-check: enable sc_prohibit_always_true_header_tests.
* cfg.mk (local-checks-to-fix): Remove
sc_prohibit_always_true_header_tests from list of disabled
checks, because it no longer flags any violations.
syntax-check: enable sc_program_name.
* cfg.mk (local-checks-to-skip): Remove sc_program_name
list of disabled checks.
(exclude_file_name_regexp--sc_program_name): Don't check demo
programs for use of set_program_name.
syntax-check: enable sc_bindtextdomain.
* cfg.mk (local-checks-to-skip): Remove sc_bindtextdomain
list of disabled checks.
(exclude_file_name_regexp--sc_bindtextdomain): Don't check demo
programs for use of bindtextdomain.
syntax-check: fix violations and implement sc_trailing_blank-non-rfc3676.
* cfg.mk (local-checks-to-fix): Move sc_trailing_blank from
here...
(local-checks-to-skip): ...to here, because otherwise it flags
valid RFC3676 signature blocks.
(sc_trailing_blank-non-rfc3676): An improved sc_trailing_blank
implementation that doesn't flag signature blocks as violations.
* Makefile.am, bootstrap.conf, doc/PLATFORMS,
libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4,
libltdl/m4/lt~obsolete.m4, tests/archive-in-archive.at,
tests/convenience.at, tests/darwin.at, tests/depdemo/l1/l1.c,
tests/depdemo/l2/l2.c, tests/depdemo/l3/l3.c,
tests/depdemo/l4/l4.c, tests/f77demo/README,
tests/f77demo/cprogram.c, tests/f77demo/foof.f,
tests/f77demo/foof2.f, tests/f77demo/foof3.f,
tests/f77demo/fprogram.f, tests/fcdemo/README,
tests/fcdemo/cprogram.c, tests/fcdemo/foof.f90,
tests/fcdemo/foof2.f90, tests/fcdemo/foof3.f90,
tests/fcdemo/fprogram.f90, tests/mdemo/README,
tests/mdemo/main.c, tests/mdemo/mlib.c, tests/objectlist.test,
tests/static.at, tests/template.at, tests/testsuite.at: Remove
trailing blanks.
syntax-check: fix violations and re-enable sc_useless_cpp_parens.
* cfg.mk (local-checks-to-fix): Remove sc_useless_cpp_parens
from list of disabled checks.
* doc/libtool.texi, libltdl/argz.c, libltdl/argz_.h,
build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h,
libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h,
libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
libltdl/loaders/dyld.c, libltdl/loaders/loadlibrary.c,
libltdl/loaders/shl_load.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
libltdl/ltdl.c, libltdl/ltdl.h, libltdl/m4/libtool.m4, tests/demo/foo.h,
tests/depdemo/sysdep.h, tests/exceptions.at, tests/export.at,
tests/pdemo/foo.h, tests/stresstest.at: Remove useless parens in cpp
`#if defined(foo)' statements.
syntax-check: fix violations and re-enable sc_space_tab.
* cfg.mk (local-checks-to-fix): Remove sc_space_tab from list of
disabled checks.
(exclude_file_name_regexp--sc_space_tab): Don't flag space-tab
sequences in diff files as an error.
* Makefile.am, build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
build-aux/ltmain.m4sh, libltdl/loaders/dyld.c,
libltdl/loaders/shl_load.c, libltdl/ltdl.h, libltdl/ltdl.mk,
libltdl/slist.c, libtoolize.m4sh, m4/ltoptions.m4, tests/demo/dlmain.c,
tests/depdemo/main.c, tests/libtoolize.at, tests/lt_dladvise.at,
tests/pdemo/longer_file_name_dlmain.c, tests/sh.test, tests/static.at,
tests/stresstest.at, tests/template.at: Fix space-tab sequences by
reversing them in regexps, and deleting leading spaces in indentation.
syntax-check: fix violations and re-enable sc_prohibit_undesirable_word_seq.
* cfg.mk (local-checks-to-fix): Remove
sc_prohibit_undesirable_word_seq from list of disabled checks.
* doc/libtool.texi, build-aux/ltmain.m4sh,
libltdl/m4/libtool.m4, libtoolize.m4sh: Replace all uses of "can
not" with "cannot".
syntax-check: fix violations and re-enable sc_probibit_test_minus_ao.
* cfg.mk (local-checks-to-fix): Remove
sc_probhibit_test_minus_ao from list of disabled checks.
(exclude_file_name_regexp--sc_prohibit_tests_minus_ao): The
matches from this syntax-check in libtool.m4 are all bogus.
syntax-check: fix violations and re-enable sc_prohibit_strcmp.
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_strcmp
from list of disabled checks.
(exclude_file_name_regexp--sc_prohibit_strcmp): Ignore
violations in libtool.texi and any demo C files.
* libltdl/libltdl/lt__private.h (strneq, streq): Renamed from
this...
(STRNEQ, STREQ): ..to this. Adjust all callers.
* tests/slist.at: Add STREQ definition. Change all !strcmp calls
to STREQ.
* build-aux/ltmain.m4sh (func_emit_cwrapperexe_src): Add and use
STREQ definition.
syntax-check: fix violations and re-enable sc_prohibit_stddef_without_use.
* cfg.mk (local-checks-to-fix): Remove
sc_prohibit_stddef_without_use from list of disabled checks.
* libltdl/argz.c, libltdl/lt__dirent.c, libltdl/slist.c: Remove
spurious stddef.h #include lines.
syntax-check: fix violations and re-enable sc_prohibit_magic_number_exit.
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_magic_number_exit
from list of disabled checks.
* ltmain.c: Removed unused file.
syntax-check: fix violations and re-enable sc_prohibit_have_config_h.
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_have_config_h
from list of disabled checks.
* tests/f77demo/foo.h, tests/fcdemo/foo.h: Remove spurious
HAVE_CONFIG_H guards for #include <config.h>.
syntax-check: fix violations and re-enable sc_prohibit_empty_lines_at_EOF.
* cfg.mk (local-checks-to-fix): Remove
sc_prohibit_empty_lines_at_EOF from list of disabled checks.
* THANKS, libltdl/argz.c, libltdl/config/getopt.m4sh,
tests/f77demo/README, tests/f77demo/cprogram.c,
tests/f77demo/fprogram.f, tests/fcdemo/README,
tests/fcdemo/cprogram.c, tests/libtoolize.at,
tests/mdemo/README, tests/mdemo2/README, tests/pdemo-inst.test:
Remove spurious empty lines from the end of these files.
syntax-check: fix violations and re-enable sc_prohibit_doubled_word.
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_doubled_word
from list of disabled checks.
* build-aux/general.m4sh (func_quote_for_eval): Remove one of a
pair of "and"s in a comment.
* tests/lt_dladvise.at (hint_global): Remove one of a pair of
consecutive "to"s split across lines in a comment.
syntax-check: fix violations and re-enable sc_prohibit_cvs_keyword.
* cfg.mk (local-checks-to-fix): Remove sc_prohibit_cvs_keyword
from list of disabled checks.
* tests/tagdemo/README: Remove spurious CVS keyword.
syntax-check: fix violations and re-enable sc_makefile_at_at_check.
At some point we were supporting some undetermined `broken
make', as evidenced by having carried the following code since
2003:
## use @LIBLTDL@ because some broken makes do not accept
## macros in targets, we can only do this because our LIBLTDL
## does not contain $(top_builddir).
@LIBLTDL@: $(top_distdir)/libtool \
...
However, we've also had *many* cases of macros in targets for
just as long, so most likely we never fully supported makes
allegedly broken in this way. As of this release, we explicitly
no longer support make implementations that do not accept macros
in targets.
* cfg.mk (local-checks-to-fix): Remove sc_makefile_at_at_check
from list of disabled checks.
* configure.ac (order-only prerequisites): Test with the
order-only pipe symbol in a macro.
* Makefile.am, tests/mdemo/Makefile.am: Convert all @FOO@ to
$(FOO).
syntax-check: fix violations and re-enable sc_makefile_TAB_only_indentation.
* cfg.mk (local-checks-to-fix): Remove
sc_makefile_TAB_only_indentation from list of disabled checks.
* Makefile.am (libltdl/Makefile.am): Replace leading spaces with
TABs.
* libltdl/Makefile.am (libltdl_libltdl_la_SOURCES): Ditto.
syntax-check: fix violations and re-enable sc_m4_quote_check.
* cfg.mk (local-checks-to-fix): Remove sc_m4_quote_check from
list of disabled checks.
* libltdl/m4/libtool.m4 (_LT_CHECK_OBJDIR): Quote LT_OBJDIR
correctly.
syntax-check: fix violations and re-enable sc_file_system.
* cfg.mk (local-checks-to-fix): Remove sc_file_system from list
of disabled checks.
(VC_LIST_ALWAYS_EXCLUDE_REGEX): Match mail directory correctly
to avoid running its contents through syntax-check.
* build-aux/ltmain.m4sh (func_mode_link): Use correct spelling
for "file system".
* libltdl/ltdl.c (try_dlopen): Ditto.
* tests/dlloader-api.at: Ditto.
syntax-check: fix violations and re-enable sc_error_message_uppercase.
* cfg.mk (local-checks-to-fix): Remove
sc_error_message_uppercase from list of disabled checks.
(exclude_file_name_regexp--sc_error_message_uppercase): Don't
match cvsu, which is not our file to edit.
* doc/libtool.texi: Use lowercase error message in example.
syntax-check: rationale for disabling sc_cast_of_x_alloc_return_value.
* cfg.mk: Note that we support C++ compilation of libltdl, which
in turn requires that *alloc return values be cast correctly.
syntax-check: fix violations and re-enable sc_cast_of_argument_to_free.
* cfg.mk (local-checks-to-fix): Remove
sc_cast_of_argument_to_free from list of disabled checks.
* build-aux/ltmain.m4sh, libltdl/libltdl/lt__alloc.h,
libltdl/lt__dirent.c: Casting argument to free is never
necessary.
syntax-check: fix violations and re-enable sc_avoid_if_before_free.
* cfg.mk (local-checks-to-fix): Remove sc_avoid_if_before_free
from list of disabled checks.
According to gnulib/doc/free.texi: "On old platforms such as
SunOS4, @code{free (NULL)} fails. However, since all such
systems are so old as to no longer be considered ``reasonable
portability targets,'' this module is no longer useful."
* libltdl/libltdl/lt__alloc.h (FREE, MEMREASSIGN): Don't protect
against freeing NULL bug on SunOS4.
syntax-check: skip sc_unmarked_diagnostics.
* cfg.mk (local-checks-to-fix): Move sc_unmarked_diagnostics
from here...
(local-checks-to-skip): ...to here.
libtoolize: rename `libltdl/config' directory to standard `build-aux'.
In addition to moving the autoconf auxiliary script directory
into the place expected by GNU developers ($top_srcdir/build-aux)
we also simplify libtoolize somewhat by having libltdl use
whatever directory was specified by the parent project. This is
much more flexible, allows libltdl client projects to also use a
single canonical `$top_srcdir/build-aux' auxiliary script
directory, and maintains backward compatibility with existing
projects that wish to continue using $ltdl_dir/config.
* libltdl/config: Moved whole directory from here...
* build-aux: ...to here.
* libtoolize.m4sh (func_install_pkgaux_subproject): Remove.
(func_install_pkgaux_parent): Remove.
(func_install_pkgaux_files): Considerably simplified now that we
have only a single auxiliary directory to worry about.
(subproject_aux_dir): Remove.
* bootstrap.conf (libtool_readme_release_package_substitutions):
No need to substitute our old unusual aux_dir location into
README-release any more.
* cfg.mk (_build-aux): Now that we use the standard location for
this directory, no need to set this variable either.
* configure.ac (AC_INIT): git-version-gen has moved.
(AC_CONFIG_AUX_DIR): Adjust.
* Makefile.am (stamp-mk, auxexefiles, auxfiles)
(install-data-local): Use build-aux instead of config.
(libltdl/stamp-mk): Ditto.
* libltdl/configure.ac, tests/cdemo/configure.ac,
tests/demo/configure.ac, tests/depdemo/configure.ac,
tests/f77demo/configure.ac, tests/fcdemo/configure.ac,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/pdemo/configure.ac, tests/tagdemo/configure.ac
(AC_CONFIG_AUX_DIR): Ditto.
* tests/defs.m4sh (aux_dir): Ditto.
* tests/configure-iface.at, tests/getopt-m4sh.at,
tests/libtoolize.at, tests/subproject.at, tests/testsuite.at:
Ditto.
* Makefile.am (ltdl_ac_aux_dir): Extract at build-time...
* libtoolize.m4sh (require_ltdl_ac_aux_dir): ...so that
libtoolize can access it at runtime without requiring GNU M4 via
the extract-trace script.
(require_Makefile_am_filter): Use it to determine whether the
aux_dir declared in the current (parent) project configure is
compatible with the declarations in installed ltdl autotools
source files.
(require_configure_ac_filter): New function to perform similar
checks and rewrite configure.ac during installation if necessary.
* NEWS: Updated.
libtoolize: aux scripts go in ltdl dir when parent has no configure.
When using libtoolize to install subproject libltdl into a
parent project that does not use autotools, set the default
directory for auxiliary scripts inside libltdl rather than
littering the parent project with files it doesn't use.
* libtoolize.m4sh (func_require_ac_aux_dir): In verbose mode,
report results like other require_ funcs.
(func_require_aux_dir): Put subproject auxiliary files into ltdl
directory where libltdl/configure will be able to find
`install-sh' and others.
libtoolize: simplify runtime by substituting pkgauxdir.
* Makefile.am (configure_edit): Substitute pkgauxdir.
* libtoolize.m4sh (func_install_pkgaux_subproject)
(func_install_pkgaux_parent, extract_trace): Use it.
libtoolize: generate require_ltdl_relative_aux_dir definition.
* libtoolize.m4sh (require_ltdl_relative_macro_dir): Change to
be generated function...
(require_ltdl_relative_aux_dir): ...so that we can easily
generate this very similar function from the same code.
libtoolize: rename `libltdl/m4' directory to standard `m4'.
In addition to moving the autoconf macro directory into the
place expected by GNU developers ($top_srcdir/m4), we also
simplify libtoolize somewhat by having libltdl use whatever
directory was specified by the parent project. This is much
more flexible, allows libltdl client projects to also use a
single canonical `$top_srcdir/m4' macro directory, and maintains
backward compatibility with existing projects that wish to
continue using $ltdl_dir/m4.
* libltdl/m4: Moved to it's parent directory.
* Makefile.am (ACLOCAL_AMFLAGS, BUILDCHECK_ENVIRONMENT)
(libltdl/Makefile.am, libltdl/aclocal.m4): Adjust.
* configure.ac (AC_CONFIG_MACRO_DIR): Adjust.
* libltdl/configure.ac (AC_CONFIG_MACRO_DIR): Remove. The
libtoolize script can pick up the project macro directory from
ACLOCAL_AMFLAGS in libltdl/Makefile.am, saving us from needing
to regenerate configure for the sake of a different macro
directory declared in the libltdl using client project.
* libtoolize.m4sh (func_install_pkgmacro_subproject): Remove.
(func_install_pkgmacro_parent): Remove.
(subproject_macro_dir): Remove.
(require_libltdl_Makefile_am, require_ltdl_aclocal_amflags)
(require_ltdl_am_macro_dir): New functions, generated at runtime
by adding libltdl/Makefile.am to the generation loop.
(func_install_pkgmacro_files): Considerably simplified now that
we have only a single macro directory to worry about.
(require_ltdl_relative_macro_dir): New function. Calculate the
relative path from $ltdl_dir to the parent project macro_dir.
(require_Makefile_am_filter): Depending on $ltdl_mode, edit
Makefile.am ACLOCAL_AMFLAGS to use the parent project macro
directory if necessary.
(require_aclocal_m4_filter): Make sure m4_includes point to the
correct macro directory by editing the file as it is copied
into the parent project.
(func_install_pkgltdl_files): Use the filters.
(func_check_macros): Remove various advice that no longer
applies with an always shared macro directory.
(func_require_ltdl_dir): Don't default ltdl_dir to subproject
when `--ltdl' was not given.
(func_require_ltdl_mode): Leave ltdl_mode empty when ltdl_dir is
not set.
(func_require_macro_dir): Default to $ltdl_dir/m4 in subproject
mode with no other directory implied by AC_CONFIG_MACRO_DIR or
ACLOCAL_AMFLAGS, otherwise m4 as before.
* tests/libtoolize.at: Match new "creating file `Makefile.am'"
messages correctly.
(subproject ltdl with non-shared directories): This test no
longer makes sense, so repurposed...
(subproject ltdl with non-canonical macro dir): ...this, to
ensure subproject ltdl continues to automatically share the
parent macro directory.
* tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Use new location
of macro_dir.
* NEWS: Updated.
libtoolize: rename `Makefile.inc' to standard `ltdl.mk'.
* libltdl/Makefile.inc: Moved from here...
* libltdl/ltdl.mk: ...to here.
* Makefile.am, bootstrap.conf, tests/libtoolize.at,
tests/nonrecursive.at: Adjust.
* libtoolize.m4sh (func_install_pkgltdl_files): Set the
destination file to `Makefile.inc' if grep finds an include for
that name in a top-level Makefile.am.
(func_check_macros): Print a deprecation warning if use of the
old `Makefile.inc' convention is found.
* tests/old-ltdl-iface.at: New test for renaming and warning
correctly when `Makefile.inc' convention is still in use.
* NEWS: Updated.
libtoolize: refactor ACLOCAL_AMFLAGS extraction.
Another simple refactor to simplify following changesets.
* libtoolize.m4sh (require_Makefile_am, require_aclocal_amflags)
(require_am_macro_dir): Generate these functions at runtime.
libtoolize: rename require_makefile_am to require_Makefile_am.
A simple refactoring to keep the next change self-contained.
* libtoolize.m4sh (require_makefile_am): Renamed from this...
(require_Makefile_am): ...to this.
libtoolize: simplify copying of files that are edited during install.
* libltdl/Makefile.inc (EXTRA_DIST): Don't list autotools files
that Automake automatically adds to a (subproject)
distribution...
* Makefile.am (EXTRA_DIST): ...although, our layout is a bit odd
because we reuse libltdl/Makefile.inc in non-recursive mode in
our own tree, so we do need to add those very same files here...
* libtoolize.m4sh (require_Makefile_am_filter)
(require_Makefile_inc_filter): ...all of which means we no
longer need to manually remove those files at libtoolize time.
These two new functions are factored out of...
(func_fixup_Makefile): ...this old function, now removed.
(func_copy): Add support for an optional sed script as the last
argument to filter the content of a file as it is copied.
(func_install_pkgltdl_files): Much simplified by $require_<foo>
the relevant filter scripts and passing them to func_copy.
libtoolize: simplify file-copying and -linking call-graph.
* libtoolize.m4sh (TAR): Remove.
(func_copy_some_files, func_copy_cb): Remove.
(func_copy): Refactor from all of the above, and simplify. No
need to use $TAR to preserve timestamps when copying, since
we've been running touch right afterwards anyway. Adjust all
callers to use the new argument footprint.
(func_serial_update, func_keyword_update): Delete any pre-
existing destination file when used with `--force' before
calling func_copy, now that the hardcoded special cases are not
in there any more.
(func_install_pkgmacro_subproject)
(func_install_pkgaux_subproject): Use our own file loop -
func_copy subsumes all the checks previously in
func_copy_some_files, but operates on only one file at a time.
(func_install_pkgltdl_files): Similarly, handle aclocal.m4 and
configure special cases here, before calling func_copy.
* tests/libtoolize.at: Make sure we match corrected "copying
`configure.ac'" output.
maint: generate full and correct ChangeLog.
* gnulib: Updated to pick up gitlog-to-changelog multi-author
support.
* gl/build-aux/gitlog-to-changelog.diff: Use gnulib-rejected
patch for '(tiny change)' support.
* Makefile.am (ChangeLog): Use gitlog-to-changelog --amend=F
option.
* libltdl/config/git-hooks/commit-msg: New commit message hook
for git.
* libltdl/config/git-log-fix: New file, with ChangeLog fixes.
* HACKING (Using git): Update.
2011-11-16 Gary V. Vaughan <gary@gnu.org>
options-parser: provide a saner pluggable API.
It's much too easy to forget that the functions you hook into
the option parser need to return unconsumed options in the
variable `func_run_hooks_result'; better to follow the
convention used in the rest of bootstrap and return results in a
variable named after the function with `_result' appended.
* libltdl/config/options-parser (func_run_hooks): implement this
new API.
(Option parsing): Update the example in the header comment for
this section to reflect the changes.
* bootstrap (bootstrap_options_prep, bootstrap_parse_options)
(bootstrap_validate_options): Adjust.
* bootstrap.conf (libtool_options_prep, libtool_parse_options)
(libtool_validate_options): Ditto.
bootstrap: display accurate usage message.
After splitting bootstrap up, we also lost bootstrap's usage
message, and were incorrectly displaying a partial extract-trace
message.
* bootstrap (usage): Set appropriately.
bootstrap: accept --gnulib-srcdir=/path/to/gnulib again.
During the split of bootstrap into options-parser and
extract-trace, the generic long-option splitting code got lost.
* libltdl/config/options-parser (func_parse_options): Add the
code to split any long option separated by an equals from its
optarg back in.
Reported by Roumen Petrov.
2011-11-15 Gary V. Vaughan <gary@gnu.org>
gnulib: update gnulib submodule.
Among others, this fixes a bug in _build-aux expansion so that
`make syntax-check' works again.
* gnulib: Updated to today's master HEAD revision.
* gl/top/maint.mk.diff: Remove. This patch has been applied
upstream already.
libtoolize: remove NL2SP and initialisation.
There's only a single use of NL2SP, and that is redundant.
* libtoolize.m4sh (func_serial_update): Factor away use of
NL2SP.
(NL2SP, SP2NL): Remove initialisation.
bootstrap: remove consumed options from the list to be processed.
Fix a bug where processed bootstrap options were not removed
from the queue, and eventually flagged as unknown in the
pluggable option parser driver.
* bootstrap (bootstrap_parse_options)
(bootstrap_validate_options): Follow the pluggable option parser
API correctly, and set func_run_hooks_result to the list of
remaining unconsumed options.
Reported by Roumen Petrov.
2011-11-14 Gary V. Vaughan <gary@gnu.org>
libtoolize: refactor $opt_quiet, func_echo and func_echo_once.
Instead of long sequences checking for setting of $opt_quiet,
followed by one or more func_echo variations, add and use a new
function func_whisper - the complement of func_verbose.
* libtoolize.m4sh (func_whisper): New function. Adjust all
callers previously using `$opt_quiet || func_echo ...'.
(func_whisper_once): Ditto, for `$opt_quiet || func_echo_once
...'.
(func_whisper_hdr): New function, adjust all callers previously
using `func_whisper_once ...; func_whisper ...'.
(func_whisper_error_header): Ditto, but calling func_error.
(func_echo_once): Remove.
libtoolize: update a bit-rotted comment.
* libtoolize (func_copy_cb): Since this comment was written, the
function has been changed to timestamp files as it copies.
Update the comment to reflect that.
general.m4sh: relative path to the same directory is `.'.
* general.m4sh (func_relative_path): We sometimes want to use
the result of this function directly, rather than purely as a
prefix, so we need to return `.' when both directories end up at
the same location.
ltmain.sh: append relative path trailing slashes explicitly.
In addition to being more idiomatic, and hence minimising
suprises, seeing the slash written explicity when appending to
the result of a relative path calculation is a lot more
readable.
* libltdl/config/general.m4sh (func_relative_path): Don't append
an implicit trailing slash...
* libltdl/config/ltmain.m4sh (func_mode_link): ...write it
explicitly at the time of use.
2011-11-09 Gary V. Vaughan <gary@gnu.org>
build: use pkgauxdir for local install and uninstall rules.
* Makefile.am (pkgauxdir): Set it correctly.
(uninstall-hook): Use it for pkgaux_scripts and
pkgaux_data_files.
(install-data-local): Ditto.
Remove `config/' prefix from extract-trace and option-parser
items.
2011-11-08 Gary V. Vaughan <gary@gnu.org>
install: correct a typo in pkgaux_files location.
* Makefile.am (install-data-local): Install pkgaux_files
directly from $(aux_dir) [./libltdl/config at the moment].
libtoolize: order pkgltdl_files to avoid reconfiguration.
* Makefile.am (pkgltdl_files): aclocal.m4 depends on
configure.ac, and will cause spurious reconfiguration of freshly
`libtoolize --ltdl' tree if we don't ensure configure.ac is the
older of these two files.
* tests/libtoolize.at: Adjust expout order to match.
build: remove an over-exuberant $(srcdir) prefix.
* Makefile.am (git_version_gen): No need for an extra $(srcdir)
in the path when we always use after `cd $(srcdir).
libtoolize: massage installed auxiliary script list at make time.
* Makefile.am (configure_edit): Rename pkgconfig_files
substitution to pkgaux_files, and add pkgaux_install_files and
pkgaux_parent_files substitutions for atlocal.
(pkgauxdir): Where to install pkgaux_files.
(auxfiles): Removed, and replaced by...
(pkgaux_parent_files, pkgaux_install_files, pkgaux_data_files):
...these, which separate the files lists more logically for
easier installation, and use by libtoolize.m4sh.
(uninstall-hook): Adjust.
(tests/atlocal): Adjust.
* bootstrap.conf (libtool_link_libltdl_subdirs): Adjust.
* libtoolize.m4sh (func_install_pkgconfig_files)
(func_install_pkgconfig_subproject)
(func_install_pkgconfig_parent, func_install_pkgconfig_files)
(all_pkgconfig_files): Renamed to...
(func_install_pkgaux_files, unc_install_pkgaux_subproject)
(func_install_pkgaux_parent, func_install_pkgaux_files)
(all_pkgaux_files): ...these, resp. Adjust all callers.
(func_massage_pkgconfig_files): Removed.
(pkgaux_files): List of all auxiliary scripts substituted from
Makefile.
libtoolize: massage installed libltdl file list at make time.
* libtoolize.m4sh (pkgltdldir, pkgdatadir): Put installable
libltdl files in pkgdatadir. When testing, and _lt_pkgdatadir
is set, adjust to look in libltdl subdirectory.
(func_massage_pkgltdl_files): Removed function and only caller,
because...
(pkgltdl_files): ...we substitute the pre-massaged files
directly...
(func_install_pkgltdl_files): ...from here.
Adjust installation of specially handled additional files.
* Makefile.am (ltdldir): Location of libltdl files in source
tree.
(ltdldest, ltdldatafiles): Removed.
(pkgltdl_files): New pre-massaged list of libltdl sources.
(install-data-local, uninstall-hook): Use it.
* tests/libtoolize.at: Reorder expected output to match actual
libtoolize output.
libtoolize: massage installed macro list at make time.
* libtoolize.m4sh (func_massage_aclocal_DATA): Removed function
and only caller, because...
(pkgmacro_files): ...we substitute the pre-massaged files
directly...
(func_install_pkgmacro_files): ...from here.
* Makefile.am (pkgmacro_files): New pre-massaged list of aclocal
macros used by func_install_pkgmacro_files.
(configure_edit): Substitute pkgmacro_files instead of
aclocalfiles.
libtoolize: use only space delimited file lists.
We don't install any files with whitespace in their file name,
so using colon delimited lists to make that possible was a
premature optimisation and an unneeded complication.
* libtoolize.m4sh (func_copy_some_files): Remove IFS twiddling,
and just pull space delimited files in a for loop idiomatically.
(func_massage_aclocal_DATA, func_install_pkgmacro_subproject)
(func_install_pkgmacro_parent, func_install_pkgmacro_files)
(func_massage_pkgltdl_files, func_massage_pkgconfig_files):
Append to file lists with space delimiter.
libtoolize: remove sed based configure scanning.
* libtoolize (func_scan_files): Removed function and callers.
(require_seen_ltdl, require_seen_libtool): Factor out remaining
functionality of former sed based scanning.
(func_check_macros): Adjust.
* NEWS: Updated.
libtoolize: refactor ltdl_mode discovery.
* libtoolize.m4sh (require_ac_ltdl_mode)
(require_ac_ltdl_options, require_ltdl_mode): New functions
factored out of func_scan_files for scanning and setting
ltdl_mode and friends.
(func_scan_files): Remove the factored out code.
(func_install_pkgmacro_files, func_install_pkgltdl_files)
(func_install_pkgconfig_files, func_check_macros): Adjust.
libtoolize: refactor ltdl_dir discovery.
* libtoolize.m4sh (require_ac_ltdl_dir, require_ltdl_dir):
New functions factored out of func_scan_files for scanning and
setting ac_ltdl_dir and ltdl_dir resp.
(func_scan_files): Remove the factored out code.
(func_fixup_Makefile, func_serial_update_check)
(func_install_pkgltdl_files, func_install_pkgconfig_subproject)
(func_check_macros): Adjust.
libtoolize: refactor aux_dir discovery.
* libtoolize.m4sh (require_ac_aux_dir, require_aux_dir): New
functions factored out of func_scan_files for scanning and
setting aux_dir and friends.
(func_scan_files): Remove the factored out code to scan
configure.ac with sed, and then set macro_dir appropriately.
(func_install_pkgconfig_subproject, func_install_pkgconfig_parent)
(func_install_pkgmacro_files, func_check_macros): Adjust.
libtoolize: install autoconf macros only if there is a $configure_ac.
* libtoolize.m4sh (func_install_pkgmacro_files): If there is no
$configure_ac in the parent project directory, and libtoolize is
in subproject mode, then the parent project has no use for
autoconf macros, so don't install them.
* NEWS: Updated.
libtoolize: display aux files output header for non-autoconf parents.
* libtoolize.m4sh (func_install_pkgconfig_subproject): When the
parent project does not use Autoconf, be sure to display an
output header before copying auxiliary files despite not being
able to scan for AC_CONFIG_AUX_DIR arguments.
* NEWS: Updated.
libtoolize: refactor macro_dir discovery around extract-trace script.
* libtoolize.m4sh (func_extract_trace): Function to call
$aux_dir/extract-trace. The name and footprint are the same as
the core function in the extract-trace script file so that we
can choose to source that file when the option processing
becomes compatible with ours.
(require_ac_macro_dir, require_aclocal_amflags)
(require_am_macro_dir, require_macro_dir, require_makefile_am):
New functions factored out of func_scan_files for scanning and
setting macro_dir and friends.
(func_scan_files): Remove the factored out code to scan
configure.ac with sed, and then set macro_dir appropriately.
(func_serial_update_check, func_install_pkgmacro_subproject)
(func_install_pkgmacro_parent, func_install_pkgmacro_files)
(func_check_macros): Adjust.
* tests/libtoolize.at (Subproject ltdl without GNU M4): New test
to ensure `libtoolize --subproject' continues to work without a
GNU M4 dependency.
* NEWS: Updated.
libtoolize: refactor configure_ac discovery.
Make a start on decomposing some of the giant functions at the
heart of libtoolize into the much more flexible and manageable
(albeit somewhat more verbose) model of self-organising
$require_<foo> function pointers.
* libtoolize.m4sh (require_configure_ac): New function factored
out of func_scan_files for setting $configure_ac appropriately,
implementation taken from extract-trace script.
(func_autoconf_configure): And similarly for ensuring that a
filename which matches something Autoconf would read also has
content that appears to be destined for Autoconf processing.
(func_scan_files): Simplified the factored out code to a single
require_configure_ac call.
(func_install_pkgconfig_files, func_check_macros): Ditto.
(seen_autoconf): Removed.
bootstrap: split into reusable parts.
* bootstrap: Bourne shell has no scoping, so be extremely
careful with namespaces, functions in `^func_' and `^require_';
private variables in `^_G_', and public variables all well
documented by comments.
* libltdl/config/extract-trace: New file, containing the minimum
of code previously in bootstrap plus a little glue to make the
GNU M4 based autotools tracing function (as opposed to the
kludgy sed extraction currently used everywhere else) a
standalone script that can be executed or sourced.
* libltdl/config/options-parser: New file, containing the
pluggable options parser code shared between the other two.
* bootstrap.conf: Adjust.
* Makefile.am (EXTRA_DIST): Be sure to distribute the new
extract-trace and options-parser scripts.
(install-data-local): And install them where libtoolize can find
them.
tests: prefix absolute directory variables with 'abs_'.
Avoid any possible confusion about the contests of thes
variables compared to $aux_dir, $macro_dir and $src_dir in
configure.ac, Makefile.am, libtoolize.m4sh and others.
* tests/defs.m4sh (aux_dir, macro_dir, srcdir): Rename these...
(abs_aux_dir, abs_macro_dir, abs_srcdir): ...to these resp.
* tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
tests/demo-pic-exec.test, tests/demo-pic-make.test,
tests/demo-shared-exec.test, tests/demo-shared-inst.test,
tests/demo-shared-make.test, tests/demo-shared-unst.test,
tests/demo-static-exec.test, tests/demo-static-inst.test,
tests/demo-static-make.test, tests/demo-static-unst.test,
tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
tests/sh.test, tests/tagdemo-shared-exec.test,
tests/tagdemo-shared-make.test, tests/tagdemo-static-exec.test,
tests/tagdemo-static-make.test, tests/tagdemo-undef-exec.test,
tests/tagdemo-undef-make.test, tests/tagtrace.test: Adjust.
maint: calculate required mkinstalldirs calls during `make install'.
* Makefile.am (install-data-local): Make sure all destination
directories are in place before copying files there, without
hardcoding them.
maint: substitute static directory names.
By substituting just the directory name as passed to the macro,
aux_dir can be used with or without $srcdir prefix, which is
more flexible, and always means the same thing in each file,
rather than sometimes being a directory name, sometimes relative
to $top_srcdir.
* configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR)
(LT_CONFIG_LTDL_DIR): Don't force config.status substitutions
with unexpanded shell variables.
* Makefile.am, tests/defs.m4sh: Adjust.
2011-11-07 Peter Rosin <peda@lysator.liu.se>
libtoolize: fix spelling nit.
* libtoolize (M4SH_GETOPTS): Fix spelling nit.
2011-11-07 Gary V. Vaughan <gary@gnu.org>
tests: fix parsing of configure output by pic_flag.at.
Close http://debbugs.gnu.org/9962.
* tests/pic_flag.at (LT_AT_CONFIGURE): Make sure to configure
with --disable-silent-rules so that the full output parsed by
the rest of the test is available.
Reported by Roumen Petrov.
libtoolize: rename `--subproject' option, and make it work.
* libtoolize (M4SH_GETOPTS): Remove `--standalone', which never
worked, and add `--subproject' which sets ltdl_mode correctly.
2011-11-05 Gary V. Vaughan <gary@gnu.org>
libtoolize: fix a scoping bug in func_aclocal_update_check.
libtoolize.m4sh (func_aclocal_update_check): This body of this
function used a global variable set by the outer loop of the
caller. Fix to Use the function argument correctly.
maint: rename the debug shell command variable to `debug_cmd'.
Not only does it make more sense, it also matches bootstrap and
others.
* libtoolize.m4sh, libltdl/config/ltmain.m4sh,
libltdl/config/getopt.m4sh, tests/defs.m4sh (opt_debug): Rename
to debug_cmd.
maint: dynamically strip unused scripts from libltdl Makefile.
* configure.ac (pkgaux_scripts): Centrally maintain the complete
list of aux scripts required to build libltdl, and which need to
be installed by libtoolize --ltdl, and consequently need to be
placed in $pkgdatadir by make install.
* Makefile.am (libltdl/stamp.mk): Improved to strip the unused
scripts not listed in pkgaux_scripts without the need for manual
synchronisation.
(auxexefiles): Removed. Replaced by new pkgaux_scripts
substitution.
(install-data-local): Adjust.
build: substitute paths into defs.m4sh instead of recalculating.
* Makefile.am (configure_edit): Add substitutions for aux_dir,
macro_dir and srcdir.
* tests/defs.m4sh: Don't recalculate srcdir.
(aux_dir, macro_dir, srcdir): Convert to absolute paths.
build: support AM_SILENT_RULES
* configure.ac: Add AM_SILENT_RULES.
* libltdl/configure.ac: Ditto, but only if defined.
* Makefile.am (.version, ChangeLog, README, doc/notes.txt)
(libtool, libtoolize, libtoolize.in, libltdl/Makefile.am)
(libltdl/stamp-mk, m4/ltversion.m4, tests/atconfig, tests/defs)
(tests/defs.in, tests/package.m4): Output an AM_SILENT_RULES-like
GEN when V==0.
* libltdl/Makfile.inc (libltdl/argz.h): Ditto.
2011-10-31 Gary V. Vaughan <gary@gnu.org>
maint: add autobuild prerequisite only if autobuild.m4 is absent.
* bootstrap (func_require_autobuild_buildreq): Skip if autobuild.m4
is already present.
* bootstrap.conf (require_autobuild_bulidreq): No need to set this
specially any more.
maint: ensure bootstrap runs from dist tarball.
* bootstrap (func_gnulib_tool_copy_file): When gnulib-tool is
not available, check that there is a copy of the file from a
previous run available before bailing out with a diagnostic.
(func_install_gnulib_non_module_files): Don't diagnose missing
files explicitly - func_gnulib_tool_copy_file takes care of it
now.
(func_require_checkout_only_file): In the diagnostic for
not being in a source-controlled tree, note that `--force' must
be used to rebootstrap.
(func_require_gnulib_files_already_present): Removed. All the
necessary checks are correctly performed in
func_gnulib_tool_copy_file withot resorting to heuristics.
(func_require_gnulib_mk): Don't continue to try to access
gnulib-cache.m4 after discovering we're running from a dist
tarball.
(func_require_dotgitmodules_parameters): Skip if .gitmodules
file is missing and git binary is not available.
* bootstrap.conf (checkout_only_file): Set to HACKING, which is
a non-distributed file.
(libtool_cleanup_empty_dirs): Don't print spurious errors when
trying to delete gnulib-tool droppings, in case gnulib-tool is
not available on this run.
tests: add a keyword `expensive' to very long running tests.
* tests/cmdline_wrap.at, tests/stresstest.at (AT_KEYWORDS): Add
`expensive'.
* NEWS: Updated.
libtoolize: fix some long-standing sed substitution bugs
* libtoolize.m4sh (func_fixup_Makefile): `\\\\\$' in a " quoted
script that is evaluated twice before execution becomes a `\$',
which sed interprets as a literal $. The script will then delete
any lines with a first non-whitespace character of `$'. Instead
use `\\\\$' in single quotes, which sed eventually receives as
`\\$' and correctly interprets as part of an instruction to
delete otherwise empty lines ending with a `\'.
Additionally the rest of the same sed script is no longer
applied to comment lines to avoid munging the copyright header
among others.
* NEWS: Updated.
2011-10-27 Gary V. Vaughan <gary@gnu.org>
maint: use gnulib's gitlog-to-changelog instead of a ChangeLog file.
* ChangeLog: Removed.
* HACKING (Editing 'ChangeLog'): Removed. Renumbered other sections to
compensate.
* bootstrap.conf (gnulib_modules): Add gitlog-to-changelog.
* Makefile.am (ChangeLog): Generate the ChangeLog for 2011...
(dist-hook): ...from the output of `git log' before rolling a
distribution tarball.
maint: use gnulib's git-version-gen instead of mkstamp.
* libltdl/config/mkstamp: File removed.
* bootstrap.conf (gnulib_modules): Add git-version-gen.
* configure.ac (AC_INIT, package_revision): Use git-version-gen to
calculate version number.
(TIMESTAMP): Removed.
* libtoolize.m4sh, libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
(TIMESTAMP): Ditto.
* Makefile.am (TIMESTAMP): Ditto.
(MKSTAMP): Renamed from this...
(git_version_gen): ...to this. Set revision here. An alpha is now a
release with an odd micro relase number.
(rebuild): Don't reset revision here.
(build_scripts): Remove mkstamp, add git-version-gen.
(EXTRA_DIST, BUILT_SOURCES): Add .version.
(libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4, tests/package.m4):
Don't depend on configure.ac or ChangeLog to determine when the
version number has reved, use .version directly.
(.version): Flush most recent configure calculated VERSION to disk.
(dist-hook): Flush current VERSION to disk at dist time.
(dotserial): Distributed file to cache the serial number for
when git is not available to recalculate it when building from a
release tarball.
(dist-hook): Make sure .serial is created.
(libltdl/config/ltversion.m4): Use .serial when it is present
(in a dist tarball) or calculate with git otherwise (in a git
working directory).
(EXTRA_DIST): Add .serial file.
maint: use gnulib's maint.mk and support scripts release procedure.
* Makefile.maint: Removed.
* configure.ac (LASTRELEASE, lt_major, lt_minor, lt_micro, lt_alpha):
All removed. Makefile.maint was the only client.
* HACKING (Release Procedure): Removed.
* bootstrap.conf (gnulib_modules): Add announce-gen,
do-release-commit-and-tag, gendocs, gnu-web-doc-update, gnupload and
readme-release.
* cfg.mk (manual_title): Set it for web-manual rule.
(announcement_Cc_): Release announcement email addresses.
* Makefile.am (build_scripts): Add to EXTRA_DIST additional files
imported from gnulib for maint.mk release procedure.
* NEWS: Updated.
2011-10-24 Gary V. Vaughan <gary@gnu.org>
tests: ensure VPATH autom4te search path can find autotests.
* Makefile.am (tests/testsuite): Passing only $(srcdir) include path
to autom4te is unable to find tests/package.m4, and passing only
$(srcdir)/tests breaks VPATH build searches for TESTSUITE_AT files,
which are relative to $(srcdir)... so we pass both!
* NEWS: Updated.
Reported by Bob Friesenhahn.
2011-10-24 Karl Berry <karl@gnu.org>
doc: modernize libtool.texi.
* libtool.texi (@copying): Use this instead of @ifnottex; format for
Texinfo; eliminate obsolete paragraph about TeX; use @insertcopying
instead of duplicating text.
(@syncodeindex): Move all to the Texinfo header, where they belong.
(@dircategory): Use "Software development" instead of "GNU programming
tools", for consistency; and align individual entries to avoid
multiple lines; and move to after the copyright message.
2011-10-24 Gary V. Vaughan <gary@gnu.org>
maint: don't make autobuild a hard bootstrap requirement.
* bootstrap.conf (require_autobuild_buildreq): Reset this to ':' so
that bootstrap doesn't auto-add autobuild to $buildreq.
2011-10-23 Gary V. Vaughan <gary@gnu.org>
maint: use gnulib's maintainer-makefile module.
* bootstrap.conf (gnulib_modules): Add maintainer-makefile.
(gnulib_tool_options): Add --avoid=dummy now that we have a real
module to import.
* cfg.mk: New file. Customize maint.mk for Libtool.
* Makefile.am (EXTRA_DIST): Add GNUmakefile, cfg.mk and maint.mk.
maint: use gnulib's canonical fdl.texi.
* doc/fdl.texi: Removed.
* bootstrap.conf (gnulib_non_module_files): Add fdl.texi.
maint: use gnulib's canonical COPYING files.
* COPYING, libltdl/COPYING.LIB: Removed.
* bootstrap.conf (gnulib_non_module_files): Add COPYING.
(libtool_add_libltdl_copying): New func_gnulib_tool hook
function to copy the canonical LGPL2 COPYING file from gnulib at
bootstrap.
maint: use gnulib's (pending saner) bootstrap script.
* bootstrap: Replaced with gnulib script.
* bootstrap.conf: New file with Libtool specific bootstrap
configuration.
* Makefile.am (EXTRA_DIST): Add bootstrap.conf.
maint: add gnulib submodule.
* configure.ac (GL_INIT, GL_EARLY): Initialise gnulib, and expand
its configure time checks.
* .gitmodules (gnulib): New file with configuration for our
gnulib git submodule.
2011-10-22 Gary V. Vaughan <gary@gnu.org>
maint: tidy, sort and consolidate .gitignore files.
The `gnulib-tool' and gnulib `bootstrap' scripts maintain
`.gitignore' files in asciibetical order, so reorder them now
to avoid spurious patches later.
Take advantage of putting recursive file ignore matches into
`$top_srcdir/.gitignore' and remove repetitions from other
`.gitignore' files.
2011-10-22 Gary V. Vaughan <gary@gnu.org>
maint: don't run help2man on programs not-yet-built.
* Makefile.am (doc/libtool.1, doc/libtoolize.1): Added a
comment about why the dependencies here have to be a mite
bizarre.
tests: remove unused `aux_dir' variable from `getopt-m4sh.test'.
* tests/getopt-m4sh.at (aux_dir): Remove unused variable.
tests: DRYing out `tests/sh.test'.
* Makefile.am (libtool_m4): Canonical location of libtool.m4 file.
(lt_aclocal_m4_deps): Use it.
maint: pass directory declarations in configure.ac into Makefile.
* configure.ac (AC_CONFIG_AUX_DIR, LT_CONFIG_LTDL_DIR)
(AC_CONFIG_MACRO_DIR): Append code to these functions to
capture and propagate their directory arguments to Makefile.
* Makefile.am (aux_dir, ltdl_dir, macro_dir): Remove declarations.
* bootstrap (my_sed_trace): Also capture LT_CONFIG_LTDL_DIR into
`$ltdl_dir'.
<Makefile>: Output the extracted values of `aux_dir', `ltdl_dir'
and `macro_dir' at the top of the quick'n'dirty bootstrap
Makefile.
maint: factor out ltmain.sh variable deletion.
* Makefile.am (ltmain_sh_edit): Expand upon bootstrap edit by
adding the extra line to delete boilerplate variable settings
from libltdl/config/general.m4sh that don't apply here.
(libltdl/config/ltmain.sh): Use it.
maint: DRYing out `Makefile.am' file paths.
* Makefile.am (aux_dir, macro_dir): Include `$(srcdir)' in
declaration. Adjust all references.
(doc_dir, ltdl_dir, m4sh_dir, tests_dir): New single location
to hold directory paths, all including `$(srcdir)', to reduce
typing.
(LT_M4SH): Use `$m4sh_dir' as include directory.
(defs): This one is for a file in the build-tree, so no
leading `$(srcdir)'.
CLEANUP: fix error from pushing too far up the branch.
* Makefile.am (install-data-local): Undo character transposition
from too early push of untested v2.4-17-gaf74d58.
* ChangeLog (2010-09-16): Remove spurious entry.
maint: use macro_dir consistently in all files.
* Makefile.am: Replace all uses of m4dir with macrodir to
match AC_CONFIG_MACRO_DIR.
* libltdl/config/libtoolize.m4sh: Replace all uses of macrodir
with macro_dir.
* tests/defs.m4sh, tests/sh.test: Likewise.
maint: use aux_dir consistently in all files.
* Makefile.am, Makefile.maint: Replace all uses of auxdir
with aux_dir to match AC_CONFIG_AUX_DIR.
* libltdl/config/libtoolize.m4sh: Likewise.
* tests/defs.m4sh, tests/getopt-m4sh.at: Likewise.
Makefile: try to be robust against shell meta-chars in filenames.
* Makefile.am: In each rule body, unless a make variable needs
to be seen as multiple words by the shell (for word-splitting
loops, or because it contains several commands), quote it. Use
single quotes unless the shell needs to perform variable inter-
polation, in which case use double quotes.
2011-10-20 Gary V. Vaughan <gary@gnu.org>
maint: let make employ user's `SED' setting.
* Makefile.am: Replace hard-coded `sed' with `$(SED)' through-
out.
maint: simplify and improve safety of bootstrap process.
* Makefile.am (bootstrap_files): List files that need to be
generated at bootstrap time before `./configure && make' can
work. It turns out that this is considerably fewer files than we
had thought necessary previously.
(bootstrap-deps-prep): Ensure minimum set of required substitution
variables are non-empty.
(bootstrap-deps): Depend on `bootstrap' files.
* bootstrap (Generate bootstrap dependencies): Now that
`Makefile.am' is entirely responsible for rebuilding files at
bootstrap time, we need only specify the new `bootstrap-deps'
target, and supply values for the substitutions checked by
`bootstrap-deps-prep'.
* configure.ac (AC_CONFIG_SRCDIR): `libtoolize.in' is not here yet
right after running `bootstrap'. So rely on the presence of
`libltdl/config/libtoolize.m4sh', which is always there.
build: eliminate superfluous temporary files from `Makefile.am'.
* Makefile.am (CLEANFILES): Remove temporary file entries.
(libtoolize.in, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
(tests/defs, tests/testsuite): Factor away temporary files.
build: eliminate `ltmain.in' and `libtoolize.in' intermediate files.
* Makefile.am (libltdl/config/ltmain.sh, libtoolize.in): Pipe
the output of `$(LT_M4SH)' directly into `$(bootstrap_edit)' to
avoid use of superfluous intermediate file.
build: don't hardcode repeated long paths in Makefile rules.
According to the DRY principle, scattering several copies of
something across a file or project leads to pain. Let's not
do that!
* Makefile.am (Makefile_in, Makefile_inc, defs_in, defs_m4sh),
(libtoolize_in, ltmain_m4sh, ltversion_in): New variables to
hold the location of important files and targets.
(EXTRA_DIST): Add the distributed ones by variable.
(libtoolize, libltdl/Makefile.am, libltdl/m4/ltversion.m4)
(libltdl/config/ltmain.sh, libltdl/stamp-mk, tests/defs)
(tests/defs.in): Use the new variables to reduce noise and
repetition.
build: make better use of automatic variables in `Makefile.am'.
* Makefile.am (libtoolize, libtoolize.in, libltdl/Makefile.am)
(libltdl/config/mkstamp, libltdl/config/ltmain.m4sh)
(libltdl/m4/ltversion.m4, tests/testsuite, tests/defs.in):
Make better use of automatic variables.
build: name temporary files in `Makefile.am' consistently.
Sadly, we still have to jump through hoops for MICROS~1's very
old, very broken 8.3 naming convention, so we have to be careful
to be unique in the first 8 letters, and not to use two periods
in a filename, otherwise we could use the much more elegent
`temporary files use "$@T"' idiom:
* Makefile.am (libltdl/m4/ltversion.m4): Rename temporary file
to `ltversion.tmp'.
(libltdl/config/ltmain.sh): Rename temporary file to
`libltdl/config/ltmain.tmp'.
(libtoolize): Rename temporary file to `libtoolize.tmp'.
(tests/defs): Rename temporary file to `tests/defs.tmp'
(tests/testsuite): Rename temporary file to `tests/testsuite.tmp'.
(CLEANFILES): Append temporary files as we create rules that
use them.
build: factor Makefile.am `m4sh' invocations to LT_M4SH.
* Makefile.am (LT_M4SH): Now that all directories are listed as
fully qualified paths, the search path argument to M4SH is always
the same, so factor it out into a variable. Adjust all callers.
build: avoid unnecessary directory changes in Makefile rules.
* Makefile.am (doc/notes.txt, libltdl/m4/ltversion.m4,
(libltdl/config/ltmain.m4sh, libtoolize.in, libltdl/Makefile.am)
(libltdl/config/mkstamp, tests/testsuite, tests/defs.in): Avoid
unnecessary `cd' commands by using fully qualified paths to files
outside of current directory.
build: compare `revision' rather than `correctver' in Makefile.am.
* Makefile.am (rebuild): Set the shell variable `revision' rather
than `correctver' for clarity of purpose.
(bootstrap_edit, libltdl/config/ltmain.sh): Adjust.
(libltdl/m4/ltversion.m4): Likewise, and alse, instead of munging
the serial number comment line with set, extract `macro_version'
from this file, and compare it directly with `revision'.
(libtool): Likewise for `package_revision'.
build: avoid spurious bootstrap_edit call.
* Makefile.am (tests/package.m4): @FOO@ substitutions have already
been made by the time Makefile.am has been transformed into Makefile,
so don't try to rerun the substitutions manually with
$(bootstrap_edit) after the fact.
2011-10-18 Gary V. Vaughan <gary@gnu.org>
Post-release administrivia.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
numbers.
* NEWS: Add header line for next release.
Release 2.4.2.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
numbers.
* NEWS: Update version number.
2011-10-17 Gary V. Vaughan <gary@gnu.org>
Replace leading spaces with tabs.
* libltdl/m4/libtool.m4, libltdl/config/ltmain.m4sh: Replace leading
spaces in source code with tabs to match surrounding code.
Reported by Peter Rosin.
Make a note to use gnu/linux for version_type.
* libltdl/m4/libtool.m4 (version_type): Add a comment to change
version_type setting from 'linux' to 'gnu/linux' during the next
destabilising code refactoring.
* libltdl/config/ltmain.m4sh: ditto.
Requested by Richard Stallman.
2011-10-04 Bart Van Assche <bvanassche@acm.org>
Typo fix - change func_apped into func_append
* libltdl/config/ltmain.m4sh: Fix typo.
2011-10-02 Xin LI <d@delphij.net>
Avoid problems when FreeBSD goes to version 10.
* libltdl/m4/libtool.m4: Remove mentions of freebsd1. Use dots
for FreeBSD 2 and 3 detection to avoid future problems
* libltdl/m4/ltmain.m4sh: ditto.
2011-09-25 Cristophe Jarry <christophe.jarry@ouvaton.org>
Avoid mentioning "Linux", use "GNU/Linux", if appropriate.
* TODO: Don't use bare "Linux".
* doc/libtool.texi: ditto.
* doc/notes.texi: ditto.
* libltdl/README: ditto.
* libltdl/m4/libtool.m4: ditto.
2011-09-02 Peter O'Gorman <peter@pogma.com>
Add flag to inhibit warnings.
* libltdl/config/ltmain.m4sh: Add --no-warn, --no-warning flags.
Reported by John David Anglin.
2011-04-10 Kurt Roeckx <kurt@roeckx.be>
tagdemo: do not rely on picking up symbols from indirect deps.
* tests/tagdemo/Makefile.am: Link to all libraries that the
demo application uses.
2011-04-10 Svante Signell <srs@kth.se> (tiny change)
Set shlibpath_overrides_runpath for the Hurd.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [gnu]
<shlibpath_overrides_runpath>: Set to no.
* THANKS: Update.
2011-03-22 Justin Lecher <jlec@gentoo.org> (tiny change)
Rhys Ulerich <rhys.ulerich@gmail.com>
Don't filter OPENMP flags (-openmp & -fopenmp) from linker lines.
If -fopenmp if passed to gcc during linking, it will take care to
add all necessary libs to link correctly for openmp support.
Currently libtool filters those flags, similar as it was the
case with the threading flags. This change handles the situation
for the openmp support similar as before the thread support
was fixed.
http://lists.gnu.org/archive/html/bug-libtool/2010-12/msg00009.html
http://lists.gnu.org/archive/html/bug-libtool/2011-03/msg00014.html
* libltdl/config/ltmain.m4sh (func_mode_link): Treat OpenMP
flags like pthreads flags.
2011-03-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
libtoolize: detect -I<dir> (without space) in ACLOCAL_AMFLAGS.
* libtoolize.m4sh (func_scan_files): Also accept -I<dir>
(without intervening space) in ACLOCAL_AMFLAGS.
* THANKS: Update.
Report from Jan Engelhardt.
2011-03-05 Peter O'Gorman <peter@pogma.com>
On Mac OS X try .dylib as well as .so with lt_dlopenext
* libltdl/m4/ltdl.m4: Define extra extension if module extension
differs from shared lib extension.
* libltdl/ltdl.c: Use it.
* tests/darwin.at: Test it.
* NEWS: Announce it.
Reported by Hans Aberg, Michael Ellis, and others.
2011-02-14 Peter O'Gorman <peter@pogma.com>
Install ltmain.sh without execute bit set.
* Makefile.am: change install rule for ltmain.sh
Reported by Křištof Želechovski.
2011-02-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
docs: fix copyright years in PDF version of the manual.
* doc/libtool.texi: Fix copyright years.
2011-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
fix typo in ChangeLog
2011-02-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Fix LD setting for 64-bit Solaris 2/x86.
* libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [*-*-solaris*):
Determine GNU ld options for 64-bit Solaris 2/x86. Detect gld
2.21 _sol2 emulations.
2011-01-27 Peter O'Gorman <peter@pogma.com>
Don't loop through wrapper script arguments unnecessarily.
* libltdl/m4/ltmain.m4sh: Check that argv contains " --lt-"
before looping to remove wrapper script targetted arguments.
Performance regression reported by Dan McGee.
2011-01-20 Gerald Pfeifer <gerald@pfeifer.com> (tiny change)
Remove support for FreeBSD 1.x.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
(_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which
soon would incorrectly match FreeBSD 10.0.
* NEWS, THANKS: Update.
2011-01-19 Peter O'Gorman <peter@pogma.com>
Don't let verbose linker messages influence test results.
* libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Ignore
stderr during tests for -flag unless it contains "flag".
* tests/darwin.at: Add test.
Reported by Jeremy Huddleston and also by David Fang.
2011-01-09 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> (tiny change)
Fix relink mode to use absolute path if hardcode_minus_L.
* libltdl/config/ltmain.m4sh (func_mode_link): Use absolute path
when hardcoding with -L.
2011-01-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix $wl setting for Solaris Studio 12.2 f90 on GNU/Linux.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]
<lt_prog_compiler_wl>: Set to '-Qoption ld ' if we
detect Sun Fortran version 8.4 or newer.
Report by Terry Dontje.
2011-01-07 Peter Rosin <peda@lysator.liu.se>
Convert file name to toolchain format when blessing archives.
* libltdl/config/ltmain.m4sh (func_mode_install): When executing
old_postinstall_cmds and old_archive_cmds, convert $oldlib to a
format appropriate for the tool and provide that in $tool_oldlib.
Also use $tool_oldlib when stripping old libraries.
* libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Use $tool_oldlib
as argument to $RANLIB.
* THANKS: Update.
Report by Dan McMahill.
2011-01-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Bump copyright years.
* ChangeLog.2010: New, rotated from ...
* ChangeLog: ... here.
* Makefile.am (EXTRA_DIST): Add ChangeLog.2010.
* NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
* libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
* libtoolize.m4sh: Likewise.
* doc/libtool.texi: Likewise.
2010-12-20 Ian Lance Taylor <iant@google.com>
* libltdl/m4/libtool.m4 (LT_LANG): Add Go.
(AC_PROG_GO): Provide.
(_LT_SYS_HIDDEN_LIBDEPS): Add Go case.
(_LT_LANG_GO_CONFIG): Define.
(LT_PROG_GO): Define.
(AC_PROG_GO): Define if not defined.
* libltdl/config/ltmain.m4sh: Match *.go.
* doc/libtool.texi (LT_INIT): Mention Go.
(Tags): Mention Go.
* configure.ac: Enable Go.
* NEWS: Update.
2010-12-20 Brice De Bruyne <bricedb@gmail.com> (tiny change)
Also turn off -fuse-linker-plugin for postdep_objects computation.
* libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Add
-fno-use-linker-plugin to temporary compile flags if necessary,
to fix C++ postdep_objects setting with -flto
-fuse-linker-plugin.
* NEWS, THANKS: Update.
2010-12-20 KO Myung-Hun <komh@chollian.net> (tiny change)
Set command line length limit for OS/2.
* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [os2]
<lt_cv_sys_max_cmd_len>: Set to 8192 to avoid long test.
2010-12-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix PIC flags with mpif77 using ifort on GNU/Linux.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
Match Intel compiler also using $CC -V output, to avoid false
negatives with compiler drivers like mpif77.
Report by Christian Rössel.
2010-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix PIC flags with MPI wrappers using Portland on GNU/Linux.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux]:
Match Portland compilers also using $CC -V output, to avoid
false negatives with MPI compiler drivers.
Report by Christian Rössel.
* libltdl/m4/libtool.m4 (_LT_SETUP): Fix quoting for
PATH_SEPARATOR.
2010-12-15 KO Myung-Hun <komh@chollian.net> (tiny change)
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix PATH_SEPARATOR handling for OS/2.
* Makefile.am (update_mans): Quote $(PATH_SEPARATOR).
* libltdl/m4/libtool.m4 (_LT_SETUP): Add _LT_DECL for
PATH_SEPARATOR.
* libltdl/config/general.m4sh: Use PATH_SEPARATOR when computing
$progpath.
* THANKS: Update.
2010-12-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix nvcc PIC setting on darwin.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
<lt_prog_compiler_pic>: Prepend -Xcompiler to nonempty variable
setting rather than hard-coding -Xcompiler -fPIC, for darwin.
* NEWS, THANKS: Update.
Report by Paweł Daniluk.
Honor $AUTOCONF, $AUTOMAKE in --help output.
* libltdl/config/getopt.m4sh (func_help): Use $AUTOCONF and
$AUTOMAKE if set, for --version outout.
docs: Libtool configuration diagram.
* doc/libtool.texi (Integrating libtool): Add diagrams
explaining the dependencies between Libtool files.
Suggestion by Ethan Mallove.
2010-11-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Eliminate hardcode_libdir_flag_spec_ld tag variable.
* libltdl/config/ltmain.m4sh (func_mode_link): Set $wl to empty
if $LD is used for creating shared libraries. Do not use
hardcode_libdir_flag_spec_ld any more.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
(_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG, _LT_SYS_DYNAMIC_LINKER)
<hardcode_libdir_flag_spec_ld>: Remove all instances of the tag
variable.
(_LT_LINKER_SHLIBS) [linux, xlf] <hardcode_libdir_flag_spec>:
Set variable, including ${wl}. Fixes hardcoding in programs
created by XL Fortran on GNU/Linux.
* NEWS, THANKS: Update.
Report by Paul H. Hargrove.
Rebuild menus in the manual.
* doc/automake.texi: Rebuild menus (using ^C ^U ^A in emacs).
Thanks to Ian Lance Taylor for the suggestion.
2010-11-07 Ollie Wild <aaw@google.com>
Modify --with-pic to support per-package configurations.
* libltdl/m4/libtool.m4: Modify --with-pic to accept a list of
package names. Modelled off --enable-shared.
* tests/with-pic.at: New test.
* Makefile.am (TESTSUITE_AT): Add tests/with-pic.at.
* doc/libtool.texi (LT_INIT): Enhance documentation of
--with-pic configure flag.
* NEWS (New features): Mention that --with-pic now accepts a
comma-separated list of package names.
2010-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix cwrapper test failure with --disable-static.
* tests/cwrapper.at (cwrapper and installed shared libraries):
Compile program source without libtool, so we can be sure a
non-PIC object will be created.
2010-11-01 Peter Rosin <peda@lysator.liu.se>
docs: Windows DLLs and headers.
* doc/libtool.texi (Platform quirks): Add new subsection
'Windows DLLs'.
* doc/libtool.texi (Platform quirks): Fix typo.
2010-10-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
docs: mention shell requirement for libtool script.
* doc/libtool.texi (Invoking libtool): Document that the shell
used to invoke libtool needs to be the same used to configure
it.
* THANKS: Update.
Report by Markus Duft.
2010-10-15 Gary V. Vaughan <gary@gnu.org>
libtool: remove redundant unsubstituted shell var defaults.
* Makefile.am (libltdl/config/ltmain.sh): Boilerplate code from
libltdl/config/general.m4 sets some default shell variables
designed to be substituted by `$(configure_edit)'. Actually,
`libtool' uses the language tag values for those variables, and
`ltmain.m4sh' is not passed through `$(configure_edit)', so they
are just noise. Edit them out at bootstrap time.
2010-10-15 Gary V. Vaughan <gary@gnu.org>
maint: don't leak developer GREP, SED etc into distribution file.
* Makefile.am: Having rearranged the file, now apply the actual
changes to follow-up.
(edit): Split into two parts...
(bootstrap_edit): ...substitutions that should happen at bootstrap
time...
(configure_edit): ...and substitutions that should not happen until
configure time.
* Makefile.am (libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh)
(libtoolize.in, tests/package.m4): Use bootstrap_edit.
(libtoolize, tests/defs): Use configure_edit.
* HACKING (Release Procedure): Remove the note to workaround the
bug fixed by this changeset.
* NEWS (Bug fixes): Mention that this bug is now fixed.
Reported by Joerg Sonnenberger.
maint: rearrange Makefile.am in preparation for a follow-up patch.
* Makefile.am (Libtool scripts.): Move this section below the
`Bootstrap.' section...
(libtoolize.in): ...except this one which is generated at
bootstrap time, and was added into the `Bootstrap.' section.
(Libltdl.): Move this section below the `Libtool scripts.'
section.
2010-10-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix linking from only convenience archives with gfortran on Darwin.
* libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Update
macro comment header.
[darwin, F77, FC] <compiler_needs_object>: Set to yes if
whole_archive_flag_spec is nonempty. Fixes convenience.at test
suite failures with gfortran 4.2 on Darwin.
* THANKS: Update.
Report by Paul Laight.
Fix bindir check logic, and relax non-bindir case for AIX.
* tests/bindir.at (bindir install tests): Rewrite checks for
place of the installed shared library in two separate tests,
depending on whether -bindir is supposed to have an effect or
not. In the positive case, make the test stricter so that we
reject libraries in $libdir. In the negative case, do not
require a major version number in the $libdir file name, for AIX
without runtimelinking. If tmpdir creation fails, skip the
test. Use fewer bindir directory names for testing, to speed
up the test. Also mention MSVC style DLL name in comment.
Report by Peter Rosin.
tests: remove unneeded 'bindir compile check' test.
* tests/bindir.at (bindir compile check): Remove.
2010-10-14 Peter Rosin <peda@lysator.liu.se>
tests: fix $EXEEXT typo.
* tests/depdemo-relink.test (func_restore_files): Use $EXEEXT
instead of $EXEXT.
2010-10-12 Simon Josefsson <simon@josefsson.org>
Matěj Týč <matej.tyc@gmail.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
docs: improve description of -no-undefined.
* doc/libtool.texi (Link mode): Fix -no-undefined description.
(Inter-library dependencies): Use Windows not AIX as example
system. Clarify need for symbol resolution at library creation
time.
2010-10-09 Paolo Bonzini <bonzini@gnu.org>
Add missing sysroot resolution.
* libltdl/config/ltmain.m4sh (func_mode_link): Resolve sysroot
when fetching the install directory of dependent libraries.
Reported by Lionel Landwerlin <llandwerlin@gmail.com>,
patch by Khem Raj <raj.khem@gmail.com>.
* THANKS: Reorder entries, add Khem and Lionel.
2010-10-07 Roumen Petrov <bugtrack@roumenpetrov.info>
Add test case for 69e77671 (cwrapper PATH manipulation order)
* tests/cwrapper.at: Add new test 'cwrapper and installed shared
libraries.'
2010-10-04 Peter Rosin <peda@lysator.liu.se>
cwrapper: split long lines when dumping the wrapper script.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): If
the wrapper script contains long lines, split them for
readability and to conform with C standards.
* tests/cwrapper.at (cwrapper string length): New test, making
sure we don't regress.
msvc: handle symbols from different files independently.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
<dumpbin, lt_cv_sys_global_symbol_pipe>: Make all sections
viable for symbol extraction again when the symbols from a new
file starts. Fixes tests/tagdemo-make.test for MSVC 10.
* tests/dumpbin-symbols.at: New test, making sure we don't
regress.
* Makefile.am (TESTSUITE_AT): Update.
2010-09-27 Peter Rosin <peda@lysator.liu.se>
tests: check if sys_lib_search_path_spec works on MSVC.
* tests/search-path.at (sys_lib_search_path on w32): New test,
making sure v2.2.10-207-g09142ea doesn't regress.
Skip need_lib_prefix.at on systems without lib prefix on libraries.
* tests/need_lib_prefix.at [MSVC, OS/2]: Skip this test on
systems that do not have libraries prefixed with lib.
tests: clean up importing and exporting on w32.
Makes the touched tests pass for MSVC when DLLs are built.
* tests/demo/Makefile.am, tests/pdemo/Makefile.am: Define
BUILDING_LIBHELLO when building libhello.la.
* tests/demo/foo.h, tests/pdemo/foo.h (nothing) <MSVC>: Export
variable when building the libhello dll and import when using
libhello. For GCC and non-w32, and when building a static
libhello, leave as an ordinary extern.
* tests/pdemo/foo.h [Cygwin]: Remove unneeded and "dead" export
and import logic (LIBFOO_DLL is always undefined).
* tests/pdemo/longer_file_name_foo.c,
tests/pdemo/longer_file_name_foo2.c (_LIBFOO_COMPILATION_): Not
useful before, even less so now. Removed.
* tests/depdemo/l1/Makefile.am: Define BUILDING_LIBL1 when
building libl1.la.
* tests/depdemo/l2/Makefile.am: Define BUILDING_LIBL2 when
building libl2.la.
* tests/depdemo/l3/Makefile.am: Define BUILDING_LIBL3 when
building libl3.la.
* tests/depdemo/l4/Makefile.am: Define BUILDING_LIBL4 when
building libl4.la.
* tests/depdemo/l1/l1.h, tests/depdemo/l2/l2.h,
tests/depdemo/l3/l3.h, tests/depdemo/l4/l4.h <MSVC>: Export
variables when building the associated library dll and import
when using the library. For GCC and non-w32, and when building
static libraries, leave as an ordinary extern.
2010-09-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
docs: do not refer to Libtool version with dlopen functionality.
* doc/libtool.texi (Dlopened modules): Remove broken reference
to what should have been Libtool 0.9g.
Report by Roumen Petrov.
2010-09-23 Peter Rosin <peda@lysator.liu.se>
msvc: don't try to export import descriptors.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]
[pw32, cegcc] <cl*, exclude_expsyms>: Don't export symbols in
import libraries related to describing what dll(s) the import
library is importing. Fixes problem in tests/demo-make.test
and some other tests.
2010-09-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix regression in command-line length computation.
* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Use `env echo' rather
than possibly-undefined func_fallback_echo, to ensure we fork
and exec for this test.
* NEWS: Update.
Regression introduced in v2.2.6-39-g9c3d4d8.
2010-09-22 Gary V. Vaughan <gary@gnu.org>
Post-release administrivia.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
numbers to 2.4.1a.
* NEWS: Add header line for next release.
Release 2.4.
* libltdl/Makefile.inc (LTDL_VERSION_INFO): We've added the
static libprefix interface, so new version-info is C+1:0:R+1.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
numbers.
* NEWS: Update version number.
manual: web-manual index.html clashes with @node Index.
* doc/libtool.texi (Index): Renamed to `Combined Index'.
tests: ISO C++ forbids declaration of 'v1' with no type.
* tests/lt_dlexit.at (lt_dlexit unloading libs): Added an
explicit int type to declaration of 'v1' to prevent compilation
failure with C++.
2010-09-22 Peter Rosin <peda@lysator.liu.se>
tests: reloadable objects do not work on MSVC, SKIP test.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
[cygwin, mingw, pw32, cegcc] <cl*, reload_cmds>: Indicate that
reloadable objects do not work.
* tests/duplicate_conv.at: Skip last test if reloadable
objects do not work.
* doc/libtool.texi (libtool script contents) <reload_cmds>:
Document how to indicate that reloadable objects do not work.
2010-09-21 Peter Rosin <peda@lysator.liu.se>
msvc: eliminate spaces in the library search path.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
<cl*, sys_lib_search_path_spec>: The LIB path variable telling
where MSVC looks for libraries is likely to contain directory
names with spaces. Convert those directory names to the short
8.3 DOS form (i.e. without spaces) when storing them in
sys_lib_search_path_spec, as that is a space separated variable.
2010-09-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Revert to per-language libpath computation on AIX.
* libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Accept
tagname argument. Use global cache variable lt_cv_aix_libpath
to override per-language tag variables for the libpath value.
Fix the sed script to remove trailing space.
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Pass tag argument to
_LT_SYS_MODULE_PATH_AIX.
Tracked down and reported by Rainer Tammer.
2010-09-21 Gary V. Vaughan <gary@gnu.org>
maint: edit-readme-alpha shouldn't try to re-edit during dist.
* libltdl/config/edit-readme-alpha: If README is non-writable
assume that it is being run from distcheck, and skip the edit
with a warning (to help diagnose cases where the heuristic is
not correct). However, if README has already been edited to
the alpha text, quietly skip without an error message.
2010-09-20 Eric Blake <eblake@redhat.com>
maint: drop autobuild requirement
* HACKING: Update.
build: ship autobuild.m4, to reduce bootstrap requirement
* libltdl/m4/.gitignore: Drop autobuild.m4.
* libltdl/m4/autobuild.m4: New file, copied from autobuild.
* configure.ac (AB_INIT): Unconditionally call it.
2010-09-20 Peter Rosin <peda@lysator.liu.se>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
libltdl: Make sure preloaded symbols are declared extern "C".
* libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Move the
declaration of lt__PROGRAM__LTX_preloaded_symbols to global
scope and make sure it has "C" linkage. Makes exceptions.at
succeed on MSVC.
2010-09-20 Peter Rosin <peda@lysator.liu.se>
tests: __declspec (dll{ex,im}port) in tests/exceptions.at
* tests/exceptions.at (common.h, module.h, lib.h) [w32]: Use
__declspec (dllimport) and __declspec (dllexport) instead of
the less portable __attribute__ ((dllimport)) and
__attribute__ ((dllexport)). Makes the test compile on MSVC.
2010-09-19 Peter Rosin <peda@lysator.liu.se>
tests: Import items from liba1 for MSVC.
* tests/lt_dlexit.at (b1.c) [MSVC]: Import function f1 and
variable v1 from liba1 when using them from modb1. Makes the
test pass on MSVC.
2010-09-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: avoid distcheck failure with --disable-ltdl-install.
* tests/ltdl-libdir.at (libdir of installed modules): Skip if
$LIBLTDL does not exist.
2010-09-18 Gary V. Vaughan <gary@gnu.org>
maint: use sed instead of maintaining 2 README files.
* README.alpha: Deleted. It was mostly identical to README.
* libltdl/config/edit-readme-alpha: New script to edit the
contents of README in the dist tree prior to tarring up.
* Makefile.am (dist-hook): Run it before rolling alpha release
tarball.
maint: improve README's `Obtaining the Latest Sources'.
* README (Obtaining the Latest Sources): Add instructions for
obtaining stable, alpha and nightly snapshot tarballs.
* README.alpha (Obtaining the Latest Sources): Adjust to match.
maint: reformat README `The Test Suites' for consistency.
* README (The Test Suites): Reformatted for consistency.
* README.alpha (The Test Suites): Adjust to match.
maint: improve `Reporting Bugs' in README and README.alpha.
* README (Reporting Bugs): Rewritten to a more complete and
concise guide to providing a good bug report.
* README.alpha (Reporting Bugs): Adjust to match.
maint: consolidate Introductions of README and README.alpha.
* README (Introduction): Rewritten to a more logical order for
first time users, incorporating some additional text that was
previously only in README.alpha.
* README.alpha (Introduction): Adjust to match.
maint: copy the Version Numbering section into README.alpha.
* README.alpha (Version Numbering): No less useful for users
of alpha releases. Copied from README.
2010-09-17 Peter Rosin <peda@lysator.liu.se>
tests: actually detect missing 'test' in 'if "$foo" = ...'.
* tests/sh.test: Remove extra backslash in regex.
Copy over DLL_EXPORT handling from C to C++ for non-GCC on w32.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [mingw, cygwin, os2]
[pw32, cegcc]: Copy over the DLL_EXPORT handling from C to C++.
2010-09-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
LTO: consistently accept -fwhopr* and -flto* for GCC.
* libltdl/config/ltmain.m4sh (func_mode_link): Accept -fwhopr*.
* libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Also match
-flto*.
2010-09-17 Charles Wilson <libtool@cwilson.fastmail.fm>
Fix order of PATH manipulation in cwrapper and shwrapper
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main): Call
lt_update_exe_path before lt_update_lib_path, to ensure that the
temporary rpath values (which include the OBJDIRs of uninstalled
libtool libraries) precede installation and final -rpath directories.
(func_emit_wrapper): Prepend $dllsearchpath to PATH before prepending
$temp_rpath to $shlibpath_var; similar rationale as above.
Reported by Jon Turney <jon.turney@dronecode.org.uk>
2010-09-17 Charles Wilson <libtool@cwilson.fastmail.fm>
Document libtool variable to_host_file_cmd.
* doc/libtool.texi (libtool script contents:to_host_file_cmd):
Document variable.
(libtool script contents:to_tool_file_cmd): Prefer `build platform'
to `build system'; Ditto `host platform'.
2010-09-16 Charles Wilson <libtool@cwilson.fastmail.fm>
Fix sh.test failure introduced in 72064249
* libltdl/config/ltmain.m4sh (func_mode_link): Avoid poor
syntax.
2010-09-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: avoid localization failure due to unstable compiler messages.
* tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT):
Attempt to normalize temporary file names in error messages.
Fixes 'localized compiler messages' test failure on Darwin when
creating fat (multi-ABI) libraries.
2010-09-13 Peter Rosin <peda@lysator.liu.se>
Prefer $NM @file when the toolchain isn't native to $build.
* libltdl/config/ltmain.m4sh (func_mode_link): Avoid calculating
the command line length and take the @file branch *if* the file
names needs to be converted for the toolchain and the @file
branch works. Fixes problems in stresstest.at when doing a cross
from Cygwin to MinGW using MinGW native tools (a.k.a. a "faked"
cross), and for the specific case of MSVC on Cygwin it makes the
test pass.
2010-09-15 Gary V. Vaughan <gary@gnu.org>
maint: improve README instructions for fetching latest version.
* README, README-alpha (Obtaining the Latest Sources): New
section, describing use of savannah repositories and bootstrap.
* README.alpha (Reporting Bugs): Remove git instructions in
favour of a reference to the new `Obtaining the Latest Sources'
section.
2010-09-14 Eric Blake <eblake@redhat.com>
maint: ship .xz, not .lzma
* configure.ac (AM_INIT_AUTOMAKE): Prefer better file format.
* Makefile.maint (git-release, git-dist, prev-tarball)
(new-tarball, diffs): Use correct extension.
* HACKING: Update instructions.
* .gitignore: Ignore .xz files.
2010-09-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
doc: avoid long lines in input and output, indexing fixes.
* doc/libtool.texi (Linking libraries)
(Module loaders for libltdl): Manually line-wrap examples, to
avoid long lines.
(Libltdl interface, User defined module data)
(Module loaders for libltdl): Wrap long @deftypefun input lines
using trailing '@'. Use @deftypefun rather than @deftp where
appropriate, and add spaces in @deftypefun lines to fix the
index entries generated from these lines.
(Cheap tricks): Use @smallexample rather than @example, to avoid
long lines.
docs: @file and @option markup fixes.
* doc/libtool.texi (Creating object files, Linking libraries)
(Linking executables, Link mode, Finish mode, Autoconf macros)
(Using Automake, Inter-library dependencies, Dlpreopening)
(Linking with dlopened modules, Finding the dlname)
(Libltdl interface, Test descriptions, Multiple dependencies):
Add @option where needed, replace @samp with @file as
appropriate.
2010-09-12 Peter Rosin <peda@lysator.liu.se>
* .gitignore: Ignore *.obj files for MSVC (and w32 in general).
Adjust to moved auxiliary files and add compile.
* HACKING (Maintenance Notes): Adjust to moved files. Add the
compile script.
* Makefile.maint (fetch): Also fetch the compile script.
2010-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: avoid empty AT_DATA contents, for zsh.
* tests/libtoolize.at (libtoolize macro serial update)
(libtoolize config files serial update, LIBTOOLIZE_OPTIONS):
Do not create empty files with AT_DATA, the latter is documented
to require a final newline. Fixes testsuite failures with zsh
4.3.10.
2010-09-12 Charles Wilson <libtool@cwilson.fastmail.fm>
When assigning $linklib value, honor [-all]-static[-libtool-libs]
* libltdl/config/ltmain.m4sh (func_mode_link): When prefer_static_libs
and static library exists, ensure old_library name is used as $linklib.
Fixes failure on mingw when both static and shared libraries are
present.
2010-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: work around zsh use of $options variable.
* tests/getopt-m4sh.at: Rename $options to $opts, the former is
special for zsh 4.3.10.
Fix AC_NO_EXECUTABLES test failure on IRIX 6.5.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix]: Cache result
of link check for -Wl,-exported_symbol.
* tests/no-executables.at (AC_NO_EXECUTABLES): Set
lt_cv_irix_exported_symbol, to avoid link check.
2010-09-12 Jürgen Reuter <juergen.reuter@physik.uni-freiburg.de> (tiny change)
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Initial support for the NAG Fortran compiler on GNU/Linux.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <nagfor>:
New set of entries, for NAG Fortran 5.1 and 5.2.
* NEWS: Update.
2010-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix getopt.m4sh to require Autoconf 2.62 or newer.
* libltdl/config/getopt.m4sh (m4_version_prereq): Require 2.62,
not 2.61.
2010-09-11 Charles Wilson <libtool@cwilson.fastmail.fm>
Correct typo: $sharedlib_from_linklib_cmd missing '_cmd'
* libltdl/config/ltmain.m4sh (func_generate_dlsyms): Fix obvious
typo, $sharedlib_from_linklib_cmd missing '_cmd'.
2010-09-10 Peter Rosin <peda@lysator.liu.se>
Convert file name to toolchain format when invoking $NM.
* libltdl/config/ltmain.m4sh (func_generate_dlsyms)
(func_win32_libid, func_cygming_gnu_implib_p)
(func_cygming_ms_implib_p): When using the name lister to find
symbols in files, convert the file names to a format appropriate
for the tool. Fixes testsuite issues in mdemo-static-make.test
and mdemo-make.test when doing a cross from Cygwin/Wine to MinGW
using MinGW native tools (a.k.a. a "faked" cross).
2010-09-09 Peter Rosin <peda@lysator.liu.se>
Fix dependency tracking for MSYS/MinGW.
* libltdl/config/ltmain.m4sh (func_to_tool_file): Add lazy
argument which allows the user to specify conversions that are
not desired.
(func_mode_compile): Don't convert source files on MSYS, as
MSYS does it for us. This fixes a regression introduced by
"Use func_to_tool_file instead of fix_srcfile_path".
Reported by Charles Wilson.
2010-09-08 Peter Rosin <peda@lysator.liu.se>
Mention adjustment of naming of MSVC import libraries in NEWS.
* NEWS: Mention the change in import library naming on MSVC.
2010-09-07 Peter Rosin <peda@lysator.liu.se>
Adjust naming of MSVC import libraries.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [mingw, cygwin]
[pw32, cegcc] <cl*, library_names_spec>: Adjust naming of the
import library from foo-<major-version>.lib to foo.dll.lib, to
avoid clashes with the static library for unversioned libraries.
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin, pw32]
[cegcc] <cl*, archive_expsym_cmds>: Explicitely name the import
library to match the above.
Fixup texi typo in previous.
* doc/libtool.texi (libtool script content) <postlink_cmds>:
Add missing 'code' command.
Convert POSIX file names to toolchain format for MSVC
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[cygwin, mingw, pw32, cegcc] <cl*, postlink_cmds>: Make
sure the -outputresource: file name for the manifest tool is
in w32 format.
<cl*, archive_expsym_cmds>: Likewise for the MSVC command file
containing the exports and the output file name.
* libltdl/config/ltmain.m4sh (func_mode_link): Precalculate the
toolchain format of the output_objdir file name and store it in
the tool_output_objdir variable. Also replace any occurrence of
@TOOL_OUTPUT@ in postlink_cmds with the toolchain version of the
@OUTPUT@ content.
* doc/libtool.texi (libtool script content): Update description
of postlink_cmds to mention @TOOL_OUTPUT@.
2010-09-06 Peter Rosin <peda@lysator.liu.se>
Use func_to_tool_file instead of fix_srcfile_path.
* libltdl/config/ltmain.m4sh (func_mode_compile): Replace the
fix_srcfile_path hook with a call to func_to_tool_file.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin,mingw,pw32]
[cegcc]: Drop fix_srcfile_path.
* doc/libtool.texi (libtool script contents): Likewise.
* NEWS: Mention that fix_srcfile_path has been replaced.
Convert file names to toolchain format in $NM and $AR @files.
* libltdl/config/ltmain.m4sh (func_mode_link): When listing
symbols and when creating archives using command files (or
response files), make sure that both the name of the command
file and the content are made up of file names in a format
appropriate for the tool. Fixes stresstest.at on MSYS when
run with low command line length.
Convert file names to toolchain format when linking.
* libltdl/config/ltmain.m4sh (func_mode_link): When exporting
symbols and when linking using command files (or response
files), make sure that both the name of the command file and
the content are made up of file names in a format appropriate
for the tool. Fixes problems in stresstest.at on MSYS when run
with low command line length.
Add file name conversion from $build to toolchain.
* configure.ac: Ensure to_tool_file_cmd is available to Makefile.
* libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): Add
cache variable lt_cv_to_tool_file_cmd that describes how to
convert file names from $build to toolchain format.
* libltdl/config/ltmain.m4sh (func_to_tool_file): New function
that utilizes the above.
* Makefile.am: Ensure to_tool_file_cmd is included in
TEST_ENVIRONMENT so that it is passed to (old testsuite) tests.
* testsuite.at: Ensure to_tool_file_cmd is passed as a variable
setting on the configure line for (new testsuite) tests.
* doc/libtool.texi (libtool script content): Update with
to_tool_file_cmd description.
(Cygwin to MinGW Cross): Update to mention lt_cv_to_tool_file_cmd.
2010-09-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: avoid spurious test failure due to library mode on HP-UX.
* tests/help.at (debug tracing): Use $lt_INSTALL not cp for
install mode, the latter will not overwrite an existing library
with mode 555.
2010-09-01 Charles Wilson <libtool@cwilson.fastmail.fm>
Path conversion documentation
* doc/libtool.texi (Platform quirks): Add new subsections
'Cross compiling' and 'File name conversion'.
2010-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: avoid spurious pic_flag test failure on HP-UX 10.20.
* tests/pic_flag.at (override pic_flag at configure time):
Match HP-UX 10.20 cc warning about unknown options, to skip
the test.
tests: fix localization test for GCC on HP-UX 11.00.
* tests/localization.at (localized compiler messages): Be sure
to switch the locale only for the actual compiler commands, so
we don't pick up warnings from helper tools such as diff which
may not have the locale installed.
Avoid leaking make flags into testsuite results.
* tests/defs.m4sh: Unset MFLAGS, MAKEFLAGS, MAKELEVEL, __MKLVL__
and MAKE_JOBS_FIFO.
* tests/testsuite.at: Likewise.
Fixes warnings in test logs when the user uses 'make -jN check'
and inner $MAKE invocations can't connect to the job server.
Fixes spurious failures of configure-iface.at and of
demo-noinst-link tests with BSD and Tru64 make if the user uses
'make -k', as the exit status of the latter is not reliable.
2010-09-01 Gary V. Vaughan <gary@gnu.org>
Remove announce-gen.m4sh and mailnotify.m4sh.
* libltdl/config/announce-gen.m4sh: Removed. This script has
no apparent connection to libtool functionality, and mostly
duplicates the better maintained gnulib announce-gen script.
* libltdl/config/mailnotify.sh: Removed. This script was used
by only clcommit.m4sh and announce-gen.m4sh, both of which are
now removed too.
* Makefile.maint (announce-gen, libltdl/config/mailnotify):
Targets removed.
* bootstrap: Remove the mailnotify regeneration warning.
* HACKING (Release Procedure): Remove references to
announce-gen.
(Alpha release note template, Full release note template):
Reinstated from before announce-gen was introduced.
Remove clcommit.m4sh.
* clcommit.m4sh: Removed. This script was written to help keep
ChangeLog and commit messages in sync when committing to CVS,
and is an anachronism now that Libtool uses git.
* Makefile.maint (commit): Target removed.
* bootstrap: Don't generate commit.
* HACKING (Release Procedure): Adjusted.
2010-08-31 Peter Rosin <peda@lysator.liu.se>
archive-in-archive.at passes with Microsoft lib.
* tests/archive-in-archive.at: Tighten test to check that the desired
object files are indeed part of the archive. Microsoft lib still
passes, so remove the expected failure for that case.
Dump archiver output to the log when testing @file support.
* libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout to config.log
when testing for @file support.
Suggested by Ralf Wildenhues.
Silence archiver output when testing @file support.
* libltdl/m4/libtool.m4 (_LT_PROG_AR): Redirect stdout and stderr
to the bit bucket when testing for @file support.
2010-08-31 Gary V. Vaughan <gary@gnu.org>
Remove double `Generated from foo.m4sh' lines.
We now require a modern Autoconf to bootstrap libtool, which
will add the `Generated by ...' boiler-plate automatically,
so we can remove the hand-rolled @configure_input@
substitutions we had been doing:
* clcommit.m4sh, libtoolize.m4sh, tests/defs.sh,
libltdl/config/announce-gen.m4sh, libltdl/config/ltmain.m4sh,
libltdl/config/mailnotify.m4sh: Remove @configure_input@.
* Makefile.am (edit): Remove configure_input substitution.
(libtoolize, libltdl/config/ltmain.sh, libltdl/m4/ltversion.m4)
(tests/defs): Don't set `$input' shell variable.
* Makefile.maint (announce_gen, libltdl/config/mailnotify)
(commit): Likewise.
2010-08-31 Peter Rosin <peda@lysator.liu.se>
Extract the archive name from the .la file and use $AR (not ar).
* Makefile.am: Pass AR through to the testsuite.
* tests/archive-in-archive.at: Bump copyright year. Extract archive
name from the .la file instead of hardcoding the name, and allow
different archivers. Also clarify that the tested functionality is
currently broken.
2010-08-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
tests: skip -Wall -Werror with Tru64 cc in cwrapper test.
* tests/cwrapper.at (cwrapper for uninstalled executables):
Use a link test rather than a compile test to flesh out unknown
compiler flags starting with -W; Tru64/OSF1 cc will happily
accept `-Wall -Werror' as indication to pass flags on to
subprocesses.
tests: avoid getopt-m4sh failures when autom4te is not available.
* tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP):
Check $M4SH --version, skip on failure.
tests: mark 'syntax of .la files' as XFAIL, expose failure.
* tests/lalib-syntax.at (syntax of .la files): Assert that the
string returned by lt_dlerror after a failure is non-NULL, so
the failure shows up on systems other than Solaris. Mark test
as expected to fail.
Suggested by Bob Friesenhahn.
2010-08-30 Eric Blake <eblake@redhat.com>
Simplify recent configure quoting portability workaround.
* configure.ac: Simplify setting of timestamp_string.
2010-08-30 Charles Wilson <libtool@cwilson.fastmail.fm>
Update path conversion warning messages
* libltdl/config/ltmain.m4sh (func_convert_file_check): Update
comments and warning message.
(func_convert_path_check): Update warning message.
2010-08-29 Peter Rosin <peda@lysator.liu.se>
Fix typo when renaming path conversion functions.
* tests/testsuite.at: Ensure to_host_file_cmd is passed as a
variable setting on the configure line for (new testsuite) tests.
2010-08-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Support GCC LTO on GNU/Linux.
* libltdl/config/ltmain.m4sh (func_mode_link): Allow through
flags matching -O*, -flto*, -fwhopr, -fuse-linker-plugin.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Drop symbols
starting with __gnu_lto.
(_LT_LINKER_SHLIBS) [linux] <archive_cmds, archive_expsyms_cmds>:
Add $pic_flag for GCC.
(_LT_LANG_CXX_CONFIG) [linux] <archive_cmds, archive_expsyms_cmds>:
Likewise.
(_LT_SYS_HIDDEN_LIBDEPS): Ignore files matching *.lto.o.
* NEWS: Update.
Disable GCC LTO for verbose library extraction.
* libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Temporarily
append -fno-lto or -fno-whopr to CFLAGS if CC or CFLAGS (which
are substituted with the per-language variables here) contain
-flto or match -fwhopr*, respectively.
Save and restore CFLAGS properly inside libtool.m4 macros.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Use different
temporary variables for saved and restored values of $LIBS,
$CFLAGS, to avoid overlap with the *_CONFIG macros.
(_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
(_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Also save and restore
$CFLAGS, and override it with per-language flags, so that in
case output_verbose_link_cmd uses $CFLAGS, the right flags are
used.
Work around yet another shell quoting portability issue.
* configure.ac: Avoid nonportable quoted alternate variable
value in unquoted here document, so Solaris 10 sh and Tru64
ksh do not print spurious extra quotes.
Silence order-only configure test for AIX make.
* configure.ac: Also drop standard output, for AIX 5.1 make.
2010-08-28 Charles Wilson <libtool@cwilson.fastmail.fm>
Minor sysroot fixups.
* libltdl/m4/libtool.m4 (_LT_WITH_SYSROOT): Fix typo.
* tests/sysroot.at: Search also for crt0.o to accommodate cygwin.
2010-08-28 Charles Wilson <libtool@cwilson.fastmail.fm>
[cygwin|mingw|cross-compile]: Path conversion support.
* configure.ac: Ensure to_host_file_cmd is available to Makefile.
* TODO: Document QoI issue with file name conversion functions.
* libltdl/m4/libtool.m4 (_LT_PATH_CONVERSION_FUNCTIONS): New function
sets libtool variable $to_host_file_cmd, and employs cache.
(_LT_SETUP): Require it.
* tests/testsuite.at: Ensure to_host_file_cmd is passed as a
variable setting on the configure line for (new testsuite) tests.
* Makefile.am (TESTS_ENVIRONMENT): Ensure to_host_file_cmd is
included so that it is passed to (old testsuite) tests.
* libltdl/config/general.m4sh: Define $lt_sed_naive_backslashify here.
* libltdl/config/ltmain.m4sh ($to_host_file_cmd, $to_host_path_cmd):
New variables.
(func_cygpath): New function.
(func_init_to_host_path_cmd): New function.
(func_to_host_path): Renamed to...
(func_to_host_file): Refactored to... (now uses $to_host_file_cmd).
(func_convert_core_file_wine_to_w32): Here. New function.
(func_convert_core_msys_to_w32): Here. New function.
(func_convert_file_check): Here. New function.
(func_convert_file_noop): Here. New function.
(func_convert_file_msys_to_w32): Here. New function.
(func_convert_file_cygwin_to_w32): Here. New function.
(func_convert_file_nix_to_w32): Here. New function.
(func_convert_file_msys_to_cygwin): New function.
(func_convert_file_nix_to_cygwin): New function.
(func_to_host_pathlist): Renamed to...
(func_to_host_path): Refactored to... (now uses $to_host_path_cmd
and func_init_to_host_path_cmd).
(func_convert_path_check): Here. New function.
(func_convert_path_front_back_pathsep): Here. New function.
(func_convert_core_path_wine_to_w32): Here. New function.
(func_convert_path_noop): Here. New function.
(func_convert_path_msys_to_w32): Here. New function.
(func_convert_path_cygwin_to_w32): Here. New function.
(func_convert_path_nix_to_w32): Here. New function.
(func_convert_path_msys_to_cygwin): New function.
(func_convert_path_nix_to_cygwin): New function.
2010-08-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix symlist variable path to use _WIN32 instead of __WINDOWS__.
* libltdl/config/ltmain.m4sh, libltdl/libltdl/lt_system.h,
libltdl/m4/libtool.m4, tests/demo/foo.h, tests/pdemo/foo.h:
Change __WINDOWS__ to _WIN32.
Report by Charles Wilson.
Add $pic_flag to archive_cmds and archive_expsym_cmds.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
<archive_cmds, archive_expsym_cmds>
[GNU ld, netbsd]: Add $pic_flag if ELF.
[GNU ld, solaris]: Likewise.
[GNU ld, default case]: Likewise.
[!GNU ld, freebsd, dragonfly]: Add $pic_flag.
[!GNU ld, GCC, hpux9]: Add $pic_flag.
[!GNU ld, GCC, hpux10]: Replace -fPIC with $pic_flag
[!GNU ld, GCC, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
[!GNU ld, GCC, irix5, irix6, nonstopux]: Add $pic_flag.
[!GNU ld, GCC, osf4, osf5]: Likewise.
[!GNU ld, GCC, solaris]: Likewise.
(_LT_LANG_CXX_CONFIG) <archive_cmds, archive_expsym_cmds>
[hpux9]: Add $pic_flag if $GXX.
[hpux10, hpux11, !hppa*64]: Replace -fPIC with $pic_flag.
[irix5, irix6]: Add $pic_flag if $GXX.
[osf4, osf5]: Likewise.
[solaris]: Add $pic_flag if $GXX and not GCC 2.7.
Uniform const'ness of symlist variable lt_preloaded_symbols.
On some systems, lt_preloaded_symbols may not be declared
const due to relocation issues. C99 requires qualification to
match for compatible declarations, so ensure we declare
const'ness in the same way everywhere; link-time optimization
may otherwise rightfully complain about inconsistencies.
Since ltdl.h may not depend upon config.h, rely on system
defines for choosing const'ness.
* NEWS: Update.
* doc/libtool.texi (Dlpreopening): Document this issue.
* libltdl/config/ltmain.m4sh (func_generate_dlsyms):
[__WINDOWS__, __CYGWIN__, _WIN32_WCE]: Define LT_DLSYM_CONST
according to system defines. Remove old shell cruft. Use
LT_DLSYM_CONST for lt_${my_prefix}_LTX_preloaded_symbols.
* libltdl/libltdl/lt_system.h (LT_DLSYM_CONST): Likewise,
define LT_DLSYM_CONST according to system defines.
* tests/demo/foo.h (LT_DLSYM_CONST): Likewise.
* tests/pdemo/foo.h (LT_DLSYM_CONST): Likewise.
* tests/demo/dlmain.c (lt_dlsymlist): Use LT_DLSYM_CONST.
* tests/pdemo/longer_file_name_dlmain.c (lt_dlsymlist):
Likewise.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Likewise
for configure test code.
* libltdl/ltdl.c (preloaded_symbols): Use LT_DLSYM_CONST.
* libltdl/ltdl.h (LTDL_SET_PRELOADED_SYMBOLS): Likewise.
2010-08-28 Dave Korn <dave.korn.cygwin@googlemail.com>
Ensure cwrapper magic string is not optimized away.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
Declare MAGIC_EXE as volatile.
Report by Charles Wilson.
2010-08-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix quoting in non-XSI func_xform, for IRIX sh.
* libltdl/config/ltmain.m4sh (func_xform): Remove spurious extra
M4 quotes.
Fix response file test for unreliable exit status of IRIX ar.
* libltdl/m4/libtool.m4 (_LT_PROG_AR): IRIX ar will not fail
over a command-line argument specifying a nonexistent file (such
as `@FILE'), so ensure failure with a reponse file containing
a nonexistent file. Also, use lt_* variable prefix for
temporary variables.
Fix AC_LANG_PROGRAM warnings from git Autoconf.
* libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Fix
underquoted AC_LANG_PROGRAM call.
(LT_PROG_AR): Use AC_LANG_PROGRAM.
(_LT_LINKER_SHLIBS) [irix, GCC]: Use the right source for the
given language.
* NEWS: Update.
2010-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
fix AIX testsuite regression
* libltdl/config/ltmain.m4sh (func_resolve_sysroot): Partly
revert v2.2.10-83-gc45a288: Do not absolutize path here, only do
sysroot replacement.
(func_mode_link): Adjust.
2010-08-22 Charles Wilson <libtool@cwilson.fastmail.fm>
fix --mode=finish
* libltdl/config/ltmain.m4sh (func_mode_finish): Invert then/else
blocks of the "if $opt_dry_run" conditional.
2010-08-15 Paolo Bonzini <bonzini@gnu.org>
improve code for sysroot --mode=finish
* libltdl/config/ltmain.m4sh (func_mode_finish): Change sysroot_regex
and sysroot_cmd delimiter from pipe to slash. Wrap the entire for
loop with "if $opt_dry_run...fi" and print an explanatory message
for the --dry-run case.
2010-08-12 Paolo Bonzini <bonzini@gnu.org>
add libtool --mode=finish mode for sysroot
* doc/libtool.texi (Finish mode): Document behavior when *.la files
are passed.
* libltdl/config/ltmain.m4sh (func_mode_finish): Eliminate sysroot
or `=' signs representing it from files in $libs.
* tests/sysroot.at (SYSROOT_TESTS): Test for presence of sysroot
references before running libtool --mode=finish, and for absence
afterwards.
reorganize parsing of --mode=finish arguments
* libltdl/config/ltmain.m4sh (func_mode_finish): Split arguments for
directories and *.la files.
fix sysroot handling for deplibs of preopened libtool libs
* libltdl/config/ltmain.m4sh: Pass $dependency_libs of preopened libtool
through func_resolve_sysroot.
fix sysroot tests to pass on Fedora 13
* tests/sysroot.at: Link $prefix/include into the sysroot as well, as
required by newer GCC.
2010-07-29 Paolo Bonzini <bonzini@gnu.org>
initial version of the NEWS entry
* NEWS: Document sysroot support.
add sysroot test
* Makefile.am (TESTSUITE_AT): Add tests/sysroot.at.
* tests/sysroot.at: New.
emit sysrooted paths when installing .la files
* libltdl/config/ltmain.m4sh (func_replace_sysroot): New.
(func_mode_link): Prepend paths in $libdir with the sysroot. Further,
replace the sysroot with = (using func_replace_sysroot) whenever
such a path is written in a .la file.
process postdeps to include sysrooted paths
* libltdl/m4/libtool.m4 (_LT_FUNC_STRIPNAME_CNF): New (from Charles Wilson).
(_LT_SYS_HIDDEN_LIBDEPS): Require it. Use func_stripname_cnf to convert
sysroot (-L= and -R=) usage in postdeps. Adjust the code because -L, -R
and -l flags will now always be separated from the rest of the argument.
handle sysrooted paths when reading dependencies to la files
* libltdl/config/ltmain.m4sh (func_mode_execute, func_mode_install,
func_mode_link): Whenever a .la file occurs in another .la file,
expand the sysroot path in it.
2010-07-28 Paolo Bonzini <bonzini@gnu.org>
teach libtool -L= and -R=
* libltdl/config/ltmain.m4sh (func_resolve_sysroot): New.
(func_mode_link): Always pass result of stripping -L and -R to
func_resolve_sysroot before using it. Remove absolute path expansion
when func_resolve_sysroot subsumes it. Expand sysroot in -rpath.
When processing dependent libraries also resolve sysroot paths there.
add --with-sysroot
* libltdl/m4/libtool.m4 (_LT_HOST_NONCANONICAL, _LT_WITH_SYSROOT): New.
(LT_SETUP): Require _LT_WITH_SYSROOT.
handle sysroot flags
* libltdl/config/ltmain.m4sh (func_mode_link): Recognize --sysroot
option.
2010-08-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* NEWS: Only bootstrapping needs new Automake and Autoconf.
check-interactive and check-noninteractive for both testsuites.
* Makefile.am (COMMON_TESTS, TESTS): Split into ...
(NONINTERACTIVE_TESTS, INTERACTIVE_TESTS): ... these new
variables.
(check-interactive-new): Rename from check-interactive.
(check-noninteractive-new): Rename from check-noninteractive.
(check-interactive-old, check-noninteractive-old): New targets.
(check-interactive, check-noninteractive): Depend on the
respective targets for the old and the new test suites.
* doc/libtool.texi (Test descriptions): Simplify description
about check-interactive and check-noninteractive. Add index
entries.
Adjust docs for renaming and for parallel-tests.
* README: Update example TESTS setting.
* README.alpha: Likewise.
* doc/libtool.texi (Test descriptions): Update for test renaming,
adjust descriptions accordingly.
Update VERBOSE handling for parallel-tests driver.
* tests/defs.m4sh: Default to verbose output, drop now-unneeded
handling of 'VERBOSE=no'.
* README: Update example usage.
* README.alpha: Likewise.
* doc/libtool.texi (Test descriptions, When tests fail): Remove
unneeded VERBOSE recommendations. Point to per-test log files
and test-suite.log summary file.
Enable parallel-tests test driver for the old testsuite.
* configure.ac: New configure test to find out whether `make'
supports order-only prerequisites; set @ORDER@ accordingly.
(AM_INIT_AUTOMAKE): Enable parallel-tests option.
* tests/defs.m4sh (prefix): Derive install prefix for tests
from the test name, to avoid clashes.
* Makefile.am (CXX_TESTS, F77_TESTS, FC_TESTS, COMMON_TESTS):
Reformat. Adjust for renamed tests. Add dependencies between
the respective log files of the tests, to ensure proper ordering.
Use order-only dependencies if possible, between test groups that
use the same directory.
(clean-local-legacy): Remove `_inst-*' directories as well.
Prompted by suggestion from Bob Friesenhahn.
New alias scripts for old tests run more than once.
* tests/cdemo-shared-exec.test, tests/cdemo-shared-make.test,
tests/cdemo-static-exec.test, tests/cdemo-static-make.test,
tests/cdemo-undef-exec.test, tests/cdemo-undef-make.test,
tests/demo-nofast-exec.test, tests/demo-nofast-inst.test,
tests/demo-nofast-make.test, tests/demo-nofast-unst.test,
tests/demo-nopic-exec.test, tests/demo-nopic-make.test,
tests/demo-pic-exec.test, tests/demo-pic-make.test,
tests/demo-shared-exec.test, tests/demo-shared-inst.test,
tests/demo-shared-make.test, tests/demo-shared-unst.test,
tests/demo-static-exec.test, tests/demo-static-inst.test,
tests/demo-static-make.test, tests/demo-static-unst.test,
tests/depdemo-nofast-exec.test, tests/depdemo-nofast-inst.test,
tests/depdemo-nofast-make.test, tests/depdemo-nofast-unst.test,
tests/depdemo-shared-exec.test, tests/depdemo-shared-inst.test,
tests/depdemo-shared-make.test, tests/depdemo-shared-unst.test,
tests/depdemo-static-exec.test, tests/depdemo-static-inst.test,
tests/depdemo-static-make.test, tests/depdemo-static-unst.test,
tests/f77demo-shared-exec.test, tests/f77demo-shared-make.test,
tests/f77demo-static-exec.test, tests/f77demo-static-make.test,
tests/fcdemo-shared-exec.test, tests/fcdemo-shared-make.test,
tests/fcdemo-static-exec.test, tests/fcdemo-static-make.test,
tests/mdemo-shared-exec.test, tests/mdemo-shared-inst.test,
tests/mdemo-shared-make.test, tests/mdemo-shared-unst.test,
tests/mdemo-static-exec.test, tests/mdemo-static-inst.test,
tests/mdemo-static-make.test, tests/mdemo-static-unst.test,
tests/tagdemo-shared-exec.test, tests/tagdemo-shared-make.test,
tests/tagdemo-static-exec.test, tests/tagdemo-static-make.test,
tests/tagdemo-undef-exec.test, tests/tagdemo-undef-make.test:
New files.
Require Automake 1.11.1 for Libtool, enable color-tests.
* configure.ac (AM_INIT_AUTOMAKE): Require 1.11.1. Enable
color-tests.
(LTDL_SUBDIR_LIBOBJS): Remove now-obsolete conditional and
feature test for Autoconf 2.59 and Automake 1.9.x workaround.
* Makefile.am: Simplify accordingly.
* bootstrap: Remove obsolete WORKING_LIBOBJ_SUPPORT workarounds
for Autoconf 2.59 and Automake 1.9.6.
2010-08-23 Charles Wilson <libtool@cwilson.fastmail.fm>
Fix syntax for cygwin-cross
libltdl/m4/argz.m4: Add quotes around variable, which
may contain the multiword value 'guessing no'.
2010-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
configure: use Autobuild AB_INIT if available.
* configure.ac: Call AB_INIT if it is defined, with
$autobuild_mode as argument, to be set at configure time.
Set AB_VERSION to the Libtool version string.
* HACKING: Update.
Fix getopt tests to skip with Autoconf < 2.61.
* tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Skip the test
if 'autom4te --language=m4sh' exits 63 because version 2.61 is
required. Allows the testsuite to complete successfully with
Autoconf 2.59 and Automake 1.9.6.
Tidy and fix clean and distclean rules for old testsuite.
* Makefile.am (clean-local-legacy): Use $(CONF_SUBDIRS) instead
of hard-coding the list of test directories. Use
$(AM_MAKEFLAGS).
(fake-distclean-legacy): New phony rule, to create fake Makefile
files if needed so that the automake-generated
distclean-recursive rule can work properly.
(distclean_recursive): New helper variable.
(distclean-recursive): Depend on fake-distclean-legacy.
2010-08-22 Paolo Bonzini <bonzini@gnu.org>
Fix sed_make_literal_regex.
* libltdl/config/general.m4sh (sed_make_literal_regex): Fix
definition.
2010-08-15 Paolo Bonzini <bonzini@gnu.org>
Factor the sed command used to make a regex from a literal.
* libltdl/config/general.m4sh (sed_make_literal_regex): New.
* libltdl/config/ltmain.m4sh
(func_cygming_dll_for_implib_fallback_core): Use it. Suggested
by Ralf Wildenhues.
2010-08-21 Rainer Tammer <tammer@tammer.net> (tiny change)
Avoid issues with AIX resident shared libraries in old testsuite.
* tests/defs.m4sh [aix]: Remove file mode permission for others,
so shared libraries are not kept in memory after execution.
Fixes failures of repeated mdemo-inst.test with on AIX 5.3.
2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Skip part of versioning test on AIX.
* tests/versioning.at (versioning): The AIX linker always
records the unversioned library name, even with runtimelinking,
so skip the execution test for the incompatibly upgraded
library.
Report by Rainer Tammer.
Remove dead code from versioning test.
* tests/versioning.at (versioning): No need to build unused
prog3.
2010-08-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Don't hide the table of contents in the manual.
* doc/libtool.texi: Move the table of contents to the beginning.
Prompted by patch from Bruno Haible against Automake.
Remove superfluous dependency in Makefile.am.
* Makefile.am (tests/demo-conf.test): Remove dependency on
libtool, this test is a primary source and not generated.
Bump copyright years in manual.
* doc/libtool.texi: Bump copyright years.
2010-08-13 Peter Rosin <peda@lysator.liu.se>
Allow the use of a listing file if the archiver supports it.
* libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): Move detection
of a suitable archiver...
(_LT_PROG_AR): ...to here. New macro, also detect if the
archiver supports a listing file with the new variable
archiver_list_spec.
* libltdl/config/ltmain.m4sh: If the archiver supports a listing
file, use it when max_cmd_len is exceeded. This is needed for
tool chains such as MSVC which do not support piece by piece
linking (-r -o).
* doc/libtool.texi (libtool script contents): Update with
archiver_list_spec description.
2010-08-10 Gary V. Vaughan <gary@gnu.org> (tiny change)
Make testsuite compatible with Autoconf 2.62 again.
* tests/getopt-m4sh.at (AT_CHECK): Autotest 2.62 chokes on unquoted
'#' in AT_CHECK, so replace all uses with '@%:@' quadrigraph.
Suggested by Eric Blake <eblake@redhat.com>
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2010-08-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix more problematic code from "Add func_append_quoted and do..."
* libltdl/config/ltmain.m4sh (func_mode_link): Revert back
func_append instances that as assignments relied on the shell
not performing word splitting on the right hand side of the
assignment.
Fix another typo on "Add func_append_quoted and do..."
* libltdl/config/ltmain.m4sh (func_mode_link): Fix regression in
computation of finalize_rpath introduced in v2.2.10-40-g0da7d80,
fixing several testsuite failures on AIX.
Report by Rainer Tammer.
2010-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid unwanted error message in configure output.
* libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Try print
in subshell, so eventual `print: not found' is hidden reliably.
Fix compilation of program sources on AIX.
* tests/lt_dlopenext.at (lt_dlopenext error messages): Do not
use $LIBTOOL when compiling plain object, AIX by default does
not enable static archives.
* tests/ltdl-libdir.at (libdir of installed modules): Likewise.
Report by Rainer Tammer.
Do not call toplevel configure in non-VPATH build.
* tests/deplibs-mingw.at (deplibs without file command): Use
LT_AT_CONFIGURE for consistency, update comment about why it
might fail.
* tests/pic_flag.at (override pic_flag at configure time): Skip
test if we are building in-tree.
Report by Rainer Tammer.
Allow running pic_flag test with different shell.
* tests/testsuite.at (LT_AT_CONFIGURE): Accept optional second
argument specifying the configure script to run.
* tests/pic_flag.at (override pic_flag at configure time):
Use LT_AT_CONFIGURE.
Ensure not to reverse preserving of --debug for relinking/finish.
* libltdl/config/ltmain.m4sh (func_check_version_match): Only
preserve '--debug' switch if $opt_debug is not equal to ':'.
* tests/help.at (debug tracing): New test group.
Report by Rainer Tammer.
2010-08-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix AC_NO_EXECUTABLES test failure on AIX.
* libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Wrap link
test in AC_CACHE_VAL, using cache variable $lt_cv_aix_libpath.
* tests/no-executables.at (AC_NO_EXECUTABLES): Preset it, to
avoid link test.
Bug report by Rainer Tammer.
Fix ltdl-libdir test for C++ compilers.
* tests/ltdl-libdir.at (libdir of installed modules): Declare
module function as extern "C".
2010-08-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Let `libtool' without arguments point to `--help' again.
* libltdl/config/ltmain.m4sh (func_check_version_match):
Remove duplicate and wrong error check.
* tests/help.at (standard command line options): Extend test.
Report by Rainer Tammer.
Avoid syntax error due to shift of nonexistent parameter.
* libltdl/config/ltmain.m4sh <command-line handling>: Only shift
if there is a positional parameter to shift. Fixes `libtool
--help' when dash is used.
Report by Rainer Tammer.
Fix testsuite errors due to shell quoted parameter expansion issue.
* tests/getopt-m4sh.at (_LT_AT_GETOPT_M4SH_SETUP): Insert space
between double-quoted and unquoted shell parameter, as bash
4.0.28 doesn't add one in its output if the expansion of the
second one starts with a space.
(short option splitting, enhanced shell short option splitting)
(long option splitting, XSI long option splitting): Add space in
expected output.
Fixes testsuite failures on AIX, FreeBSD, etc.
Report by Rainer Tammer.
2010-08-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix build failure with AIX sh due to shell quoting error.
* libltdl/config/ltmain.m4sh (func_append_quoted): Document
that this function inserts a separator space.
(func_mode_compile): Do not pass extra space here.
Fixes regression introduced in v2.2.10-49-gc13532a.
Report by Rainer Tammer.
2010-08-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix pic_flag test unportabilities.
* tests/pic_flag.at (override pic_flag at configure time): Skip
test if the compiler produces a warning containing `fpic'.
Do not use nonportable `grep -e', for Solaris.
Report by Charles Wilson.
2010-08-01 Paolo Bonzini <bonzini@gnu.org>
Fix bug in postdeps computation
* libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Actually
concatenate $prev and $p.
2010-07-26 Charles Wilson <libtool@cwilson.fastmail.fm>
Don't always skip XSI tests
* tests/getopt-m4sh.at: Use new signature as implemented by
de8a0992b21b76a13c302cf48588ad5f6042595c, when determining
whether to test Extended-shell functions.
2010-07-18 Peter Rosin <peda@lysator.liu.se>
* tests/stresstest.at: Link with main.lo when liba is shared
and linking main with -no-install.
2010-07-18 Peter Rosin <peda@lysator.liu.se>
* tests/stresstest.at [MSVC]: dllimport all imported
variables.
2010-07-17 Peter Rosin <peda@lysator.liu.se>
dllimport the variable for MSVC in link-order.at
* tests/link-order.at [MSVC]: Makes the test pass by dllimporting
imported variables when working with shared libraries.
2010-07-08 Peter Rosin <peda@lysator.liu.se>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Make preloading heed libname_spec.
Fixes testsuite failure for lt_dladvise.at on MSYS/MSVC.
* libltdl/ltdl.c (libprefix): New static variable describing
the prefix of static archives.
(try_dlopen): Use libprefix.
* libltdl/m4/ltdl.m4 (_LTDL_SETUP): Export prefix of static
archives to config.h. Also fix assignment of LTDLOPEN to be more
efficient and less error prone while at it.
2010-07-08 Gary V. Vaughan <gary@gnu.org>
Rename _LT_PROG_XSI_REPLACE macro to _LT_PROG_FUNCTION_REPLACE.
* libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Rename to
_LT_PROG_REPLACE_SHELLFNS.
(_LT_PROG_XSI_REPLACE): Rename to _LT_PROG_FUNCTION_REPLACE.
(_LT_PROG_FUNCTION_REPLACE): Change decorator comment to use
'Extended shell' rather than 'XSI' on successful replacement.
* libltdl/config/general.m4sh (func_dirname, func_basename)
(func_dirname_and_basename, func_stripname): Change decorator
comment to use 'extended shell' rather than 'XSI' on fallback
implementations.
* libltdl/config/getopt.m4sh (func_split_short_opt)
(func_split_long_opt): Ditto.
* libltdl/config/ltmain.m4sh (func_append, func_append_quoted)
(func_arith, func_len, func_lo2o, func_xform): Ditto.
* tests/getopt-m4sh.at (_LT_AT_XSI_FUNC_EXTRACT): Rename to
_LT_AT_EXTENDED_SHELL_FUNC_EXTRACT.
(_LT_AT_EXTENDED_SHELL_FUNC_EXTRACT): Change regular expression to
match new replacable function decorator comments.
2010-07-08 Peter Rosin <peda@lysator.liu.se>
Optimize assignment of output_la.
* libltdl/config/ltmain.m4sh (func_mode_link): Save two fork/exec
instances.
Report by Ralf Wildenhues.
2010-07-08 Gary V. Vaughan <gary@gnu.org>
Fix a cut-n-pasto in "2010-07-07 Charles Wilson" patch.
* libltdl/config/ltmain.m4sh (func_mode_link): Remove spurious
variable dereference.
2010-07-07 Gary V. Vaughan <gary@gnu.org>
Tidy m4 comment header underline.
* libltdl/m4/libtool.m4 (_LT_CHECK_SHAREDLIB_FROM_LINKLIB): Make
sure hyphens in function name comment header underline line up.
2010-07-07 Charles Wilson <libtool@cwilson.fastmail.fm>
[cygwin|mingw] fix dlpreopen with --disable-static
* libltdl/config/general.m4sh (func_tr_sh): New function.
* libltdl/config/ltmain.m4sh (func_generate_dlsyms) [cygwin|mingw]:
Obtain DLL name corresponding to import library by using value
stored in unique variable libfile_$(transliterated implib name).
If that fails, use $sharedlib_from_linklib_cmd to extract DLL
name from import library directly. Also, properly extract dlsyms
from the import library.
(func_mode_link) [cygwin|mingw]: Prefer to dlpreopen DLLs
over static libs when both are available. When dlpreopening
DLLs, use linklib (that is, import lib) as dlpreopen file,
rather than DLL. Store name of associated la file in
unique variable libfile_$(transliterated implib name)
for later use.
(func_win32_libid): Accomodate pei-i386 import libs
as well as pe-i386.
(func_cygming_dll_for_implib): New function.
(func_cygming_dll_for_implib_fallback): New function.
(func_cygming_dll_for_implib_fallback_core): New function.
(func_cygming_gnu_implib_p): New function.
(func_cygming_ms_implib_p): New function.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust sed
expressions for lt_cv_sys_global_symbol_to_c_name_address and
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
as trailing space after module name is optional.
(_LT_LINKER_SHLIBS) [cygwin|mingw][C++]:
Set exclude_expsyms correctly for $host. Simplify regular
expression in export_symbols_cmds.
(_LT_LINKER_SHLIBS) [cygwin|mingw|pw32][C]: Set exclude_expsyms
correctly for $host. Enable export_symbols_cmds to identify
DATA exports by _nm_ prefix.
(_LT_CHECK_SHAREDLIB_FROM_LINKLIB): New macro sets
sharedlib_from_linklib_cmd variable.
(_LT_DECL_DLLTOOL): New macro ensures DLLTOOL is always set.
2010-07-05 Peter Rosin <peda@lysator.liu.se>
* tests/export.at [MSVC]: dllimport all imported variables.
2010-07-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Peter Rosin <peda@lysator.liu.se>
Support for response files with $NM.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS)
<nm_file_list_spec>: New tag variable. Set it to '@' if input
files can be passed to $NM in a file named with the '@' option.
* libltdl/config/ltmain.m4sh (func_mode_link): When
nm_file_list_spec is nonempty, use it to avoid skipped_export.
* doc/libtool.texi (libtool script contents): Document
new variable.
2010-07-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix ccache test for MSVC.
* tests/static.at (ccache -all-static): Ignore compiler stderr.
Reported by Peter Rosin.
2010-07-03 Charles Wilson <libtool@cwilson.fastmail.fm>
Avoid false failures caused by filesystem interaction
* tests/dlloader-api.at (dlloader API): Use uglified names for
pseudo-modules.
2010-07-03 Peter Rosin <peda@lysator.liu.se>
Fix typo in "Add func_append_quoted and do..."
* libltdl/config/ltmain.m4sh (func_mode_compile): Use
func_append_quoted instead of func_append.
2010-07-02 Peter Rosin <peda@lysator.liu.se>
Don't trigger file name expansion when embedding manifests.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
[ cygwin, mingw, cegcc ] <cl*>: Remove all spaces in the
case statement of postlink_cmds to make file name expansion
more unlikely.
(_LT_LANG_CXX_CONFIG): Likewise, but also add the missing |.
2010-07-01 Peter Rosin <peda@lysator.liu.se>
Fix regression caused by "Add func_append_quoted and do..."
* libltdl/config/ltmain.m4sh (func_mode_link): Remove leftover
"_libs" trash.
2010-06-28 Peter Rosin <peda@lysator.liu.se>
For MSVC, embed the manifest as a resource in the executable.
Fixes a lot of testsuite failures with MSVC 2003 (v8.0) and
above (and perhaps also MSVC .Net) related to running programs
that have been moved (e.g. installed) without their manifests
also having been moved.
* libltdl/m4/libtool.m4 (_LT_PATH_MANIFEST_TOOL): New macro
that locates the Manifest Tool (mt) and verifies that it is
indeed the manifest tool. The result is stored in the new
variable MANIFEST_TOOL.
(_LT_LINKER_SHLIBS) <postlink_cmds>: New tag variable.
[ cygwin, mingw, cegcc ] <cl*>: Embed the manifest file as a
resource. Make sure the embedding work regardless of if the
@OUTPUT@ file name includes a trailing $EXEEXT.
(_LT_LANG_CXX_CONFIG): Likewise.
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Require the above
_LT_PATH_MANIFEST_TOOL.
* libltdl/config/ltmain.m4sh (func_mode_link): After linking
a program, replace @OUTPUT@ in $postlink_cmds and then execute
the commands.
* doc/libtool.texi (libtool script contents): Document
new postlink_cmds variable.
(LT_INIT): Add that the MANIFEST_TOOL environment variable can
be used to override the manifest tool to use.
* tests/exeext.at: New. Make sure linking with both -o prog
and -o prog$EXEEXT works.
* Makefile.am (TESTSUITE_AT): Update.
(TESTS_ENVIRONMENT): Propagate $(MANIFEST_TOOL) to the
testsuite.
* NEWS: Add note of the new MANIFEST_TOOL environment variable.
2010-06-24 Peter Rosin <peda@lysator.liu.se>
Add MSVC support.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [mingw, cygwin]: Add
support for the Microsoft C/C++ Compiler (cl) relying on help
from the compile script in Automake.
* NEWS: Add note of the above.
2010-07-01 Gary V. Vaughan <gary@gnu.org>
Skip `enhanced shell option appending' test when not available.
* tests/getopt-m4sh.at [enhanced shell option appending]:
_LT_AT_XSI_FUNC_EXTRACT will not be able to find the enhanced
libtool func_append function if the replacement wasn't substituted
by configure, since the decorator comments will be different - in
that case simply skip the test.
2010-06-30 Gary V. Vaughan <gary@gnu.org>
Add func_append test cases for smart and retarded implementations.
* tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): New
macro to extract a fallback function implementation from
ltmain.m4sh.
[option appending]: Use it for a test of the fallback
implementation of func_append.
[enhanced shell option appending]: And also test the enhanced
implementation.
* libltdl/config/ltmain.m4sh (func_append_quoted): Fix missing \\
to escape a quoted space for eval.
* libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Fix missing $ in
dereference of func_append inline replacement for retarded
shells.
2010-06-29 Gary V. Vaughan <gary@gnu.org>
Correct func_split_short_opt comment cut-n-pasto.
* libtool/config/getopt.m4sh (func_split_short_opt): Fix
the function comment.
Use a real XSI compliant func_split_short_opt substitution.
* libtool/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Remove
test ${foo:n:m} substrings, instead adding a ${foo%??} check
to the existing XSI tests.
(_LT_PROG_XSI_SHELLFNS): Remove the ${foo:n:m} based
func_split_short_opt substitution in favour of a properly
XSI compliant substitution.
Suggested by Paolo Bonzini.
2010-06-28 Gary V. Vaughan <gary@gnu.org>
Add func_append_quoted and do inline func_append substitutions.
* libtool/config/ltmain.m4sh: Replace all occurrences of
`foo="$foo bar"' with func_append. No decorator comment was
added since /func_append [a-zA-Z0-9_]* "/ is already an
excellent match regexp, and additional comments would only
complicate things.
(func_append_quoted): New function that quotes a value with
func_quote_for_eval before appending it. To avoid quoting the
whitespace in the passed value, a single whitespace is added
automatically. Changed callers where possible.
* libtool/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Perform a
`+=' implementation substitution for func_append_quoted. More
importantly, systematically replace matching func_append calls
with inline `+=' when supported (for maximum speed), and
longhand `foo="$foo bar"' otherwise to avoid the function
overhead.
Add an XSI replacement for func_split_short_opt, with test cases.
* libltdl/config/getopt.m4sh (m4go_shortnoargs): Remove 'v' now
that getopt.m4sh doesn't steal that letter for the --version
short option.
* libltdl/config/ltmain.m4sh (M4SH_GETOPTS): We can now use 'v'
as a short option for '--verbose'.
* libltdl/config/getopt.m4sh (m4go_printopts): Add back in the
leading '-' for remaining non-argument short options.
(func_split_short_opt): Use the correct sed script variable.
* libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also ensure
that XSI substring extraction is supported.
(_LT_PROG_XSI_SHELLFNS): Use XSI substring extraction to split
short options to avoid unnecessary forks if the host shell
supports that.
* tests/getopt-m4sh.at: New tests for getopt.m4sh coverage.
* Makefile.am (TESTSUITE_AT): Add getopt-m4sh.at.
(TESTS_ENVIRONMENT): Pass M4SH and SED for substition into the
m4sh expansion performed in tests/getopt-m4sh.at.
2010-06-27 Gary V. Vaughan <gary@gnu.org>
Add missing case branch terminators.
* libltdl/config/ltmain.m4sh: Fixed everal case branches with
missing ';;' terminators.
Use TAB-SPACE in preference to SPACE-TAB.
* libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): Some editors
might optimise away the SPACE in SPACE-TAB sequences, so use
TAB-SPACE just in case.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Amend a missed opt_mode rename instance in ltmain.m4sh.
* libltdl/config/ltmain.m4sh <mode>: Rename to opt_mode.
Fix portability regressions in today's earlier changeset.
* libltdl/m4/libtool.m4 (_LT_PROG_XSI_REPLACE): `sed -i' is not
portable; use `mv -f ...|| cp -f ...' instead.
Add an initial backslash to sed `c' substitutions with leading
whitespace, so that indentation is not removed by some non-POSIX
compliant sed implementations.
(_LT_PROG_XSI_SHELLFNS): Display a diagnostic warning message if
one or more XSI function replacements failed.
getopt.m4sh generated libtool option parser, and XSI improvements.
* libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Moved portable
shell versions of various utility functions from here...
* libltdl/config/getopt.m4sh (func_split_long_opt): ...to here...
* libltdl/config/general.m4sh (func_dirname, func_basename)
(func_dirname_and_basename, func_strip_name): ...here...
* libltdl/config/ltmain.m4sh (func_append, func_arith, func_len)
(func_lo2o, func_xform): ...and here.
* libltdl/config/libtool.m4 (_LT_PROG_XSI_REPLACE): New macro that
expands into a sed command for replacing the contents of a
suitably decorated shell function with an alternate XSI
implementation.
(_LT_PROG_XSI_SHELLFNS): Use it to replace the portable shell
versions of the functions above with equivalent XSI
implementations that avoid unnecessary forks if the host shell
supports that.
* libltdl/config/ltmain.m4sh: Replace hand written shell code
with a call to M4SH_GETOPTS. Rename some option variables in
the client code to match the generated option parser settings.
* libltdl/config/general.m4sh (func_echo, func_error)
(func_warning): Use $opt_mode instead of obsoleted $mode in
message leader.
* libltdl/config/getopt.m4sh (m4_version_prereq): This file
requires m4sugar.m4 from Autoconf-2.61 or newer.
2010-06-24 Charles Wilson <libtool@cwilson.fastmail.fm>
[cygwin] Refactor C++ exception handling for Win32 correctness
* tests/exception.at (common.h): New file, refactored from
(module.h): Move declaration of modexc to libcommon.
Include common.h. Use explicit import/export markings for
symbols when building on win32 or cygwin.
(common.cpp): New file.
(module.cpp): Ensure correct symbols markings when including
module.h.
(lib.h): Use explicit import/export markings for symbols
when building on win32 or cygwin.
(lib.cpp): Ensure correct symbol markings when including lib.h.
(main.cpp): Include common.h.
(commands): Ensure correct symbol markings when compiling
main.cpp, and lib.cpp, and module.cpp. Add command to compile
common.cpp, and to link libcommon.la. Add libcommon.la when
linking module.la and main. Add command to install libcommon.la.
2010-06-21 Gary V. Vaughan <gary@gnu.org>
Ensure getopts.m4sh is compatible with Autoconf-2.61 and newer.
* libltdl/config/getopt.m4sh (m4_chomp): Ensure this macro is
implemented even if Autoconf's m4sugar.m4 doesn't provide it.
(m4go_expand): New macro based on Autoconf-2.64 m4_expand. Use
it everywhere incase m4sugar.m4 doesn't have an implementation.
(m4_ifnblank): Replace all uses with m4_ifval, which was
available long before m4_ifnblank was introduced.
2010-06-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix clean mode for HP-UX 11.31 sh.
* libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not try
to match a null string in a case pattern, even with surrounding
spaces. Fixes `lt_dlopenadvise library loading' test.
Add comment for exception handling module unloading issue.
* tests/exceptions.at (C++ exception handling): Add comment
for last patch.
Fix flags test failure when ld is used as linker.
* tests/flags.at (passing CC flags through libtool): When $LD
is used for linking libraries, ensure flags passed with `-Wc,'
are not passed through to $LD, but flags passed with `-Wl,' use
$wl when linking programs. Fixed testsuite failure on HP-UX
10.20.
2010-06-19 Charles Wilson <libtool@cwilson.fastmail.fm>
[cygwin] Fix segfault in C++ exception handling test
* tests/exceptions.at (main.cpp:exceptions_in_module):
Move dlclose outside catch block; otherwise __cxa_end_catch
(part of the cygwin g++ ABI) accesses pointers to data inside
unloaded DLL. This is a platform ABI-specific bug, but is
likely common to many platforms' g++ and/or other C++
compilers.
2010-06-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix srcdir computation for manual runs of old tests.
* tests/defs.m4sh: Strip trailing `/tests' from srcdir, to allow
`$srcdir/tests/FOO.test' to be run from the top build directory.
Clean up @var handling in the manual.
* doc/libtool.texi: Throughout the manual, replace @var with
@samp or @code as appropriate, ensure the argument of remaining
@var uses are lower-case.
Let the bootstrap script fail upon errors.
* bootstrap: Enable errexit.
Fix execute mode test for OSF/1 5.1.
* tests/execute-mode.at (execute mode): Do not use grep -F
with an empty pattern.
* THANKS: Update.
Report by Jay K.
Use config.cache variable for PIC flag, to allow override.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) <lt_prog_compiler_pic>:
Save result, and allow override, through cache variable
lt_cv_prog_compiler_pic{,_CXX,_F77,_FC}. The cache variable
needs to contain an eventual -DPIC.
* tests/pic_flag.at (override pic_flag at configure time):
New file, new test.
* Makefile.am (TESTSUITE_AT): Update.
* NEWS, THANKS: Update.
Suggestion by Joakim Tjernlund and Paolo Bonzini.
2010-06-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Optimize func_ltwrapper_scriptname to assume a cwrapper.
* libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname): Do not
call func_ltwrapper_executable_p again here, this function is
documented to allow being called with wrapper executables.
Fix bootstrap script to cope with changed AC_INIT arguments.
* bootstrap: When extracting PACKAGE and VERSION from AC_INIT
arguments, be sure to remove a 'GNU ' prefix and lowercase the
package name for PACKAGE. Also set PACKAGE_NAME and PACKAGE_URL
appropriately for GNU software. Pass these variables to the
make commands creating tests/package.m4 and other files.
* Makefile.am (edit): Fix substitution of PACKAGE_NAME and
PACKAGE_STRING.
* libltdl/config/announce-gen.m4sh: Use @PACKAGE@ not
@PACKAGE_STRING@.
2010-06-15 Peter Rosin <peda@lysator.liu.se>
On Windows, find potential libs regardless of file name case.
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD),
libltdl/config/ltmain.m4sh (func_mode_link): On Windows,
find potential libs regardless of file name case.
* tests/nocase.at: New test, to check for regressions
of the above.
* Makefile.am: Add above new test.
* doc/libtool.texi (libtool script contents): Document
new variables.
* NEWS: Updated.
2010-06-15 Philip Allison <philip.allison@smoothwall.net> (tiny change)
Avoid GCC -Wall compiler warning in dlopen self test.
* libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Fix unused
variable warning in test program.
* THANKS: Update.
2010-06-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix cleaning of uninstalled w32 shell wrapper in subdirs.
* libltdl/config/ltmain.m4sh (func_mode_uninstall): Do not
override global objdir variable, instead use odir for the
directory of to-be-removed files. Drop unneeded origobjdir.
Report by Charles Wilson.
2010-06-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Enable colored Autotest testsuite output if available.
* tests/testsuite.at: Move AT_INIT call down to late in the
file, all prior code can go beforehand.
Call AT_COLOR_TESTS if defined.
2010-06-14 Peter O'Gorman <peter@pogma.com>
Pass resident test with --disable-shared too.
* tests/resident.at: use LTDL_SET_PRELOADED_SYMBOLS.
2010-06-13 Peter O'Gorman <peter@pogma.com>
Test with --disable-shared at release time too.
* HACKING: Note it.
Avoid failure for --disable-shared.
* tests/lt_dladvise.at: Hack.
Use LTDL_SET_PRELOADED_SYMBOLS to avoid failure.
* tests/exceptions.at: Use it.
2010-06-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Print Libtool project URL in program --help output.
* configure.ac (AC_INIT): Set PACKAGE argument to `GNU Libtool',
so Autoconf knows this is GNU software. For Autoconf < 2.64,
if AC_PACKAGE_URL is not defined, substitute PACKAGE_URL.
* Makefile.am (edit): Substitute PACKAGE_URL.
($(srcdir)/tests/package.m4): Also depend on Makefile.am.
Define AT_PACKAGE_URL, for `tests/testsuite --help' output.
* libltdl/config/getopt.m4sh (func_help): Also extract comment
lines that mention a home page and general GNU help.
* libltdl/config/ltmain.m4sh: Use @PACKAGE_BUGREPORT@ instead of
hard-coded list address. Also mention Libtool home page and
general GNU help web page.
* libtoolize.m4sh: Likewise.
2010-06-12 Peter Rosin <peda@lysator.liu.se>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Improve libdir usage from within ltdl on MinGW.
* libltdl/ltdl.c (parse_dotla_file) [__WINDOWS__]: Read the
libdir entry in the .la file, but accept it only if it is not
a unix-style absolute name.
* tests/ltdl-libdir.at: New test that checks if ltdl finds an
installed module via the libdir variable in the .la file. On
MinGW, use a Windows-style libdir name including drive spec.
* Makefile.am: Add above.
2010-06-11 Peter O'Gorman <peter@pogma.com>
Skip bindir install test if we're not building shared.
* tests/bindir.at: Skip install test if necessary.
* THANKS: Update.
Report by Michael E Faenza.
2010-06-11 Gary V. Vaughan <gary@gnu.org>
Use getopt.m4sh to generate libtoolize option parser.
* libtoolize.m4sh: Replace hand written shell code with a
call to M4SH_GETOPTS. Move some premature initialization
from the preamble to the main part of the script. Exit with
an error on spurious additional non-option arguments.
(envopts): Integrate LIBTOOLIZE_OPTIONS pre-parsing into the
main option parsing loop.
(opt_copy): Use in place of and in the reverse sense of the
old opt_link variable.
2010-06-10 Peter O'Gorman <peter@pogma.com>
Create reloadable object files with non-pic objects too.
* libltdl/config/ltmain.m4sh: When not building a shared
library, use the non-pic objects to create a reloadable
object, because pic objects do not exist.
2010-06-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ensure libltdl is up to date for check-local.
* Makefile.am (LTDL_BOOTSTRAP_DEPS): New variable.
(all-local): Use it to simplify dependencies.
(testsuite_deps_uninstalled): Add $(LTDL_BOOTSTRAP_DEPS).
Report by Peter Rosin.
2010-06-10 Gary V. Vaughan <gary@gnu.org>
Support shell tracing inside functions even with ksh.
* libltdl/config/getopt.m4sh: Set $opt_debug to be either `:'
or `set -x' depending on whether --debug was parsed to match
usage in libtoolize.m4sh and ltmain.m4sh.
* clcommit.m4sh, libltdl/config/announce-gen.sh: Instead of
`$opt_debug && ...', use `test "$opt_debug" != ":" && ...'.
* clcommit.m4sh, libltdl/config/announce-gen.m4sh,
libltdl/config/getopt.m4sh, libltdl/connfig/mailnotify.m4sh:
Execute at the start of functions to cater to ksh, which
resets `-x' inside shell functions.
Fix a typu in HACKING.
* HACKING (Release Procedure): s/Makeflie/Makefile/.
2010-06-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Factorize testing gcj installation in the testsuite.
* tests/testsuite.at (LT_AT_TAG): For the GCJ tag, actually
try to compile a .java file when deciding whether to skip.
(LT_AT_EXEC_TAG): New macro, to also ensure runnability.
* tests/convenience.at (Java convenience archives): Use
LT_AT_EXEC_TAG, simplify accordingly.
* tests/flags.at (passing lt_tag flags through libtool): Use
m4_defn for tag so LT_AT_TAG works.
* tests/infer-tag.at (GCJ inferred tag): Simplify.
* THANKS: Update.
Report by Warren Dodge.
2010-06-09 Peter O'Gorman <peter@pogma.com>
Skip demo-nopic tests if SELinux policy will cause failure.
* tests/demo-nopic.test: Check SELinux policy and skip if
necessary.
2010-06-09 Gary V. Vaughan <gary@gnu.org>
Set SCM version number to 2.2.11a.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.11a.
* NEWS: Updated.
GNU Libtool 2.2.10 was released.
Prepare for next release.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version number
to 2.2.10.
* NEWS: Update version number.
Fix a quoting bug with ./commit -a 'A U Thor'.
* clcommit.m4sh (func_commit): Use func_show_eval when calling
git, so that the previously func_quote_for_eval()ed $git_flags is
expanded properly.
2009-09-15 Peter Rosin <peda@lysator.liu.se>
Don't try the MSYS libdir path on MinGW.
* libltdl/ltdl.c (parse_dotla_file) [mingw]: The absolute
libdir path in the .la file is recorded as an MSYS (POSIX
style) path. Make sure it isn't tried when locating the
shared library.
* NEWS: Updated.
2010-06-09 Gary V. Vaughan <gary@gnu.org>
Simplify license variations, and add missing license texts.
* ChangeLog, ChangeLog.1996, ChangeLog.1997, ChangeLog.1998,
ChangeLog.1999, ChangeLog.2000, ChangeLog.2001, ChangeLog.2002,
ChangeLog.2003, ChangeLog.2004, ChangeLog.2005, ChangeLog.2006,
ChangeLog.2007, ChangeLog.2008, ChangeLog.2009, NEWS: Add
all-permissive license.
* HACKING, README, README.alpha, TODO: Relax license to RMS
encouraged all-permissive terms.
* libltdl/README: Ditto. I added the original license text in
2007, and there's no need for it to be so long for such a trivial
file.
* libltdl/config/getopt.m4sh, libltdl/general.m4sh: Cvs-utils is
dead, and I am the author of these files, so consolidated license
terms to match regular Libtool licensing.
* HACKING (Licensing Rules): Update wording, and list of files for
the all permissive license.
(GPL with CVS-Utils exception clause): Removed. No files have these
license any more.
(GPL with Libtool exception clause): Ditto, only libltdl/README
used to be distributed with this variation.
* AUTHORS: Add GPL license text.
Fix a type in the 2.2.8 release notes.
* NEWS: s/ romoted/ promoted/ in the 2.2.8 release notes.
Don't warn about the blank line inserted into git commit message.
* clcommit.m4sh: When searching for accidental commits of mutliple
changes, ignore the second line of the message, which we inserted
earlier to support "git log --oneline".
Enable correct extraction of multiline copyright from --version.
* libltdl/config/getopt.m4sh: Wrap copyright notice at 76
columns.
(func_version): Don't omit spaces when merging multiline copyright
notices.
* clcommit.m4sh, libtoolize.m4sh: Wrap copyright notice at 76
columns.
* NEWS (2.2.8): BlueGene compiler tests were performed on BG/P
systems, not BG/L.
Reported by Christian Rössel <christian.roessel@gmx.de>
2010-06-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix testsuite helper macros to not hide failure.
* tests/testsuite.at (LT_AT_CONFIGURE, LT_AT_MAKE):
Do not wrap AT_CHECK in a subshell, so that failures are
properly propagated; instead, move environment changes inside
the AT_CHECK code.
Report and analysis by Peter Rosin.
Avoid autom4te warning about unnamed diversion.
* libltdl/config/getopt.m4sh: Use diversion name KILL not -1.
2010-06-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Make versioning test stricter for w32, enable shared libs.
* tests/versioning.at (versioning): Add -no-undefined to
LDFLAGS.
(test_uninstalled): Also move $bindir out of the way
temporarily.
Fix versioning test for LDFLAGS=-Wl,--as-needed.
* tests/versioning.at (versioning): For the library update
hypotheses, ensure the unchanged library libb isn't accidentally
relinked against the new liba, by not reinstalling libb.
Fixes testsuite failure for the incompatible update case with
LDFLAGS=-Wl,--as-needed.
* THANKS: Update.
Report by Ryan Hill.
2010-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Rewrite manual intro to be gender-neutral.
* doc/libtool.texi (Introduction): Use gender-neutral
formulation when addressing developers.
2010-06-05 Gary V. Vaughan <gary@gnu.org>
Update and simplify all m4sh scripts to use latest getopt.m4sh.
* clcommit.m4sh, libltdl/config/mailnotify.m4sh: Rewrite option
parsing loop over M4SH_GETOPTS macro, and adjust all clients of
option variables to use generated option names.
Add missing quote for literal ? in a shell case statement.
* libltdl/config/getopt.m4sh (m4go_shortnoargs): Quote initial ?
correctly for use in a shell case statement.
Quote command line arguments after --rcfile properly.
* libltdl/config/announce-gen.m4sh (--rcfile): Quote remaining
arguments shell variable expression correctly for eval.
Shift correctly in numbered option argument collection.
* libltdl/config/getopt.m4sh (_m4go_option): Argument list also
needs to be `shift'ed in the shell option loop after processing a
numbered argument collection.
Fetch from new upstream host for config.guess and config.sub.
* Makefile.maint (WGET_CGIT): Location of newest config.guess and
config.sub upstream.
(fetch): Fetch config.guess and config.sub from WGET_CGIT, rather
than no-longer-updating WGET_SGO location.
Update generated upload directive file format to v1.1.
* Makefile.maint (git-dist, diffs): Update to generate v1.1 format
directive files for ftp://ftp-upload.gnu.org/incoming/ftp.
Fix web manual generation details in release instructions.
* HACKING (Release Procedure): Move the instruction for generating
web manuals for a new release to before the instruction that bumps
the version numbers to the post release values.
Set SCM version number to 2.2.9a.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.9a.
* NEWS: Updated.
GNU Libtool 2.2.8 was released.
Prepare for next release.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.8.
* NEWS: Update version number.
* INSTALL, libltdl/config/install-sh, libltdl/config/config.guess,
libltdl/config/config.sub, libltdl/config/texinfo.tex: Updated
from canonical source.
Provide an m4sh reimplementation of announce-gen.
* libltdl/config/getopt.m4sh (M4SH_GETOPTS): New macro that takes
a quoted m4 list of command line options to be parsed, and
generates the shell code to parse those options and collect the
results into appropriately named 'opt_xxx' shell variables. Also,
add some private supporting macros, and improve the comments
radically.
* libltdl/config/announce-gen.m4sh: New file, to generate and
optionally post (an enhancement over the gnulib perl script of the
same name) a release announcement.
* Makefile.maint (announce-gen): Build a new announce-gen script
in the build directory, from the contents of
libltdl/config/announce-gen.m4sh.
* HACKING (Release Procedure): Update the instructions to use
announce-gen.
(Alpha release note template, Full release note template):
Removed.
2010-05-22 Gary V. Vaughan <gary@gnu.org>
Support "git log --oneline" in generated commit messages.
* clcommit.m4sh (func_check_commit_msg): Insert an empty line
between the ChangeLog entry summary line and the ChangeLog entry
body, so that "git log --oneline" works properly.
Bump copyright and version number.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2010-05-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* HACKING: Set Reply-To: in announcement emails.
2010-05-21 Gary V. Vaughan <gary@gnu.org>
Set SCM version number to 2.2.7c.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.7c.
* NEWS: Updated.
GNU Libtool 2.2.7b was released.
Prepare for next release candidate.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.7b.
* libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: These files
have been updated without a serial bump since the last release.
* libltdl/Makefile.inc (LTDL_VERSION_INFO): Bump Revision, to
account for bugfixes since the last release.
* libltdl/config/install-sh, libltdl/config/config.guess,
libltdl/config/config.sub, libltdl/config/texinfo.tex,
INSTALL: Updated from canonical source.
* NEWS: Update with missing entries from ChangeLog.
* HACKING: Note workaround for developer tool-path leakage bug.
Skip some tests in --disable-ltdl-install mode.
* tests/dlloader-api.at, tests/exceptions.at,
tests/lalib-syntax.at, tests/loadlibrary.at,
tests/lt_dlopenext.at, tests/resident.at: Detect when these
tests try to link against the not installed libltdl.la, and
skip rather than FAIL.
2010-05-05 Peter Rosin <peda@lysator.liu.se>
Clarify versioning algorithm documentation.
* doc/libtool.texi (Updating version info): Be explicit
about setting age to zero on interface change.
Reported by Jef Driesen <jefdriesen@hotmail.com>
2010-05-04 Peter O'Gorman <peter@pogma.com>
Ranlib is required with -force_load and fat archives.
* libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Run
ranlib.
Reported by Jeremy Huddleston <jeremyhu@apple.com>
2010-04-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix incompatible struct declarations.
* doc/libtool.texi (Dlpreopening): Remove broken documentation
of lt_dlsymbol and lt_dlsymlist. Document typedef lt_dlsymlist
and symbol lt_preloaded_symbols according to the implementation.
* tests/demo/dlmain.c (lt_symlist): Make struct anonymous ...
(lt_dlsymlist): ... and typedef to this name.
(lt_preloaded_symbols, main): Adjust.
* tests/pdemo/longer_file_name_dlmain.c: Likewise.
2010-04-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Use linker_flags not compiler_flags with $LD.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]
<archive_cmds, archive_expsym_cmds>: With xlf and bgxlf
compilers, when linking with $LD, use $linker_flags not
$compiler_flags.
2010-03-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Add FAQ, and FAQ entry for flags stripped at library link time.
* doc/libtool.texi (FAQ, Stripped link flags): New nodes.
(Wrapper executables): Replace bug address with macro.
(Compile mode, Link mode): Document `-Wc,' and `-Xcompiler '
semantics better.
* libltdl/config/ltmain.m4sh (func_mode_link): Rewrite comment
for the flags that are passed through.
Prompted by reports from Simon Richter <Simon.Richter@hogyros.de>,
Török Edwin <edwintorok@gmail.com> and
Åke Sandgren <ake.sandgren@hpc2n.umu.se>.
2010-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix preloader symbol list declaration in libltdl.
* libltdl/ltdl.c (preloaded_symbols): Fix declaration to include
array brackets.
(lt_dlinit): Do not take address of preloaded_symbols.
Fix typo in libtool --help output.
* libltdl/config/ltmain.m4sh (func_mode_help): Fix typo in help
output.
Fix a couple of documentation errors.
* doc/libtool.texi (Autoconf macros): Improve hyphenation.
(Using libltdl): libltdl uses the Lesser General Public License,
not the Library General Public License.
Do not use @sc nor @acronym in the manual.
* doc/libtool.texi: Remove all usage of @sc.
2010-03-19 Chris Demetriou <cgd@google.com>
Sort output of 'find' to enable deterministic builds.
* libltdl/config/ltmain.m4sh (func_extract_archives): Sort
output of 'find'.
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Likewise.
* THANKS: Update.
2010-03-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Unconditionally normalize LC_ALL, LANGUAGE in libtool script.
* libltdl/config/ltmain.m4sh: Unconditionally set LC_ALL and
LANGUAGE to 'C', to avoid semantic differences on MinGW under
Chines locale. SCO issues with e.g. LANG=C are not known to
be relevant today any more.
Report by Pete Batard <pbatard@gmail.com> and Xiaofan Chen
<xiaofanc@gmail.com>.
2010-03-17 Peter Rosin <peda@lysator.liu.se>
Preserve the last error when restoring the error mode.
* libltdl/loaders/loadlibrary.c (wm_open): Don't rely on
SetThreadErrorMode (or SetErrorMode) to not clobber the last
error.
Report by Ralf Wildenhues.
Use Get/SetThreadErrorMode if they are available.
* libltdl/loaders/loadlibrary.c (wrap_geterrormode): Replaced...
(wrap_getthreaderrormode): ...by this function that checks
first for GetThreadErrorMode, then GetErrorMode and makes use
of either of those or...
(fallback_getthreaderrormode): ...else falls back to this
replacement function that implements the old workaround, which
was previously implemented in...
(fallback_geterrormode): ...this now renamed function.
(geterrormode): Replaced...
(getthreaderrormode): ...by this function pointer that points
at either of wrap_getthreaderrormode, GetThreadErrorMode,
GetErrorMode or fallback_getthreaderrormode.
(wrap_setthreaderrormode): New function that checks if
SetThreadErrorMode is supported by the system and makes use of
it if it is.
(fallback_setthreaderrormode): New function that is used
otherwise that implements the old version using SetErrorMode.
(setthreaderrormode): New function pointer that points at
either of wrap_setthreaderrormode, SetThreadErrorMode or
fallback_setthreaderrormode.
(vm_open): Adjust to the above.
2010-02-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Detect Sun compiler suite with 'sun'-prefixed names.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
(_LT_SYS_HIDDEN_LIBDEPS) [solaris]: Accept compiler names sunCC,
sunf77, sunf90, sunf95 in addition to CC, f77, f90, f95.
* NEWS: Update.
Report by Vadim Zeitlin.
2010-02-28 Pierre Ossman <ossman@ossman.lkpg.cendio.se> (tiny change)
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix deplibs check fallback for 64-bit Windows and Windows CE.
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Accept file formats
'pe-arm-wince' and 'pe-x86-64'. Add note about consistency with ...
* libltdl/config/ltmain.m4sh (func_win32_libid): ... the respective
pattern here; sync pattern from the former.
* tests/deplibs-mingw.at (deplibs without file command): New
file, new test.
* Makefile.am (TESTSUITE_AT): Update.
* NEWS: Update.
2010-02-24 Scott McCreary <scottmc2@gmail.com> (tiny change)
Update search path on Haiku for legacy system directory.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [haiku]
<sys_lib_dlsearch_path_spec>: Replace legacy
/boot/beos/system/lib directory with /boot/system/lib.
* THANKS: Update.
2010-02-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
manual: fix detailmenu ordering.
* doc/libtool.texi (Top): Add section for `Linking executables'
in the detailmenu.
2010-02-21 Charles Wilson <libtool@cwilson.fastmail.fm>
Guard against strerror()==NULL
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src:main):
Check return value of strerror() using nonnull().
(func_emit_cwrapperexe_src:find_executable): Ditto.
(func_emit_cwrapperexe_src:chase_symlinks): Ditto.
2010-02-21 Charles Wilson <libtool@cwilson.fastmail.fm>
Document wrapper changes.
* NEWS: Indicate new feature and incompatibility.
* doc/libtool.texi [detailmenu]: Add reference to subsection
'Wrapper executables for programs', in Platform Quirks category.
[Linking executables]: Mention wrapper executables, in
addition to wrapper scripts. Add menu referencing subsection
'Wrapper executables for programs'.
[Wrapper executables for programs]: New subsection. Documents
cwrapper rationale and command line options.
2010-02-21 Charles Wilson <libtool@cwilson.fastmail.fm>
Add --lt-* options to shell wrapper
* libltdl/config/ltmain.m4sh (func_emit_wrapper): Call
func_parse_lt_options early. Use func_exec_program.
(func_emit_wrapper:func_parse_lt_options): New function.
(func_emit_wrapper:func_lt_dump_args): New function.
(func_emit_wrapper:func_exec_program_core): New function.
(func_emit_wrapper:func_exec_program): New function.
2010-02-21 Charles Wilson <libtool@cwilson.fastmail.fm>
Enable runtime cwrapper debugging; add tests
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
Update comments. Initialize program_name. Eliminate _LENGTH
variables for string constants. In debug mode, print a
banner with known content before any other output. Remove
LTWRAPPER_DEBUGPRINTF macro. Add constants and variables
to support new --lt-debug option.
(func_emit_cwrapperexe_src:ltwrapper_debugprintf): Renamed to...
(func_emit_cwrapperexe_src:lt_debugprintf): this. Only print
messages if lt_debug != 0. Ensure appearance of messages
conforms to GCS.
(func_emit_cwrapperexe_src:lt_fatal): Ditto.
(func_emit_cwrapperexe_src:lt_error_core): Ditto.
(func_emit_cwrapperexe_src): Update all callers to lt_fatal.
Update all users of LTWRAPPER_DEBUGPRINTF (()) to call
lt_debugprintf () directly.
(func_emit_cwrapperexe_src:main): Consolidate option parsing.
Ensure first use of lt_debugprintf occurs after option parsing.
Add stanza to parse for --lt-debug and set lt_debug variable.
Use strcmp rather than strncmp, where safe.
* tests/cwrapper.at: Add new tests for --lt-debug and
-DLT_DEBUGWRAPPER.
2010-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Use --email with gendocs.sh.
* Makefile.maint (web-manual): Pass bug reporting address to
gendocs.sh.
Make testsuite code C++ clean again.
* tests/resident.at (resident modules): Fix for C++.
2010-01-29 Peter Rosin <peda@lysator.liu.se>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Testsuite exposure for dlloader API.
* tests/dlloader-api.at: New file, new test.
* Makefile.am (TESTSUITE_AT): Update.
2010-01-29 Peter Rosin <peda@lysator.liu.se>
* tests/loadlibrary.at: Fix C++ issues.
2010-01-20 Peter Rosin <peda@lysator.liu.se>
Report proper errors from the loadlibrary loader.
* libltdl/loaders/loadlibrary.c (loadlibraryerror): New
helper function that returns the latest Windows error as a
string, or the provided default string on failure to do so.
(LOADLIB_SETERROR): New macro that wraps previous to make it
easy to use.
(vm_open, vm_close, vm_sym): Make use of previous.
(LOCALFREE): New macro to help free the Windows error string.
(vl_exit): Make use of previous.
* tests/loadlibarry.at: New file, new test that makes sure
the loadlibrary loader reports non-standard error messages.
* Makefile.am (TESTSUITE_AT): Add above test.
2010-01-02 Peter Rosin <peda@lysator.liu.se>
Use GetErrorMode if it is available.
* libltdl/loaders/loadlibrary.c (wrap_geterrormode): New
function that checks if GetErrorMode is supported by the
system and makes use of it if it is.
(fallback_geterrormode): New function that is used otherwise
that implements the old workaround.
(geterrormode): New function pointer that points at either
of the above or directly at GetErrorMode.
(vm_open): Make use of the above.
2010-01-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Ensure functions from resident modules work in atexit handlers.
* tests/resident.at (resident modules): New file, new test.
* Makefile.am (TESTSUITE_AT): Adjust.
Report by Bob Friesenhahn.
Testsuite exposure for relative output file names and deplibs.
* tests/deplib-in-subdir.at (deplib in subdir): New file, new
test.
* Makefile.am (TESTSUITE_AT): Update.
Prompted by report from Bob Friesenhahn.
2010-01-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
Testsuite exposure for C++ exception handling.
* tests/exceptions.at (C++ exception handling): New file, new
test.
* Makefile.am (TESTSUITE_AT): Update.
Report by Bob Friesenhahn.
2010-01-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Bump copyright years.
* ChangeLog.2009: New, rotated from ...
* ChangeLog: ... here.
* Makefile.am (EXTRA_DIST): Add ChangeLog.2009.
* NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
* libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
* libtoolize.m4sh: Likewise.
2009-12-30 Peter Rosin <peda@lysator.liu.se>
* libltdl/ltdl.c (lt_dlerror): Remove meaningless conditional.
2009-12-29 Peter Rosin <peda@lysator.liu.se>
* libltdl/ltdl.c (file_not_found): Fix typos in code comment.
2009-12-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Replace last __oline__ instance.
* libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Replace last
__oline__ instance with $LINENO.
2009-12-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Improve parsing of .la files in libltdl.
* libltdl/ltdl.c (trim): Do not dump core upon missing quote in
module .la file.
* tests/lalib-syntax.at (syntax of .la files): New file, new
test.
* Makefile.am (TESTSUITE_AT): Add tests/lalib-syntax.at.
Report by Bob Friesenhahn.
2009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Sane fallback initialization of $ECHO from $as_echo.
* libltdl/config/general.m4sh: Use 'printf %s\n' if $as_echo is
unset.
* tests/testsuite.at: Likewise.
* THANKS: Update.
Report by Vadim Zeitlin and Peter Rosin.
2009-12-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
lt_dlloader_remove and lt_dlloader_find accept const arguments.
* libltdl/lt_dlloader.c (lt_dlloader_remove, lt_dlloader_find):
Accept `const char *' arguments, as documented. Cast them to
`void *' for the slist machinery.
* libltdl/libltdl/lt_dlloader.h: Adjust prototypes.
Test and fix slist.c.
* libltdl/libltdl/slist.h: Include stddef.h, for size_t.
(slist_remove): Return pointer to SList, not void.
* libltdl/slist.c: Include stdlib.h, for malloc and free.
(slist_remove): Adjust prototype as above.
(slist_sort): Do not loop forever on one-item list.
* tests/slist.at (SList functionality): New file, new test.
* Makefile.am (TESTSUITE_AT): Add tests/slist.at.
2009-11-30 Peter Rosin <peda@lysator.liu.se>
Please C++ compilers when calling strrchr.
* libltdl/ltdl.c (has_library_ext): Match the return type of
strrchr with the first argument to please C++ compilers.
Report by Peter O'Gorman.
2009-11-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix bindir and dlopen tests for C++ compilers (CC=g++).
* tests/bindir.at (bindir basic lib test, bindir install tests):
Include stdlib.h rather than declaring abort.
* tests/lt_dlopenext.at (lt_dlopenext error messages): Use
`extern "C"' annotation for dlsym'ed function in C++ mode.
2009-11-25 Peter Rosin <peda@lysator.liu.se>
Fix cross build issue in execute mode test.
* tests/execute-mode.at: Skip test for cross builds.
2009-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Enable symbol versioning with the GNU gold linker.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Accept 'GNU gold'
in the version string.
* NEWS, THANKS: Update.
Report by Peter Fritzsche.
Tighten regex for Portland C++ compiler for version 10.
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [linux]:
Match a dot after version 1 through 5, so 10 and up don't match,
and use weak symbols.
* THANKS: Update.
Report by Jeff Squyres and Brent Leback.
2009-11-16 Peter O'Gorman <peter@pogma.com>
Update libltdl version to match 2.2.6b release.
* libltdl/Makefile.inc: Make version 9:1:2
2009-11-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
Don't load module.la from current directory by default.
* libltdl/ltdl.c (try_dlopen): Do not attempt to load an
unqualified module.la file from the current directory (by
default) since doing so is insecure and is not compliant with
the documentation.
* tests/testsuite.at: Qualify access to module.la file in
current directory so that test passes.
2009-11-14 Peter O'Gorman <peter@pogma.com>
Only use preopen loader to load preopened archives
* libltdl/ltdl.c: Limit checking of .a to preopen loader.
* tests/lt_dlopen_a.at: Add test.
* Makefile.am: Add test.
2009-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Recognize `pgfortran' as Portland compiler.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS):
Accept `pgfortran*' too.
Report by Jeff Squyres.
2009-11-04 Alexandre Oliva <aoliva@redhat.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix verbose link extraction for multiply reconfigured GCC.
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
<output_verbose_link_cmd>: Drop GCC lines "Configured with" that
may contain unrelated flags.
2009-11-02 Eric Blake <ebb9@byu.net>
Allow gcc builds with -Wall -Werror.
* libltdl/ltdl.c (try_dlopen): Use strlen rather than LT_STRLEN on
an array that will never be NULL.
2009-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix func_normal_abspath sed script for Solaris.
* libltdl/config/general.m4sh (pathcar, pathcdr, removedotparts)
(collapseslashes, finalslash): Use single quotes, for clarity.
(removedotparts): Avoid \{N,M\} after subexpression \(...\), for
Solaris /bin/sed.
Improve versioning algorithm documentation.
* doc/libtool.texi (Updating version info): Repeat the
algorithms in different, hopefully simpler terms.
* THANKS: Update.
Prompted by Richard B. Kreckel.
2009-11-01 Ingo Weinhold <ingo_weinhold@gmx.de> (tiny change)
Support for the Haiku operating system.
* libltdl/config/ltmain.m4sh (func_mode_link): Add cases for
`*-*-haiku*' alongside `*-*-beos*'.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, LT_LIB_M, _LT_COMPILER_PIC)
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Add cases for
`haiku*'.
* NEWS, THANKS: Update.
2009-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix quoting of AS, DLLTOOL, and OBJDUMP for the libtool script.
* libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Quote values of
$AS, $DLLTOOL, and $OBJDUMP, so they can contain arguments.
* THANKS: Update.
Report by Matthijs Kooijman.
2009-09-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Initial support for the Cuda Compiler Driver on Linux.
* libltdl/config/ltmain.m4sh (func_mode_compile): Accept source
file extensions `.cu' and `.cup'.
* libltdl/m4/libtool.m4 (_LT_COMPILER_NO_RTTI, _LT_COMPILER_PIC)
(_LT_LINKER_SHLIBS): Support for `nvcc' compiler driver.
* NEWS, THANKS: Update.
Report by Mahesh Narayanamurthi.
2009-09-12 Dave Korn <dave.korn.cygwin@googlemail.com>
Control where win32 DLLs get installed.
* libltdl/config/general.m4sh (func_normal_abspath): New function.
(func_relative_path): Likewise.
* libltdl/config/ltmain.m4sh (func_mode_help): Document "-bindir".
(func_mode_link): Accept new "-bindir" option and use it, if
supplied, to place Windows DLLs.
* tests/bindir.at: New file for install tests using "-bindir".
* Makefile.am (TESTSUITE_AT): Add bindir.at.
* doc/libtool.texi (Link Mode): Update documentation.
* NEWS, THANKS: Update.
2009-09-11 Akim Demaille <demaille@gostai.com>
libtool: clean libconftest.a.
* libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Here.
2009-09-10 Peter Rosin <peda@lysator.liu.se>
func_win32_libid doesn't work with MS dumpbin
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): The $NM
interface is assumed to be BSD nm in func_win32_libid, so
check for that before using it.
2009-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Allow dlopen self test to work with gcc's -fvisibility=hidden.
* libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Declare default
visibility for the symbol we are going to test dlopen (NULL)
when a GCC version is used that understands the visibility
attribute, under the assumption that if -fvisibility=hidden
will be used, the user code will be sufficiently annotated
for visibility of needed symbols from the main executable.
* THANKS: Update.
Report by Josh Hursey against OpenMPI.
Fix and split recent testsuite addition for compile/link flags.
* tests/flags.at (passing flags through libtool): Split into ...
(passing CC flags through libtool)
(passing CXX flags through libtool)
(passing F77 flags through libtool)
(passing FC flags through libtool)
(passing GCJ flags through libtool): ... these five tests,
factorized with m4_foreach. Fix F77 and FC compile and link
commands; add GCJ tag. Use LT_AT_TAG to correctly skip tags
for which no compiler exists. Use $EXEEXT where appropriate.
Drop unneeded use of reload_cmds.
Reports by Peter Rosin and Peter O'Gorman.
2009-09-07 Peter O'Gorman <peter@pogma.com
Fix redirect in test case.
* tests/darwin.at: Fix stderr redirect.
Use darwin's -force_load flag if available for whole_archive_flag_spec
* libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check for
-force_load and use it if there.
* tests/darwin.at: Add a simple test.
2009-09-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Testsuite keyword 'interactive' and check-* rules.
* Makefile.am (testsuite_deps, testsuite_deps_uninstalled):
New variables.
(check-local, installcheck-local): Use them.
(check-interactive, check-noninteractive): New rules.
* tests/link-order2.at (Link order of deplibs),
tests/static.at (static linking flags for programs): Add keyword
`interactive'.
* doc/libtool.texi (Test descriptions): Document all keywords
used in the Libtool test suite.
* NEWS: Update.
Fix failure test in the presence of --with-pic or -prefer-pic.
* tests/fail.at (Failure tests): Run non-PIC failure test only
if pic_mode is 'default' or 'no', rather than 'default' or 'yes'
and also -prefer-pic has not been passed in $CFLAGS.
* THANKS: Update.
Report by Donn Washburn.
Add testsuite exposure for passing of compiler and linker flags.
* tests/flags.at (passing flags through libtool): New file, new
test, for bug fixed in previous commit.
* Makefile.am (TESTSUITE_AT): Add tests/flags.at.
2009-09-04 Peter Rosin <peda@lysator.liu.se>
Make -Wc,FLAG behave like -Xcompiler FLAG in link mode.
* libltdl/config/ltmain.m4sh (func_mode_link): Remove "-Wc,"
instead of replacing it with "$wl" when linking programs
through the compiler driver, just as is the case when linking
libraries.
* NEWS: Update.
2009-08-23 Lennart Poettering <lennart@poettering.net> (tiny change)
Shut up prototype warnings with recent GCC and -Wstrict-prototypes.
* libltdl/config/ltmain.m4sh (func_generate_dlsyms): Use recent
GCC's diagnostic pragma to override a -Wstrict-prototypes
setting for the symbol list code.
* THANKS: Update.
2009-08-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Remove __oline__ from macros, for less spurious configure diffs.
* libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
(_LT_COMPILER_C_O, LT_PATH_NM): Replace __oline__ instances with
$LINENO.
* NEWS: Update.
2009-07-24 Roumen Petrov <bugtrack@roumenpetrov.info> (tiny change)
Fixup 'execute mode' test for w32.
* tests/execute-mode.at (execute mode): Add missing $EXEEXT.
(LDFLAGS): Add -no-undefined.
2009-07-01 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> (tiny change)
Charles Wilson <libtool@cwilson.fastmail.fm>
[CXX] Use correct export_dynamic_flag_spec for PE-COFF $hosts
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [cygwin*|mingw*|pw32*|cegcc*]:
Define export_dynamic_flag_spec as -Wl,--export-all-symbols here as well
(see commit 5f2bbb494a2753afb2878c399cfd8316b7403a5b).
2009-06-29 Charles Wilson <libtool@cwilson.fastmail.fm>
[mingw] Improve sys_lib_search_path_spec detection.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Fix handling
of dos-style paths when parsing $CC -print-search-dirs output.
2009-06-28 Charles Wilson <libtool@cwilson.fastmail.fm>
Finish adding alias for obsoleted AC_LIBTOOL_RC macro.
* libltdl/m4/libtool.m4: Add reminder comment concerning
aclocal-1.4 backwards compatibility.
* libltdl/m4/lt~obsolete.m4: Remove unnecessary AC_DEFUN.
2009-06-27 Charles Wilson <libtool@cwilson.fastmail.fm>
Add alias for obsoleted AC_LIBTOOL_RC macro.
* libltdl/m4/libtool.m4: Add alias for obsoleted
macro AC_LIBTOOL_RC.
2009-06-21 Charles Wilson <libtool@cwilson.fastmail.fm>
Remove unneeded functions and options from cwrapper
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
[lt_opt_process_env_set]: Remove.
[lt_opt_process_env_prepend]: Remove.
[lt_opt_process_env_append]: Remove.
[lt_split_name_value]: Remove.
[file scope]: Don't declare removed functions. Remove
constants and defines related to eliminated commandline
options.
[main]: Remove code related to eliminated commandline
options --lt-env-set, --lt-env-prepend, --lt-env-append.
2009-06-19 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> (tiny change)
Charles Wilson <libtool@cwilson.fastmail.fm>
Ensure LT_PATH_LD works when called before LT_INIT
* libltdl/m4/libtool.m4 (LT_PATH_LD): AC_REQUIRE _LT_PROG_ECHO_BACKSLASH.
2009-06-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Add versioning tests.
* tests/versioning.at (versioning): New file, new test.
* Makefile.am (TESTSUITE_AT): Adjust.
Prompted by bug report from Mike Gorchak.
2009-06-14 Mike Gorchak <mike@malva.ua> (tiny change)
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix versioning computation for QNX.
* libltdl/config/ltmain.m4sh (func_mode_link): Set `$current'
and `$age' properly for version_type `qnx'.
2009-06-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid spurious localization testsuite failure on HP-UX/ia64.
* tests/localization.at (localized compiler messages): Skip test
if the compiler warning output contains `locale', for HP-UX.
2009-06-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix concurrent extraction of convenience libraries on Darwin.
* libltdl/m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE): New libtool
variable `lock_old_archive_extraction', set to `yes' on darwin.
* doc/libtool.texi (libtool script contents): Document it.
* libltdl/config/ltmain.m4sh (func_extract_an_archive): Lock
`ar x' invocation if `lock_old_archive_extraction' is yes.
* tests/darwin.at (darwin concurrent library extraction): New
test.
* NEWS: Update.
Report by Akim Demaille.
2009-06-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix testsuite failure of lt_dlopenadvise test on FreeMiNT.
* tests/lt_dladvise.at (lt_dlopenadvise library loading): Do not
build moddepend for systems without shared libraries.
Report by Alan Hourihane.
testsuite: avoid failures due to old Automake.
* tests/configure-iface.at (installable libltdl)
(--with-ltdl-include/lib, --with-included-ltdl):
Speficy libmodule_la_SOURCES in Makefile.am as the default
source file naming scheme changed in Automake 1.8.
* tests/nonrecursive.at (_LT_AT_LTDL_SETUP): Require Automake
1.9.6.
* THANKS: Update.
Report by Robert Garron.
testsuite: add missing @LIBS@ in a link command line.
* tests/old-m4-iface.at (AC_WITH_LTDL): Use @LIBS@ when linking.
Report by Patrice Fromy.
testsuite: cope when some installed libltdl.la has been removed.
* tests/old-m4-iface.at (AC_WITH_LTDL): Pass --with-included-ltdl
to configure, to ensure we do not accidentally link against a
previously installed libltdl.so where the corresponding .la
file has been removed, thus we do not add a run path, and the
runtime linker then fails to find libltdl.so.7.
* tests/configure-iface.at (--with-ltdl-include/lib): Remove -L
flags from LDFLAGS to avoid picking up an installed libltdl
outside of the default locations.
* THANKS: Update.
Prompted by report from Patrice Fromy.
2009-06-07 Vincent Torri <vtorri@univ-evry.fr> (tiny change)
Fix C wrapper invocation for ceGCC hosts (cegcc and mingw32ce).
* libltdl/config/ltmain.m4sh (func_mode_link): do not generate
C wrapper for cegcc and mingw32ce hosts.
(func_emit_cwrapperexe_src): remove useless check on
__MINGW32CE__.
2009-06-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Don't pick up double-quotes from /etc/ld.so.conf on Ubuntu.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
<sys_lib_dlsearch_path_spec>: Remove embedded double quotes from
paths picked up from /etc/ld.so.conf. Fixes libltdl compile
failure on Ubuntu 7.10.
* THANKS: Update.
Report by Camilo La Rota.
2009-06-06 Richard Sandiford <richards@transitive.com>
Fix GNU nm invocation for AIX.
* libldtl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
<export_symbols_cmds>: Modify the GNU-nm-on-AIX version so that
it adds weak defined symbols to the export list.
Build AIX shared libraries with binutils 2.19.50+.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
<lt_use_gnu_ld_interface>: New variable to control whether the
GNU ld or native ld interface is used. Set to "no" for GNU ld
2.19.50+ on AIX, otherwise mirror $with_gnu_ld. Update the
warning message that is printed when using GNU ld on AIX.
Adjust the whole_archive_flag_spec value for GNU ld on AIX.
* NEWS, THANKS: Update.
2009-05-27 Peter O'Gorman <peter@pogma.com>
Don't run compiler checks twice.
libltdl/m4/libtool.m4 (_LT_PROG_FC, _LT_PROG_F77,
_LT_PROG_CXX): Remove these macros.
libltdl/m4/lt~obsolete.m4: Add removed macros here.
libltdl/m4/libtool.m4 (_LT_LANG_FC_CONFIG, _LT_LANG_F77_CONFIG,
_LT_LANG_CXX_CONFIG): Remove references to removed macros, and
move functionality here.
NEWS: Update.
2009-05-05 Rainer Emrich <r.emrich@de.tecosim.com> (tiny change)
Peter Rosin <peda@lysator.liu.se>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix cross compilation for HPPA/64 with a BSD file command.
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
[hpux10.20*, hpux11*, !ia64] <lt_cv_deplibs_check_method>:
Match the dot in `PA-RISC 2.0' literally. Adjust hppa*64*
pattern to also match BSD `file' output, used in cross
compilation setups.
* THANKS: Update.
Report and initial patch by Rainer Emrich, refined by Peter
Rosin.
2009-05-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
libtoolize: ignore trailing junk on scriptversion line.
* libtoolize.m4sh (func_install_update): Ignore semi-colon or
comment-sign and all following characters when parsing a
`scriptversion' line in one of the auxiliary scripts; recent
Automake-provided script have a stylized comment to induce
Emacs to use UTC.
Exposed by the `libtoolize config files serial update' test.
2009-05-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Skip localization test when setlocale is not functional.
* tests/localization.at (localized compiler messages): Skip
test when there is a warning about `LC_ALL'.
* THANKS: Update.
Report by Maciej Helminiak.
2009-05-02 Alan Hourihane <alanh@fairlite.co.uk> (tiny change)
Improved support for FreeMiNT.
* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN) [mint]: Hard-code
command line length limit to 8192, to avoid long test.
* NEWS, THANKS: Update.
2009-05-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Initial port for BlueGene BG/L.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) [linux]: Detect bgxl*, bgf*, mpixl*
compilers.
* NEWS, THANKS: Update.
Report, feedback and testing by John R. Cary and Christian
Rössel.
manual: fix grammaros.
* doc/libtool.texi (Dlpreopening): Fix grammaro.
(C header files): Remove duplicate word.
Allow through -tp=* at link time, for pgcc.
* libltdl/config/ltmain.m4sh (func_mode_link): Portlant Group
pgcc uses `-tp=PROCESSOR' for target processor selection; allow
the flag through at link time.
Report by Ethan Mallove.
Fix quoting of eval'ed variable.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Double-quote
$lt_cv_sys_global_symbol_pipe for eval, like we do in ltmain,
in order to preserve TABs and multiple adjacent whitespace.
Report by Bruno Haible.
2009-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Cope better with missing `makeinfo' in `bootstrap'.
* bootstrap: Update `./doc/notes.txt' last so missing `makeinfo'
does not cause a broken tree.
* THANKS: Update.
Report by Christian Rössel.
2009-03-29 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> (tiny change)
Charles Wilson <libtool@cwilson.fastmail.fm>
[cygwin] Improve operation with gcc4
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [cygwin*]:
Add w32api to sys_lib_search_path_spec without overriding gcc's
own search path.
2009-03-29 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> (tiny change)
Charles Wilson <libtool@cwilson.fastmail.fm>
Use correct export_dynamic_flag_spec for PE-COFF $hosts
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
[cygwin*|mingw*|pw32*|cegcc*]: Define export_dynamic_flag_spec
as -Wl,--export-all-symbols, as required by GNU ld for PE-COFF.
2009-03-29 Charles Wilson <libtool@cwilson.fastmail.fm>
Improve compatibility with older automake
* libltdl/m4/lt~obsolete.m4: Add AC_DEFUNs for
_LT_PREPARE_SED_QUOTE_VARS and _LT_PROG_ECHO_BACKSLASH.
Report by Yaakov Selkowitz.
2009-03-20 Peter Rosin <peda@lysator.liu.se>
LT_OUTPUT should always create the libtool script.
* libltdl/m4/libtool.m4 (LT_OUTPUT): Make LT_OUTPUT ignore the
--no-create configure option, and assume that the user wants
to use an up-to-date libtool script if the LT_OUTPUT macro is
present.
* tests/early-libtool.at: Make sure we do not regress.
2009-01-26 Peter Rosin <peda@lysator.liu.se>
Don't settle for any dumpbin/link program as name lister.
* libltdl/m4/libtool.m4 (LT_PATH_NM): When locating dumpbin or
link -dump, check if they appear to really be capable of name
listing, in order to eliminate e.g. link from coreutils. This
makes the name lister decision fall back on nm as the default if
no acceptable candidate is found, which mainly happens on
(arguably broken) cross compiles.
* NEWS: Update
* THANKS: Update
Reports by Rudolf Leitgeb and Peter Kjellerstedt.
2009-03-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Document INNER_TESTSUITEFLAGS, drop leading space.
* README: Document INNER_TESTSUITEFLAGS.
* tests/cmdline_wrap.at (Run tests with low max_cmd_len):
When using INNER_TESTSUITEFLAGS on the testsuite invocation,
drop leading space after "-k libtool", so that the user may
further limit the set of tests to be run.
2009-03-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix low max_cmd_len template test on UnixWare.
* libltdl/config/ltmain.m4sh (func_mode_link): When expanding
$reload_cmds, always put objects in $reload_objs rather than
adding them to the command line, to allow more general command
lines in reload_cmds. Ensure $reload_objs contains a leading
space.
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
sco3.2v5*, sco5v6*] <reload_cmds>: For CC, invoke prelinker
before creating reloadable object.
(_LT_CMD_RELOAD) <reload_cmds, reload_flag>: Declare as
_LT_TAGDECL, not _LC_DECL.
(_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
(_LT_LANG_GCJ_CONFIG) <reload_cmds, reload_flag>: Initialize
from default (C tag) value.
* THANKS: Update.
Report and analysis by Tim Rice and John Wolfe.
2009-02-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Distributing libltdl, Test descriptions):
Add missing parentheses.
2009-02-28 Tim Rice <tim@multitalents.net>
Fix C++ template handling for old archives on UnixWare 7.1.4.
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [sysv5*,
sco3.2v5*, sco5v6*] <old_archive_cmds>: For CC, add template
prelink step before archiving. Fixes template.at test failures.
2009-02-28 Török Edwin <edwintorok@gmail.com> (tiny change)
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Do not add bogus directory arguments to link command lines.
* libltdl/config/ltmain.m4sh (func_mode_link): Ensure $path is
always initialized before it is used. Reported for zsh, for
which $path contains $PATH entries even after "emulate sh", see
<http://bugs.debian.org/517501>.
2009-02-28 Andreas Schwab <schwab@suse.de>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Remove remaining references to CVS.
* bootstrap: Remove references to CVS.
* README.alpha: Likewise.
* clcommit.m4sh: Likewise.
* doc/libtool.texi: Bump copyright years.
(libtool script contents): Describe macro_revision as revision
without reference to CVS.
2009-02-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Do not pass $INSTALL via TESTS_ENVIRONMENT.
* Makefile.am (TESTS_ENVIRONMENT): Set lt_INSTALL, not INSTALL,
so that a bogus relative path to the install-sh script in the
source tree is not propagated to the configure scripts of the
old test suite.
* tests/testsuite.at: Adjust.
* tests/install.at (Install tests): Likewise.
2009-02-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Kurt Roeckx <kurt@roeckx.be>
New test for lt_dlopenext error message.
* tests/lt_dlopenext.at (lt_dlopenext error messages): New file,
with new test, with sources taken from the Autobook example.
* Makefile.am: Update.
2009-02-03 Kurt Roeckx <kurt@roeckx.be>
lt_dlopenext sets error upon successful library load.
* libltdl/ltdl.c (lt_dlopenadvise): Fix bogus error on
successful loading of library with lt_dlopenext.
Report by Kaiwang Chen in <http://bugs.debian.org/510006>.
2009-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix sed script in install.at.
* tests/install.at (Install tests): Fix typo in sed script,
fixes test failure on HP-UX.
Fix $INSTALL in testsuite with relative path to install-sh.
* tests/testsuite.at: If `$INSTALL' points to in-tree
install-sh, override a possibly-relative path to it with an
absolute one.
install mode: do not pass `-m $install_override_mode' to cp.
* libltdl/config/ltmain.m4sh (func_mode_install): New variable
$install_cp, factor test when `cp' is used for installation.
Do not pass mode override to cp. Fixes `libtool --mode=install
cp ...' on HP-UX; cp should not be used for libraries that might
be needed by programs invoked during the installation process.
Fix sed script portability issue in func_version.
* libltdl/config/getopt.m4sh (func_version): Remove space in
`/\./! {' sed command, to please HP-UX sed.
2009-01-31 Jeff Squyres <jsquyres@cisco.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
New test for bogus lt_dlopen error message.
* tests/lt_dlopen.at (lt_dlopen error messages): New file, new
test, marked as XFAIL for now.
* Makefile.am: Adjust.
Report and reproducible test case by Jeff Squyres.
2009-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
execute mode: do not transform *.lo or *.la arguments.
* libltdl/config/ltmain.m4sh (func_mode_execute): Do not check
arguments matching *.lo or *.la for script wrappers.
* tests/execute-mode.at (execute mode): Add tests.
* NEWS, THANKS: Update.
Report by Paul Biggar.
Nonexistent `main' does not guarantee link failure.
* tests/fail.at (Failure tests): Use an unresolved symbol,
rather than non-presence of `main', to provoke a link failure
also on QNX. Only check for failure of the libtool script if
the link without libtool would have failed, too.
Report by Mike Gorchak.
Use AT_CHECK more liberally in duplicate members test.
* tests/duplicate_members.at (duplicate members in archive
tests): Wrap link commands in AT_CHECK, they might fail, as seen
on QNX.
* THANKS: Update.
Report by Mike Gorchak.
2009-01-30 Akim Demaille <demaille@gostai.com>
Fix cwrapper warnings from MSVC 2005.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
[file scope]: define _CRT_SECURE_NO_DEPRECATE.
2009-01-29 Akim Demaille <demaille@gostai.com>
Fix bootstrap with older libtool.m4 in reach of aclocal.
* libltdl/m4/lt~obsolete.m4: Add stub definitions for
_LT_REQUIRED_DARWIN_CHECKS and _LT_AC_PROG_CXXCPP.
Fix func_exec_init.
* tests/defs.m4sh (func_exec_init): Instead of using the undefined
my_dir, call func_dirname_and_basename and use its result.
(func_make): For consistency, don't use the useless local variable
my_dir.
2009-01-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Document --mode short-hands better, and test them.
* doc/libtool.texi (Invoking libtool): Give examples for using
the `--mode=MODE' short-hand `MODE', or abbreviations thereof.
* libltdl/config/ltmain.m4sh: Mention the short-hand for MODE
in the --help output.
* tests/help.at (mode short-hands): New test group.
Suggestion by Bruno Haible.
func_version copes with multi-line copyright headers.
* libltdl/config/getopt.m4sh (func_version): Slurp in copyright
lines until a period is found.
* libltdl/config/ltmain.m4sh: Multi-line copyright is ok to use
now.
* tests/help.at (standard command line options): New file, new
tests. Make this test group the first one for libtool tests,
moving the banner ...
* tests/duplicate_members.at: ... from here.
* Makefile.am (TESTSUITE_AT): Add tests/help.at.
2009-01-29 Akim Demaille <demaille@gostai.com>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Normalize compiler output due to compiler wrappers.
* tests/testsuite.at (LT_AT_NORMALIZE_COMPILER_OUTPUT): New
macro, to normalize ccache and distcc output.
* tests/localization.at (localized compiler messages): Use it.
2009-01-29 Peter Rosin <peda@lysator.liu.se>
Make modified libtool script in cwrapper test executable
* tests/cwrapper.at: Make modified libtool script executable.
Report by Roumen Petrov.
2009-01-28 Akim Demaille <demaille@gostai.com>
Clean space uses.
* libtoolize.m4sh: Remove trailing spaces.
Use <tab><sp>, as some editors remove "useless" spaces in
<sp><tab>.
2009-01-26 Peter Rosin <peda@lysator.liu.se>
AWK is required, make sure it is set.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS: Make sure
AWK is set (automake brings it in, but is not always used).
Fixes old-m4-iface.at on MSYS/MSVC.
2009-01-25 Mike Frysinger <vapier@gentoo.org>
Fix typo in libtool install mode documentation.
* libltdl/config/ltmain.m4sh (func_mode_help): Change -inst-prefix
to -inst-prefix-dir.
* doc/libtool.texi (Install mode): Likewise.
2009-01-24 Charles Wilson <libtool@cwilson.fastmail.fm>
Add -Wall to cwrapper tests.
* tests/cwrapper.at: Add -Wall existing tests. Add additional
round of tests with -Wall alone.
2009-01-24 Charles Wilson <libtool@cwilson.fastmail.fm>
[cygwin|mingw] cwrapper cleanups.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
[file scope]: re-organized includes and portability
macros. Avoid oldnames on MINGW32 and MSVC for
setmode/stat/chmod/getcwd/putenv. Declare _putenv on
MINGW32 when -ansi. Use namespaced macro LT_DEBUGWRAPPER.
2009-01-24 Peter Rosin <peda@lysator.liu.se>
Expand exit status test in LT_AT_NOINST_EXEC_CHECK correctly
* tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): STATUS is
argument $3, not $2.
2009-01-23 Charles Wilson <libtool@cwilson.fastmail.fm>
Add tests for cwrapper with -std=c89 and -std=c99
* tests/cwrapper.at: New file.
* Makefile.am: Add tests/cwrapper.at.
2009-01-22 Peter Rosin <peda@lysator.liu.se>
Unify line endings in localization test.
* tests/testsuite.at: Update copyright year.
(LT_AT_UNIFY_NL): Add macro that unifies line endings on
platforms that suffer from such confusion.
* tests/localization.at: Use it. Update copyright year. Fixes
the test on MSYS/MSVC.
2009-01-21 Charles Wilson <libtool@cwilson.fastmail.fm>
[cygwin|mingw] Fix compile warnings when -std=c89.
* libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
move contents to...
(func_emit_wrapper_part2): move contents to...
(func_emit_wrapper): here.
(func_emit_cwrapperexe_src) [file scope]: Remove
variables script_text_part1 and script_text_part2.
(func_emit_cwrapperexe_src) [lt_dump_script]: New function.
(func_emit_cwrapperexe_src) [main]: Call it.
2009-01-21 Charles Wilson <libtool@cwilson.fastmail.fm>
Minor cygwin cleanup
* libltdl/config/ltmain.m4sh (func_generate_dlsyms): Correct
case pattern for cygwin.
2009-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid failure due to Cygwin path detection bug.
* tests/execute-mode.at (execute mode): Ignore noise on stderr;
Cygwin might consider `d\"e' to be a DOS-style path and warn.
Report by Charles Wilson.
2009-01-19 Robert Millan <rmh@aybabtu.com>
Support GNU/kOpenSolaris.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) [kopensolaris*-gnu]: Recognize
GNU/kOpenSolaris.
* libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
* NEWS, THANKS: Update.
2009-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Another LT_AT_EXEC_CHECK fixup.
* tests/shlibpath.at (shlibpath_overrides_runpath): Use
LT_AT_EXEC_CHECK instead of AT_CHECK.
2009-01-19 Roumen Petrov <bugtrack@roumenpetrov.info> (tiny change)
Add missing $EXEEXT to java test.
* tests/convenience.at (Java convenience archives): Add $EXEEXT.
2009-01-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Bump copyright years.
* ChangeLog.2008: New, rotated from ...
* ChangeLog: ... here.
* Makefile.am (EXTRA_DIST): Add ChangeLog.2008.
* NEWS, libltdl/config/ltmain.m4sh: Bump copyright years.
* libltdl/m4/libtool.m4 (_LT_COPYING, LT_OUTPUT): Likewise.
* libtoolize.m4sh: Likewise.
2009-01-14 Peter Rosin <peda@lysator.liu.se>
Fix flakey mdemo-dryrun test on MSYS (again!)
* tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
not time, for really fresh files. Add sleep 1 call at yet another
strategic position. Makes the test pass reliably for MSYS/MinGW.
2008-12-19 Akim Demaille <demaille@gostai.com>
Fix copyright notice.
* libltdl/config/ltmain.m4sh: Add missing comma.
2008-12-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Add cache variables to link tests.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_LINKER_SHLIBS): Add cache variables to tests that
require the linker to work. For shlibpath_overrides_runpath,
this also changes the semantics to let the result from the C
compiler take precedence.
* tests/no-executables.at (AC_NO_EXECUTABLES): New file.
* Makefile.am: Update.
* NEWS: Update.
Report of shlibpath_overrides_runpath issue by Mike Frysinger,
report of GCC issue by Andreas Schwab.
2008-11-28 Paolo Bonzini <bonzini@gnu.org>
Fix inadvertent commit.
* bootstrap: Revert.
2008-11-28 Paolo Bonzini <bonzini@gnu.org>
Fix manual typo.
* doc/libtool.texi (LT_INIT): Use correct config.status
invocation. Reported by Akim Demaille.
2008-11-28 Paolo Bonzini <bonzini@gnu.org>
Do not use $ECHO within eval-ed `...`, as %s\\n becomes %s\n.
* HACKING: Document func_echo_all.
* libltdl/m4/libtool.m4: Use it within backticks that appear in
eval-ed variables. Reported by Akim Demaille.
2008-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix func_infer_tag $ECHO usage; some testsuite exposure.
* libltdl/config/ltmain.m4sh (func_infer_tag): Use func_echo_all
rather than $ECHO for possibly multiple arguments.
* tests/infer-tag.at (inferred tag, CXX inferred tag)
(F77 inferred tag, FC inferred tag, GCJ inferred tag): New file,
new tests.
* Makefile.am: Adjust.
* tests/runpath-in-lalib.at (Runpath in libtool library files):
Add $EXEEXT overlooked in patch yesterday.
2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix expout and experr line ending issues.
* tests/testsuite.at (LT_AT_HOST_DATA): Renamed from..
(_LT_AT_TRANSLATE_TEXT_OUTPUT): ..this.
(LT_AT_EXEC_CHECK, LT_AT_NOINST_EXEC_CHECK): Do not use
_LT_AT_TRANSLATE_TEXT_OUTPUT any more.
* tests/configure-iface.at: Use LT_AT_HOST_DATA instead of
AT_DATA for `expout' files.
* tests/lt_dladvise.at (lt_dlopenadvise library loading):
Likewise.
* tests/need_lib_prefix.at (enforced lib prefix): Likewise.
Report by Roumen Petrov.
Relax link-order2 test for systems with partial wrong order.
* tests/link-order2.at (Link order of deplibs.): On w32 (and
others, e.g., AIX), the wrongly linked executable picks up only
one instance of the bad function instead of two; relax the test
to accept this; we still require the right link order with the
correctly linked executable.
Reported by Roumen Petrov and others.
2008-11-23 Roumen Petrov <bugtrack@roumenpetrov.info>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Add $EXEEXT to all linked programs in the new testsuite.
* tests/convenience.at, tests/ctor.at, tests/darwin.at,
tests/deplibs-ident.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/export.at, tests/fail.at, tests/indirect_deps.at,
tests/inherited_flags.at, tests/link-order.at,
tests/link-order2.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
tests/need_lib_prefix.at, tests/runpath-in-lalib.at,
tests/search-path.at, tests/shlibpath.at, tests/static.at,
tests/stresstest.at, tests/template.at, tests/testsuite.at:
Use $EXEEXT throughout, except in Makefile.am snippets where
automake takes care of it, and in testsuite macros that take
care of the extension.
Reports by Roumen Petrov and Alon Bar-Lev.
2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Adjust executable run tests to cwrapper changes.
* tests/testsuite.at (LT_AT_EXEC_CHECK): Accept fifth argument
ARGS-OR-STATUS-ADJUST, for command-line arguments and/or exit
status flattening. Rewrite to prefer the executable with the
`.exe' prefix over one without. Test exit status against
expected exit status, not against zero, when determining whether
this may be a cross-compilation-induced result.
(LT_AT_NOINST_EXEC_CHECK): Likewise.
* tests/static.at (static linking flags for programs): Adjust
calls.
Report by Roumen Petrov.
No trailing period in Autotest test group names.
* tests/link-order.at (Link order test): Drop trailing period
from test name.
* tests/link-order2.at (Link order of deplibs): Likewise.
2008-11-23 Vincent Torri <vtorri@univ-evry.fr> (tiny change)
Fix func_emit_cwrapperexe_src for WinCE: no errno support.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
[__MINGW32CE__]: Do not use errno, do not include errno.h and
remove calls related to errno when using the mingw32ce compiler.
2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
No libm in WinCE.
* libltdl/m4/libtool.m4 (LT_LIB_M) [cegcc*]: This system has
only a dummy libm, ignore.
Report by Vincent Torri.
Fix import library detection for WinCE.
* libltdl/config/ltmain.m4sh (func_win32_libid): Work for
pe-arm-wince import libraries.
* NEWS: Update.
Report by Vincent Torri.
2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Eric Blake <ebb9@byu.net>
Fix $ECHO test to not influence other _AS_DETECT_SUGGESTED code.
* libltdl/m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix test to
not influence further tests registered with _AS_DETECT_SUGGESTED
and do not use a PATH below /tmp, to avoid influence by a third
party.
2008-11-23 Alon Bar-Lev <alon.barlev@gmail.com> (tiny change)
Fix func_win32_libid for 64-bit Windows.
* libltdl/config/ltmain.m4sh (func_win32_libid): Accept file
format 'pe-x86-64'.
* NEWS: Update.
2008-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid newlines in some AT_CHECK commands.
* tests/standalone.at (linking libltdl without autotools): Wrap
lines with dnl, to avoid turning off tracing of AT_CHECK.
* tests/subproject.at (linking libltdl without autotools):
Likewise.
Replace uses of $SED $basename.
* libltdl/config/ltmain.m4sh (func_mode_link): Replace instances
of `$ECHO ... | $SED' with calls to func_basename.
* libtoolize.m4sh (func_copy, func_serial)
(func_massage_aclocal_DATA): Likewise, replace with
func_dirname_and_basename.
* tests/defs.m4sh (func_configure_nofail, func_make, func_exec):
Likewise.
No need to prepend $progname with './'.
* libltdl/config/general.m4sh (func_dirname_and_basename): $ECHO
copes with leading hyphens now, so do not mangle $progname any
more.
Revenge of the $ECHO. Kill most uses of Xsed.
* libltdl/config/general.m4sh: Replace all uses of `$ECHO "X..."
| $Xsed' with `$ECHO "..." | $SED', and employ further trivial
simplifications. Replace $ECHO with echo where appropriate.
(func_echo_all): New function.
* libltdl/config/getopt.m4sh: Likewise simplifications.
* libltdl/config/ltmain.m4sh: Likewise.
* libltdl/m4/libtool.m4: Likewise.
(LT_CMD_MAX_LEN): Use func_fallback_echo, to ensure that the
command line is passed through an exec* function.
* libtoolize.m4sh: Likewise simplifications. Use func_echo_all
to implement --dry-run.
* tests/defs.m4sh: Likewise simplifications.
* tests/quote.test: Likewise simplifications.
Fix matching of Sun Fortran compiler on Linux.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: Also
match `Sun Ceres Fortran' compiler; reorder with C compiler
matching.
* THANKS: Update.
Report by Ethan Mallove.
2008-11-21 Charles Wilson <libtool@cwilson.fastmail.fm>
Fix --verbose option; add new --no-{silent|quiet|verbose} options.
* libltdl/config/ltmain.m4sh (usage): Document
new options --no-silent/--no-quiet and --no-verbose.
(func_enable_tag): Handle new options.
Modified --verbose to actually activate opt_verbose.
New behavior: --silent disables both "normal" output and
func_verbose output. --verbose enables both "normal"
output and func_verbose output. --no-silent enables
"normal" output, but does not affect func_verbose output.
--no-verbose disables func_verbose output, but does not
affect "normal" output.
* NEWS: announce new options --no-silent/--no-quiet, and
--no-verbose.
* doc/libtool.texi: document new options --no-silent/--no-quiet
and --no-verbose.
2008-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix match patterns for cegcc*.
* libltdl/config/ltmain.m4sh (func_mode_link): Match '*cegcc*'
instead of '*cegcc' for $host_os.
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Likewise.
* tests/lt_dladvise.at (lt_dlopenadvise library loading):
Likewise.
* libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Match
'*-*-cegcc*' for $host.
Ensure $ac_aux_dir is initialized for LIBTOOL_DEPS.
* libltdl/m4/libtool.m4 (LT_INIT): Require
AC_CONFIG_AUX_DIR_DEFAULT.
* tests/old-m4-iface.at (AM_PROG_LIBTOOL): Amend test to
expose this.
Report, analysis, and test example by Jakub Bogusz.
Check for bogus aclocal.m4 contents in bootstrap and dist-hook.
* Makefile.am (dist-hook): Bail out if shipped aclocal.m4 files
contain LT_INIT, AC_PROG_LIBTOOL, or AM_PROG_LIBTOOL macro
definitions. These can only come from bogus pull-ins from older
installed Libtool macro files.
* bootstrap: Likewise.
Report by Akim Demaille.
2008-11-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix $ECHO abuse exposed by recent patch.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
_LT_CHECK_SHELL_FEATURES, for $lt_NL2SP. Always quote argument
to $ECHO.
Skip sys_lib_search_path on systems without libz.
* tests/search-path.at (sys_lib_search_path): Autotest needs at
least one AT_CHECK executed in a test group. So if we haven't
found -lz anywhere, as may happen with cross-compilers, skip the
test.
* THANKS: Update.
Report by Alon Bar-Lev.
Fix execute mode test to actually expose cwrapper failures.
* tests/execute-mode.at (execute mode): Actually also test the
cwrapper on the arguments.
Report by Bruno Haible.
2008-11-15 Charles Wilson <libtool@cwilson.fastmail.fm>
Add func_win32_import_lib_p.
* libltdl/config/ltmain.m4sh (func_win32_import_lib_p):
New function.
2008-11-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix archive_cmds for older cc on HP-UX 11.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hp-ux11*, !GCC]
[!hppa*64*, !ia64*] <archive_cmds>: Older releases of the HP-UX
11.00 C compiler do not support -b yet; use a link test to
decide whether $LD should be used for library creation.
* THANKS: Update.
Report by Daniel Richard G.
2008-11-12 Paolo Bonzini <bonzini@gnu.org>
* configure.ac: Bump Autoconf requirement.
* libltdl/config/general.m4sh: Use $as_echo as default $ECHO.
* tests/testsuite.at: Use $as_echo as default $ECHO.
* libltdl/m4/libtool.m4 (LT_INIT): Add _LT_SHELL_INIT to
work around Autoconf <2.64 bug.
(_LT_OUTPUT_LIBTOOL_COMMANDS_INIT): Add func_fallback_echo.
Eliminate lt_ECHO requoting.
(_LT_SHELL_INIT): Use a public M4sh diversion.
(_LT_PROG_ECHO_BACKSLASH): Rewrite.
(LT_CMD_MAX_LEN): Do not use --fallback-echo.
* libltdl/config/ltmain.m4sh: Remove --no-reexec and --fallback-echo
handling.
(func_fallback_echo): New.
(func_emit_wrapper_part1): Quote ECHO. Remove --no-reexec and
--fallback-echo handling.
(Execute mode): Do not set qecho.
2008-11-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Use -no-undefined in install tests.
* tests/install.at (Install tests): Use `-no-undefined'.
2008-11-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Do not use `test ... -a ...'.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [hpux10, hpux11]:
Replace test -a with test && test.
2008-11-11 Roumen Petrov <bugtrack@roumenpetrov.info> (tiny change)
Fix destdir tests in cross compile mode.
* tests/destdir.at (Simple DESTDIR install)
(DESTDIR with in-package deplibs): Use $EXEEXT throughout.
* THANKS: Update.
2008-11-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Simplify cwrapper handling a bit.
* libltdl/config/ltmain.m4sh (func_emit_wrapper_part1)
(func_emit_wrapper_part2, func_to_host_path)
(func_to_host_pathlist, func_emit_wrapper): Simplify using
default argument, func_append.
2008-11-10 Paolo Bonzini <bonzini@gnu.org>
Separate part of _LT_SETUP into other macros, detect ECHO sooner.
* libltdl/m4/libtool.m4 (_LT_PREPARE_SED_QUOTE_VARS): New macro,
extracted from...
(_LT_SETUP): ... here. Require _LT_PROG_ECHO_BACKSLASH sooner.
2008-11-10 Paolo Bonzini <bonzini@gnu.org>
Fix quoting when config.status generates libtool config.
* libltdl/m4libtool.m4 (_LT_OUTPUT_LIBTOOL_COMMANDS_INIT):
Double quote ECHO-ed variables.
2008-11-10 Paolo Bonzini <bonzini@gnu.org>
Use documented M4sh interfaces.
* clcommit.m4sh: Do not unset CDPATH, use AS_INIT and M4sh diversions.
* libltdl/config/mailnotify.m4sh: Likewise.
* libtoolize.m4sh: Likewise.
* tests/defs.m4sh: Likewise.
* tests/testsuite.at: Move AT_INIT invocation at the top.
* libltdl/m4/libtool.m4 (_LT_INIT_GENERATED): New.
(LT_OUTPUT): Use it.
* libltdl/config/general.m4sh (M4SH_IN_HEADER): New.
(progpath): Move setting before $0 could be clobbered.
* libltdl/config/ltmain.m4sh (M4SH_IN_HEADER): New.
2008-11-10 Paolo Bonzini <bonzini@gnu.org>
Run sh.test on the M4sh source.
* tests/defs.m4sh (scripts): Point to pre-m4 sources.
2008-11-10 Paolo Bonzini <bonzini@gnu.org>
Avoid that autom4te complains about unexpanded macros.
* libtoolize.m4sh: Allow occurrences of "dnl" and use quadrigraphs
to protect other m4 macros.
2008-11-11 Bruno Haible <bruno@clisp.org>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix cwrapper argument mangling on w32.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): On
mingw, preprocess the argument vector through prepare_spawn.
* tests/execute-mode.at (execute mode): Output args
newline-separated. Extend tests by more argument pairs that
contain special characters, where the w32 cwrapper fails.
Also test a real compiled program, linked against an uninstalled
library, to expose cwrapper issues.
* NEWS: Update.
2008-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Update to GFDL 1.3.
* doc/fdl.texi: Update to GFDL 1.3.
* doc/libtool.texi: Adjust.
* NEWS: Update.
2008-11-09 Alexei Sheplyakov <varg@theor.jinr.ru> (tiny change)
Fix cross compilation with wine for the case SHELL != bash.
* libltdl/config/ltmain.m4sh (func_to_host_path): Avoid escape
sequence interpretation by 'echo', for w32-style paths.
* THANKS: Update.
2008-10-28 Michael Haubenwallner <michael.haubenwallner@salomon.at> (tiny change)
Fix checks for unsupported allow_undefined_flag.
* tests/tagdemo-undef.test: Match allow_undefined_flag
correctly, for SKIPping.
* tests/cdemo-undef.test: Likewise.
2008-10-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/testsuite.at (_LTDL_PROJECT_FILES): Fix dependencies for
parallel make.
* libtoolize.m4sh (func_nonemptydir_p): Fix typo in error
message.
2008-10-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix Autoconf 2.59 incompatibilty.
* libltdl/m4/ltdl.m4 (_LTDL_SETUP): m4_pattern_allow
`LT_LIBEXT'; Autoconf 2.59's AC_DEFINE* macros didn't do this
automatically yet.
* NEWS, THANKS: Update.
Report by Marcel Loose.
2008-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Atomic shared library install permissions on HP-UX.
The HP-UX 11 runtime linker fails to mmap shared libraries
without execute permissions. Fixing them with postinstall_cmds
may be too late, as ln, sed, and chmod may link against the
library being installed.
* libltdl/m4/libtool.m4 (install_override_mode): New LT_DECL.
(_LT_SYS_DYNAMIC_LINKER) [hpux9*, hpux10*, hpux11*]: Set it.
* libltdl/config/ltmain.m4sh (func_mode_install): Build a second
command line, $install_shared_prog, for the installation of the
shared library. Override resp. set the permission mode if
install_override_mode is nonempty.
* doc/libtool.texi (libtool script contents): Document it.
* tests/install.at (Install tests): New test.
* Makefile.am (TESTSUITE_AT): Adjust.
(TESTS_ENVIRONMENT): Pass INSTALL.
Report by Bruno Haible.
2008-09-26 Eric Blake <ebb9@byu.net>
Avoid gcc warning.
* libltdl/loaders/loadlibrary.c (vm_open): Don't check for array
being a NULL pointer.
2008-09-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Man pages for libtoolize and libtool, new command line option
--help-all.
* Makefile.am (dist_man1_MANS, update_mans): New macros.
($(srcdir)/doc/libtool.1, $(srcdir)/doc/libtoolize.1): New
rules. Use --help-all for libtool.
(MAINTAINERCLEANFILES): New macro. Add dist_man1_MANS.
(BUILT_SOURCES): Add libtoolize.
* configure.ac: Check for help2man, set HELP2MAN.
* doc/libtool.texi: Add @direntry for libtool-invocation.
(Invoking libtool): Document -h, --help-all. Reorder mode
description for consistency.
(Compile mode): Do not document -Wl,FLAG and -XCClinker here.
(Link mode): Document -Wc,FLAG here, reformat a bit.
* libtoolize.m4sh: Reformat --help output a bit, to help
help2man.
* libltdl/config/ltmain.m4sh: Likewise. Also, set PROGRAM to
`libtool', not `ltmain.sh', so the former is used in the man
page.
New argument `--help-all'. If given, call func_help and
func_mode_help several times, beating output in shape with sed.
(func_mode_help): Do not exit here.
* libltdl/config/getopt.m4sh (func_usage): Work with different
indentations, but require comment hash in first column, when
grepping for '-h' in usage to end short help.
(func_help): Accept optional argument to not exit.
* NEWS, THANKS: Update.
Suggestion by Karl Berry.
2008-09-08 Gary V. Vaughan <gary@gnu.org>
Use `-version-info 9:0:2' for one added iface since 2.2.4.
* libltdl/Makefile.inc (LTDL_VERSION_INFO): Make the libltdl
version number match 2.2.6a rerelease.
Add ./commit option for pushing tags back to origin.
* clcommit.m4sh (opt_tags): New --tags push option.
(func_commit): Run `$GIT push --tags' if --tags was passed.
* HACKING (Release Procedure): Note the requirement to pass
--tags to ./commit for new release tag to be push back to
origin.
2008-09-07 Gary V. Vaughan <gary@gnu.org>
Retire gnu.org news.html in favour of savannah news.
* HACKING (Release Procedure): Add instructions for sending
a web release announcement to http://planet.gnu.org via
the savannah news manager.
Add untested git push conflict testing to commit script.
* clcommit.m4sh (func_check_conflicts): Test return status
of 'git push --dry-run', and display an error on non-zero.
Enable release procedure to work with lzma OLDRELEASE file.
* Makefile.maint (diffs, prev-tarball, new-tarball): If lzma
tarballs are present use them to generate the diffs, otherwise
use gz tarballs if they are present, or else complain if both
are missing.
Set SCM version number to 2.2.7a.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.7a.
* NEWS: Updated.
GNU Libtool 2.2.6 was released.
Fix typo in Makefile.maint.
* Makefile.maint (git-news): Renamed to check-news, since it
doesn't actually run git. Adjust all dependees.
Run `git commit -a' when no files are passed.
* clcommit.m4sh (func_commit): Add -a argument if necessary.
Prepare for next stable release.
* libltdl/Makefile.inc (LTDL_VERSION_INFO): Update.
* libltdl/m4/libtool.m4: Bump serial number to account for
changes since 2.2.4 release.
* INSTALL, config/config.guess, config/texinfo.tex: Updated
from canonical source.
* configure.ac (AM_INIT_AUTOMAKE): Specify dist-lzma, which
was introduced after automake-1.10 was released.
(abs_top_srcdir, abs_top_builddir): No need to substitute these
from configure anymore, since we require automake 1.10.1, which
does perform the substitutions properly.
(TIMESTAMP): Normal releases were displaying the long-form
timestamp. Fix to show the short release timestamp as per
alpha release numbers.
* NEWS: Update with missing entries from ChangeLog.
* HACKING (Release Procedure): We release lzma tarballs now
but no xdeltas.
* Makefile.maint: Updated to match Release Procedure
instructions in HACKING.
Convert mailnotify headers to git.
* clcommit.m4sh: Improve mailnotify contents.
Make ./commit useful again.
* clcommit.m4sh: Major overhaul and simplification for git.
2008-09-06 Gary V. Vaughan <gary@gnu.org>
Fix 'DISTCHECK_CONFIGURE_FLAGS=--program-prefix=g' bug.
* tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Fix test failures
with --program-prefix, where the test case output contains the
transformed name somewhere other than the beginning of a line.
* libtoolize.m4sh (func_check_macros): Be sure to always use
the transformed name in output messages.
2008-09-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Do not remove .gcno files when linking.
* libltdl/config/ltmain.m4sh (func_mode_link): When removing
potential output files before linking, do not remove *.gcno
profile information GCC outputs next to object files in `.libs'.
Report by Vincent Torri.
2008-09-01 Peter O'Gorman <peter@pogma.com>
Revert 75142db4f8afc65ba7aae0ed80ea0b35bd9cc382 (AIX libltdl
dlopen(NULL)
* libltdl/m4/ltdl.m4: Remove LTDL_DLOPEN_SELF_WORKS define.
* libltdl/loaders/dlopen.c: Remove LTDL_DLOPEN_SELF_WORKS check.
* libltdl/m4/libtool.m4 [aix]: Set export_dynamic_flag_spec to
-Wl,-bexpall. This is a temporary workaround until a real fix
is implemented.
* NEWS: document it.
2008-08-26 Peter O'Gorman <peter@pogma.com>
Allow for extensions other than .a for preloaded modules.
* libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define LT_LIBEXT.
* libltdl/ltdl.c (lt_dladvise_preload): Use it.
Reported by Ralf Wildenhues.
2008-08-26 Peter O'Gorman <peter@pogma.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Remove unnecessary global argz functions.
* libltdl/argz.c (argz_add,argz_count): Remove.
* libltdl/argz_.h (argz_add,argz_count): Remove.
* NEWS: Announce it.
* tests/ltdl-api.at: Test so we don't repeat it.
* Makefile.am: Add new test.
2008-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Initial support for Lahey Fortran on GNU/Linux.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
[linux] <lf95>: Add support for Lahey Fortran 8.1.
* NEWS, THANKS: Update.
Suggested by Craig Tierney.
2008-08-21 Sam Thursfield <ssssam@gmail.com> (tiny change)
Avoid leading separator in PATH for DLL search.
* libltdl/config/ltmain.m4sh (func_mode_link) [cygwin, mingw]
[ pw32, os2, cegcc]: Fix dllsearchpath not to contain leading
separator.
* THANKS: Update.
2008-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Quote $#.
Disallow `-L path', do not misparse it silently.
* libltdl/config/ltmain.m4sh (func_mode_link): Diagnose `-L'
without argument, and `-L path', i.e., with a space.
* tests/fail.at (Failure tests): Test for these failures.
* THANKS: Update.
Report by Olaf Lenz.
2008-08-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid test failure due to broken dlpreloading of shared library.
* tests/lt_dladvise.at (lt_dlopenadvise library loading): Drop
some newlines in AT_CHECK commands, for better 'testsuite -x'
output. Only create a static installable libpreload.la, to
avoid exposing the bug libtool currently has with preloading of
shared libraries. Add a note to revisit this later.
2008-08-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Parallel make testsuite fixes.
* tests/configure-iface.at (installable libltdl)
(--with-ltdl-include/lib, --with-included-ltdl): Add dlopened
libmodule.la to main_DEPENDENCIES.
* tests/old-m4-iface.at (AC_WITH_LTDL): Likewise, let ltdldemo
depend upon module.la and libltdl/libltdlc.la.
* tests/testsuite.at (LT_AT_MAKE): Invoke each target in turn,
default to 'all'.
* tests/early-libtool.at (config.lt): Define 'all' target.
* HACKING: Update for git, fix some minor nits.
2008-08-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Remove use of exit in configure test sources.
* libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Return from main,
to avoid using undeclared exit.
Report against OpenMPI from Coverity via Jeff Squyres.
* tests/configure-iface.at (convenience libltdl): Ignore warning
from parallel make.
2008-08-07 DJ Delorie <dj@redhat.com>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [tpf]
<library_names_spec>: Fix typo in variable name.
2008-08-06 Steve Ellcey <sje@cup.hp.com>
Use -fPIC with GCC on HP-UX/ia64.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
[ia64-*-hpux*]: Specify -fPIC when using GCC to build shared
libraries.
2008-08-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* NEWS: Minor fixups.
2008-08-01 Gary V. Vaughan <gary@gnu.org>
Bring NEWS up to date.
* NEWS: Add missing summaries since 2.2.4 release.
Implement lt_dlopening of only preloaded modules.
* libltdl/m4/ltdl.m4 (LTDL_INIT): Check for a libltdl that
provides lt_dladvise_preopen when deciding if installed libltdl
is 'new enough'.
* libltdl/libltdl/lt__private.h (lt__advise): Add a new
is_preload flag.
* libltdl/ltdl.c (lt_dladvise_preload): New api call to set it.
(try_dlopen): If it is set, and the search of preloaded modules
didn't return a match, don't bother searching the filesystem.
* libltdl/ltdl.h (lt_dladvise_preload): Declare it.
* doc/libtool.texi (Libltdl Interface): Document it.
* tests/lt_dladvise.at: Test it (and incidentally add some test
coverage for `libtool -dlpreopen').
* NEWS: Announce it.
2008-08-01 Vincent Torri <doursse@users.sf.net>
Add cegcc (Windows CE/PocketPC) support.
* libltdl/config/ltmain.m4sh: Add 'cegcc' case where needed.
* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, LT_SYS_DLOPEN_SELF)
(_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
(_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG): Likewise.
* libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Likewise.
* NEWS: Update.
* THANKS: Update.
2008-07-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_to_host_path): Fix sh.test
failure.
Report by Paolo Bonzini.
2008-07-31 Paolo Bonzini <bonzini@gnu.org>
* ltmain.m4sh (func_emit_cwrapperexe_src): Factor
multiple closed braces into the next cat command.
2008-06-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <icc, icpc>:
Use -fPIC, newer Intel compilers (icc 10, ifort 9) reject -KPIC.
* tests/localization.at: Skip test if the compiler fails merely
due to the locale setting.
* THANKS: Update.
Report by Vincent Lefevre.
2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Linking executables, Static libraries)
(Modules for libltdl, Distributing libltdl): Remove TABs from
the manual.
2008-06-13 Peter O'Gorman <peter@pogma.com>
Support ifort on darwin.
* libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Build
shared libraries with ifort.
Reported by Christopher Hulbert.
2008-06-01 Charles Wilson <libtool@cwilson.fastmail.fm>
[mingw] fix cross-compile-with-wine case
* libltdl/config/ltmain.m4sh (func_to_host_path)
[host=mingw, build!=mingw|cygwin]: check that winepath
stdout is non-empty and exit code is 0, instead of checking
stderr.
Reported by: Roumen Petrov
2006-06-01 Stas Maximov <smaximov@ieee.org> (tiny change)
Check only regular files, not devices, for lalibs.
* libltdl/config/ltmain.m4sh (functions func_lalib_p)
(func_lalib_unsafe_p): Only read regular files and not device
files. Avoids blocking libtool executing gdb, when a
pseudo-terminal device /dev/pts/NN is given as one of the
arguments to gdb, as in:
libtool --mode=execute gdb -q -nw -i mi -tty /dev/pts/4 prog
2008-05-31 Peter O'Gorman <peter@pogma.com>
Skip darwin test if fat link fails.
* tests/darwin.at: Skip if we can not link a fat program.
Reported by Daniel Macks <dmacks@netspace.org>
2008-05-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
libtoolize should not remove config.guess, config.sub.
* libtoolize.m4sh (all_pkgconfig_files): Do not list
config.guess nor config.sub. We don't install them without
--install, and the project may not be using Automake.
Report by Andreas Schwab.
Simplify argument parsing in cwrapper.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src):
Use NULL where appropriate. Do not compute length of arguments
needlessly.
2008-05-25 Charles Wilson <libtool@cwilson.fastmail.fm>
[mingw] Add cross-compile support to cwrapper
* libltdl/config/ltmain.m4sh (func_to_host_path) [$host=mingw]:
If present, use winepath to convert from $build to $host
if $build is neither mingw (msys) nor cygwin. Use unconverted
path as fallback when conversion fails. Also update comments.
(func_to_host_pathlist) [$host=mingw]: Ditto. For fallback case,
use simplistic ':' to ';' path separator translation.
2008-05-25 Charles Wilson <libtool@cwilson.fastmail.fm>
Cwrapper should not eat -- arguments
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
[file scope]: Defined all option strings in terms of macro
LTWRAPPER_OPTION_PREFIX. Similarly defined all option string
lengths in terms of macro LTWRAPPER_OPTION_PREFIX_LENGTH.
[main]: Modified option parsing algorithm to pass -- on to
target, and to not stop processing arguments when -- is seen.
Added check for unrecognized options in reserved namespace
defined by LTWRAPPER_OPTION_PREFIX.
2008-05-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix ifort settings again.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
Unlike icc and ecc, not all ifort versions understand `-KPIC',
e.g. version 10.1, so use `-fPIC' instead.
Report by Jeff Squyres.
2008-05-20 Eric Blake <ebb9@byu.net>
Resynchronize argz whitespace changes from gnulib.
* libltdl/m4/argz.m4: Kill trailing whitespace.
* libltdl/argz.c: Likewise.
2008-05-19 Eric Blake <ebb9@byu.net>
Fix regression from two days ago.
* libltdl/m4/ltdl.m4 (_LT_LIBOBJ): Don't refer to deleted macro.
2008-05-17 Eric Blake <ebb9@byu.net>
Speed up bootstrap by improving lt_combine.
* libltdl/m4/ltsugar.m4 (lt_combine): Mirror Autoconf 2.62
improvements. Includes a semantic change where the separator can
now be empty, and where an empty fourth argument is now treated as
a valid suffix.
* libltdl/m4/libtool.m4 (_lt_decl_varnames_tagged): Adjust to new
semantics of lt_combine.
(lt_decl_varnames_tagged): Fix quoting and optimize.
Kill _LT_LIBSOURCES; it wasn't checking anything useful.
* libltdl/m4/ltdl.m4 (_LT_LIBSOURCES): Delete.
(LTDL_INIT): Ignore arguments to AC_LIBSOURCES during _LTDL_SETUP,
on the assumption that libtoolize correctly installed them.
2008-05-13 Charles Wilson <libtool@cwilson.fastmail.fm>
[mingw|cygwin] Modify cwrapper to invoke target directly.
* libltdl/config/ltmain.m4sh (func_to_native_path):
New function. If $host is mingw, and $build is mingw
or cygwin, convert path to mingw native format.
(func_to_native_pathlist): New function. Ditto, for
:-separated pathlists.
(func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
Ensure putenv and setenv are declared. Define HAVE_SETENV.
(func_emit_cwrapperexe_src) [main]: Add new constants to
hold desired PATH settings; initialize and use functions
above to convert to $host format if necessary. Add new
command-line options --lt-env-set, --lt-env-prepend, and
--lt-env-append. No longer emit wrapper script as integral
part of launching child. Remove support for (now) unnecessary
$TARGETSHELL. Exec actual target executable directly.
(func_emit_cwrapperexe_src) [lt_setenv, lt_extend_str]
[lt_split_name_value, lt_opt_process_env_set]
[lt_opt_process_env_prepend, lt_opt_process_env_append]
[lt_update_exe_path, lt_update_lib_path]: New functions.
2008-05-11 Charles Wilson <libtool@cwilson.fastmail.fm>
Ensure cwrapper compiles without warnings under -std=c99.
* libltdl/config/ltmain.m4sh (func_emit_wrapper_part1):
new function.
(func_emit_wrapper_part2): new function.
(func_emit_wrapper): delegate to new functions.
(func_emit_cwrapperexe_src) [__CYGWIN__ && __STRICT_ANSI__]:
ensure realpath is declared.
(func_emit_cwrapperexe_src): declare two different strings
to each hold part of the wrapper script content. Initialize
using new func_emit_wrapper_partX functions.
(func_emit_cwrapperexe_src) [main]: when emitting wrapper
script content, use both strings.
Reported by Yaakov Selkowitz.
2008-05-06 Charles Wilson <libtool@cwilson.fastmail.fm>
Ensure $OBJDUMP is defined
* libltdl/m4/libtool.m4 (_LT_DECL_OBJDUMP): new macro ensures
that $OBJDUMP is always defined sanely.
(_LT_SYS_DYNAMIC_LINKER): call it.
(_LT_CHECK_MAGIC_METHOD): call it.
2008-05-05 Gary V. Vaughan <gary@gnu.org>
Fix libtoolize test failure with aclocal < 1.10.1
* tests/libtoolize.at
(verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Older aclocal
requires a space between -I and the directory argument.
Reported by Daniel Macks <dmacks@netspace.org>
2008-05-04 Gary V. Vaughan <gary@gnu.org>
Set SCM version number to 2.2.5a.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.5a.
* NEWS: Updated.
GNU Libtool 2.2.4 was released.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.4.
* libltdl/Makefile.inc (LTDL_VERSION_INFO): C:R+1:A because the
interfaces are unchanged, even though we improved the code some
more.
* NEWS: Updated.
Macro file serial updates for next stable release.
* libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
libltdl/m4/ltoptions.m4, libltdl/m4/lt~obsolete.m4: Bump serial
numbers to account for changes since 2.2.2 release.
Make libtoolize tests work with distcheck.
* tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): When $tst_aclocal
is set, transform paths that use it to generic
/usr/local/share/aclocal in time for AT_CHECK comparisons.
2008-05-03 Gary V. Vaughan <gary@gnu.org>
Don't trip over outdated acinclude.m4.
* libtoolize.m4sh (all_pkgconfig_files, all_pkgmacro_files)
(all_pkgltdl_files): New variables listing all files ever
maintained by any release of libtoolize.
(func_install_pkgconfig_parent, func_install_pkgltdl_files)
(func_install_pkgconfig_subproject, func_install_pkgmacro_parent)
(func_install_pkgmacro_subproject): Carefully clean up any files
that may have been installed by previous libtoolize releases.
* tests/libtoolize.at: New test for libltdl/acinclude.m4 removal.
Reported by Andreas Schwab <schwab@suse.de>.
2008-05-02 Peter O'Gorman <peter@pogma.com>
It helps to close quotes.
* libltdl/config/ltmain.m4sh (func_mode_link): Add closing '.
2008-05-01 Peter O'Gorman <peter@pogma.com>
Use AC_CHECK_TOOL for otool and otool64.
* libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
* libltdl/config/ltmain.m4sh (func_mode_link): Use.
Reported by Richard Purdie <rpurdie@rpsys.net>
2008-04-30 Eric Blake <ebb9@byu.net>
Support cygwin 1.7.0 in loadlibrary loader.
* libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD) <cygwin>: Check for modern
function.
* libltdl/loaders/loadlibrary.c (vm_open): Avoid deprecated
cygwin_conv_to_full_win32_path.
2008-04-29 Gary V. Vaughan <gary@gnu.org>
New libtoolize --no-warn option and LIBTOOLIZE_OPTIONS parsing.
* libltdl/config/general.m4sh (opt_warning): New option.
(func_warning): Only display a warning message if $opt_warning
is true.
* libtoolize.m4sh: Accept options in LIBTOOLIZE_OPTIONS
environment variable.
(--no-warn): Parse new option.
(func_serial_update_check, func_keyword_update): Use func_warning.
(func_check_macros): Bail out before style issues nags when
$opt_warning is false.
* doc/libtool.texi (Invoking Libtoolize): Document it.
* tests/libtoolize.at: Test it.
* NEWS: Updated.
Fix libtoolize test failure with aclocal-1.10.1.
* tests/libtoolize.at
(verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Force aclocal to
search the source tree for latest libtool macros.
2008-04-24 Eric Blake <ebb9@byu.net>
Fix bug in 2008-04-21 type improvements.
* libltdl/ltdl.c (load_deplibs): Fix casting bug.
2008-04-23 Michael Haubenwallner <michael.haubenwallner@salomon.at>
Use /nonexistent as destination for files not to be installed.
* tests/darwin.at (darwin fat compile): Fix typo.
* tests/inherited_flags.at (inherited_linker_flags): Change
-rpath to /nonexistent. This helps to avoid accidentally
picking up libraries below /usr/local.
* tests/template.at (simple template test): Likewise. Fixes
test failure for additional incompatible libstdc++ in
/usr/local.
* tests/testsuite.at (configure_options): Add
--prefix=/nonexistent.
2008-04-23 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (rerun_aclocal): Remove unused variable.
Reported by Olly Betts <olly@survex.com>
2008-04-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/static.at (ccache -all-static): Ignore link warnings.
Report by Gary V. Vaughan.
2008-04-22 Gary V. Vaughan <gary@gnu.org>
Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
* libtoolize.m4sh (func_check_macros): Always advise use of
AC_CONFIG_MACRO_DIR when not able to copy libtool macros into
the project tree.
* tests/libtoolize.at: New test for correct diagnosis of mismatch
between AC_CONFIG_MACRO_DIR and ACLOCAL_AMFLAGS.
Update expected output of other tests.
* NEWS: Updated.
2008-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix regression over 1.5.26 with ccache $CC -all-static.
* libltdl/config/ltmain.m4sh (func_mode_link): Add
$link_static_flag to compile_command and link_command only
later, instead of right after a possible compiler wrapper.
* tests/static.at (ccache -all-static): New test.
* THANKS: Update.
Report by Richard Purdie.
2008-04-22 Andreas Schwab <schwab@suse.de>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix default argument for AC_LIBLTDL_CONVENIENCE.
* libltdl/m4/ltdl.m4 (AC_LIBLTDL_CONVENIENCE): Default argument
to libltdl.
(AC_LIBLTDL_INSTALLABLE): Likewise.
* tests/configure-iface.at (convenience libltdl): New test.
2008-04-21 Gary V. Vaughan <gary@gnu.org>
Only complain that files are up-to-date with --force.
As a side effect, this also means that when `aclocal' copies the
libtool macros into `aclocal.m4' libtoolize complains only about
the macro files that are missing or not up-to-date.
* libtoolize.m4sh (func_echo_once): New function that prints
the contents of a named variable only on the first call.
(func_aclocal_update_check): New function that compares serial
numbers of libtool macros in aclocal.m4 and only diagnoses the
missing files.
(func_copy, func_copy_cb, func_copy_some_files, func_serial_update)
(func_keyword_update, func_ltmain_update, func_config_update)
(func_install_update): Accept a new argument naming a variable
containing a header string to print with func_echo_once iff any
body text is output by this function.
(func_install_pkgmacro_subproject, func_install_pkgmacro_parent)
(func_install_pkgltdl_files, func_install_pkgconfig_subproject)
(func_install_pkgconfig_parent: Set and pass a suitable
header string variable for the above functions.
(func_serial_update_check): Don't advise rerunning `libtoolize
--force' when aclocal.m4 is not m4_including libtoolize installed
macro files.
* tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic
/usr/local/share/aclocal paths to point into the uninstalled
libtool macro directory.
* tests/libtoolize.at: Update tests that were checking for old
behaviour of outputing `file is already up to date' even when
--force was not passed.
* tests/libtoolize.at: New tests to prevent regressions of these
smarter messages.
* NEWS: Updated.
Reported by Olly Betts <olly@survex.com>
Capture lt~obsolete.m4 serial number correctly in libtoolize.
* libltdl/m4/lt~obsolete.m4: Add the filename to the #serial
marker so that libtoolize's serial number checks can find it
in a non-include using aclocal.m4.
* NEWS: Updated.
Reported by Olly Betts <olly@survex.com>
Allow better compile time type checking for lt_dladvise.
* libltdl/lt__private.h (lt__handle, lt__advise): Typedefs
removed in favour of...
* libltdl/ltdl.h (lt_dlhandle),
libltdl/libltdl/lt_dlloader.h (lt_dladvise): ...changing from
void* to forward declarations.
* libltdl/loaders/dlopen.c, libltdl/loaders/loadlibrary.c,
libltdl/lt_dlloader.c, libltdl/ltdl.c: Remove many redundant
type casts.
* NEWS: Updated.
Suggested by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2008-04-21 Peter O'Gorman <peter@pogma.com>
basename does not take a list of strings.
* libltdl/config/ltmain.m4sh(func_extract_archives): Use sed
$basename.
* tests/darwin.at: New. Check that we can built fat program,
shared library and convenience library.
* Makefile.am: Add test.
Reported by LiKai Liu <liulk@cs.bu.edu>
Use AC_CHECK_TOOL for lipo too.
* libltdl/m4/libtool.m4 (_LT_REQUIRED_DARWIN_CHECKS): Check.
* libltdl/config/ltmain.m4sh (func_extract_archives): Use.
2008-04-20 Gary V. Vaughan <gary@gnu.org>
Fix misleading lt_dlopenadvise documentation.
* doc/libtool.texi (lt_dlopenadvise): The last parameter is of
type lt_dladvise, not lt_dladvise*.
(my_dlopenext): Correct the example too.
* NEWS: Updated.
Reported by Gary Kumfert <kumfert@llnl.gov>
2008-04-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix testsuite cleanup warnings on AIX with NFS.
* tests/testsuite.at [ aix ]: Set file mode creation so that
'others' have no permissions. Shared libraries are kept in
memory on AIX after use if they are world-readable, which means
on NFS mounts cleanup of test group directories will fail later.
* THANKS: Update.
Report and analysis by Michael Haubenwallner.
Fix nonportable use of expr.
* libltdl/config/ltmain.m4sh (func_mode_link) <Transforming
deplibs into only shared deplibs>: Fix expr portability issues,
noted on FreeBSD. While at it, simplify and avoid forking.
Report by Bob Friesenhahn.
Exploit shell arithmetic expansion and ${#var}.
* libltdl/m4/libtool.m4 (_LT_CHECK_SHELL_FEATURES): Also check
for arithmetic expansion, and ${#var}.
(_LT_PROG_XSI_SHELLFNS): Define func_arith and func_len
accordingly, falling back on 'expr'. Note that the argument to
func_len may not start with a hyphen. In the pre-Posix
fallback, take care not to rely on the exit status of the
variable assignment (not portable), but set the length to
$max_cmd_len instead.
* libltdl/config/ltmain.m4sh (func_mode_link): Use func_arith
and func_len throughout for integer arithmetic, fixing
quadratical amount of counting for reloadable object and
piecewise archive linking. Change all comparisons with
max_cmd_len to test for smaller, non-equal length.
* THANKS: Update.
Suggested by Roland Mainz.
* libltdl/config/ltmain.m4sh (func_mode_compile): Avoid
redundant removal of old output files before compilation.
Do not remove $obj until we have successfully grabbed the
lockfile (in case the compiler doesn't grok `-c -o'), because
it might be identical to $output_obj.
At the end of the function, before we remove the lockfile,
update $removelist so that if the trap hits after the lockfile
has been removed, we do not accidentally remove $output_obj that
does not belong to us.
(func_write_libtool_object): Use $MV instead of mv.
2008-04-18 Andreas Schwab <schwab@suse.de>
* libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Check optional
argument.
(AC_ENABLE_STATIC): Likewise.
(AC_ENABLE_FAST_INSTALL): Likewise.
2008-04-16 Eric Blake <ebb9@byu.net>
Make ChangeLog merges easier.
* .gitattributes: New file.
* HACKING: Mention how it helps.
2008-04-15 Peter O'Gorman <peter@pogma.com>
Allow bootstrap from git repository.
* Makefile.am: Pass srcdir as an argument to mkstamp and expect
only 2 fields in mkstamps output.
* clcommit.m4sh: Ditto.
* configure.ac: Ditto.
* libltdl/config/mkstamp: return a revision and date based on
the number of lines which look like dates in all the ChangeLog*
files in the directory we got as arg 1.
2008-04-11 Eric Blake <ebb9@byu.net>
Fix usage of setmode without declaration on cygwin.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Ensure
setmode has prototype for both mingw and cygwin.
2008-04-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Move non-XSI
definition of func_dirname_and_basename ...
* libltdl/config/general.m4sh (func_dirname_and_basename):
... here, to use it for the other scripts that use general.m4sh
(and as portable fallback for libtool). Add marker for early
insertion of generated shell functions (into libtool, not the
other scripts) here.
Use func_dirname_and_basename to compute progname, progpath.
* libltdl/config/ltmain.m4sh (func_mode_help): Remove marker
for insertion of generated shell functions.
* tests/sh.test: Adjust function definition test to not match
function call.
* libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS) <func_xform>:
New function.
* libltdl/config/ltmain.m4sh (func_mode_compile): Use it to
avoid two forks with XSI shells.
* tests/suffix.test: Also test a file with multiple dots.
2008-04-10 Peter O'Gorman <peter@pogma.com>
* libltdl/config/ltmain.m4sh (func_win32_libid,
func_generate_dlsyms, func_extract_an_archive,
func_extract_archives, func_mode_help): move these so they
appear after func_mode_compile.
* tests/nomode.test: Check that --mode=link --help works.
Reported by Josh Triplett <josh@freedesktop.org>
2008-04-07 Gary V. Vaughan <gary@gnu.arg>
* doc/libtool.texi (Libltdl interface): Add missing
documentation for lt_dlopenavise.
Reported by Anton Erti <anton@mips.complang.tuwien.ac.at>
* configure.ac, libltdl/configure.ac (AM_INIT_AUTOMAKE): Use
gnu rather than gnits standards so that version number 2.2.3a
is not rejected!
Reported by Olly Betts <olly@survex.com>
2008-04-01 Gary V. Vaughan <gary@gnu.arg>
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.3a.
GNU Libtool 2.2.2 was released.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.2.
* libltdl/Makefile.in (LTDL_VERSION_INFO): C:R+1:A because the
interfaces are unchanged, even though we improved the code some
more.
* NEWS: Updated.
* libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
libltdl/m4/ltoptions.m4: Bump serial numbers to account for
changes since 2.2 release.
2008-03-27 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 [_LT_REQUIRED_DARWIN_CHECKS]: Fix the
test for -single_module and log it to config.log.
Reported by Torok Edwin and Nigel Home.
2008-03-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Document that disable-static plus -all-static is not portable.
* doc/libtool.texi (Link mode): -all-static does not go well
with disable-static on most systems.
* tests/static.at (static linking flags for programs) [!aix]:
With --disable-static but nonempty link_static_flag, skip the
m-all-static link. Do not skip it on AIX, as there the
enable_static is self-inflicted, and thus expected to work.
* THANKS: Update.
Report by Nix.
2008-03-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): No need to escape
backticks in argument to AC_MSG_WARN or AC_MSG_ERROR.
* libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE, LTDL_INIT): Likewise.
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (NLS nuisances): Fix quoting of
localization variables for shell-active characters.
* tests/localization.at (localized compiler messages): Extend
test.
* THANKS: Update.
Report by Mike Frysinger.
2008-03-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/defs.m4sh (func_get_config): Build egrep regex to speed
up extracting several variables at once. Use it to extract all
default variables at once. Also extract build_alias and
host_alias from the libtool script.
(func_configure_nofail): Use build_alias and host_alias for
--build and --host, respectively. Pass each if nonempty.
* tests/testsuite.at: Pass --build if build_alias is nonemtpy.
* tests/quote.test: Extract ECHO and wl at once.
* libltdl/m4/ltoptions.m4 (AC_LIBTOOL_WIN32_DLL): Require
AC_CANONICAL_HOST.
* THANKS: Update.
Report by Jakub Bogusz.
2008-03-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* NEWS: Update.
2008-03-12 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src) [file
scope]: additional #includes and #defines to support...
(func_emit_cwrapperexe_src) [main]: ensure stdout is set to
binary mode for cygwin|mingw builds. Ensure temporary script
file is written in binary mode for cygwin|mingw builds.
(func_mode_link) [cygwin|mingw]: cross-build support - only
use cwrapper to generate shell wrapper if building native;
otherwise use func_emit_wrapper()
2008-03-12 Henning Nielsen Lund <hnl_dk@amigaos.dk>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [amigaos]: Port to
AmigaOS4 shared libraries on powerpc.
* libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [amigaos]:
Likewise.
* THANKS, NEWS: Update.
2008-03-09 Bruno Haible <bruno@clisp.org>
and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix compiler output to be in the user locale.
* libltdl/config/general.m4sh (func_show_eval_locale): New
function, for running commands in the user locale.
* libltdl/config/ltmain.m4sh (func_mode_compile): Use it for
compiling.
* tests/localization.at (localized compiler messages): New test.
* Makefile.am: Adjust.
Report by Bruno Haible.
2008-03-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix several test failures on Cygwin and MinGW.
* tests/nonrecursive.at: Use -no-undefined for foo.la.
* tests/recursive.at: Likewise.
* tests/subproject.at: Likewise.
* tests/lt_dladvise.at: For systems where undefined symbols are
not allowed, to not try to load the module libdepend.
[ mingw ]: Add to list of such systems.
* tests/testsuite.at (_LT_AT_TRANSLATE_TEXT_OUTPUT): New macro,
to translate line ending of expout and experr files suitable for
host executables.
(LT_AT_CHECK, LT_AT_NOINST_EXEC_CHECK): Use it.
Report by Bob Friesenhahn.
Fix installcheck dependencies, fix for --program-transform-name.
* Makefile.am (installcheck-local): Depend upon tests/atconfig
and $(srcdir)/$(TESTSUITE).
* tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): New macro.
(LT_AT_CHECK_LIBTOOLIZE): Use it to transform expout and experr
files suitably.
* HACKING: Update.
Drop usage of obsolete macros AC_EXEEXT and AC_OBJEXT.
* libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK, _LT_COMPILER_OPTION)
(_LT_COMPILER_C_O, LT_PATH_NM, _LT_CMD_GLOBAL_SYMBOLS, _LT_SETUP):
Drop usage of obsolete AC_OBJEXT and AC_EXEEXT.
* tests/am-subdir.at (C++ subdir-objects): Likewise.
2008-03-07 Peter O'Gorman <peter@pogma.com>
* tests/convenience.at (Java convenience archives): Skip test if
gcj cannot compile a working executable from .java files.
Report by Nelson H. F. Beebe.
* libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Need to set LD.
Reported by Nelson H. F. Beebe.
2008-03-06 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 (_LT_PROG_FC): Undo commit - bad idea.
* libltdl/m4/libtool.m4 (_LT_PROG_FC): Report FC=no if the FC
compiler is not a GNU compiler and the CXX compiler is a GNU
compiler.
Reported by Nelson H. F. Beebe.
2008-03-06 Gary V. Vaughan <gary@gnu.org>
* Makefile.maint (TSDEPS_DIST): Removed. No longer used.
(TSDEPS): libtool.m4 has long since moved to libltdl.
(cvs-dist): Don't put the suffix dot in twice.
2008-03-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/convenience.at (Java convenience archives): Skip test if
gcj cannot compile a .java file.
Report by Nelson H. F. Beebe.
2008-03-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_lalib_unsafe_p): redirect
and restore from stdin, not stdout.
* tests/execute-mode.at (execute mode): Adjust test to catch
this.
Report by Roberto Bagnara.
2008-03-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix libltdl to not skip dlopen on systems with several loaders,
such as HP-UX, Cygwin.
* libltdl/slist.c (slist_concat): When appending to the tail
of a list, do not drop items off the beginning of the list.
* NEWS: Update.
* libltdl/config/ltmain.m4sh (func_mode_execute): Replace only
arguments we have identified as shell or C wrappers.
(func_emit_wrapper): Output error message on stderr.
* tests/execute-mode.at: New file, with --mode=execute tests.
* Makefile.am: Adjust.
* NEWS: Update.
Fixes 2.2 regression. Report by Roberto Bagnara.
* libltdl/m4/libtool.m4 (_LT_CONFIG): Drop misleading `GNU'
prefix before the host package name in the "Generated by" line
for the libtool script.
* THANKS: Update.
Reports by Peter Rosin and Roberto Bagnara.
* doc/libtool.texi (Module loaders for libltdl): Fix typo.
* libltdl/loaders/dld_link.c (vl_exit): New function, zero out ...
(vtable): ... this new file static variable split out from ...
(get_vtable): ... here. Initialize vtable, register vl_exit as
dlloader_exit function.
* libltdl/loaders/dlopen.c: Likewise.
* libltdl/loaders/dyld.c: Likewise.
* libltdl/loaders/load_add_on.c: Likewise.
* libltdl/loaders/loadlibrary.c: Likewise.
* libltdl/loaders/shl_load.c: Likewise.
* libltdl/loaders/preopen.c: Likewise; vl_exit existed here
already.
* tests/lt_dlexit.at (lt_dlexit unloading libs): Update test.
* NEWS: Update.
Report by Andreas Schwab.
2008-03-01 Gary V. Vaughan <gary@gnu.org>
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.3a.
GNU Libtool 2.2 was released.
* configure.ac, libltdl/configure.ac (AC_INIT): Bump version
number to 2.2.
* NEWS: Updated.
* tests/lt_dladvise.at, tests/lt_dlexit.at,
tests/need_lib_prefix.at: Skip these tests when called from
`make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install'.
The tests try to link against the dummy installed libltdl.la
from .../_inst/lib/libltdl.la, which does not exist when
configured with --disable-ltdl-install.
2008-02-29 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/argz.m4 (AC_CHECK_FUNCS): Also use our replacement
argz if the system argz_add or argz_count are missing.
Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
2008-02-26 Karl Berry <karl@freefriends.org>
* libltdl/argz.c (argz_add, argz_count): New functions.
* libltdl/argz_.h: Declare them.
Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
2008-02-20 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Do not call the
_LT_SYS_DYNAMIC_LINKER macro here.
Reported by Mike Frysinger <vapier@gentoo.org>
2008-02-15 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix typo.
2008-02-14 Peter Breitenlohner <peb@mppmu.mpg.de>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better handling
of predefined values for lt_cv_sys_lib_search_path_spec and
lt_cv_sys_lib_dlsearch_path_spec.
2008-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libtoolize.m4sh (func_install_pkgconfig_files): Only call
func_install_pkgconfig_parent if $seen_autoconf.
* tests/standalone.at (compiling softlinked libltdl)
(compiling copied libltdl, installable libltdl)
(linking libltdl without autotools): Use checked libtoolize
calls to catch warnings.
2008-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/configure.ac: Bump package version.
* HACKING: Reminder to do it next time, too.
2008-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
dependencies.
($(top_distdir)/libltdl/libtool): Remove.
Fixes spurious mdemo-dryrun failure with OpenBSD make.
2008-02-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
Treat like icc and ecc, for fixed `-Wl,' and `-KPIC' settings.
2008-02-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/archive-in-archive.at
(static library contains static library): Test also the actual
broken link command, and the following install command, as
UnixWare ar rightly refuses to put an archive into an archive.
Report by Tim Rice.
2008-02-06 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Only set default
LT_INIT values for LT_INIT, not LTDL_INIT.
Reported by Jochem Huhmann <joh@revier.com>
2008-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/testsuite.at (LT_AT_TAG): For the CXX tag, if $CXX is
g++, check that `g++ -v' works; AC_PROG_CXX may have set that
as default value even if it found no C++ compiler.
Report by Andreas Schwab.
2008-02-02 Gary V. Vaughan <gary@gnu.org>
* libltdl/Makefile.inc (EXTRA_DIST): Now that we're not using
Autoconf's AC_SOURCES macro, Automake can't trace our extra
source files argz, lt__dirent.c and lt__strl.c. List them
manually here to make sure they are distributed.
* NEWS: Updated.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2008-02-01 Gary V. Vaughan <gary@gnu.org>
* configure.ac (AC_INIT): Bump version number to 2.1c.
GNU Libtool 2.1b was released.
* configure.ac (AC_INIT): Bump version number to 2.1b.
* libltdl/Makefile.inc (LTDL_VERSION_INFO): Increment to account
for new interfaces since the last libltdl update.
* HACKING (Release Procedure): Note that LTDL_VERSION_INFO is now
kept in libltdl/Makefile.inc.
2008-02-01 Gary V. Vaughan <gary@gnu.org>
* tests/cdemo, tests/depdemo, tests/fcdemo, tests/pdemo,
tests/demo, tests/f77demo, tests/mdemo, tests/tagdemo
(distclean-local): Remove compiler file droppings left by
Autoconf tests that prevent make dist from finishing on
several machines including Mac OS 10.5.
2008-02-01 Gary V. Vaughan <gary@gnu.org>
Unfortunately, the autoconf implementation of AC_LIBOBJ and
friends requires all libobjs to be in the same directory, as
declared by AC_CONFIG_LIBOBJ_DIR. That might prevent using
either recursive or nonrecursive libltdl if the parent project
has libobjs of its own, except that this patch tracks libltdl's
libobjs in another namespace:
* libltdl/m4/ltdl.m4 (_LT_LIBOBJ, _LT_LIBSOURCES): Versions of
AC_LIBOBJ and AC_LIBSOURCES that save missing sources in a
ltdl_LIBOBJS automake macro, instead of the global LIBOBJS
automake macro. Content of the macros inspired by code from
gnulib-tool.
(_LTDL_MODE_DISPATCH): Initialise lt_libobj_prefix in
nonrecursive mode.
(LTDL_INIT): Push and pop the new definitions around potential
sites that call AC_LIBOBJ. Also, using lt_libobj_prefix,
initialise ltdl_LIBOBJS and ltdl_LTLIBOBJS.
* libtoolize.m4sh (func_fixup_Makefile): Substitute ltdl_LIBOBJS
and ltdl_LTLIBOBJS for LIBOBJS and LTLIBOBJS during copying
either Makefile.am or Makefile.inc, depending on ltdl_mode.
Reported by Eric Blake <ebb9@byu.net>
2008-01-30 Gary V. Vaughan <gary@gnu.org>
There are 5 distinct batches of files that libtoolize might
install into a project, depending on whether libltdl is
being installed in subproject mode, and in that case whether
the parent project shares the config and macro directories
with the subproject ltdl. Make a separate function for each
of those 5 batches (4 new functions below, plus the recently
factored func_install_pkgltdl_files), and make a clearer
distinction between when each of them is needed:
* libtoolize.m4sh (func_install_pkgmacro_subproject):
New function for installing and reporting on m4 files copied
to a subproject ltdl directory.
(func_install_pkgmacro_parent): Similar new function for m4
files copied solely for the use of the parent project,
including serial checking.
(func_install_pkgconfig_subproject): New function for
installing and reporting on config helper files copied to a
subproject ltdl directory.
(func_install_pkgconfig_parent): Similar new function for
config helper files copied solely for the use of the parent
project, including serial checking.
(func_install_pkgmacro_files, func_install_pkgconfig_files):
Rewritten in terms of the above functions.
* tests/libtoolize.at: Adjust test expout's to match newly
regularized libtoolize output.
Move parent project pkgconfig files to build-aux directory
so that progress messages show an obvious difference to
pkgconfig files installed to subproject `config' directory.
(nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test.
(diagnose missing LT_CONFIG_LTDL_DIR): New test.
(subproject ltdl with non-shared directories): New test.
Reported by Eric Blake <ebb9@byu.net>
2008-01-29 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 [darwin]: Changes to glob pattern matching
to be safer.
Search the compiler path too.
* libltdl/m4/libtool.m4 (compiler_lib_search_dirs): New variable.
* libltdl/config/ltmain.m4sh: Use it.
Reported by Maynard Johnson
2008-01-28 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_check_macros): Correct typo with
'$opt_quiet ||' where '$opt_quiet &&' that was preventing
func_check_macros from running!
* libtoolize.m4sh: Set opt_ltdl whenever seen_ltdl is set
so that libtoolize behaves as though --ltdl was passed even
if it wasn't as long as LTDL_INIT (or equivalent) was seen
in configure.ac. Adjust redundant '$opt_ltdl || $seen_ltdl'
to simply '$opt_ltdl'.
Reported by Eric Blake <ebb9@byu.net>
* libtoolize.m4sh (func_check_macros): Check opt_quiet
in the function itself to simplify calling it. Also move
the definition of the function.
* libtoolize.m4sh (func_scan_files): Be sure to set the
default libltdl mode to 'subproject' when libtoolize is
executed before configure.ac has been updated.
2008-01-27 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_install_pkgconfig_files)
(func_install_pkgmacro_files, func_install_pkgltdl_files):
Factored out from the 'Main' section of the file.
* libtoolize.m4sh (subproject_auxdir, subproject_macrodir):
New variables to hold the default locations for auxfiles
and macrofiles in a subproject libltdl.
(ac_auxdir, ac_macrodir): New variables to hold the values
passed by AC_CONFIG_AUX_DIR and AC_CONFIG_MACRO_DIR resp.
(auxdir, macrodir): Adjust to contain the values to be
used by libtoolize at runtime.
* libtoolize.m4sh (func_fixup_Makefile)
(func_massage_aclocal_DATA, func_massage_pkgltdl_files)
(func_massage_pkgconfig_files): Add missing $opt_debug.
2008-01-27 Gary V. Vaughan <gary@gnu.org>
* libtoolize (func_fixup_Makefile, func_massage_aclocal_DATA)
(func_massage_pkgltdl_files, func_massage_pkgconfig_files):
Add missing $opt_debug.
2008-01-26 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (Main): Copy (or link) libltdl sources
into project tree when LTDL_INIT was seen, whether or not
`--ltdl' is passed.
(func_check_macros): Recommend LTDL_INIT instead of
LT_WITH_LTDL when `--ltdl' is used before configure.ac is
upgraded.
* tests/libtoolize.at: Test that it works.
(_LT_AT_LTDL_SETUP): Factor out some common test setup.
Reported by Eric Blake <ebb9@byu.net>
2008-01-24 Peter O'Gorman <peter@pogma.com>
* doc/notes.texi: Fix errors in previous commit.
* libltdl/m4/libtool.m4 (sys_lib_search_path_spec,
sys_lib_dlsearch_path_spec): Allow for a cache variable
lt_cv_sys_lib_... to set these at configure time.
* doc/notes.texi: Short note about the above change.
2008-01-24 Eric Blake <ebb9@byu.net>
Add proper quoting to doc examples.
* doc/libtool.texi: Use m4 quotes where appropriate.
(Test descriptions): Fix truncated sentence.
2008-01-18 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (DISTCLEANFILES): Remove libtool.dvi generated
by 'make dvi'.
2008-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libtoolize.m4sh (func_scan_files): Avoid matching our own
macro code when scanning configure.ac and aclocal.m4.
Don't produce spurious output if AC_PROG_RANLIB is found.
* tests/old-m4-iface.at (AM_PROG_LIBTOOL): Add a (weak) check
that we don't match our own macro code when searching for user
code calling us.
* TODO: Updated.
2008-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
New variable LTDLDEPS for use in output_DEPENDENCIES.
* libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE, _LTDL_INSTALLABLE)
(LTDL_INIT): Set and substitute LTDLDEPS according to chosen
method.
* tests/configure-iface.at (installable libltdl)
(--with-ltdl-include/lib, --with-included-ltdl): Test it.
* doc/libtool.texi (Distributing libltdl): Document LTDLDEPS.
* NEWS: Updated.
Dependency bug exposed by Eric Blake in M4, found by Bob Proulx
build daemon.
2008-01-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Distributing libltdl): Clarify that
`${top_build_prefix}' may be used in place of `${top_builddir}/'.
* doc/libtool.texi (Distributing libltdl): Clarify that
LTDL_INIT goes after LT_INIT; also show the latter in the
respective examples.
* tests/subproject.at: Adjust order.
2008-01-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Use AM_CONDITIONAL
only if defined. Allows to use libltdl without aclocal.
2008-01-16 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4: Set GCC var for every tag, avoids need
to set withGCC var.
2008-01-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* configure.ac: Set libltdl nonrecursive option, to avoid
configuring libltdl inside the Libtool package.
2008-01-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Silence all non-warning output from `libtool --silent'.
* libltdl/config/ltmain.m4sh (func_generate_dlsyms)
(func_extract_archives, func_mode_link): Use func_verbose
instead of func_echo for all non-warning output.
* Makefile.maint (fetch): Update to match upstream git sources.
Pull `INSTALL' from gnulib instead of from Autoconf.
* doc/notes.texi: Mention AIX binutils deficiency for C++ code.
Report by Rainer Tammer.
Suggest using bash for configure.
* libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Fix to use
new _LT_SET_OPTION semantics.
2008-01-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltdl.m4 (_LTDL_SETUP): Define
LTDL_DLOPEN_SELF_WORKS, depending upon lt_cv_dlopen_self.
* libltdl/loaders/dlopen.c (vm_open) [!LTDL_DLOPEN_SELF_WORKS]:
Fail for dlopen(NULL), so that the preopen loader is used. This
fixes mdemo-exec.test failures on AIX where dlopen(NULL)
succeeds but dlsym resolves no symbol.
* NEWS: Update.
Report by Rainer Tammer.
* tests/am-subdir.at: Drop unused variables.
* tests/configure-iface.at: Likewise.
* tests/ctor.at: Likewise.
* tests/early-libtool.at: Likewise.
* tests/lt_dladvise.at: Likewise.
* tests/old-m4-iface.at: Likewise.
* tests/lt_dlexit.at: Likewise. Also drop unused functions.
* tests/old-m4-iface.at (AM_PROG_LIBTOOL): Also copy needed
lt~obsolete.m4.
* libltdl/config/ltmain.m4sh (func_mode_link): Fix warning
about -l and -L for archives and objects as output, to not
trigger for *.la files. Non-convenience archives are diagnosed
later on.
* tests/configure-iface.at: Ensure LTDLINCL is expanded
before CPPFLAGS, so that even CPPFLAGS=-I/usr/local/include
won't make the tests prefer an installed ltdl.h over the
in-package one.
* tests/lt_dladvise.at, tests/lt_dlexit.at: Likewise.
* tests/need_lib_prefix.at, tests/old-m4-iface.at: Likewise.
Report by Bob Friesenhahn.
2008-01-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) <exclude_expsyms>:
Also exclude `_GLOBAL__F[ID]_.*'. Also set for the C++ tag.
Fixes esp. demo/helldl build failure with GCC on AIX.
Report by Rainer Tammer.
2008-01-11 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 [darwin]: Reorganize darwin support, use
dsymutil if it is available so that debugging is possible, check
for nmedit and dsymutil with AC_CHECK_TOOL, use the linker flag
-exported_symbols_list in preference to nmedit if it is available.
Drop support for xlc, it is probably broken.
* tests/template.at [darwin]: Skip this test, I can not find a way
to make it work on darwin9 with Xcode-3.0.
* NEWS: Note the dropping of xlc support.
2008-01-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (LT_INIT): m4_require, not AC_REQUIRE
_LT_CHECK_BUILDDIR, as it's m4_defun'ed, not AC_DEFUN'ed.
Report by Peter O'Gorman.
* libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE): Restore correct
_LT_BUILD_PREFIX-using code.
2008-01-08 Gary V. Vaughan <gary@gnu.org>
* tests/recursive.at: Remove bogus --debug option.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/configure-iface.at: Build libltdl in a subdir so that
it can be easily removed without trying to remove config.log
on windows (which can't delete a file until it is closed).
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltdl.m4 (LTDL_INSTALLABLE): Use _LT_BUILD_PREFIX
instead of ${top_builddir} for Autoconf-2.62.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Correct closing
comment.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* NEWS: Grammar nit.
* tests/configure-iface.at, tests/nonrecursive.at,
tests/recursive.at, tests/subproject.at (_LTDL_SETUP):
Renamed to _LT_AT_LTDL_SETUP to avoid a nameclash with
libltdl/m4/ltoptions.m4:_LTDL_SETUP from yesterday's patch.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-01-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/runpath-in-lalib.at (Runpath in libtool library files):
Compile program file without libtool.
Report by Rainer Tammer.
2008-01-07 Rainer Tammer <tammer@tammer.net> (tiny change)
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Support AIX 6.1.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
(_LT_LANG_FC_CONFIG): Adjust case patterns to match AIX 6
through 9 as well.
* libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
* NEWS: Update.
* THANKS: Update.
2008-01-07 Gary V. Vaughan <gary@gnu.org>
Move libltdl build mode options from LT_CONFIG_LTDL_DIR to
LTDL_INIT. Accept (optional) new 'convenience' and 'installable'
options in lieu of LTDL_CONVENIENCE and LTDL_INSTALL macros. And
also, implement --with-included-ltdl, --with-ltdl-lib and
--with-ltdl-include configure-time options:
* libltdl/m4/ltoptions.m4: Associate existing option settings with
LT_INIT.
(LT_OPTION_DEFINE): Associate options 'nonrecursive', 'recursive',
'subproject', 'installable' and 'convenience' with LTDL_INIT.
(_LT_MANGLE_OPTION, _LT_SET_OPTION, _LT_IF_OPTION)
(_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Add MACRO-NAME argument to
support options to named macros instead of hardcoding only LT_INIT
options.
* libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE): Factor common code from
LTDL_CONVENIENCE and LTDL_INIT([convenience]).
(_LTDL_INSTALLABLE): Factor out common code from LTDL_INSTALLABLE
and LTDL_INIT([installable]).
(_LTDL_SETUP): Renamed from LTDL_INIT. Support new configure-time
options: --with-included-ltdl, --with-ltdl-lib,
--with-ltdl-include.
(LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
(LT_WITH_LTDL): Removed.
(LTDL_INIT): Parse caller options.
* libltdl/m4/libtool.m4 (LT_INIT): Declare that this macro must be
expanded before LTDL_INIT, and be sure to parse caller options.
* configure.ac: Call directly into internal _LTDL_SETUP macro.
* libtoolize.m4sh (func_scan_files): Ltdl mode argument moved from
LT_CONFIG_LTDL_DIR to LTDL_INIT.
* tests/nonrecursive.at, tests/recursive.at: Use new interfaces.
* tests/configure-iface.at: Test it.
* Makefile.am (TESTSUITE_AT): Add configure-iface.at.
* doc/libtool.texi (Distributing libltdl): Document improved
LTDL_INIT interfaces.
* NEWS: Updated.
2008-01-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): When creating
reloadable object files, avoid issuing plain `rm -f' without
further arguments, even if the line length limit is ridiculously
low as in the `Run tests with low max_cmd_len' test. This
failure is exposed on NetBSD.
Report by Patrick Welche.
* Makefile.am (EXTRA_DIST): Add ChangeLog.2007.
* ChangeLog.2007: New, rotated, from...
* ChangeLog: ...here.
* NEWS, README, README.alpha, Makefile.am, libtoolize.m4sh,
libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
libltdl/m4/libtool.m4: Bump copyright years.
2007-11-30 Stefan Sperling <stsp@elego.de> (tiny change)
* doc/libtool.texi (Linking executables): Reorder paragraphs.
2007-11-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ linux ]: The IBM
XL 8.0 C++ compiler may also be called xlc++*, not only xlC*.
Report by Nysal K Jan <jnysal@in.ibm.com>.
2007-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_CHECK_BUILDDIR): New macro.
Warn about whitespace in the absolute build tree name.
(LT_INIT): Use it.
* THANKS: Update.
Report by Jim Meyering.
* libltdl/config/ltmain.m4sh (func_extract_an_archive)
(func_extract_archives): Add some quoting.
2007-11-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Use `${top_build_prefix}' for better compatibility with non-GNU make.
* libltdl/m4/ltdl.m4 (_LT_BUILD_PREFIX): New macro.
If the Autoconf version used is >= 2.62, then expand to
`${top_build_prefix}', otherwise to `${top_builddir}/'.
(LTDL_CONVENIENCE, LTDL_INSTALLABLE): Use it for defining
LIBLTDL. Fixes a build failure with AIX make in a package
using convenience libltdl in nonrecursive mode.
* doc/libtool.texi (Distributing libltdl): Document requirements
to define `top_build_prefix' if Automake is not used.
Report by Bob Friesenhahn.
2007-11-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid warnings about conftest.dSYM directories on Mac OS X Leopard.
* libltdl/m4/libtool.m4 (_LT_LINKER_BOILERPLATE)
(_LT_LINKER_OPTION, _LT_CMD_GLOBAL_SYMBOLS): Remove
conftest.dSYM directory.
Report and analysis by Jeff Squyres and Peter O'Gorman.
2007-11-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/configure.ac: Drop the broken and long-disabled code
to output a banner for the libltdl configure. Avoids the need
to ship mkstamp with libltdl.
2007-11-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/runpath-in-lalib.at: New test.
* Makefile.am: Update.
Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
2007-10-16 Eric Blake <ebb9@byu.net>
Speed up bootstrap by improving lt_join.
* libltdl/m4/ltsugar.m4 (lt_join, _lt_join): Rewrite to mirror
Autoconf 2.62's faster implementation.
2007-10-12 Eric Blake <ebb9@byu.net>
Whitespace cleanup.
* libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
* libltdl/m4/libtool.m4: Avoid trailing space.
Deal with Autoconf 2.62's semantic change in m4_append.
* libltdl/m4/ltsugar.m4 (lt_append): Replace broken versions of
m4_append.
(lt_if_append_uniq): Don't require separator to be overquoted, and
avoid broken m4_append.
(lt_dict_add): Fix typo.
* libltdl/m4/libtool.m4 (_LT_DECL): Don't overquote separator.
2007-10-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'.
(func_mode_execute): Also restore `LANGUAGE', for old glibc.
Report by Paul Eggert against Autoconf.
2007-10-11 Eric Blake <ebb9@byu.net>
* libltdl/.cvsignore: Ignore argz.h.
2007-10-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC)
<lt_cv_prog_compiler_pic_works>: Renamed from
lt_prog_compiler_pic_works.
<lt_cv_prog_compiler_static_works>: Renamed from
lt_prog_compiler_static_works.
* NEWS: Update.
2007-10-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_compile): Accept
extension `.sx'.
* tests/suffix.test: Test it.
2007-09-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/lt_dlloader.c (loader_callback, lt_dlloader_get): Use
NULL, not 0, for the benefit of too picky compilers like PGI.
* slist.c (slist_tail): Likewise. Include stddef.h, for NULL.
Report by Jeff Squyres.
2007-09-05 Eric Blake <ebb9@byu.net>
* libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
has set data.
2007-09-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (User defined module data)
<lt_dlinterface_register>: Document that a NULL place matches
all modules.
* libltdl/lt_dlloader.c (lt_dlloader_remove): Actually iterate
over all open modules when looking for modules that use it.
If a resident module is found, return but do not set the error
string.
* libltdl/ltdl.c (lt_dlexit): When removing dlloaders, ignore
errors that stem from earlier failed commands. Exposed by the
lt_dladvise test.
Fixes regression over branch-1-5.
Memleak report as Coverity CID 19 via Jeff Squyres.
2007-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* NEWS: Update.
* libltdl/ltdl.c (trim): Fix possible write beyond array bound.
* libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
FILE_NOT_FOUND if the filename is "".
* libltdl/ltdl.c (try_dlopen): Fix computation of extension,
avoids subtracting pointer from NULL pointer.
* libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Do not test
array address of sys_dlsearch_path against NULL, rather test for
nonempty contents.
Coverity reports CID 148 and CID 149 via Jeff Squyres.
* libltdl/ltdl.c (tryall_dlopen_module): Fix string length
computation: do not allocate more than needed.
2007-08-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/loaders/preopen.c (vm_close): `module' is unused.
Coverity report CID 158 via Jeff Squyres.
* libltdl/ltdl.c (parse_dotla_file): If we run out of memory,
do not close the .la file twice.
Coverity report CID 440 via Jeff Squyres.
* libltdl/ltdl.c (has_library_ext): Remove dead code.
Coverity report CID 561 against Open MPI via Jeff Squyres.
2007-08-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/slist.c (slist_remove): When a matching item is found,
break out of the loop to return the first match; also fixes
possible NULL dereference.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) [ linux ]: Add support for IBM XL 8.0
C/C++ (xlc*, xlC*) and IBM XL Fortran 10.1 (xlf*) on GNU/Linux,
tested on ppc, pending a $shlibpath_var related fix.
(_LT_SYS_HIDDEN_LIBDEPS): Double-quote $output_verbose_link_cmd
properly during evaluation, obsoleting $no_glob_subst mangling.
* NEWS: Update.
2007-08-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
[ k*bsd*-gnu ] <shlibpath_overrides_runpath>: Avoid spurious
output in runpath test.
2007-08-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ mingw, cygwin ]
<GCJ>: Do not use -DDLL_EXPORT.
Report by Ross Ridge <rridge@csclub.uwaterloo.ca>.
* Makefile.am (edit): Do not warn against manual editing for the
generated files libtool, libtoolize, libltdl/m4/ltversion.m4,
tests/defs, as they are still in a preferred source code form as
required by GPL.
Report by DJ Delorie.
2007-08-15 Dirk Mueller <dmueller@suse.de> (tiny change)
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (parse_dotla_file): Avoid a strlen. When
reading .la files, cope with files that are not
newline-terminated.
2007-08-05 Tilman Koschnick <til@subnetz.org> (tiny change)
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG)
[ linux ]: Treat pgcpp as Portland Group C++ compiler as well.
2007-08-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (try_dlopen): Use `attempt' rather than
`filename', as the former has the needed extension when called
by lt_dlopenext.
Report by Brian Barrett.
2007-07-27 Peter Rosin <peda@lysator.liu.se>
* Makefile.am: Pass STRIP through to the testsuite, so that
tests that run configure will use the same strip program.
2007-07-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/mdemo-exec.test: Also try absolute library names.
* tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
* THANKS: Update.
Report by Brian Barrett.
2007-07-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/fdl.texi: Update to GFDL 1.2.
* doc/libtool.texi: Adjust. Put License in Appendix.
* libltdl/config/ltmain.m4sh (func_mode_link): Remove each
intermediate relinked object after use, to avoid quadratic space
complexity when linking partially.
Report by Isidor Zeuner <eezyy@gmx.net>.
2007-07-23 Eric Blake <ebb9@byu.net>
* libltdl/config/ltmain.m4sh: Whitespace cleanup.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src)
<chase_symlinks>: Avoid compiler warning.
2007-07-22 Peter Rosin <peda@lysator.liu.se>
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): Add
support for Microsoft Visual C. Also, older MinGW versions
seem to need stdint.h to find intptr_t.
2007-07-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]:
Ignore lines in ld.so.conf starting with 'hwcap '.
2007-07-16 Charles Wilson <libtool@cwilson.fastmail.fm>
* tests/cdemo-exec.test: use $EXEEXT where appropriate
to correct mingw cross-compile issues.
* demo-deplibs.test: Ditto.
* demo-exec.test: Ditto.
* demo-inst.test: Ditto.
* demo-relink.test: Ditto.
* depdemo-exec.test: Ditto.
* depdemo-inst.test: Ditto.
* depdemo-relink.test: Ditto.
* f77demo-exec.test: Ditto.
* fcdemo-exec.test: Ditto.
* mdemo-exec.test: Ditto.
* mdemo-inst.test: Ditto.
* mdemo2-exec.test: Ditto.
* pdemo-exec.test: Ditto.
* pdemo-inst.test: Ditto.
* tagdemo-exec.test: Ditto.
2007-07-14 Peter Rosin <peda@lysator.liu.se>
* AUTHORS, THANKS: Peter Ekberg got married, now Peter Rosin.
2007-07-13 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/m4/libtool.m4 (func_dirname_and_basename) <XSI>:
New function.
(func_dirname_and_basename) <!XSI>: New function.
* libltdl/config/ltmain.m4sh (func_ltwrapper_scriptname):
Call it. Also, take advantage of missed optimization using
func_dirname's additional arguments.
(func_mode_compile): Call it.
(func_mode_install): Call it.
(func_mode_link): Call it.
2007-07-12 Peter Rosin <peda@lysator.liu.se>
* libltdl/config/ltmain.m4sh (func_mode_link): Strip the cwrapper
using $STRIP instead of relying on the tools to support -s, which
MSVC doesn't.
2007-07-06 Peter O'Gorman <peter@pogma.com>
* libltdl/config/libtool.m4sh: Don't pass -msg_* through to the
linker.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2007-07-04 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* libltdl/lt__alloc.c, libltdl/loaders/preopen.c,
libltdl/loaders/dyld.c, libltdl/loaders/dlopen.c, libltdl/ltdl.c,
libltdl/lt_error.c, libltdl/lt_dlloader.c, libltdl/lt__dirent.c:
Include lt__private.h prior to any system headers.
* libltdl/lt__alloc.c: Remove redundant inclusion of configuration
header.
2007-07-04 Eric Blake <ebb9@byu.net>
* libltdl/ltdl.c (advise_dup): Delete function no longer used
after memleak fix three days ago.
2007-07-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Cater to
old Sparc Solaris 7 ld that does not understand `-64'.
Report by Vincent Lefevre <vincent@vinc17.org>.
2007-07-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to
force-pull in this file by aclocal.
* libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION.
* tests/libtoolize.at (upgrading verbatim style aclocal.m4):
Adjust.
Report by H. J. Lu <hjl@lucon.org>.
* libltdl/ltdl.c (tryall_dlopen): Rename argument to have typed
alias of `advise' instead of allocating a copy. Fixes memleak.
2007-06-30 Peter Breitenlohner <peb@mppmu.mpg.de>
* libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Correct a typo
("-dld" instead of "-ldld").
2007-06-24 Gary V. Vaughan <gary@gnu.org>
Add a test to simulate a failure visible on systems which
need a library prefix like 'lib', such as BeOS. Fix a number
of bugs exposed by this test in order for it to pass.
Currently the prefix is hardcoded as 'lib', as I am not aware
of systems that require a different prefix:
* libltdl/loaders/preopen.c (lt_dlpreload_open): Move error
condition out of test loop to be sure that each originator is
tried, instead of erroring out if the first doesn't match.
Support passing NULL as the originator to load all preloaded
modules originating in the program itself.
* libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function.
* libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it
when LT_DEBUG_LOADERS is defined at compile time.
* libltdl/ltdl.c (lt_dlinit): Dump loader list after successful
initialisation.
(tryall_dlopen): Add a new VTABLE parameter to force use of a
specific loader in preference to trying every loader in turn.
Adjust all callers.
(try_dlopen): Always see whether a module was preloaded for
module names with no directory component before searching the
filesystem for a match.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare
a new global_symbol_to_c_name_address_lib_prefix variable.
(global_symbol_to_c_name_address_lib_prefix): The sed
expressions to use when a lib prefix is enforced need to be
slightly different to work with preloaded modules.
* libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order
to name preloaded symbols correctly for the lookup algorithm
to work when the loaded module file must be prefixed with lib.
Use global_symbol_to_c_name_address_lib_prefix when
need_lib_prefix is other than no.
* tests/need_lib_prefix.at: New test to check for breakage on
hosts where need_lib_prefix is unknown.
* Makefile.am (TESTSUITE_AT): Add new test.
* tests/TODO: Note missing tests that would have caught some
of the latent bugs fixed by this patch.
* HACKING: Document libltdl keyword.
* NEWS: Updated.
2007-06-24 Gary V. Vaughan <gary@gnu.org>
Reenable compilation of libltdl with C++:
* libltdl/ltdl.c (tryall_dlopen): Rename the try variable to
attempt, and cast explicitly.
(advise_dup): Add explicit cast.
2007-06-22 Peter O'Gorman <peter@pogma.com>
* libltdl/config/ltmain.m4sh (version-number) [irix]: Don't subtract
1 from major as it may be less than age.
2007-06-21 Noah Misch <noah@cs.caltech.edu>
* tests/f77demo/configure.ac [--with-dist]: New option. Skip most
Fortran checks when given.
* tests/fcdemo/configure.ac [--with-dist]: Likewise.
* Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist.
Reported by Benoit Sigoure <tsuna@lrde.epita.fr>.
2007-06-19 Charles Wilson <libtool@cwilson.fastmail.fm>
* AUTHORS: Add myself.
2007-06-18 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/config/ltmain.m4sh: Add new magic variable
for use with cwrapper.
(func_ltwrapper_script_p): New function.
(func_ltwrapper_executable_p): New function.
(func_ltwrapper_scriptname): New function.
(func_ltwrapper_p): Accomodate both wrapper scripts and
wrapper executables.
(func_mode_execute): Handle $file that is a wrapper
script and $file that is a wrapper executable differently.
(func_mode_install) [cygwin|mingw]: If $file is a wrapper
executable, use func_ltwrapper_scriptname to determine
wrapper script name. Afterwards, always use
func_ltwrapper_script_p instead of func_ltwrapper_p.
(func_emit_libtool_wrapper_script): Rename to...
(func_emit_wrapper): ...this. All callers changed.
(func_emit_libtool_cwrapperexe_source): Rename to...
(func_emit_cwrapperexe_src): ...this. All callers changed.
Embed new magic_exe variable into source. Private transient
wrapper script now called foo_ltshwrapperTMP, not
foo_ltshwrapper.
(func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
and return child's exit code manually rather than rely on
broken execv.
(func_mode_link) [cygwin|mingw]: Don't call dirname and
basename directly; use func_dirname and func_basename
when computing cwrapper names. Use cwrapper to generate
wrapper script, and use pathname returned by
func_ltwrapper_scriptname instead of $output.
(func_mode_link) [NOT cygwin|mingw]: move wrapper script
generation for non-win32 inside case statement, as default
case.
(func_mode_uninstall) [$name's extension != .lo|.la]:
'clean' mode must handle $file differently if it is a libtool
wrapper script, or if it is a libtool wrapper executable.
* tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups.
* tests/destdir.at [DESTDIR with in-package deplibs]: Ditto.
2007-06-17 Noah Misch <noah@cs.caltech.edu>
* AUTHORS: Add myself.
2007-06-17 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): add quotes to
the test -n.
2007-06-17 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): ensure stderr
is redirected even when getconf does not exist.
2007-06-09 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
Take an argument to specify value assigned to
WRAPPER_SCRIPT_BELONGS_IN_OBJDIR in the emitted
script.
(func_emit_libtool_cwrapperexe_source) [file scope]:
define permission flags S_IXGRP and S_IXOTH if not
already defined.
(func_emit_libtool_cwrapperexe_source) [LTWRAPPER_DEBUGPRINTF]:
Use C89-compatible syntax to mimic variadic macros.
Adjust all callers.
(func_emit_libtool_cwrapperexe_source) [check_executable]:
avoid embedded #ifdefs; use S_IXGRP and S_IXOTH
unconditionally.
(func_emit_libtool_cwrapperexe_source) [make_executable]:
ditto.
(func_emit_libtool_cwrapperexe_source): don't rewrite
WRAPPER_SCRIPT_BELONGS_IN_OBJDIR posthoc; instead pass
correct argument when calling func_emit_libtool_wrapper_script.
(func_mode_link): pass correct argument when calling
func_emit_libtool_wrapper_script.
2007-06-07 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/config/ltmain.m4sh (func_emit_libtool_cwrapperexe_source):
ensure that generated source follows GCS as nearly as
possible.
2007-06-07 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/config/ltmain.m4sh (func_emit_libtool_wrapper_script):
add code block to handle cases when wrapper script is in $objdir.
(func_emit_libtool_cwrapperexe_source): replace DEBUG() macro
with namespace-safe LTWRAPPER_DEBUGPRINTF(). Call
func_emit_libtool_wrapper_script() with appropriate filters to
embed script text in C char* static variable.
(f_e_l_c_s: main): add new option --lt-dump-script, parse argv[]
for it, and take appropriate action. Call chase_symlinks()
on argv[0], in case this.exe was launched via one. Use chased
value to determine full absolute pathname of wrapper script, in
$objdir. Unconditionally write script out to this pathname and
set permission bits. Remove extraneous ';' from debugging loop.
(f_e_l_c_s: main) [mingw]: DOS-ize $SHELL before populating
newargv[0]; if $TARGETSHELL environment variable is set, use
it instead of $SHELL and do not DOS-ize. Ensure newargv[1]
(wrapper script absolute path) uses only '/', not '\'. Make
sure to call execv() with DOS-ized $SHELL (or un-DOS-ized
$TARGETSHELL, if set)
(f_e_l_c_s: make_executable): new function
(f_e_l_c_s: chase_symlinks): new function (no-op if !S_ISLNK)
2007-06-03 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 (old_archive_cmds): Remove
old_deplibs.
* tests/archive-in-archive.at: Check for archives as members
of static archives. Currently XFAILS, above only eliminates
one of the two static archives.
* Makefile.am: Add test.
Reported by Daniel Macks <dmacks@netspace.org>
2007-06-01 Steve Ellcey <sje@cup.hp.com>
* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Try using getconf
to set lt_cv_sys_max_cmd_len.
2007-05-28 Peter O'Gorman <peter@pogma.com>
* libltdl/config/ltmain.m4sh (func_mode_link),
libltdl/m4/libtool.m4 [darwin]: Only use ${wl} in verstring
with xlc.
2007-05-22 Gary V. Vaughan <gary@gnu.org>
* tests/lt_dladvise.at: Use the lib prefix throughout for
better portability - testing whether modules build and load
without that prefix is not the domain of this test.
Also, only run the test of the global hint with the depend
module on hosts that can compile a module without passing
-no-undefined in link mode.
2007-05-10 Noah Misch <noah@cs.caltech.edu>
* tests/duplicate_deps.at: Make the XFAIL unconditional, but
skip the test if the test link would succeed even without
--preserve-dup-deps.
* libltdl/config/general.m4sh (func_echo): Use $* instead of
${1+"$@"}.
2007-05-09 Eric Blake <ebb9@byu.net>
* libltdl/libltdl/lt_error.h (LT_ERROR_LEN_MAX): Adjust, to fix
buffer overflow in previous patch.
2007-05-09 Gary V. Vaughan <gary@gnu.org>
* tests/lt_dladvise.at: Commit missing file from below.
2007-05-08 Gary V. Vaughan <gary@gnu.org>
Without this patch, lt_dlopen always opens modules with symbol
visibility set according to the underlying implementation.
Here, we add lt_dlopenadvise() to allow callers to request,
among other things, local or global symbol visibility from the
underlying dlloader:
* libltdl/ltdl.c (LT_DLRESIDENT_FLAG): Removed.
(LT_DLIS_RESIDENT): Use public is_resident info field.
(LT_DLIS_SYMLOCAL, LT_DLIS_SYMGLOBAL): New macros to test for
module symbol visibility status.
(tryall_dlopen): If vtable->module_open() was able to act on
either is_symlocal or is_symglobal hints, store that in
the handle flags.
(lt_dlopenadvise): New function that works like lt_dlopen(),
but accepts an advise type to determine whether to ask
dlloaders to change default symbol visibility.
(lt_dlopen, lt_dlopenext): Just call lt_dlopenadvise() with
the correct parameters.
(lt_dladvise_init, lt_dladvise_destroy): New functions to
initialize and destroy an advise type hint.
(lt_dladvise_ext, lt_dladvise_resident, lt_dladvise_local)
(lt_dladvise_global): Set hints on an advise type.
(openadvise): Factored out of lt_dlopenadvise.
(has_library_ext): Factored out of lt_dlopenadvise.
* libltdl/ltdl.h: Declare all of the above.
(lt_dlinfo): New fields for advise hints.
* libltdl/libltdl/lt_dlloader.h (lt_module_open): Add a new
advise parameter. Adjust all callers.
(lt_dladvise): New opaque type for advise hints.
* libltdl/libltdl/lt__private.h (lt__advise): Declare
contents of opaque lt_dladvise type.
* libltdl/libltdl/lt_error.h (CONFLICTING_FLAGS): New error
for attempts to have local and global symbol visibility at the
same time.
* libltdl/loaders/dld_link.c, libltdl/loaders/dyld.c,
libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Adjust.
* libltdl/loaders/dlopen.c (RTLD_LOCAL, RTLD_GLOBAL): Try to
define these symbols if the system has equivalents.
(vmopen): If unable to act on a caller request to set symbol
visibility, then unset the relevant hints in the advise type.
* tests/lt_dladvise.at: New tests for the above.
* doc/libtool.texi (Libltdl Interface): Updated.
* NEWS: Updated.
2007-05-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): When adding
new_inherited_linker_flags to compiler_flags, remember to
translate .ltframework back. Fixes bug introduced 2007-04-23.
* THANKS: Update.
* tests/inherited_flags.at: Amend test.
Report by Christoph Egger.
2007-05-03 Reuben Thomas <rrt@sc3d.org> (tiny change)
* doc/libtool.texi (Libltdl interface): Fix typo.
2007-05-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (clean-ltmain-sh): Removed.
(libtool, $(srcdir)/$(m4dir)/ltversion.m4)
($(srcdir)/$(auxdir)/ltmain.sh): Updated to not depend on any
phony rules. Test `$?' for prerequisites that should always
cause us to update the target. Fixes rebuilding rules, at the
cost of sometimes updating too much with non-GNU make.
2007-04-27 Noah Misch <noah@cs.caltech.edu>
* tests/ctor.at: New file.
* Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
2007-04-27 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/libltdl/lt__glibc.h: Use !HAVE_WORKING_ARGZ
instead of SYSTEM_ARGZ_IS_BROKEN.
* libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Ditto. Also, minor
stylistic improvements.
Report by Bruno Haible <bruno@clisp.org>.
2007-04-25 Charles Wilson <libtool@cwilson.fastmail.fm>
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/argz_.h: ensure error_t definition is obtained
in same mechanism system argz.h would have.
* libltdl/libltdl/lt__glibc.h: also detect if
SYSTEM_ARGZ_IS_BROKEN when determining whether to re#def
argz* functions.
* libltdl/m4/argz.m4 (gl_FUNC_ARGZ): add new test to check
if $host's argz facilities are known bad. Err on the side
of caution if cross-compiling.
2007-04-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* README, README.alpha: Document how to test an arbitrary
installed libtool script.
2007-04-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
defined (Autoconf < 2.60).
* tests/shlibpath.at: Add `libtool' keyword.
* tests/indirect_deps.at: New file, with tests to ensure
`link_all_deplibs=no' does not break functionality.
* Makefile.am: Adjust.
2007-04-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation
of `inherited_linker_flags' entries from multiple deplibs, by
adding $new_inherited_linker_flags only once, only in link pass.
* tests/inherited_flags: Amend test to expose this.
* NEWS: Adjust: kill one regression, but add note about the
feature new in 1.9b.
Report by Jeff Squyres and others.
2007-04-23 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/config/ltmain.m4sh (func_mode_link): move wrapper
script generation from here...
(func_emit_libtool_wrapper_script): to this new function, and
write to stdout
(func_mode_link): move cwrapper source code generation from
here...
(func_emit_libtool_cwrapperexe_source): to this new function,
and write to stdout
(func_mode_link): call the two new functions and redirect
output to appropriate file.
2007-04-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link) <-no-install>
[ darwin ]: Treat like `-no-fast-install', as we cannot
hardcode. Report by Simon Josefsson.
2007-04-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Link mode) <-no-install>: Mention that this
still generates a wrapper script on systems without hardcoding.
* tests/stresstest.at: Test `-no-install'.
* THANKS: Update.
Report by Simon Josefsson.
2007-03-30 Matthieu Herrb <matthieu.herrb@laas.fr>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[ openbsd ]: Add an explicit check for shared libraries support.
2007-03-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am ($(srcdir)/$(m4dir)/ltversion.m4): Fix quoting
error.
2007-03-28 Gary V. Vaughan <gary@gnu.org>
* HACKING (Abstraction layers in libltdl): Rewritten somewhat
for (hopefully) better clarity.
2007-03-26 Gary V. Vaughan <gary@gnu.org>
The stamp-vcl file rules caused non-gnu make programs to rerun
parts of the configuration process on each invocation. Instead
of relying on a stamp file, we now compare version numbers of
generated files with the ChangeLog timestamp manually in the
affected make rules to decide whether regenerating is necessary:
* Makefile.am (EXTRA_DIST): Remove stamp-vcl.
(clean-ltmain-sh): Also remove users' obsolescent stamp-vcl.
(rebuild): Keep some common code here for...
(libtool, libltdl/m4/ltversion.m4, libltdl/config/ltmain.sh):
Rewritten to work without reference to intermediate stamp-vcl
file.
* configure.ac (CONFIG_STATUS_DEPENDENCIES): Change from
stamp-vcl to ChangeLog.
* NEWS: Removed entry saying this fix is needed.
2007-03-25 Gary V. Vaughan <gary@gnu.org>
* HACKING (LGPL with Libtool exception clause): Typo.
Reported by Tim Van Holder <tim.van.holder@telenet.be>
* HACKING (Licensing Rules): Explain the various license texts
used for files distributed with Libtool, and update license text
to match.
* Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
libltdl/README, libltdl/argz.c, libltdl/argz_.h,
libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
libltdl/config/mkstamp, libltdl/configure.ac,
libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
libltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/cdemo-undef.test,
tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
tests/demo-conf.test, tests/demo-deplibs.test,
tests/demo-exec.test, tests/demo-hardcode.test,
tests/demo-inst.test, tests/demo-make.test,
tests/demo-nofast.test, tests/demo-noinst-link.test,
tests/demo-nopic.test, tests/demo-pic.test,
tests/demo-relink.test, tests/demo-shared.test,
tests/demo-static.test, tests/demo-unst.test,
tests/demo/Makefile.am, tests/demo/configure.ac,
tests/demo/dlmain.c, tests/demo/foo.c,
tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
tests/demo/hello.c, tests/demo/main.c,
tests/depdemo-conf.test, tests/depdemo-exec.test,
tests/depdemo-inst.test, tests/depdemo-make.test,
tests/depdemo-nofast.test, tests/depdemo-relink.test,
tests/depdemo-shared.test, tests/depdemo-static.test,
tests/depdemo-unst.test, tests/depdemo/Makefile.am,
tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
tests/depdemo/l4/l4.h, tests/depdemo/main.c,
tests/depdemo/sysdep.h, tests/deplibs-ident.at,
tests/destdir.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/export.at,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/f77demo/Makefile.am,
tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
tests/f77demo/foo.h, tests/f77demo/fooc.c,
tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
tests/fcdemo-make.test, tests/fcdemo-shared.test,
tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
tests/inherited_flags.at, tests/libtoolize.at,
tests/link-2.test, tests/link-order.at, tests/link-order2.at,
tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
tests/mdemo-dryrun.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/mdemo/Makefile.am,
tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
tests/mdemo/sub.c, tests/mdemo2-conf.test,
tests/mdemo2-exec.test, tests/mdemo2-make.test,
tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
tests/objectlist.test, tests/old-m4-iface.at,
tests/pdemo-conf.test, tests/pdemo-exec.test,
tests/pdemo-inst.test, tests/pdemo-make.test,
tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
tests/pdemo/longer_file_name_foo.c,
tests/pdemo/longer_file_name_foo2.c,
tests/pdemo/longer_file_name_hell1.c,
tests/pdemo/longer_file_name_hell2.c,
tests/pdemo/longer_file_name_hello.c,
tests/pdemo/longer_file_name_main.c, tests/quote.test,
tests/recursive.at, tests/search-path.at, tests/sh.test,
tests/shlibpath.at, tests/standalone.at, tests/static.at,
tests/stresstest.at, tests/subproject.at, tests/suffix.test,
tests/tagdemo-conf.test, tests/tagdemo-exec.test,
tests/tagdemo-make.test, tests/tagdemo-shared.test,
tests/tagdemo-static.test, tests/tagdemo-undef.test,
tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
tests/tagdemo/main.cpp, tests/tagtrace.test,
tests/template.at, tests/testsuite.at: Apply correct license
text according to the new rules set out in HACKING.
2007-03-19 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so
that it isn't copied unless libltdl is being used. Copy other
macro files according to their tagged serial numbers.
* tests/libtoolize.at: Adjust.
2007-03-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add
`-export-symbols-regex ".*"' because the convenience libltdl
uses export markers and thus turns off autoexport on w32. Fixes
test failures for Cygwin and MinGW.
Bug analysis by Charles Wilson.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ interix ]: When
matching for interix, accept version range [3-9] instead of 3.
* NEWS: Update.
Report by Martin Koeppe <mkoeppe@gmx.de>.
* libltdl/m4/libtool.m4 (LT_PROG_GCJ): Avoid M4 expansion error
that caused `dnl' to be merged to the previous word.
* THANKS: Update.
Report by Steve Ellcey.
2007-03-09 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh: Replace literal tab chars in help comment
with spaces to align columns in --help output.
2007-03-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Also apply the
symbol filtering for w32 and the include_expsyms feature in the
case of exceeded command line length. Fixes test failure on
MinGW.
* tests/stresstest.at: For const data object imported from
shared library, define appropriate macros to expand
__declspec(dllimport) on w32. Use two different main objects
and pick the right one for the link flags we are about to test.
Fixes test failure on MinGW.
* tests/export.at: For const data object imported from shared
library, define appropriate macros to expand
__declspec(dllimport) on w32. Fixes test failure on MinGW.
2007-03-05 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_check_macros): Display m4 quotes correctly
in AC_CONFIG_MACRO_DIR diagnostics.
* libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to
simplify m4sh quote quoting in blocks of raw shell code.
* clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh,
libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
tests/defs.m4sh: Use it.
* HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro.
2007-02-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/lt_dlexit.at: Allow test to pass on static-only systems
and with disable-shared.
* NEWS: Rewrite all news since 1.9f and put in categories,
update.
* libltdl/Makefile.inc: Fix the file description, so that it
matches recursive and nonrecursive libltdl setup.
* Makefile.am ($(srcdir)/libltdl/Makefile.am): Do not depend
upon the exact text of the copyright header, just copy until
the marker line. Remove the marker lines in the output, and
adjust the description for subpackage setup.
2007-02-26 Gary V. Vaughan <gary@gnu.org>
* Makefile.am ($(srcdir)/libltdl/Makefile.am): Fix regexp typo.
* clcommit.m4sh: Look in the right directory for helper scripts.
2007-02-25 Gary V. Vaughan <gary@gnu.org>
* Makefile.am ($(srcdir)/libltdl/Makefile.am): Fixup regex to
match Copyright notice change below.
* HACKING, Makefile.am, Makefile.maint, bootstrap,
libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4,
ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am,
tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am,
tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am,
tests/fcdemo/Makefile.am, tests/libtoolize.at,
tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update
Copyright notice text to include URL for canonical GPL document.
2007-02-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/static.at: Forgot to fix PATH for the first
func_test_exec invocation. So factor out into new functions
func_fix_path and func_restore_path and use those.
* README: Document the need for GNU make to build Libtool.
Point the user to the doc/notes.txt file. In the examples, use
`gmake' throughout to make it more obvious. Explain simpler way
to run both testsuites and either one. Referring to individual
tests needs the `tests/' prefix.
* README.alpha: Likewise.
* doc/notes.texi: Likewise, document need for GNU make.
Comment out the FreeBSD make issue for now.
* tests/static.at: Larger rewrite to make work on w32: Use three
different prefixes instead of three libdirs, so the moving of
the DLLs works as expected. Adjust all code. Since now
$libdirI/../bin is distinct from the directory of the installed
program, take care than on w32 PATH contains the needed bindirs,
in appropriate order.
Report by Charles Wilson.
* Makefile.am (INSTALLCHECK_ENVIRONMENT): Point LTDLINCL and
LIBLTDL to installed libltdl, so that it is being used by
the lt_dlexit test.
2007-02-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Install mode, libtool script contents):
Describe current and system-specific DESTDIR limitations.
* tests/destdir.at: XFAIL if `fast_install' is no.
* doc/libtool.texi (LT_INIT): Fix typo.
* doc/libtool.texi (Libtool test suite): Mention the new
testsuite. Point to README rather than INSTALL for testing
instructions.
(Test descriptions): Fix more file names. Also mention
cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test,
mdemo2-make.test, objectlist.test, pdemo-conf.test,
pdemo-exec.test, pdemo-inst.test, pdemo-make.test,
tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test,
tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test,
f77demo-conf.test, f77demo-exec.test, f77demo-make.test,
f77demo-static.test, f77demo-shared.test, fcdemo-conf.test,
fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test,
fcdemo-shared.test. Describe what they do.
(When tests fail, Troubleshooting): Mention how to pass options
to the new test suite.
* tests/tagdemo/README: Fix description.
* bootstrap: Also set GREP, FGREP, EGREP, LN_S, when creating a
preliminary ltmain.sh script.
* doc/libtool.texi (Test descriptions): Track the grand test
suite renaming from 2003-10-14 in the tests documentation.
assign.test is merged into sh.test. Fix description of sh.test.
* tests/sh.test: Likewise.
* doc/libtool.texi (LT_INIT): Fix wording of intro a bit.
<shared, static>: Also describe these default LT_INIT options.
<AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL>
<AC_DISABLE_FAST_INSTALL>: Mention deprecated macro names,
including the respective LT_INIT replacement.
<AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_ENABLE_SHARED>
<AC_ENABLE_STATIC>: Document, un-deprecate. Suggest the
respective LT_INIT replacement.
<AM_DISABLE_SHARED, AM_DISABLE_STATIC, AM_ENABLE_SHARED>
<AM_ENABLE_STATIC>: Document deprecated aliases.
(Distributing libltdl) <AC_WITH_LTDL, AC_LIBLTDL_INSTALLABLE>
<AC_LIBLTDL_CONVENIENCE>: Document deprecated aliases.
* libltdl/m4/ltoptions.m4 (AM_ENABLE_SHARED, AM_DISABLE_SHARED)
(AM_ENABLE_STATIC, AM_DISABLE_STATIC): Make these AU_ALIASes of
the respective AC_* macros, so we do not recommend LT_INIT(*) in
this case.
(AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC)
(AC_DISABLE_STATIC): Un-deprecate these. Remove now-superfluous
aclocal-1.4 backwards compatibility comments.
* tests/link-order2.at: Rewrite completely. Do not use `sin'
from the math library, there are too many problems with this.
Instead, use a self-written library, install it without the
Libtool library file, to emulate a native library in a system
directory, and adjust $shlibpat_var. Try overriding its symbol.
Further, also try an installed `wrong' binary.
Avoid failing test bits on AIX without runtimelinking and on
Darwin in some cases, SKIP at the end in this case.
Analysis by Peter O'Gorman.
* doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
* tests/template.at: Only skip those tests failing on Darwin
if `-flat_namespace' is used by libtool. In that case, SKIP
at the end. Analysis by Peter O'Gorman.
2007-02-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix -export-symbols and -export-symbols-regex for links that
exceed the command line length and use convenience archives.
* libltdl/config/ltmain.m4sh (func_mode_link): Avoid grepping a
nonexistent file if using reloadable objects. Do not create a
linker script nor a linker input file if no objects are passed.
Apply export_symbols_regex in case the command line length is
exceeded.
Report by Bob Friesenhahn.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
<compiler_needs_object>: New tag variable. Default to `no'.
(_LT_LINKER_SHLIBS) [ linux ]: Set it to yes for Sun C 5.9.
(_LT_LANG_CXX_CONFIG): Also default it to `no'.
[ linux ]: Set it to `yes' for Sun C++ 5.9.
* libltdl/config/ltmain.m4sh (func_mode_link): If we link
no objects but only convenience archives into a library,
force expansion if `compiler_needs_object' is yes.
For creating a linker input filelist due to long cmdline,
extract the first object if `compiler_needs_object' is yes.
* doc/libtool.texi (libtool script contents): Document it.
Fixes test failures of Sun compilers on GNU/Linux.
Report by Terry D. Dontje.
* libltdl/config/ltmain.m4sh (func_mode_link): Avoid setting
`$libobjs' to a single space; set it to empty in that case.
2007-02-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_generate_dlsyms) [ osf5 ]:
On Tru64 5.1, const relocations do not work well. Omit the
const here. Fixes failure of demo-make after demo-shared with
link editor error `seg_info_ptr: Couldnt find a seg type 2'.
* Makefile.am (doc_libtool_TEXINFOS): Renamed from...
(libtool_TEXINFOS): ...this, to fix dependencies. Omit from
EXTRA_DIST.
(check-local): Also depend upon $(bin_SCRIPTS).
2007-02-23 Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> (tiny change)
* libltdl/config/general.m4sh (sed_double_backslash): Fix
hacky sed script to avoid limitations but retain portability to
Solaris /bin/sed. Remove old obsolete cruft.
2007-02-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Fix the check for
convenience archives when warning about linking against static
libraries: test against $deplib rather than empty $lib.
2007-02-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Fix detection of new enough
libltdl by actually checking for the declaration of
lt_dlinterface_register in ltdl.h with AC_CHECK_DECL.
Remove redundant configure output line.
* tests/template.at: Reformat, add M4 quoting. Use $LDFLAGS
consistently for link mode.
2007-02-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/static.at: Use the right names for the broken libs.
2007-02-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
Do not XFAIL, on these systems we happen to pass.
* tests/duplicate_deps.at [aix]: Likewise.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux |
k*bsd*-gnu ]: Fix eval quoting in the DT_RUNPATH test.
* HACKING: Update.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
<whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
/dev/null as dummy object, it fails with GNU ld version
2.16.91.0.7-amd-sles9. Report by Terry D. Dontje.
* THANKS: Update.
2007-02-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ osf4, osf5 ]
<archive_expsym_cmds>: Use `${wl}-input' not `-input', for
cc. Could use `-input_to_ld'.
(_LT_LANG_CXX_CONFIG) [ osf4, osf5 ] <archive_expsym_cmds>:
Use `${wl}' instead of `-Wl,', for consistency.
2007-02-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix spurious testsuite failures on AIX due on NFS mounts due to
shared library images that cannot be removed without `slibclean'
which needs superuser privileges.
* tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
(LT_AT_MVDIR): New macro to emulate `mv dir dest'.
* tests/destdir.at: Use LT_AT_MVDIR.
* tests/shlibpath.at: Likewise.
* tests/static.at: Likewise.
2007-02-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/export.at: Exporting is not fully functional with
-retain-symbols-file. Do not test for failure to link `broken'
in this case. At the end of the test, SKIP if we are not fully
functional.
* tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
pass with a C++ compiler.
* libltdl/config/ltmain.m4sh: Remove duplicate marker for
generated shell functions.
* tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
to pass `-dlopen MODULE' arguments.
* tests/lt_dlexit.at: Use it. Also, do not test `-dlpreopen',
that currently needs library names to begin with `lib'.
2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/export.at: New test: expose -export-symbols failure
when the input consists solely of convenience archives, and
failure to not export all symbols when the command line length
is exceeded.
* Makefile.am: Adjust.
* libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New substituted
function `func_lo2o', saving two fork&exec with XSI shells.
* libltdl/config/ltmain.m4sh (func_mode_compile)
(func_mode_install, func_mode_link): Use it for rewrites of
single files.
* libltdl/m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): New function
func_opt_split, for XSI and portable shell.
* libltdl/config/ltmain.m4sh: Move the insertion point for the
configure-generated shell functions to before the first option
parsing loop. Rewrite the separation of the long options to use
func_opt_split.
2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Eliminate roughly a third of the script execution time overhead
for all modes except for link/relink and uninstall/clean.
* libltdl/m4/libtool.m4 (_LT_CONFIG): Remove unused `TEST SUITE
MARKER', obsolete since 2005-04-17.
* libltdl/config/ltmain.m4sh: Likewise, several instances.
(Main): Tear apart, moving individual bits up as early in the
script as possible, to help the shell to avoid parsing the rest.
2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi: Update copyright years.
2007-02-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/general.m4sh (sed_double_backslash): Replace
POSIX sed script with a hack that treats up to 10 backslashes
in the input correctly and is portable to Solaris /bin/sed.
2007-02-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
variable is set to `no', not only if it is empty.
2007-02-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/lt_dlexit.at: Do not compile main object with libtool.
* tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
to inner testsuite.
* Makefile.am (TESTSUITE_AT): Move destdir.at after
search-path.at so the banners fit better.
* tests/convenience.at: Use $CPPFLAGS for compilation.
* tests/deplibs-ident.at: Likewise.
* tests/duplicate_members.at: Likewise.
* tests/inherited_flags.at: Likewise.
* tests/link-order.at: Likewise.
* tests/stresstest.at: Likewise.
* tests/early-libtool.at: Likewise. Do not quote $CC.
* libltdl/ltdl.c (lt_dlexit): Add casts to fix compilation with
C++ compiler again.
* tests/destdir.at: Add `libtool' keyword to tests.
2007-02-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
(_LT_LINKER_BOILERPLATE, _LT_SYS_MODULE_PATH_AIX)
(_LT_COMPILER_C_O): Require _LT_DECL_SED.
* THANKS: Update.
Report by Maciej W. Rozycki.
2007-01-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
in the new testsuite.
2007-01-29 Samuel Thibault <samuel.thibault@ens-lyon.org>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ gnu ]
<archive_expsym_cmds>: Behave like Linux, so that
--version-script is used for Hurd as well.
2007-01-28 Charles Wilson <libtool@cwilson.fastmail.fm>
* NEWS: Update for Cygwin changes.
2007-01-28 Brian W. Barrett <bbarrett@lanl.gov>
* libltdl/config/ltmain.m4sh [darwin]: Use otool64 if otool fails.
2007-01-28 Dave Brolley <brolley@redhat.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
before checking that it is still in the list.
* tests/lt_dlexit.at: New test.
* Makefile.am (TESTSUITE_AT): Adjust.
(check-local): Also depend on libltdl/libltdlc.la.
(check-recursive): Removed, unnecessary use of Automake
internals.
2007-01-28 Mike Frysinger <vapier@gentoo.org>
* libltdl/config/ltmain.m4sh (func_mode_link): Pass through
`-p' and `-fprofile-*' for GCC.
2007-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/libltdl/lt_system.h: Adjust copyright years.
2007-01-28 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/libltdl/lt__private.h (LT_GLOBAL_DATA) [__CYGWIN__]:
Also define on Cygwin.
* libltdl/libltdl/lt_system.h (LT_SCOPE) [__CYGWIN__]: Likewise.
2007-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ cygwin, mingw ]
<export_symbols_cmds>: Avoid shell expansion of '/s/.*' through
double expansion, in case there is a 'S:' drive.
Report by Charles Wilson.
2007-01-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Introduce a new test keyword `recursive' for tests that create a
modified `libtool' script and run the suite on this script. All
tests with the keyword `libtool' are (by definition) suitable to
be used here.
* tests/cmdline_wrap.at: New test.
* Makefile.am: Adjust.
* tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
AS_ESCAPE that does not escape `$'.
(LT_AT_CHECK): New macro: print a command-to-be-run while
expanding parameters but nothing else.
* tests/stresstest.at: Use LT_AT_CHECK. Create some files to
expose erroneous globbing errors with `-export-symbols-regex',
similar to those reported by Charles Wilson. Use `eval' and
adjusted quoting so the expansion doesn't already happen in the
testsuite commands.
* HACKING: Update.
2007-01-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Assume C89 for included headers, and throughout the testsuite.
* NEWS: Update.
* libltdl/argz.c: Do not include strings.h nor memory.h, include
string.h unconditionally.
Patch by Simon Josefsson <jas@extundo.com>.
* libltdl/libltdl/lt__private.h: Likewise.
* libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
strings.h, memory.h.
* tests/cdemo/configure.ac: Assume presence of math.h.
* tests/cdemo/foo.c: Likewise.
* tests/demo/configure.ac: Likewise for math.h, string.h.
Assume 'const'. Drop obsolete AC_EXEEXT.
* tests/demo/dlmain.c: Likewise.
* tests/demo/foo.c: Likewise.
* tests/depdemo/configure.ac: Likewise.
* tests/depdemo/l4/l4.c: Likewise.
* tests/f77demo/configure.ac: Likewise. Also drop obsolete
AC_OBJEXT.
* tests/fcdemo/configure.ac: Likewise.
* tests/mdemo/configure.ac: Likewise.
* tests/mdemo/foo1.c: Likewise.
* tests/mdemo/foo2.c: Likewise.
* tests/mdemo2/configure.ac: Likewise.
* tests/pdemo/configure.ac: Likewise.
* tests/pdemo/longer_file_name_dlmain.c:
* tests/pdemo/longer_file_name_foo.c: Likewise.
* tests/pdemo/longer_file_name_foo2.c: Likewise.
* tests/tagdemo/configure.ac: Likewise.
* tests/tagdemo/foo.cpp: Likewise.
2007-01-24 Reuben Thomas <rrt@sc3d.org> (tiny change)
* doc/libtool.texi (Inter-library dependencies): Fix typo.
2007-01-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw]:
Use `lib -OUT' rather than `lib /OUT' to avoid MSYS path
translation mangling. Report by Christopher Hulbert.
* THANKS: Update.
* libltdl/config/ltmain.m4sh (func_mode_compile): Accept
suffixes matching `[fF][09].', for Fortran.
* tests/suffix.test: Also test F90, F95, f03, F03.
* Makefile.am (EXTRA_DIST): Add ChangeLog.2006.
* ChangeLog.2006: New, rotated, from...
* ChangeLog: ...here.
2007-01-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi: Typo fixes.
* TODO: Likewise.
2006-12-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/link-order2.at: Define our override `sin' function with
C binding even if $CC is a C++ compiler. Skip the test with g++
as its command line driver reorders `-lm'.
* tests/search-path.at: Declare `inflate' with C binding.
* tests/stresstest.at: Avoid unused variable warnings.
2006-11-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/link-order2.at: Simplify logic to be a bit more self
documenting. Suggested by Gary V. Vaughan.
2006-10-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/link-order2.at: Add missing $bindir setting. Prevent
compiler optimization of sqrt call. Fix logic inversion and
add some comments about this stunt. Add a test with reversed
library link order that should fail if the system has a libm.
Report by Patrick Welche.
2006-10-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Assume presence of a config header in all files, to provoke
test failures on all systems.
* libltdl/lt__alloc.c: Likewise.
* libltdl/libltdl/lt__dirent.h: Likewise.
* libltdl/libltdl/lt__glibc.h: Likewise.
* libltdl/libltdl/lt__private.h: Likewise.
* libltdl/libltdl/lt__strl.h: Likewise.
* tests/recursive.at: Use AC_CONFIG_HEADERS.
* tests/nonrecursive.at: Likewise. Invoke autoheader.
* HACKING: Adjust.
Report by Patrick Welche.
2006-10-24 Paul Eggert <eggert@cs.ucla.edu>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Distributing libltdl): In recursive and
nonrecursive mode, a config header is now required.
* libltdl/argz.c: Remove check for HAVE_CONFIG_H, to conform
to gnulib's policy of including config.h unconditionally.
2006-10-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/link-order2.at: New test to show one case where ordering
of depdepls on the command line matters.
* Makefile.am: Adjust.
* tests/tagtrace.test: SKIP if `autoconf --trace' exits 63 or 1,
for various possible (valid) error cases. Also output stderr,
to help with analysis.
* NEWS: Account for recent multilib fix.
* tests/search-path.at: New test, to provide at least a weak
test.
* Makefile.am: Update.
* libtoolize.m4sh (func_fixup_Makefile): Fix missing
substitution for nonrecursive mode. Remove otherwise-empty
continuation lines in the output file.
Report by Bob Friesenhahn.
2006-10-22 Peter O'Gorman <peter@pogma.com>
* libltdl/config/ltmain.m4sh: Add -F* to flags that are passed
to the linker.
Reported by SIGOURE Benoit <sigoure.benoit@lrde.epita.fr>
2006-10-19 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Improve
multilib support.
Reported by Kate Minola <kate01123@gmail.com> and others.
2006-10-13 Eric Blake <ebb9@byu.net>
* libltdl/ltdl.c (load_deplibs): Avoid memory leak on failure.
(unload_deplibs): Avoid memory leak on cleanup.
2006-09-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
extension `.f9?'.
* tests/suffix.test: Test `f95'.
* libltdl/config/ltmain.m4sh (func_mode_uninstall): Use
`func_source' consistently.
2006-09-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
[k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
2006-09-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/duplicate_deps.at: New file. Test circular depending
convenience archives (currently failing).
* Makefile.am: Update.
Report by Stefan Traby <stefan@hello-penguin.com>.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[ openbsd ]: Set `hardcode_direct_absolute', to prefer rpath
over putting absolute file names in NEEDED entries.
* NEWS: Update.
Reported by Jake Meuser and others.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
[ k*bsd*-gnu ]: Test if ld sets DT_RUNPATH; in that case, set
shlib_overrides_runpath to `yes'. Fixes test failure of new
test on Gentoo GNU/Linux.
* tests/shlibpath.at: New file, with...
(shlibpath_overrides_runpath): ...new test.
* Makefile.am: Update.
2006-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/destdir.at: New file.
* Makefile.am: Adjust.
2006-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/inherited_flags.at: Drop `${parameter}' for `$parameter'
where appropriate, for improved `testsuite -x' output.
2006-09-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c: Move LT__UNUSED before parameter name, for g++
3.2.3 (on MinGW).
* libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c: Likewise.
2006-09-04 George Bosilca <bosilca@cs.utk.edu>
and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Make libltdl work when compiled with a C++ compiler.
* libltdl/lt__alloc.c, libltdl/lt_dlloader.c, libltdl/ltdl.c,
libltdl/slist.c, libltdl/libltdl/lt__alloc.h,
libltdl/libltdl/lt_error.h, libltdl/libltdl/slist.h,
libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
libltdl/loaders/shl_load.c, tests/stresstest.at,
tests/testsuite.at, tests/f77demo/foo.h, tests/fcdemo/foo.h,
tests/mdemo/foo.h, tests/mdemo/foo1.c, tests/mdemo/foo2.c,
tests/mdemo/main.c: Allow sources to be compiled by a C++
compiler: Cast appropriately, add C linkage for `get_vtable'
functions, do not use C++ keyword `delete'.
* libltdl/config/ltmain.m4sh (func_mode_link): In the dlsym
file, define a type for the symbol list, and declare the list
`extern', so that it is extern even if compiled by a C++
compiler. The type definition helps avoid a compiler warning
against anonymous extern struct.
* libltdl/libltdl/lt_system.h: Add `extern' to `LT_SCOPE' for
the same reason.
* libltdl/argz_.h: It's __cplusplus, not _cplusplus.
* libltdl/libltdl/slist.h: Likewise.
* libltdl/libltdl/lt__glibc.h: Wrap included argz.h in
`extern "C"', for broken headers on Cygwin.
2006-09-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/testsuite.at: Test `unset' on a set variable; older
bash versions return 1 if the variable was not set.
* tests/am-subdir.at, tests/early-libtool.at: Fix the LF vs.
CRLF related failures on MinGW by grepping for good output
instead of using AT_CHECK's `expout'.
2006-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Drop K&R support from testsuite in favor of C89.
* tests/duplicate_members.at: provide declarations of used
functions.
* tests/testsuite.at: Drop unneeded arguments.
* tests/cdemo/main.c: Assume C89.
* tests/demo/dlmain.c: Likewise.
* tests/demo/main.c: Likewise.
* tests/depdemo/main.c: Likewise.
* tests/depdemo/l1/l1.c: Likewise.
* tests/depdemo/l2/l2.c: Likewise.
* tests/depdemo/l3/l3.c: Likewise.
* tests/depdemo/l4/l4.c: Likewise.
* tests/f77demo/cprogram.c: Likewise.
* tests/fcdemo/cprogram.c: Likewise.
* tests/mdemo/mlib.c: Likewise.
* tests/mdemo2/main.c: Likewise.
* tests/pdemo/longer_file_name_dlmain.c: Likewise.
* tests/pdemo/longer_file_name_main.c: Likewise.
* tests/fcdemo/fooc.c: Reformat.
* tests/mdemo/sub.c: Likewise.
2006-08-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/mdemo/main.c: Fix bogus line in last patch.
2006-08-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Avoid mixing functions and data pointers in callback functions.
* libltdl/ltdl.c (file_worker_func): New type.
(lt_dlforeachfile): Instead of passing a function pointer as a
data pointer, pass a pointer to a file_worker_func pointer.
(foreach_callback_func): Adjust.
* tests/mdemo/main.c: Assume C89. Exercise lt_dlforeachfile.
(callback, try_iterate, my_dirname): New functions.
* tests/mdemo-exec.test: Check for its output.
2006-08-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/libltdl/lt__private.h (__attribute__, LT__UNUSED):
New macros.
* libltdl/loaders/dld_link.c: Use LT__UNUSED where
appropriate.
* libltdl/loaders/dlopen.c, libltdl/loaders/load_add_on.c,
libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c,
libltdl/loaders/shl_load.c: Likewise.
* libltdl/ltdl.c: Likewise.
(find_file_callback): Fix declaration names to match definition.
(load_deplibs) [!LTDL_DLOPEN_DEPLIBS]: Use separate definition
for less preprocessor clutter.
* Makefile.am (check-local, installcheck-local): Use
`TESTSUITEFLAGS' rather than `TESTSUITE_FLAGS', like Autoconf.
* HACKING, README, README.alpha: All uses changed.
2006-08-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
sharing with gnulib. Report by Eric Blake.
* libltdl/lt__alloc.c, libltdl/libltdl/lt__dirent.h,
libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
libltdl/libltdl/lt__strl.h: Likewise.
* HACKING: Update.
2006-08-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Pass through
`--coverage' and `-pg', for GCC. Report by Rainer Keller
<keller@hlrs.de> and Tor Lillqvist <tml@iki.fi>.
2006-08-25 Kurt Roeckx <kurt@roeckx.be>,
Aurelien Jarno <aurel32@debian.org>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) [k*bsd*-gnu]: kfreebsd*-gnu and
knetbsd*-gnu behave like linux-gnu.
* libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
* libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK)
[x86_64-*kfreebsd*-gnu]: Add 32/64 bit bi-arch support.
* NEWS: Update.
2006-08-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ mingw,pw32 ]:
If `file' is present, use `func_win32_libid' rather than
`objdump -f', to facilitate cross-compilation.
Reported by Pierre Ossman <ossman@cendio.se>.
2006-08-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): In GNU ld script,
do not quote object file names, for Intel icc 9.0 IPO link.
2006-08-22 Eric Blake <ebb9@byu.net>
* libltdl/m4/ltdl.m4 (LTDL_INIT): Avoid macros marked obsolete in
latest autoconf.
* libltdl/m4/libtool.m4 (_lt_cv_sys_global_symbol_pipe): Work in
spite of -Wmissing-prototypes.
* libltdl/libltdl/lt__dirent.h: Rewrite to accomodate loss of
AC_HEADER_DIRENT.
* libltdl/m4/libtool.m4: Avoid space-tab.
2006-08-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_execute): Also search
the directory above `$objdir' for the argument of "-dlopen", as
mentioned in the error message.
2006-08-03 Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>
* libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix issues
with previous patch. for ... do' line is superflous. Need
_LT_TAGVAR not _LT_AC_TAGVAR, should be for both linux and
solaris with Sun compiler.
2006-08-01 Albert Chin <china@thewrittenword.com>
* libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
Don't set $postdeps to "-lCstd -lCrun" if
"-library=stlport4" set in CXXFLAGS as stlport4 C++
library incompatible with Cstd C++ library. Use
'-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
2006-07-28 Eric Blake <ebb9@byu.net>
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
s/recognise/recognize/.
2006-07-22 Eric Blake <ebb9@byu.net>
* libltdl/ltdl.c (loader_init_callback) [HAVE_LIBDLLOADER]:
Protect definition to avoid compiler warnings about unused
function.
2006-07-21 Eric Blake <ebb9@byu.net>
* libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
depending on -ldl, required by cygwin 1.5.20.
2006-06-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
( _LT_LINKER_BOILERPLATE): Rewrite to not use unchecked
`printf', for old systems like SunOS 4.1.
(_LT_COMPILER_OPTION, _LT_LINKER_OPTION)
(_LT_COMPILER_C_O, _LT_LINKER_SHLIBS): Likewise.
(_LT_LANG_C_CONFIG): Adjust: use literal newlines in
`lt_simple_compile_test_code' and `lt_simple_link_test_code'.
(_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
(_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Likewise.
Bug report by Bruce Becker and Mark Andrews.
2006-06-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix the bugs where libtoolize needs to use `dir/file' instead of
`./dir/file', where ltdldir is `.', so that libtoolize correctly
checks for (and suggests) `config' and `m4' instead of
`./config' and `./m4' as auxiliary resp. macro directories.
The change is necessary for unambiguous naming, the chosen way
plays better with non-GNU make in VPATH builds.
* libtoolize.m4sh (ltdlprefix): New variable, to use as prefix
instead of `$ltdldir/'.
(func_check_macros): Use it. Bug report by Eric Blake.
2006-06-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix several libtoolize-related bugs:
- Do not symlink aclocal.m4, to work around a bug in aclocal
overwriting the linked-to file instead of removing the symlink.
- Have `libtoolize --copy' cause current time stamps, so that
dependents will be rebuilt; for this, install files in order.
- Fix list of distribution files for (non)recursive libltdl.
- Fix some failure cases.
* libtoolize.m4sh (func_copy_cb):
If `$opt_link', still copy `aclocal.m4', so a subsequent
`aclocal' will not overwrite the symlink target.
In `--copy' mode, do `cp -p' and `touch' for each file, so
timestamps are updated but permissions preserved.
(main): Reorder installing of files to match logical order
and timestamp requirements.
(func_fixup_Makefile_inc): Renamed to
(func_fixup_Makefile): this. Add sed scriptlet to remove
non-existent files from EXTRA_DIST, for either nonrecursive
or recursive mode.
(main): call it to mangle also in recursive mode.
* tests/libtoolize.at (expout): Adjusted.
* tests/testsuite.at (tst_dist): Default to `dist'.
2006-06-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix libltdl to always have all generated files up to date.
* Makefile.am (all-local): Depend on all generated files in
libltdl, namely...
(libltdl/aclocal.m4, libltdl/configure, libltdl/config-h.in):
...these. List explicitly, including dependencies and
rebuilding rules, using...
(sub_aclocal_m4_deps, sub_configure_deps): ...these new
variables.
Report by Dan Lacher <Dan.Lacher@Sun.Com>.
2006-06-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (install-data-local): Do not use $(INSTALL_DATA)
from another directory: it may use a relative path to
`install-sh'.
Bug report by Dan Lacher <Daniel.Lacher@Sun.COM>.
2006-06-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
similar to `-mt'.
Report by Eric Paire <eric.paire@st.com>.
2006-06-01 Charles Wilson <libtool@cwilson.fastmail.fm>
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
define DLL_EXPORT for PIC objects on cygwin.
2006-05-24 Albert Chin <china@thewrittenword.com>
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
[ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
for CXX tag too!
2006-05-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
Do not put `"$@"' in argument to $ECHO.
2006-05-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4: Bump serial, necessary because of
_LT_CHECK_SHELL_FEATURES changes.
2006-05-18 Albert Chin-A-Young <china@thewrittenword.com>
* tests/early-libtool.at: Pass $CPPFLAGS and $CFLAGS to
compiler when compiling for extra flags that might be
needed for ANSI-compliance, 64-bit, etc. The environment
we compile with should match the environment libtool was
compiled with.
2006-05-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Fix mode=compile time regression of CVS HEAD over branch-1-5.
* libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Rename to...
(_LT_CHECK_SHELL_FEATURES): ...this.
(_LT_SETUP): Adjust caller.
(_LT_CHECK_XSI_SHELL): New libtool variables `lt_unset',
`SP2NL', `NL2SP', to contain results from tests for unset,
taken from AS_BOURNE_COMPATIBLE, and ASCII vs EBCDIC, taken...
* libltdl/config/general.m4sh: ...from here, and used...
* libltdl/config/ltmain.m4sh: ...here everywhere now.
* (AS_SHELL_SANITIZE): Replace by faster, actually necessary
part of its expansion, taken from current Autoconf CVS. Do not
save and set all locale variables any more, but only LANG,
LC_ALL, LC_CTYPE, LC_COLLATE, LC_MESSAGES.
(func_mode_execute): Adjust.
* libltdl/m4/libtool.m4 (_LT_CONFIG): No need to unset CDPATH
here any more.
* libtoolize.m4sh: Compute `SP2NL' and `NL2SP' here, too.
2006-05-17 Gary V. Vaughan <gary@gnu.org>
* libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
_LT_LANG_FC_CONFIG), tests/link-order.at
[ aix4*, aix5*, hpux10*, hpux11* ]: rename
hardcode_direct_static to hardcode_direct_absolute.
* doc/libtool.texi (libtool script contents): Adjust.
* libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
lt_dlhandle_iterate were in the wrong order.
2006-05-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LINKER_OPTION): Require
_LT_DECL_SED.
(_LT_CMD_GLOBAL_SYMBOLS, _LT_LINKER_SHLIBS): Likewise.
* libltdl/m4/ltdl.m4 (LTDL_INIT): Likewise.
(_LT_DECL_SED): Set $Xsed here, using $SED. Moved from...
(_LT_SETUP): ...here.
Report by Eric Blake.
2006-05-17 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (libtool script contents): Document new
hardcode_direct_static variable.
* tests/link-order.at: Be careful about usage of shrext_cmds.
* libltdl/m4/libtool.m4 (LT_AC_PROG_SED): Declarations for
compatibility with old versions of libtool, and old versions
of aclocal.
2006-05-17 Albert Chin-A-Young <china@thewrittenword.com>
* libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
_LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
Introduce a new variable, hardcode_direct_static, which
would ignore hardcode_direct=yes if the result would create a
static library dependency. Static library dependencies are
immune to $shlibpath_var.
* tests/link-order.at: Take hardcode_direct and
hardcode_direct_static into consideration when testing
link order.
2006-05-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Eliminate quadratic scaling in argument parsing loop, for
shells that understand `var+=value', such as Bash-3.1, or Zsh.
* libltdl/m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Test whether
the shell understands `var+=value'.
(_LT_PROG_XSI_SHELLFNS): Define `func_append' based on this.
* config/ltmain.m4sh (func_mode_link): Use `func_append' for
compile_command, finalize_command, libtool_args, libobjs,
non_pic_objects.
2006-05-15 Bruno Haible <bruno@clisp.org>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS) [ linux ]:
Add support for Sun C 5.9, Sun C++ 5.9, and Sun Fortran 8.3 on
GNU/Linux.
* NEWS: Update.
2006-05-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
`$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
that reruns will remember it; set enviroment variable
`CONFIG_SHELL' so the suite will know which shell it was started
with.
(installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
`$(INSTALLCHECK_ENVIRONMENT)'.
* tests/testsuite.at (LT_AT_TAG): Do not set the compiler
variable here.
2006-05-14 Albert Chin-A-Young <china@thewrittenword.com>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[ aix ]: $hardcode_direct is set twice.
2005-05-14 John Bowler <jbowler@acm.org>
* libltdl/config/ltmain.m4sh (func_mode_link): For version_type
`none', we still need to set `current', `age', and `revision',
so that our checks don't barf. The values won't be used later.
Apparently reported by several people, several times, for BeOS.
* NEWS, THANKS: Update.
2006-05-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/fail.at: Use "test -x" if available, for testing of
executables; code modified from Autoconf's AS_EXECUTABLE_P.
Reported by Albert Chin <china@thewrittenword.com>.
2006-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_write_libtool_object):
New function, factored out from..
(func_mode_compile): .. here. Call it to generate the libtool
object file (the `.lo' file) in one step.
2006-04-03 Peter O'Gorman <peter@pogma.com>
* libltdl/loaders/preopen.c: Don't allow lt_dlopen if the
module has no symbols.
2006-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]:
Avoid warning when "parsing" `/etc/ld.so.conf' and empty
`/etc/ld.so.conf.d'.
Reported by Orion Poplawski <orion@cora.nwra.com>.
2006-03-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* bootstrap: Actually use the correct version of the last patch.
2006-03-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* bootstrap: Enable `WORKING_LIBOBJ_SUPPORT' if we detect
Autoconf-2.60+ and Automake-1.10+, or CVS versions.
* libltdl/m4/argz.m4 (gl_FUNC_ARGZ): Sync with gnulib: If we
define `error_t', also define `__error_t_defined', so argp.h
will not typedef the former.
2006-03-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS) [ freebsd ]
[ dragonfly ]: Set libltdl_cv_sys_dlopen_deplibs to yes.
Fixes excessive lt_dlopen times on these systems.
* NEWS, THANKS: Update.
Bug reported by Peter Jeremy <peterjeremy@optushome.com.au>,
patch by Joerg Sonnenberger <joerg@netbsd.org>.
2006-03-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/static.at: New tests for comprehensive test exposure of
all current and proposed static linking flags for programs.
* Makefile.am: Updated.
* libltdl/config/ltmain.m4sh (func_mode_link)
< -static-libtool-libs >: New option.
* doc/libtool.texi (Link mode, Distributing libltdl):
Document it.
Suggested by Gary Kumfert <kumfert@llnl.gov>.
2006-03-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp [ hpux ] <aCC>:
The HPPA C++ compiler has namespace support but provides no
`std' namespace; just provide it with a dummy.
* libltdl/m4/libtool.m4 (AC_PROG_SED): Do not forget to reset
IFS even in case of empty `$PATH'.
2006-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Comment out the
code to remove uninstalled paths, as it is wrong here. Change
the wrong shell quoting that kept it from "working" before.
* THANKS: Updated.
* libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
[ freebsd, dragonfly ]: Fix 1.5.22 regression caused by too
strict $host_os match that stopped DragonFly from working.
* THANKS: Updated.
Reported by Jeremy C. Reed <reed@reedmedia.net>,
patch by Todd Vierling <tv@duh.org>.
2006-02-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (startup): save all locale specific
environment, variables:, LANG, LANGUAGE, LC_ADDRESS, LC_ALL
LC_COLLATE, LC_CTYPE, LC_IDENTIFICATION, LC_MEASUREMENT,
LC_MESSAGES LC_MONETARY, LC_NAME, LC_NUMERIC, LC_PAPER,
LC_TELEPHONE, LC_TIME.
(func_mode_execute): Restore them.
2006-02-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Tags): Mention `FC'.
(libtool script contents) <CC>: Specify more precisely as the
compiler of the current tag.
<LTCC, LTCFLAGS, build, build_alias, build_os, host_alias,
host_os, macro_version, macro_revision, max_cmd_len>:
Document these variables.
2006-02-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi: Update copyright years.
* libltdl/config/getopt.m4sh (func_help): Substitute `$host'.
* libltdl/config/ltmain.m4sh (help message): Use $host not
@host_triplet@, as the `@..@' substitution is done at bootstrap
time already.
Reported by Julien Lecomte <julien@famille-lecomte.net>.
* doc/libtool.texi (Implementation issues): Note that both
prefix and suffix of a library may differ.
(Using libtool, Creating object files, Linking libraries):
Remove last documentation traces of the age when `foo.lo' was
the PIC object file and not the `libtool object' text file.
(libtool script contents) <compiler_o_lo>: Remove description
of this variable. It was removed from libtool in 1.5 times.
2006-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link) [ linux ]:
PGI: for `reload_cmds', we not only need to get rid of `$wl',
but also turn comma into space so $LD understands
whole_archive_flag_spec correctly.
* libltdl/config/ltmain.m4sh (func_mode_link) <shell wrapper>:
Add _AS_BOURNE_COMPATIBLE code from Autoconf, to fix issues
with zsh and other shells.
Reported by David Gómez Espinosa <david@pleyades.net>.
2006-02-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (AC_PROG_SED): m4_defun this rather
than AC_DEFUN, so that old aclocal does not pick this up.
* Makefile.am ($(TESTSUITE)): Also depend on `Makefile.am'.
Write to temporary file and rename.
2006-02-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (EXTRA_DIST): Add `$(srcdir)/' to all generated
files so that non-GNU make programs will use the rebuilding
rules.
* tests/testsuite.at: Add new keyword `libtoolize' for tests
that exercise the `libtoolize' script that is generated at build
time.
* HACKING: Update testsuite mention, explain keywords.
* libltdl/config/ltmain.m4sh (extracted_archives)
(extracted_serial): New globals.
(func_extract_archives): Use them to rename extraction archives
for linking against multiple convenience libraries with the same
name.
* tests/duplicate_conv.at: New tests.
* Makefile.am: Adjusted.
Reported by Carlo Contavalli <ccontavalli@commedia.it>.
* libltdl/config/ltmain.m4sh (func_mode_link) < test_compile >:
Fix a couple of instances where `test .. -ne ..' would possibly
compare non-numbers. Clean up a bit.
* tests/convenience.at, tests/deplibs-ident.at: Add new keyword
`libtool' for tests that exercise the unmodified `libtool'
script that is generated at build time.
* tests/duplicate_members.at, tests/fail.at: Likewise.
* tests/inherited_flags.at, tests/link-order.at: Likewise.
* tests/stresstest.at, tests/template.at: Likewise.
2006-02-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/fail.at: Also pass a bogus object file to the linker so
it fails more reliably; AIX and IRIX linkers ignore duplicate
symbol definitions.
* libltdl/m4/libtool.m4 [ solaris ] (_LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) < whole_archive_flag_spec >:
Fix this once and for all, for both the SUN compiler suite
(cc/CC/f77/f90/f95) and GCC.
Reported by Yuri Pukhalsky <pooh@cryptopro.ru>.
* tests/cdemo/Makefile.am: Remove broken use of undocumented
Automake variable `$(OBJECTS)'.
* tests/demo/Makefile.am, tests/depdemo/Makefile.am: Likewise.
* tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am: Likewise.
* tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am: Likewise.
* tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Likewise.
* libltdl/config/ltmain.m4sh (func_mode_link): Fix logic for
adding run paths to also add paths for installed libtool
libraries in case `-static' is used.
2006-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (TESTSUITE_AT): List testsuite files in the order
in which they are to be expanded in the suite.
(tests/TESTSUITE): Rebuild by passing all $(TESTSUITE_AT) files,
with their path suitably adjusted. This enables us to..
* tests/testsuite.at: ..get rid of their redundant mention here.
2006-01-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (titlepage): Remove superfluous word.
* libltdl/config/ltmain.m4sh (func_mode_link): Fix matching
duplicate run path entries with the correct separator.
* tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
shells.
* ChangeLog, HACKING, README, README.alpha,
libltdl/config/ltmain.m4sh: Add vi(m) modelines, to match emacs
formatting variables.
2006-01-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (libltdl/Makefile.am): Fixup sed script.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
2006-01-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am, bootstrap, clcommit.m4sh,
libltdl/config/getopt.m4sh, libltdl/config/mailnotify.m4sh,
tests/sh.test, tests/testsuite.at: Bump copyright years.
2006-01-21 Eric Blake <ebb9@byu.net>
* THANKS: Move myself to contributor.
2006-01-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* bootstrap: Don't use semicolons inside { } in sed scripts, as
Posix says it's not portable.
* Makefile.am (libltdl/Makefile.am): Likewise.
* libtoolize.m4sh (all over the map): Likewise.
* libltdl/config/getopt.m4sh (func_version, func_usage)
(func_help): Likewise.
* libltdl/config/ltmain.m4sh (func_win32_libid): Likewise.
* libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Likewise.
* clcommit.m4sh, libltdl/config/mailnotify.m4sh: Likewise.
* tests/sh.test, tests/testsuite.at (LT_AT_TAG): Likewise.
Noted by Paul Eggert <eggert@cs.ucla.edu>.
* libltdl/config/ltmain.m4sh (func_mode_compile): Also transform
`.obj' correctly.
Reported by George Bosilca <bosilca@cs.utk.edu>.
2006-01-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): Fix my forward port
error of last commit.
2006-01-12 Leif Ekblad <leif@rdos.net>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC): Added support for
RDOS.
* NEWS: Updated.
2006-01-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libtoolize.m4sh, libltdl/config/general.m4sh,
libltdl/config/getopt.m4sh, libltdl/config/ltmain.m4sh,
libltdl/m4/libtool.m4: Bump copyright years.
2006-01-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (EXTRA_DIST): Add ChangeLog.2005.
* README, README.alpha: Adjust copyright years.
* ChangeLog.2005: New, rotated, from..
* ChangeLog: ..here.
2005-12-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (libtoolize): Also depend on `config.status'.
(tests/atconfig): Normalize path, for non-GNU make.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
* libltdl/config/ltmain.m4sh (func_mode_link) <temp_rpath>:
Fix position of separator for shlibpath_var setting in shell
wrapper.
* libltdl/lt_error.c (error_strings): Remove parentheses around
string literal initializers, uncovered by `tcc'.
Reported by Edward Chernenko <edwardspec@yahoo.com>.
2005-12-21 Gary V. Vaughan <gary@gnu.org>
* .cvsignore, libltdl/.cvsignore, tests/.cvsignore: Ignore
+build, +dest, +inst, .cvslog-tlasync, .gdb_history, .pc,
libltdl/INSTALL, libltdl/stamp-mk and tests/testsuite.log.
2005-12-20 Eric Blake <ebb9@byu.net>
* README.alpha: Really commit.
2005-12-19 Eric Blake <ebb9@byu.net>
* HACKING (release note templates): Update anon cvs location.
* README.alpha (Reporting Bugs): Likewise.
2005-12-18 Jacob Meuser <jakemsr@jakemsr.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Move library
search paths that coincide with paths to not yet installed
libraries to the beginning of the library search list.
2005-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* THANKS: Updated.
* HACKING: `./libtool --config' is more helpful than `--help'.
* libltdl/config/ltmain.m4sh <preserve_args, linknames>:
Initialize properly.
2005-12-18 Kean Johnston <jkj@sco.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (LT_PATH_NM): Also look in
/usr/ccs/bin/elf, for SCO. If we are not cross-compiling, but
$ac_tool_prefix is set, also try an un-prefixed `nm'.
2005-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
<hardcode_shlibpath_var>: Initialize, to `unsupported'.
2005-12-18 Marc Espie <espie@nerim.net>
* libltdl/m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER)
[ openbsd ] <sys_lib_dlsearch_path_spec>: Set to `/usr/lib'
only.
2005-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/old-m4-iface.at: Require Autoconf-2.50, so that
Debian's autoconf wrapper will not cause 2.13 to barf over
`--force'.
Reported by Kurt Roeckx <kurt@roeckx.be>.
* README.alpha (Reporting bugs): Suggest to also bootstrap the
libltdl subdirectory -- the Makefile will enforce it anyway.
(The Test Suite): Renamed to..
(The Test Suites): ..this. Introduce the new Autotest test
suite, how to run each one individually, and what to report.
* README (The Test Suite): Likewise.
2005-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
In the subpackage case, we do not install Makefile.inc. Since
we have to be correct for this case, remove `Makefile.inc' from
EXTRA_DIST. Recursive mode does not use it either. Since
nonrecursive mode requires an Automake >= 1.7 anyway, and those
versions automatically distribute included makefile fragments,
we don't need to cater for that one either.
* libltdl/Makefile.inc (EXTRA_DIST): Remove Makefile.inc.
Reorder other entries.
2005-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (libltdl/Makefile.in): also depend on
libltdl/aclocal.m4, so that we guarantee timestamp consistency.
(libltdl/stamp-mk): New target, to fix `libltdl/Makefile.in'.
(EXTRA_DIST): Distribute `libltdl/stamp-mk' and
`libltdl/m4/lt~obsolete.m4'.
(all-local): Ensure the stamp files is up to date.
(libltdl/aclocal.m4): New target, to ensure timestamp
consistency. Depend on all m4 files.
* HACKING: Updated.
* tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
default to empty.
* tests/nonrecursive.at, tests/recursive.at,
tests/standalone.at, tests/subproject.at: Use it in
LT_AT_BOOTSTRAP or LT_AT_MAKE, so that you can optionally test
redistribution within the tests.
* libltdl/m4/lt~obsolete.m4: Update documentation for aclocal
versions before 1.7. Change all macros to use AC_DEFUN instead
of AU_DEFUN.
* (_AC_PROG_LIBTOOL, AC_LIBTOOL_SETUP, _LT_AC_CHECK_DLFCN)
(AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_TAGCONFIG)
(AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_CXX, _LT_AC_LANG_F77)
(_LT_AC_LANG_GCJ, AC_LIBTOOL_RC, AC_LIBTOOL_LANG_C_CONFIG)
(_LT_AC_LANG_C_CONFIG, AC_LIBTOOL_LANG_CXX_CONFIG)
(_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_LANG_F77_CONFIG)
(_LT_AC_LANG_F77_CONFIG, AC_LIBTOOL_LANG_GCJ_CONFIG)
(_LT_AC_LANG_GCJ_CONFIG, AC_LIBTOOL_LANG_RC_CONFIG)
(_LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG)
(_LT_AC_FILE_LTDLL_C): Add new fake macros for these, they
were used at one time in libtool.m4.
* tests/am-subdir.at (Makefile.am): Put automake options here,
in AUTOMAKE_OPTIONS. Require 1.6 because of the newer
`AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' scheme.
* tests/nonrecursive.at, tests/recursive.at: Require 1.7,
because libltdl rules use `+=' in conditionals.
* tests/testsuite.at (LT_AT_AUTOMAKE): Fix indenting.
(LT_AT_AUTORECONF): also detect too old Automake.
2005-12-08 Eric Blake <ebb9@byu.net>
* libltdl/libltdl/lt__alloc.h (FREE): Cast away constness of
argument to `free' to avoid compiler warning.
2005-12-08 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_LINKER_SHLIBS)
[darwin]: Use $LTCC $LTCFLAGS to check for -single_module.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2005-12-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* bootstrap: always remove Makefile, to avoid triggering the
autotools rebuild rules before autoreconf builds these.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>.
2005-12-07 Peter O'Gorman <peter@pogma.com>
* libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4 [darwin]:
Use -single_module by default when linking shared libraries. Can
be overridden by specifying -multi-module or by setting the env
var LT_MULTI_MODULE before configure.
* libltdl/m4/libtool.m4 (archive_expsyms_cmds) [darwin]:
Simplify.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2005-12-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (References): Do not use `@/' for the benefit
of older `makeinfo', break lines instead.
* Makefile.am (install-data-local): No continuation here.
(dist-hook): Fix copying of README.alpha to README.
* tests/early-libtool.at (configure.ac): Remove
`AM_INIT_AUTOMAKE', we do not use automake in these tests.
* README, README.alpha, libtoolize.m4sh: Typos.
* tests/am-subdir.at, tests/duplicate_members.at: Make all
banners end with a dot, for symmetry.
* libtoolize.m4sh (func_copy_all_files)
(glob_exclude_pkgaux_files): Removed, since unused.
* libtoolize.m4sh (func_copy_cb, func_copy_some_files)
(func_serial_update, func_keyword_update): Fail immediately
if some file we may install does not exist.
Reported by Troy Benjegerdes <hozer@hozed.org>.
2005-12-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* TODO: A bunch of items fixed. :)
* tests/convenience.at: Updated to expose more corner cases.
* doc/libtool.texi (Invoking libtoolize): Remove mention of
the nonrecursive restriction to name the directory `libltdl'.
* libtoolize.m4sh (func_fixup_Makefile_inc): New function.
(main): Call it in nonrecursive mode to mangle Makefile.inc.
* tests/nonrecursive.at: adjusted to test this.
2005-12-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Basic support for PIE (position-independent executables).
* libltdl/config/ltmain.m4sh (func_generate_dlsyms):
Don't pass PIE flag for compilation of the symbol file object.
(func_mode_compile): Pass PIE flag only for non-PIC objects.
* NEWS: Updated.
2005-12-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/general.m4sh (func_show_eval): Rewrite use of
the failure expression, because the exit status of the previous
command may not be preserved in the next `eval' by some shells,
such as pdksh.
* libltdl/config/ltmain.m4sh (func_extract_an_archive):
Use func_show_eval correctly.
(func_mode_link): Likewise. Also, do not use `$status'.
* tests/fail.at: New set of tests to ensure libtool fails.
* Makefile.am, tests/testsuite.at: Adjusted.
2005-11-26 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 [darwin]: Use $LTCC $LTCFLAGS to create
reloadable objects.
2005-11-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/Makefile.inc (libltdl/argz.h): Create libltdl
directory if it does not exist yet. Take care that munging
of the file will not mess up the build rule.
Reported by Peter O'Gorman <peter@pogma.com>.
2005-11-25 Eric Blake <ebb9@byu.net>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/loaders/loadlibrary.c (iface_id): New variable.
(get_vtable): Get an `iface_id' from `lt_dlinterface_register'.
(get_vtable): Rewrite to catch up with lt_dlhandle_iterate
interface change. Append dot only after w32 path conversion
so it works on cygwin managed mounts.
* libltdl/ltdl.h, libltdl/ltdl.c (lt_dlinterface_free): New
function.
* doc/libtool.texi (User defined module data): Document it.
2005-11-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 [aix] <archive_expsym_cmds>
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Always move -bnoentry
before $compiler_flags, so it can be overridden.
* libltdl/config/ltmain.m4sh (func_mode_link): Allow GCC
response files through.
2005-11-25 Peter O'Gorman <peter@pogma.com>
* libltdl/config/ltmain.m4sh (func_mode_link): Pass through
-isysroot for cross architecture builds on darwin.
2005-11-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_uninstall): In clean
mode, don't remove non-existent libfoo.lai.
2005-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (aclocalfiles): Also install lt~obsolete.m4.
* libtoolize.m4sh (func_check_macros): Updated.
* tests/libtoolize.at: Adjusted.
2005-11-20 Eric Blake <ebb9@byu.net>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* bootstrap (--help): Provide some help.
2005-11-20 Todd Vierling <tv@netbsd.org>,
Thorsten Glaser <tg@mirbsd.org>
* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN, _LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) [ interix3 ]: Support for Interix/Microsoft
Services for Unix.
* libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Likewise.
* NEWS: Updated.
2005-11-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/link-order.at [ interix ]: Skip command line grep.
* tests/deplibs-ident.at [ interix ]: Not broken here.
Reported by Thorsten Glaser <tg@66h.42h.de>.
2005-11-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libtoolize.m4sh (func_copy_all_files)
(func_massage_aclocal_DATA, func_massage_pkgltdl_files)
(func_massage_pkgconfig_files): Work around ksh limitation.
Reported by Thorsten Glaser <tg@66h.42h.de>.
2005-11-14 Albert Chin <china@thewrittenword.com>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[ hpux11 ]: Pass +nodefaultrpath when linking on ia64*.
2005-11-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Testsuite portability update round.
* tests/inherited_flags: skip when shared libs are disabled.
* tests/deplibs-ident.at [ aix ]: No unexpected failure here.
* tests/libtoolize.at: Fix for distcheck (readonly sources).
* tests/nonrecursive.at, tests/recursive.at, tests/subproject.at
(foo.c): Actually export a symbol, for AIX.
* tests/old-m4-iface.at: Use AC_LIBTOOL_DLOPEN, for AIX.
* tests/nonrecursive.at: Set foo_la_SOURCES, for automake-1.7.
* tests/subproject.at: Require automake-1.9, we use indirect
subdirs.
* tests/am-subdir.at: Move AT_KEYWORDS settings..
* tests/testsuite.at: ..here, in respective macros.
(LT_AT_AUTOMAKE): Skip if we detect failure due to old version.
(PREPARE_TESTS): Set autotool variables to `no' if not present.
(LT_AT_ACLOCAL, LT_AT_AUTOCONF, LT_AT_AUTOMAKE)
(LT_AT_AUTOHEADER, LT_AT_AUTORECONF): Use to XFAIL tests.
Reported by Tim Rice <tim@multitalents.net>.
(LT_AT_MAKE): Do not use `make -e'.
(_LTDL_PROJECT_FILES): Adjust sub-make call. Work around `make'
which does not set `MAKE' or `SHELL'. Fix for user-set
`CONFIG_SHELL'.
Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
* libltdl/m4/lt~obsolete.m4 (_LT_CC_BASENAME)
(_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
Added because they were added to branch-1-5 AC_DEFUNed.
* HACKING: Add note about lt~obsolete.m4.
* Makefile.am, libltdl/Makefile.inc (INSTALL_LTDL):
For nonrecursive mode, add to include_HEADERS as well.
* doc/libtool.texi (Invoking libtoolize, Distributing libltdl),
tests/nonrecursive.at: Adjusted, and removed TABS from .texi.
* libtoolize.m4sh: Revert use of `$tst_aclocaldir'.
2005-11-13 Eric Blake <ebb9@byu.net>
* libltdl/ltdl.c (lt_dlhandle_iterate): Fix endless loop.
(lt_dlinterface_register): Fail if lt__strdup did.
2005-11-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LANG_C_CONFIG):
Removed `lt_prog_cc_shlib' cruft, not needed any more.
2005-11-13 Kean Johnston <jkj@sco.com>,
Tim Rice <tim@multitalents.net>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_CHECK_MAGIC_METHOD, _LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG)
[ sco3.2v5, sysv4, sysv4.3, sysv5, sco3.2v5, sco5v6, unixware,
OpenUNIX, sysv4*uw2 ]: Complete overhaul of SCO support.
* THANKS: Updated.
2005-11-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/quote.test: Do not fail on harmless shell bug present
in some ksh versions.
Reported by Tim Rice <tim@multitalents.net> and others.
2005-11-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltoptions.m4 (_LT_SET_OPTION): Use m4_warning
instead of m4_warn.
* libltdl/m4/libtool.m4 (_LT_COMPILER_PIC): `wl' is tagged here.
* libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF, _LT_COMPILER_PIC):
Make sure `$wl' is properly expanded for tests involving
`export_dynamic_flag_spec', `lt_prog_compiler_static'.
* tests/defs.m4sh (func_configure): Actually pass
options (like --disable-shared) to func_configure_nofail.
2005-11-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]:
Fix shlibpath_overrides_runpath settings.
Reported by Dave Benson <daveb@idealab.com>.
2005-09-10 Charles Wilson <cygwin@cwilson.fastmail.fm>
* libltdl/config/ltmain.m4sh (func_win32_libid): use $SED not
sed.
2005-11-10 Albert Chin-A-Young <china@thewrittenword.com>
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]
<hppa*64,ia64, aCC,g++>:
Use C++ compiler for linking rather than ld.
2005-11-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltsugar.m4 (lt_join, lt_combine, lt_dict_filter):
Rewrite to eliminate tail recursion; use ..
(lt_unquote): New trivial helper macro.
* libltdl/m4/libtool.m4 (_lt_decl_filter): Document.
2005-11-10 Gary V. Vaughan <gary@gnu.org>
* tests/testsuite.ac (macrodir): Don't set it here...
* Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
...set it here to pick up files from the right place in context.
* tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
* libtoolize.m4sh: Take tst_aclocaldir into account when running
inside the test harness.
2005-11-10 Gary V. Vaughan <gary@gnu.org>
* tests/am-subdir.at: Now that we don't run autoreconf, we have to
explicitly tell aclocal what flags to use.
* tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
configure.
* tests/am-subdir.at, tests/nonrecursive.at, tests/old-m4-iface.at,
tests/subproject.at: Use LT_AT_BOOTSTRAP.
2005-11-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Also set pic_flag.
(_LT_LANG_CXX_CONFIG): Use $as_unset, not unset.
(_LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG): Remove bogus
ld_shlibs tests.
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS): Move setting of
`variables_saved_for_relink'..
(_LT_SYS_DYNAMIC_LINKER): here, when both `shlibpath_var'
and `runpath_var' have been set.
Reported by Mike Frysinger <vapier@gentoo.org>.
* libltdl/Makefile.inc (AM_CPPFLAGS): Do not define
HAVE_CONFIG_H.
* libltdl/m4/ltdl.m4 (LTDL_INIT): Do not invoke
AC_CONFIG_HEADERS ourselves, we can build with or without now.
2005-11-07 Kean Johnston <jkj@sco.com>
* libltdl/config/ltmain.m4sh (func_mode_link) [ sysv4*uw2*,
unixware7* ]: Work around linker bug on older SCO systems.
2005-11-07 Albert Chin-A-Young <china@thewrittenword.com>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) [ hpux10, hpux11 ]:
hardcode_libdir_flag_spec and hardcode_minus_L are the same for
hppa*64 and ia64*. Don't set
hardcode_libdir_flag_spec='-L$libdir' on ia64* because if you
specify +b and -L, +b overrides what is set into DT_RPATH.
2005-11-07 Gary V. Vaughan <gary@gnu.org>
* tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
common code to build a basic libltdl using project.
* tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
Use it.
* doc/libtool.texi (Distributing libltdl): Document correct use of
LT_CONFIG_LTDL_DIR mode argument with Autoconf and Automake.
2005-11-07 Gary V. Vaughan <gary@gnu.org>
Support 'recursive' mode for building libltdl: Automake will
recursively descend into the libltdl directory, and use libltdl's
Makefile.am code to build libltdl:
* ltdl.m4 (LT_CONFIG_LTDL_DIR): Don't barf on 'recursive' mode
for 2nd argument.
(_LTDL_MODE_DISPATCH): Handle recursive mode.
2005-11-07 Gary V. Vaughan <gary@gnu.org>
* tests/recursive.at: New tests for libltdl as a subdirectory,
configured and compiled from the toplevel project using a
recursive make..
* tests/testsuite.at: Use it.
* Makefile.am (TESTSUITE_AT): Depend on it.
* libltdl/m4/ltdl.m4 (LTDL_INIT): Don't force running
AC_CONFIG_HEADERS for subproject ltdl.
* tests/old-m4-iface.at, tests/subproject.at: Remove workaround.
* libltdl/m4/ltdl.m4 (LT_CONFIG_LTDL_DIR): Add LTDL-MODE
argument.
* configure.ac: Use it.
2005-11-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): lt_unknown is
lt_dlunknown.
* libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Revert
expansion of `$wl'.
(_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_GCJ_CONFIG):
Do not require LT_SYS_DLOPEN_SELF.
(_LT_LANG_C_CONFIG): Instead call it at the right time.
(_LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG, _LT_LANG_FC_CONFIG)
(_LT_LANG_GCJ_CONFIG): Do not call _LT_CMD_STRIPLIB.
* Makefile.am: `2>&1' as suggested by Albert Chin.
* libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4:
Two newlines before each macro, fix underlines.
2005-11-05 Kean Johnston <jkj@sco.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link) [*-*-sco3.2v5*]:
Don't pass through -lc, nor add it to deplibs.
[*-*-sysv5*]: Ditto.
[*-*-openbsd*, *-*-freebsd*, *-*-dragonfly*]: Remove bogus
`$arg'.
2005-11-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* THANKS: Updated.
2005-11-02 Gary V. Vaughan <gary@gnu.org>
* tests/nonrecursive.at: New tests for libltdl as a subdirectory,
configured and compiled from the toplevel project.
* tests/testsuite.at: Use it.
(LT_AT_AUTOHEADER): New macro.
* Makefile.am (TESTSUITE_AT): Depend on nonrecursive.at.
2005-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_ENABLE_LOCK) [ solaris ]: Add `-64'
to $LD if necessary, to permit combining of several convenience
libs without any further objects added.
Reported by Brian Barrett <brbarret@open-mpi.org>.
2005-11-01 Kean Johnston <jkj@sco.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (LT_SYS_DLOPEN_SELF): Use
`lt_prog_compile_static', not `link_static_flag'. Expand `$wl'
so expansion of `export_dynamic_flag_spec' works.
(_LT_TRY_DLOPEN_SELF): Show dlerror() in case of failure.
(_LT_LINKER_SHLIBS) [ aix3 ]: Likewise.
(_LT_COMPILER_PIC) [ hpux* ]: Use `${wl}'.
2005-11-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* THANKS: Updated.
2005-11-01 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/ltdl.m4 (LTDL_INIT): Call _LT_ENABLE_INSTALL directly
instead of m4_requiring it, as it relies on enable_ltdl_install
and enable_ltdl_convenience to have been initialised first.
* libtoolize.m4sh: Use serial tags to locate the correct serial
numbers when deciding whether to update.
(func_serial): Allow for macro_regex argument to be originating
file name.
(func_serial_update): Use NL2SP to flatten list of extracted
m4_include files.
* tests/libtoolize.at: More tests for old-style verbatim copying
of macros into aclocal.m4.
* libltdl/m4/argz.m4, libltdl/m4/ltoptions.m4, libltdl/ltsugar.m4,
libltdl/m4/ltversion.in: Add serial number tags, and bump serial
number.
2005-10-31 Kean Johnston <jkj@sco.com>
[ sysv5*, sco3.2v5*, sco5v6*, unixware*, OpenUNIX*, sysv4*uw2* ]
Patches for various bug fixes, small improvements and updating
the SCO platform support.
* libltdl/m4/libtool.m4 (LT_CMD_MAX_LEN): Set correctly for SCO.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Set correct
symcode values for the native nm on SCO platforms.
* libltdl/m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): All SCO platforms
open dependency libraries when you dlopen a module.
2005-10-31 Albert Chin-A-Young <china@thewrittenword.com>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[ aix ]: Remove duplicate always_export_symbols=yes for AIX.
2005-10-29 Howard Chu <hyc@highlandsun.com>
* libltdl/config/ltmain.m4sh (func_mode_link):
With `-static', only link statically against uninstalled
libtool libraries. Fixes 1.5.x regression to match documented
behavior.
* NEWS: Updated.
2005-10-27 Stepan Kasal <kasal@ucw.cz>
* HACKING: Update note about use of `$#' in m4 macros.
2005-10-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/tagtrace.test: Allow `$AUTOCONF' to contain arguments.
Skip if the running `autoconf' version is older than the one
used to bootstrap Libtool.
2005-10-26 Eric Blake <ebb9@byu.net>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (vcl-tmp): Avoid warnings from diff.
* bootstrap: Avoid warnings from find.
(lt_tab): Use to prevent editor whitespace "cleanup".
2005-10-26 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh: Put back the func_serial_update callback for
func_copy_some_files so that the testsuite passes again. We'll
have to find a better way of handling serial numbers in libtool
macro files.
* libltdl/Makefile.inc: New file, factored out of Makefile.am for
use in non-recursive libltdl installations.
* bootstrap: Adjust.
* Makefile.am: include it.
(libltdl/Makefile.am): Adjust to build from the new
libltdl/Makefile.inc.
(SUBDIR_LIBOBJS): Renamed from this...
(LTDL_SUBDIR_LIBOBJS): ...to this.
* configure.ac: Adjust.
* doc/libtool.texi (Invoking libtoolize): Document the new modes
and libtoolize option to select them.
* libtoolize.m4sh: Parse new options, --nonrecursive, --recursive
and --subproject. Install the appropriate files with --ltdl
according to the selected mode.
(func_scan_files): If --subproject, --recursive or --nonrecursive
options were not given, use the value from LT_CONFIG_LTDL_DIR; if
a mode was given, and there is also an argument to
LT_CONFIG_LTDL_DIR, ensure they are the same.
* NEWS: Updated.
* libtoolize.m4sh: Don't use func_serial_update as a copy
function for libtool m4 files with no macro_regex. If the
files are copied directly into aclocal.m4, because
AC_CONFIG_MACRO_DIR isn't set for example, there is no way
to tell what serial number goes with what source file.
(func_serial_update): For future-proofing, only make the second
serial number check if the destination file wasn't m4_included
into aclocal.m4 (and hence updated automatically by the cat of
copying a new version to the dest directory).
* libtoolize.m4sh: Move the consistency checks...
(func_check_macros): ...into here. Also suggest LT_WITH_LTDL if
appropriate.
* libtoolize.m4sh: Copying just libtool.m4 for hand maintained
aclocal.m4 doesn't work. List all required files in that case,
using the files from installed libltdl if available. Also, list
the additional files required when using libltdl.
Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
* libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_first): Removed.
* libltdl/ltdl.h, libltdl/ltdl.c (lt_dlhandle_next)
(lt_dlhandle_find, lt_dlforeach): Removed...
(lt_dlhandle_iterate, lt_dlhandle_fetch, lt_dlhandle_map): Similar
functions that are multi-loader safe, and require a registered
interface validator argument.
* doc/libtool.texi: Updated.
* NEWS: Updated.
* libtoolize.m4sh: Always copy pkgconfig_files for --ltdl, incase
ltdl needs additional things not found by automake when looking at
the parent project configury.
* tests/libtoolize.at: Adjust.
2005-10-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh [darwin]: Don't check for "bundle"
in file path.
Reported by Christoph Egger <Christoph_Egger@gmx.de>.
2005-10-14 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Don't nest AC_MSG_CHECKING/
AC_MSG_RESULT pairs.
2005-10-14 Gary V. Vaughan <gary@gnu.org>
* tests/subproject.at: Move 'touch config.h.in' invocation.
* tests/subproject.at (_LTDL_SETUP): Use pushdef/popdef to
simulate file-local scope. Empty source file compilation is not
portable, so add minimal code to generated foo.c file.
2005-10-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (LT_PATH_NM): End test source with
newline.
Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
2005-10-13 Peter O'Gorman <peter@pogma.com>
* libltdl/ltdl.c (find_module): Check that dir is set.
(load_deplibs): Don't free the user search paths too early.
2005-10-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/testsuite.at (LT_AT_AUTOMAKE): New macro.
* tests/subproject.at: Use it. Do not call `autoreconf' in
tests, since it will try to reconfigure `sub/ltdl', which
breaks `make check' during `distcheck' because of a readonly
source tree.
* libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Also set INCLTDL.
* libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE)
(LT_WITH_LTDL): Revert Gary's 2005-10-10 patch.
* tests/stresstest.at: Use `allow_undefined_flag' instead of
host_os setting.
2005-10-10 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/ltdl.m4 (_LT_ENABLE_INSTALL): Remove bogus extra
closing brackets.
2005-10-10 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE, LTDL_INSTALLABLE): Remove
AC_SUBST of LIBLTDL, LTDLINCL, and all mention of INCLTDL.
(LT_WITH_LTDL): Due to order constraints between LTDL_CONVENIENCE,
LTDL_INSTALLABLE, LT_WITH_LTDL & LTDL_INIT, we can safely AC_SUBST
LIBLTDL and LTDLINCL here. Also, remember to synch INCLTDL.
2005-10-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/stresstest.at [ aix3, beos, os2 ]: Always use
`-no-undefined'.
2005-10-09 Christian Biesinger <cbiesinger@web.de>
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [ beos ]:
Initial shared library support for C++.
2005-10-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* configure.ac (abs_top_builddir, abs_top_srcdir): always
substitute.
* Makefile.am (BUILDCHECK_ENVIRONMENT)
(INSTALLCHECK_ENVIRONMENT): New macros. Set _lt_pkgdatadir,
LIBTOOL, LIBTOOLIZE accordingly, by using above, and
program_transform_name.
* tests/testsuite.at (TESTS_PREPARE): Do not set them anymore.
Set $unset.
(LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
2005-10-05 Gary V. Vaughan <gary@gnu.org>
* tests/subproject.at: Commit the right file this time.
2005-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Fix m4 quoting
for lt_simple_link_test_code.
Reported by Nicolas Joly <njoly@pasteur.fr>.
2005-10-05 Gary V. Vaughan <gary@gnu.org>
* tests/subproject.at: New tests for libltdl as a subproject with
its own configuration.
* tests/testsuite.at: Use it.
* Makefile.am (TESTSUITE_AT): Depend on it.
2005-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am: Simplify. Do not use abs_top_srcdir.
Reported by Gary V. Vaughan <gary@gnu.org>.
2005-10-05 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Spurious './' prefixes
upset BSD pmake, don't set lt_ltdl_dir in this case.
(LTDL_CONVENIENCE, LTDL_INSTALLABLE): Adjust.
2005-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (BUILDCHECK_ENVIRONMENT)
(INSTALLCHECK_ENVIRONMENT): New macros.
(check-local, installcheck-local): Use them.
* tests/testsuite.at (PREPARE_TESTS): Extract host_alias, ECHO.
Set configure_options appropriately.
(LT_AT_CONFIGURE, LT_AT_AUTORECONF, LT_AT_MAKE): New macros.
(LT_AT_BOOTSTRAP): Use them.
* tests/am-subdir.at, tests/early-libtool.at,
tests/old-m4-iface.at, tests/standalone.at: Likewise.
* tests/link-order.test: Do not extract ECHO any more.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Require
AC_CANONICAL_HOST and _LT_DECL_SED.
2005-10-03 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/ltdl.m4: Bump serial as we are changing the
interface.
(LT_CONFIG_LTDL_DIR): New macro to centralise setting the
subdirectory used for libltdl.
(LTDL_CONVENIENCE): Continue backwards compatibility support for
declaring the libltdl source subdirectory with an argument, but
defer to LT_CONFIG_LTDL_DIR.
(AC_LIBLTDL_CONVENIENCE): Adjust to upgrade to the new style.
(LTDL_INSTALLABLE, AC_LIBLTDL_INSTALLABLE): Ditto.
(LTDL_INIT): lt_ltdl_dir is set by LT_CONFIG_LTDL_DIR now, and
even `./' needs trailing slashes trimming! If the user didn't
upgrade their configure.ac yet, call LT_CONFIG_LTDL_DIR for them.
* libtoolize.m4sh (func_scan_files): If --ltdl option is given
without a directory argument, use the value from
LT_CONFIG_LTDL_DIR; if the argument is given, and there is also a
value in LT_CONFIG_LTDL_DIR, ensure they are the same.
* libltdl/configure.ac: Use it.
* NEWS: Updated.
2005-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/old-m4-iface.at (Makefile.in): Do not reconfigure
libltdl directory.
2005-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/deplibs-ident.at: New file with XFAIL test to expose
wrong multiple listing of a deplib on the command line.
* Makefile.am, tests/testsuite.at: Updated.
Reported by Brian Barrett <brbarret@open-mpi.org>.
* tests/old-m4-iface.at: Define top_srcdir, work around current
ltdl.m4 bug.
* libltdl/config/ltmain.m4sh (func_mode_link):
Fix wrong logic introduced in last commit.
2005-09-30 Gary V. Vaughan <gary@gnu.org>
* tests/libtoolize.at: Add a new test to catch a regression I
almost introduced with respect to copying macro files when
AC_CONFIG_MACRO_DIR is shared with libltdl subproject.
2005-09-30 Gary V. Vaughan <gary@gnu.org>
* tests/old-m4-iface.at: Start of a new test series for m4
interface backwards compatibility.
* tests/testsuite.at: Use it.
(macrodir): Declare the location of uninstalled libtool m4 macros.
* Makefile.am (TESTSUITE_AT): Depend on it.
2005-09-29 Tim Rice <tim@multitalents.net> (tiny change)
* tests/early-libtool.at (Makefile.in): Set $(SHELL).
2005-09-29 Peter Ekberg <peda@lysator.liu.se>
* libltdl/config/ltmain.m4sh (func_mode_link): Don't modify
user provided symbols file. Adjust removal of temporary files
and also remove temporary files used during symbols file
filtering.
2005-09-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libtoolize.m4sh (func_included_files): Do not recurse
non-existent files.
2005-09-27 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_scan_files): Support projects that have
upgraded libtool, but still use an old autoconf. When the libtool
macros are not copied (because of missing ACLOCAL_AMFLAGS and
AC_CONFIG_MACRO_DIR ), point them at the libtoolize master tree
for files to manually copy into acinclude.m4 or aclocal.m4.
* libltdl/lt_error.c (lt__last_error, lt__error_strings): The lt__
prefix is used to indicate internal symbols that are only exported
for use by other parts of libltdl. These are now static, so...
(last_error, error_strings): ...renamed to this. Changed all
callers.
* libltdl/ltdl.h (lt_dlmutex_register, lt_dlmutex_lock)
(lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror)
(lt_dlmalloc, lt_dlrealloc, lt_dlfree): Remove deprecated APIs.
* doc/libtool.tex: Updated.
* NEWS: Updated.
* libltdl/ltdl.c (lt_dlcaller_register): Renamed to avoid problems
with module visibilty when linked with programs written for the
old API.
(lt_dlinterface_register): New name.
* Makefile.am (VERSION_INFO): Bumped.
* doc/libtool.texi (User defined module data): Updated.
2005-09-27 Tim Rice <tim@multitalents.net>
* tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
<AUTORECONF>: Allow variable override.
2005-09-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* HACKING: Only update libltdl version info before release.
2005-09-26 Tim Rice <tim@multitalents.net>
* configure.ac <AUTOM4TE>: Allow variable override.
2005-09-25 Alan W. Irwin <irwin@beluga.phys.uvic.ca>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_win32_libid)
[ cygwin, mingw ]: Robustify sed script to determine
win32_libid_type.
(func_mode_link) [ mingw ]: Ignore `-lm'.
2005-09-25 Peter Ekberg <peda@lysator.liu.se>
* libltdl/libltdl/lt__private.h, libltdl/lt_error.c:
Don't export the lt__last_error and lt__error_strings
variables. Define lt__error_strings so that no relocations
are needed.
* libltdl/libltdl/lt__private.h (LT__STRERROR, LT__GETERROR)
(LT__SETERRORSTR): Adjust to not use the above variables,
instead use the following functions...
* libltdl/lt_error.c: (lt__error_string, lt__get_last_error)
(lt__set_last_error): Reimplement the functionality in
these functions instead.
* libltdl/libltdl/lt_error.h: Add LT_ERROR_LEN_MAX define for
max error string length.
(lt_dlerror_table): Append explicit nul terminators so that
compilers warn more reliably if the above define is too small.
2005-09-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/link-order.at [ aix* ]: skip path syntax grep.
2005-09-23 Peter Ekberg <peda@lysator.liu.se>
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Fix awk
script to be a single line so that the cache variable isn't
multiline.
2005-09-23 Eric Blake <ebb9@byu.net> (tiny change)
* libltdl/loaders/loadlibrary.c (vm_open): Silence gcc warnings.
[__CYGWIN__]: Include <sys/cygwin.h> for prototype.
2005-09-22 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Don't clobber the working copy metadata in
./{arch}/libtool during bootstrap.
2005-09-22 Peter Ekberg <peda@lysator.liu.se>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Filter
user supplied symfile to tag relevant symbols as data
symbols. Fixes segfault in stresstest.at on Cygwin and
makes the test pass.
2005-09-22 Peter Ekberg <peda@lysator.liu.se>
* tests/link-order.test: Clean up the uninstalled libraries
before linking the test executables so that they don't pick
up the dlls from the current dir on Cygwin and MinGW.
2005-09-22 Tim Rice <tim@multitalents.net>
* libltdl/m4/libtool.m4 (LT_PATH_NM, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG, _LT_SYS_HIDDEN_LIBDEPS):
Add missing `;;' after case list.
2005-09-22 Peter Ekberg <peda@lysator.liu.se>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS, _LT_COMPILER_PIC)
(_LT_LINKER_SHLIBS): Require _LT_TAG_COMPILER to make sure that
$compiler is assigned. Fixes crippled configure output.
2005-09-21 Peter Ekberg <peda@lysator.liu.se>
* libltdl/m4/libtool.m4 (LT_PATH_NM): Fix autodetection of
dumpbin and also check for "link -dump -symbols" as a synonym
for "dumpbin -symbols".
* libltdl/config/ltmain.m4sh (func_mode_uninstall): Clean
up $dlname as well when cleaning a uninstalled libtool
library. Fixes -mode=clean on Cygwin and MinGW to actually
remove the dll when cleaning up an uninstalled library.
2005-09-20 Peter Ekberg <peda@lysator.liu.se>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
Split up --out-implib option for linker in separate args so that
the MSYS path translation can do its magic on the provided path
to the import library. Fixes problem in stresstest.at on MinGW.
2005-09-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (ltdldatafiles): Fix installation order to match
dependency order.
(libltdl/Makefile.in): Use $(srcdir) for non-GNU make.
2005-09-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_mode_link): Allow some
ARM gcc ABI flags through.
Reported by Andrés Moré <more.andres@gmail.com>.
* Makefile.am (all-local): Rebuild libltdl/Makefile.in.
* libltdl/m4/ltdl.m4 (LTDL_INIT) <CONFIG_H>: Rename to..
<LT_CONFIG_H>: this, to contain the name of the config
header.
* Makefile.am <DEFS>: Use it to define LT_CONFIG_H.
* HACKING, libltdl/argz.c, libltdl/lt__alloc.c,
libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h,
libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h:
Adjusted.
2005-09-16 Peter Ekberg <peda@lysator.liu.se>
* tests/testsuite.at (LT_AT_EXEC_CHECK): Make sure
that the exit status of the tested program is
propagated as the exit status of the expression
fed to AT_CHECK.
2005-09-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/argz.c <HAVE_CONFIG_H>: Avoid redefinition warning.
* libltdl/ltdl.c (lt_argz_insert): Work around newlib
argz_insert bug.
* Makefile.am (VERSION_INFO): Bumped revision.
Reported by Eric Blake <ebb9@byu.net>.
2005-09-13 Peter Ekberg <peda@lysator.liu.se>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/config/ltmain.m4sh (func_generate_dlsyms):
Fix escape expression to actually escape relevant
characters from the following grep. Fix Cygwin and
MinGW to use the filtered symbol list when exporting
from self, and not the symbol filter.
* tests/stresstest.at: Export w8, not w8$
2005-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Make tagdemo work smoothly with both pre- and ISO C++ compilers,
and remove all use of libstdc from other tests.
* tests/tagdemo/configure.ac (HAVE_NAMESPACES, HAVE_IOSTREAM):
New tests for ISO C++ features. Reimplementation of similar
macros from the autoconf archive.
* tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp: Adjusted.
* tests/am-subdir.at, tests/template.at: Do not use iostream.
2005-09-12 Peter Ekberg <peda@axentia.se>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/testsuite.at (host_os): Pull from `libtool --config'.
* tests/stresstest.at [ cygwin, mingw, pw32 ]: Use it to fix
setting of `-no-undefined'.
2005-09-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltdl.m4 (LT_WITH_LTDL, LTDL_CONVENIENCE)
(LTDL_INSTALLABLE): Use less quoting for expanded LIBLTDL,
LTDLINCL. Use m4_default instead of m4_if, to work
around AU_ALIAS bug with empty macro arguments.
(LTDL_INIT): Likewise.
* libltdl/m4/ltoptions.m4 (_LT_WITH_PIC): Likewise.
* TODO, HACKING: Updated.
2005-09-10 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (TAR): Allow the user to override the tar
command.
2005-09-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_BOILERPLATE)
(_LT_LINKER_BOILERPLATE, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
(_LT_COMPILER_C_O): When comparing expected and actual compiler/
linker output for warnings, weed out both empty lines as well as
lines starting with possibly indented `+', to allow for shell
debugging with `set -x'.
Check the weeded instead of unweeded contents for emptiness.
* libltdl/config/ltmain.m4sh (func_mode_link): Actually provide
a useful error message. Fixes long-standing shameful user
neglection.
Reported by Martin Paljak <martin.paljak@gmail.com>.
2005-09-08 Peter Ekberg <peda@axentia.se>
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]:
Symbols in "pick any" sections are not global. Use
awk, not sed, in the global_symbol_pipe so that keeping
track of sections is easier.
* doc/libtool.texi (libtool script contents): Update to hint
at new findings concerning "pick any" sections.
2005-09-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/early-libtool.at (config.status): Use EXEEXT
consistently.
Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
2005-09-08 Charles Wilson <cygwin@cwilson.fastmail.fm>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[ cygwin, mingw, pw32 ]: Use --enable-auto-image-base instead of
a fixed image base address.
2005-09-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [ sysv4*uw2*,
sysv4.2uw2* ]: Fix my last checkin to really match the more special
case before the general case.
Reported by Stepan Kasal <kasal@ucw.cz>.
2005-09-06 Roger Cornelius <rac@tenzing.org>
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD)
[ sysv5OpenUNIX8, sysv5UnixWare7, sysv5uw[78], unixware7,
sysv4*uw2* ]: Match special cases before general case.
2005-09-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* bootstrap: another AIX sed fix.
* Makefile.am (TESTS_ENVIRONMENT): Export SHELL.
* bootstrap (SHELL): Set to $CONFIG_SHELL or /bin/sh.
Name `make' targets in portable fashion. Work around `rm'
warnings. Unconditionally create fake `libtoolize'.
Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
* Makefile.am (doc/notes.txt): Use --no-headers instead of
--plaintext for makeinfo.
Reported by Peter O'Gorman <peter@pogma.com>.
2005-09-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ aix ]
<export_symbols_cmds>: Work around shell expansion issue in
func_show_eval by separating `$' and field number; drop then
unnecessary m4 quoting.
2005-09-02 Gary V. Vaughan <gary@gnu.org>
AC_BEFORE only works if declarations are made inside the macro
cited as the first argument:
* libltdl/m4/libtool.m4 (LT_OUTPUT): Move AC_BEFORE decls...
(LT_INIT, LT_LANG): ...to the macro that has to come first.
2005-09-01 Peter O'Gorman <peter@pogma.com>
* libltdl/m4/libtool.m4 (old_postintall_cmds): chmod 644 before
running ranlib.
Reported by Gerald Pfeifer <gerald@pfeifer.com>
2005-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77)
(_LT_PROG_FC): aclocal-1.4 compatibility workaround.
* bootstrap: Do not use nonportable -path.
Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
2005-09-01 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (LT_INIT): Fix a logical error with
documentation of --with-pic vs --without-pic.
2005-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): m4_defun this..
* libltdl/m4/libtool.m4 (LT_INIT): so it can be m4_require'd
from here with user-supplied options. Fixes output macro
ordering issue.
2005-09-01 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_scan_files): When searching for evidence
of Autotools in aclocal.m4, be careful not to trip over requires
and defuns.
2005-08-31 Gary V. Vaughan <gary@gnu.org>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltoptions.m4 (_LT_SET_OPTIONS): Move option macro
dipatch..
(_LT_SET_OPTION): here. Do not fail but warn on unknown
options.
(_LT_UNLESS_OPTIONS(win32-dll), LT_OPTION_DEFINE(dlopen)):
Add whitespace.
Reported by Robert Ögren <lists@roboros.com> and
Akim Demaille <akim@lrde.epita.fr>.
2005-08-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 [ solaris CC ]: Document issue with C++
standard libraries.
2005-08-30 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/ltoptions.m4 (AC_LIBTOOL_PIC_MODE): Renamed...
(AC_LIBTOOL_PICMODE): ...this in the backwards compatibility
code. There never was an AC_LIBTOOL_PIC_MODE macro.
* libltdl/m4/libtool.m4 (_LT_SETUP): Remove duplicate
--enable-libtool-lock declaration.
2005-08-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_PATH_TOOL_PREFIX, _LT_SYS_HIDDEN_LIBDEPS, _LT_DECL_EGREP):
Fix typos.
* Makefile.am: Install libltdl data files in correct order.
Use pre-defined programs for installation; use NORMAL_INSTALL
and NORMAL_UNINSTALL. Really fix ownership and timestamp
problems. Fix typo in uninstallation of aclocal files.
Reported by Peter Breitenlohner <peb@mppmu.mpg.de> and
Charles Wilson <cygwin@cwilson.fastmail.fm>.
2005-08-29 Gary V. Vaughan <gary@gnu.org>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Allow for portability with Autoconf 2.59, Automake 1.9.6,
which lack AC_CONFIG_LIBOBJ_DIR support.
* bootstrap: Unless environment variable WORKING_LIBOBJS_SUPPORT
is set to true aka `:', symlink ..
* argz.c lt__dirent.c lt__strl.c: .. these from the copies in
libltdl.
* configure.ac (SUBDIR_LIBOBJS): Automake conditional, set if
bootstrap didn't make the extra copies of libobj sources in
top srcdir...
* Makefile.am: Add these to EXTRA_DIST if SUBDIR_OBJS is not set,
as well as the originals in libltdl/, in order to work when
bootstrapped both with old and newer Automake/Autoconf.
2005-08-29 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/ltdl.m4 (LTDL_CONVENIENCE): Fix the comment to not
pretend that LIBLTDL and LTDLINCL are not AC_SUBSTed here.
2005-08-29 Gary V. Vaughan <gary@gnu.org>
Some macros had relied on accidentally correct ordering in order
for $MV to be defined before use. Factor out setting of some
common file commands and m4_require it before use:
* libltdl/m4/libtool.m4 (_LT_FILEUTILS_DEFAULTS): Allow user to
override some common file commands at configure time.
(_LT_SETUP, _LT_CONFIG, _LT_COMPILER_OPTION, _LT_LINKER_OPTION)
(_LT_COMPILER_C_O, _LT_COMPILER_FILE_LOCKS)
(_LT_SYS_DYNAMIC_LINKER, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
(_LT_SYS_HIDDEN_DEPLIBS): m4_require it to ensure the commands are
defined before they are called.
2005-08-28 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4: AU_DEFUN doesn't pass
arguments. Use AU_ALIAS instead!
2005-08-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
Gary V. Vaughan <gary@gnu.org>
* libltdl/config/ltmain.m4sh (func_lalib_unsafe_p) [osf]:
Save file descriptor to original STDIN, and restore after
redirection. Fixes memory corruption with Tru64 and OSF sh.
Reported by Nicolas Joly <njoly@pasteur.fr>.
2005-08-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
Peter Ekberg <peda@lysator.liu.se>
* tests/early-libtool.at: Fix goofed up make rules in
previous commit.
* tests/inherited_flags.at: Weaken for MSVC.
* tests/early-libtool.at, tests/template.at: Fix for compiler
that do not understand '-c -o'.
2005-08-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/standalone.at, tests/template.at: Do not compare
output because of EOL issues. Resolve warnings, make cross-
compilation aware.
Reported by Peter Ekberg <peda@axentia.se>.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_LINKER_SHLIBS): Double-quote unsafe tag variable
descriptions: they are literals.
2005-08-25 Peter Ekberg <peda@lysator.liu.se>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/standalone.at: (without autotools): Add
$(CFLAGS) to LTCOMPILE and LTLINK. Separate compiling
and linking. Remove compiling flags from link. Add
--tag. Add -no-undefined flag.
2005-08-24 Bruno Haible <bruno@clisp.org>
* libltdl/config/ltmain.sh (func_mode_install): Try "ln -s -f"
and "rm -f && ln -s" to make a symlink for a shared library: the
former is needed for libraries `ln' depends on, the latter for
Solaris /bin/ln.
Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
* libltdl/config/ltmain.sh (cwrappersource): return 127 if exec
failed.
2005-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/libtool.m4 (_LT_COMPILER_C_O): Send chmod warning to log.
* tests/defs.m4sh (m4dir, auxdir, scripts): Fix for source tree
reorganization.
* tests/sh.test: Adjust. Also barf on sed diagnostics so this
test will not fail again silently.
* libltdl/m4/ltdl.m4 (LT_SYS_SYMBOL_USCORE): Use _LT_EOF, not
EOF.
* tests/fcdemo/Makefile.am (suffix rules): Explicitly add
$(FCFLAGS_f90) so the tests can pass on AIX.
2005-08-24 Peter O'Gorman <peter@pogma.com>
* libltdl/config/ltmain.m4sh (inherited_linker_flags): Work when
output is an application too.
Reported by Christopher Egger <Christoph_Egger@gmx.de>
2005-08-23 Stepan Kasal <kasal@ucw.cz>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/m4/ltdl.m4 (LTDL_INIT): Use AH_HEADER if defined.
Compute CONFIG_H only before creating config.status.
Reported by Peter Ekberg <peda@axentia.se>.
2005-08-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.maint (web-manual): Fix $(LN_S) to use absolute path.
Fix creating the manual for VPATH build.
* bootstrap: Fix missing replace config -> $auxdir. ltmain.m4sh
is prerequisite to ltmain.sh. Improve warning message.
2005-08-22 Gary V. Vaughan <gary@gnu.org>
Reorganise the libtool tree to create a bootstrapped libltdl for
installation to the libtoolize master tree, so that libltdl is
useable even in the extreme case of when automake and autoconf are
not installed on the developers machine. Part of this change
requires some duplication of rules between Makefile.am (which
builds libltdl for this distribution) and libltdl/Makefile.am
(which is used by projects that libltoolize --ltdl --copy), so
libtool now really does use a single toplevel Makefile.am, and we
generate libltdl/Makefile.am from that:
* m4, config: Moved from here...
* libltdl/m4, libltdl/config: ...to here, to reduce the amount of
kludging needed in bootstrap for autoreconf to run.
* tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Adjust to
compensate.
* tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/fcdemo/configure.ac, tests/mdemo/configure.ac,
tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto.
* libltdl/m4/ltdl.m4: Increment serial number.
(LTDL_INIT): Accept an optional directory argument to prefix each
of the LD_DLLOADERS locations. Default to empty for backwards
compatibility.
* Makefile.maint: Adjust to compensate.
* configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR): Adjust.
(AC_CONFIG_LIBOBJ_DIR): Set here so that we can build LTLIBOBJS
from in a subdirectory from the amalgamated Makefile.am.
(AM_PROG_CC_C_O, AM_INIT_AUTOMAKE): Use subdir-objects.
(AC_CONFIG_FILES): Remove libltdl/Makefile.am.
* libltdl/Makefile.am: Removed from repository, and merged into
Makefile.am as we now generate it...
* Makefile.am (libltdl/Makefile.am): ...from here, by extracting
the merged rules, and tweaking paths to accomodate the difference
in directory from Makefile.am to libltdl/Makefile.am.
(nobase_dist_pkgdata_DATA): Automake generated installation rules
change timestamps of installed files, so renamed this...
(configauxfiles): ...to this...
(libtoolize): ...substitute it...
(install-data-local): ...install manually, preserving
timestamps...
(install-data-hook): ...and set execute bit as appropriate.
(uninstall-hook): Not forgetting to remove them at uninstall.
(libltdl/Makefile.in): New rule. Called from...
* bootstrap: ...here to avoid relying on config.status at
bootstrap time.
(auxdir, m4dir): Extract from configure.ac for ease of future
maintenance. Adjust all references.
(reconfdirs): Call autoreconf for libltdl too -- even
though we don't use it for the build, libltdl/configure and
friends are installed with `libtoolize --ltdl --copy'.
* libtoolize.m4sh: Add files from the installed config master tree
to libtoolize --ltdl project subdirectory.
Diagnose duplicated files when --ltdl is used in an autotooled
project.
It's perfectly fine to run `libtoolize --ltdl --copy' in a tree
that has no configure.ac or configure.in; we want libltdl to be
useful even to projects that don't use autotools themselves.
(libtoolize_flags): Removed. Changed all callers.
(func_massage_pkgconfig_files): New function.
* tests/standalone.at: New tests for using libltdl without
supporting configury in the parent project.
* tests/testsuite.at: Run them!
* NEWS: Updated.
2005-08-22 Peter Ekberg <peda@lysator.liu.se>
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Add
forgotten end bracket.
* doc/libtool.texi: Shorten the lines describing the
output from MS dumpbin, and align the columns.
* m4/libtool.m4: Bump serial number.
(LT_PATH_NM): If nm is not found on the path, look for
dumpbin. Then check if $NM responds as dumpbin would
and if not, assume the name lister is BSD nm compatible.
(_LT_CMD_GLOBAL_SYMBOLS): If the name lister uses the
dumpbin interface, adjust the test to find a working
global_symbol_pipe.
* doc/libtool.texi: Document $NM to possibly be MS
dumpbin compatible, and also document the format of the
relevant output from MS dumpbin.
2005-08-21 Gary V. Vaughan <gary@gnu.org>
* libltdl/Makefile.am: revert mistaken commit.
* tests/template.at [darwin]: Some of these tests result in
unresolved symbols on darwin, so don't run those test on that
host!
2005-08-18 Gary V. Vaughan <gary@gnu.org>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (LT_OUTPUT): New macro to generate
libtool before config.status.
(_LT_CONFIG_COMMANDS): If LT_OUTPUT has been invoked, then
generate code in config.status to call config.lt instead of
generating libtool directly.
* doc/libtool.texi (LT_INIT): Document LT_OUTPUT.
* tests/early-libtool.at: New test.
* Makefile.am (TESTSUITE_AT): Updated.
* tests/testsuite.at: Updated. Define defaults for $ACLOCAL,
$AUTOCONF.
2005-08-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* TODO: Actually updated now.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ freebsd ]: Do not
assume `aout' for modern FreeBSD by absence of deprecated
`objformat'.
* m4/libtool.m4 [sun, CC] (_LT_LANG_CXX_CONFIG): Move postdeps
override ..
(_LT_SYS_HIDDEN_LIBDEPS): ..here.
* TODO: Updated.
2005-08-18 Stepan Kasal <kasal@ucw.cz>
* config/general.m4sh (SP2NL, NL2SP): Simplify.
2005-08-17 Gary V. Vaughan <gary@gnu.org>
* m4/ltdl.m4 (LTDL_INIT): Fix mismatched parens.
2005-08-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/inherited_flags.at: Store intermediate libtool output
for better debugging.
* tests/link-order.at: Add -no-undefined to LDFLAGS.
* tests/convenience.at, tests/template.at: Change suffix of C++
files to .cpp, for compatibility with MSVC.
Reported by Peter Ekberg <peda@axentia.se>.
2005-08-12 Jeremie LE HEN <tataz@sitadelle.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Creating object files, Linking libraries):
Update description of library object (.lo) and libtoo library
(.la) files.
(all over): Replace MODE with --mode=MODE in examples.
2005-08-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_source): New function.
(func_mode_execute, func_mode_install, func_mode_link): Use it.
Do not append a dot to a file name to source, it breaks on
cygwin managed mounts and is not necessary anywhere.
Reported by Eric Blake <ebb9@byu.net>.
* config/ltmain.m4sh (func_execute_cmds): New function.
(func_mode_finish, func_mode_install, func_mode_link)
(func_mode_uninstall): Use it.
* tests/defs.m4sh (func_configure): Rename to ..
(func_configure_nofail): this, call from old.
* tests/fcdemo-conf.test, tests/fcdemo-shared.test,
tests/fcdemo-static.test: Use. Do not fail gratuitously but
SKIP on compilers that look like they could be Fortran 77-only.
Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
* config/ltmain.m4sh (mode): Do not initialize, for nicer error
messages.
2005-08-10 Peter Ekberg <peda@lysator.liu.se>
* m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Set ac_ext to cpp, not cc.
2005-08-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (inherited_linker_flags): Backed out broken
patch.
2005-08-08 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh (inherited_linker_flags): Work when output
is an application too.
Reported by Christopher Egger <Christoph_Egger@gmx.de>
2005-08-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_PROG_FC, _LT_LANG_FC_CONFIG): New macros
for modern Fortran.
(LT_LANG, _LT_LANG_DEFAULT_CONFIG, _LT_SYS_DYNAMIC_LINKER,
_LT_SYS_HIDDEN_LIBDEPS): Adjusted.
* tests/fcdemo-conf.test, tests/fcdemo-exec.test,
tests/fcdemo-make.test, tests/fcdemo-shared.test,
tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
tests/fcdemo/README, tests/fcdemo/configure.ac,
tests/fcdemo/cprogram.c, tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
tests/fcdemo/foof.f90, tests/fcdemo/foof2.f90,
tests/fcdemo/foof3.f90, tests/fcdemo/fprogram.f90: New tests for
Fortran.
* tests/convenience.at: Extended.
* Makefile.am, configure.ac: Adjusted.
* NEWS: Updated.
* AUTHORS, HACKING: Updated.
2005-08-05 Albert Chin-A-Young <china@thewrittenword.com>
* config/ltmain.m4sh (func_mode_link): Ignore errors from expr
when determining if piece-wise linking should be done.
2005-08-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_link) <cwrappersource>: Add
missing bit from Christoph's patch.
* m4/libtool.m4 (_LT_LINKER_HARDCODE_LIBPATH, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG): Comment typos.
2005-08-04 Christoph Egger <Christoph_Egger@gmx.de>
* config/ltmain.m4sh (func_mode_link) <cwrappersource>: Change
basename() to base_name() and have it return a pointer to const,
fix compilation warnings.
2005-07-30 Peter Ekberg <peda@lysator.liu.se>
* m4/libtool.m4 (_LT_PROG_F77): Set it up so that saying F77=no
to configure disables the fortran tests in the testsuite.
2005-07-29 Richard Moseley <dickie.moseley@virgin.net>
* m4/ltdl.m4 (LTDL_INIT): Handle in addition the new name for
AC_LIST_HEADERS which is _AC_LIST_TAGS.
2005-07-28 Peter Ekberg <peda@lysator.liu.se>
* libltdl/Makefile.am: Make the LTDLOPEN define controllable
from the configure script.
* m4/ltdl.m4 (LTDL_INIT): Set the LTDLOPEN define according
to libname_spec.
* tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
not time, for really fresh files. Add sleep 1 calls at
strategic places. Makes the test pass for MinGW.
* m4/libtool.m4 (_LT_LINKER_OPTION): Fix copy-paste bug, it is
the linker that is tested.
* tests/demo-noinst-link.test: $make is empty on MSYS, replace
with $MAKE. Makes the test pass for MinGW.
* config/ltmain.m4sh (func_generate_dlsyms): Properly remove
the fake symbol line ": @PROGRAM@ " from the list of exported
symbols.
* libltdl/loaders/loadlibrary.c (vm_open): Set the error mode so
that no dialog is popped up in case the file given to
LoadLibrary is not a dll.
* config/ltmain.m4sh (func_mode_link) <lib>: Make sure
skipped_export is set to colon if _some_ cmd of
export_symbols_cmds is too long.
* libltdl/ltdl.c: The linker is confused by having one
definition of lt_libltdlc_LTX_preloaded_symbols tagged with
__declspec(dllexport) in ltdl.c and one definition with an
initial value in libltdlcS.c. So, just say extern in ltdl.c.
Fixes the mdemo-exec.test for MinGW.
* config/ltmain.m4sh (func_mode_link) <lib>: Zap duplicate
message "creating reloadable object files..."
2005-07-23 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
and -lc for c++ builds with Sun C++ and Centerline C++..
Reported by Albert Chin-A-Young <china@hewrittenword.com>
2005-07-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_CHECK_XSI_SHELL): Fix bogus merge.
Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
2005-07-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/Makefile.am (libltdl_la_DEPENDENCIES): Depend on
$(BUILT_SOURCES) as well, so that argz.h gets created through
`make libltdlc.la'.
Reported by Sven Verdoolaege <skimo@liacs.nl>.
2005-07-08 Peter Breitenlohner <peb@mppmu.mpg.de>
* Makefile.am (install-data-local): Have root own of installed
files (but do not fail, for user installs).
2005-07-08 Bruno Haible <bruno@clisp.org>
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <postinstall_cmds>
[cygwin,mingw,pw32]: Make DLL executable after installing it.
2005-07-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_install): Do not assume `-f'
needs an argument if the install program is `cp'. Cleanup
install mode somewhat.
Reported by Juergen Leising <juergen.leising@gmx.de>.
2005-07-03 Thorsten Glaser <tg@66h.42h.de>
* m4/libtool.m4 (_LT_TRY_DLOPEN_SELF): Quieten configure
output for corner cases on some BSDs.
(LT_CMD_MAX_LEN): Another comment cleanup.
* config/ltmain.m4sh (func_extract_archives, func_mode_install),
m4/libtool.m4 (_LT_SETUP, _LT_SYS_DYNAMIC_LINKER, LT_PATH_LD)
(_LT_PATH_LD_GNU, _LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
Comment language, indentation, and backquote cleanup.
* THANKS: Updated.
2005-07-02 Peter O'Gorman <peter@pogma.com>
* tests/inherited_flags.at: Use -no-undefined.
Reported by Chris Oxenreider <oxenreid@state.net>
2005-07-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_compile, func_mode_link),
m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH, _LT_ENABLE_LOCK):
Remove some unnecessary quotes.
* tests/convenience.at <GCJ>: Fix java test.
Reported by Eric Blake <ericblake@comcast.net>.
2005-07-01 Derek R. Price <derek@ximbiot.com>
* config/ltmain.m4sh (func_mode_link) <shell wrapper>: Handle
spaces in paths to executed programs. Quote path in error message.
2005-06-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* THANKS: Updated.
2005-06-28 Stepan Kasal <kasal@ucw.cz>
* clcommit.m4sh: "grep|sed" can be replaced by mere "sed".
* m4/libtool.m4 (_LT_LIBTOOL_TAGS): Remove unnnecessary "[]".
* m4/lt~obsolete.m4: Use m4_ifndef.
2005-06-27 Stepan Kasal <kasal@ucw.cz>
* m4/ltsugar.m4 (lt_combine, _lt_combine): Fix default separator.
* m4/ltoptions.m4 (_LT_UNLESS_OPTIONS, _LT_SET_OPTIONS): Replace
AC_FOREACH by a combination of m4_foreach/m4_split/m4_normalize.
2005-06-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/ltoptions.m4 (_LT_SET_OPTIONS): Remove unnecessary workaround
for CVS Automake bug (fixed).
Reported by Stepan Kasal <kasal@ucw.cz>.
2005-06-21 Peter O'Gorman <peter@pogma.com>
* conig/ltmain.m4sh [darwin]: Accept -arch flag.
2005-06-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_COMPILER_BOILERPLATE, _LT_LINKER_BOILERPLATE):
New macros: save warnings and boilerplate of simple compile/link
tests.
(_LT_LANG_C_CONFIG, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
(_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Call.
(_LT_COMPILER_OPTION, _LT_LINKER_OPTION, _LT_COMPILER_C_O, ):
Fail only if nonempty warnings different from default
compile/link.
2005-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/ltsugar.m4 (lt_car, lt_cdr): New macros, clones of
m4_car/m4_cdr with the fixed semantics of Autoconf-2.59c CVS, in
order to work with 2.59.
(lt_combine): Use it.
Reported by Christoph Egger <Christoph_Egger@gmx.de>.
2005-06-11 Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/ltoptions.m4 (_LT_SET_OPTIONS): Loop options only if
nonempty.
* m4/ltsugar.m4 (lt_combine): Don't test against empty quotes,
test against empty arg. Fixes infinite m4 loop with CVS
Autoconf.
2005-06-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_COMPILER_OPTION, _LT_LINKER_OPTION): No
need for $ECHO here. Fix sed script syntax to be portable.
This should now put the pic-flag right after the last $*FLAGS
variable again, if any. Necessary for Fortran AC_FC_SRCEXT.
2005-06-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_CONFIG_COMMANDS): Remove long lines.
2005-06-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
_LT_LANG_CXX_CONFIG): PGI also has pgf95. PGI static flag is
`-Bstatic'. Remove harmless extra comma from whole_archive
output.
2005-06-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_compile): In order to find out
about forbidden characters in output, check with grep after
checking func_quote_for_eval result. Also, warn instead of fail.
* config/general.m4sh (func_quote_for_eval)
(func_quote_for_expand): Revert SunOS sh bug workaround patch from
2004-12-28 as it triggers bugs in the Tru64 5.1B shell.
Reported by Albert Chin <libtool@mlists.thewrittenword.com> and
Nicolas Joly <njoly@pasteur.fr>.
2005-06-01 Olly Betts <olly@survex.com> (tiny change)
* libltdl/argz.c (argz_create_sep): Fix typo.
2005-05-31 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh: Do not add installed static litool libraries
to convenience, they are not convenience libraries.
Reported by Chen-Mou Cheng <chenmou.cheng@gmail.com>
2005-05-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* THANKS: Updated.
2005-05-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [aix]:
Fix wrong $ECHO use overlooked in 2005-04-27. Simplify slightly.
* m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS,
_LT_LANG_CXX_CONFIG) [linux]: PGI:
Add $pic_flag to archive_cmds and archive_expsyms_cmds.
Bug reported against LAM by Troy Telford <ttelford@lnxi.com>.
2005-05-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* THANKS: Updated.
2005-05-06 Gary V. Vaughan <gary@gnu.org>
* libltdl/m4/ltdl.m4 (LT_WITH_LTDL): Propogate ltdl directory.
2005-05-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (stamp-vcl): Use `diff' instead of `cmp'.
2005-04-30 Gary V. Vaughan <gary@gnu.org>
Revert the parallel installation changes from November last year:
* libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
configure.
(func_copy_all_from_path): Removed. No longer used.
(func_copy_some_files): Simplify now that nothing is copied from a
list of possible directories now.
(func_scan_files): Remove directory readability check...
(func_nonemptydir_p): ...in favour of a dedicated sanity check
function called from the main body.
(_lt_pkgvdatadir): Set pkgdatadir and aclocaldir appropriately if
this is in the environment.
* configure.ac: Tests for `ln' removed.
(APIVERSION): Removed.
* Makefile.am (pkgvdatadir, nobase_dist_pkgvdata_DATA)
(nobase_pkgvdata_DATA): Renamed to...
(pkgdatadir, nobase_dist_pkgdata_DATA, aclocalfiles): ...these
respectively.
(edit): Adjust for new variable names.
(install-data-local): Don't bother to remove old macro files that
will be overwritten by the installation, and perform a manual
installation of $(aclocalfiles) to preserve timestamps.
(install-exec-hook): Removed. No need to make versioned links.
(uninstall-hook): No need to remove versioned links, but now we
need to manually remove the manually installed $(aclocalfiles).
* doc/libtool.texi: Remove bogus notes about setting
ACLOCAL_AMFLAGS for versioned libtool installations.
* NEWS: Remove parallel installation item.
2005-04-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/ltdl.m4 (all over): Quote all arguments to AC_DEFINE and
AC_DEFINE_UNQUOTED consistently. Reported by
Michael Koch <konqueror@gmx.de>, Riccardo Mottola <zuse@libero.it>,
and Dalibor Topic <robilad@kaffe.org>.
* HACKING: Updated.
2005-04-27 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/convenience.at: Actually add.
* tests/convenience.at: New. Test convenience archives.
* Makefile.am, tests/testsuite.at: Adjust.
* tests/testsuite.at: Reorder tests. Suspend AT_TESTED.
(PREPARE_TESTS): Define EGREP, host, build, LIBTOOL.
(LT_AT_BOOTSTRAP): Fail if autoreconf fails.
(LT_AT_EXEC_CHECK): New macro for execution of $build binaries.
(LT_AT_TAG): New macro to test tag availability or skip test.
* tests/am-subdir.at, tests/duplicate_members.at,
tests/inherited_flags.at, tests/link-order.at,
tests/stresstest.at, tests/template.at: Adjust. Use LT_AT_TAG,
LT_AT_EXEC_CHECK, AT_KEYWORDS. Use compiler/linker flags
consistently.
* tests/link-order.at: Fix use of AT_DATA, bogus redirection
inside AT_CHECK.
* tests/stresstest.at: Do not use wildcards/regex in symbol files,
they are not portable. Use -no-undefined on win32. Fix to ignore
compile/link warnings.
* tests/f77demo/foo.h, tests/f77demo/fooc.c,
tests/f77demo/cprogram.c, tests/mdemo2/main.c, tests/pdemo/foo.h:
Make declarations available.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: sed 3.02 does
not understand \t in regex.
Reported by Tim Van Holder <tim.vanholder@gmail.com>.
* tests/defs.m4sh (func_configure): Don't run the whole configure
script with -x.
* config/ltmain.m4sh: Audit use of echo vs $ECHO.
Reported by Robert Ögren <lists@roboros.com> and others.
* TODO: Updated.
2005-04-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
Gary V. Vaughan <gary@gnu.org>
* HACKING, THANKS: Updated.
2005-04-25 David Edelsohn <dje@watson.ibm.com>
* m4/libtool.m4 (_LT_LINKER_SHLIBS): _LT_TAGDECL(file_list_spec).
* config/ltmain.m4sh (func_mode_link): Change $filelist to
$output.
2005-04-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_CC_BASENAME): Ignore `compile'.
2005-04-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [solaris]:
Update wl for Sun Studio f77/f90/f95. Fix whole_archive_flag_spec
for cc and f77/f90/f95 to prevent reordering in case we link with
$CC.
* m4/libtool.m4: Audit use of echo vs $ECHO.
* TODO: Update.
Reported by Robert Ögren <lists@roboros.com> and others.
2005-04-23 Gary Kumfert <kumfert@llnl.gov>
* m4/libtool.m4 (_LT_LANG_F77_CONFIG) [aix4, aix5]:
Adjust logic to match the C case: Only disable static if not
on ia64 nor runtimelinking.
2005-04-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
* Makefile.am, HACKING: Use lt__cd throughout.
2005-04-22 Gary V. Vaughan <gary@gnu.org>
The FSF are moving offices today. Changed their contact address
in all files from `59 Temple Place, Suite 330, MA 02111-1307' to
`51 Franklin Street, Fifth Floor, MA 02110-1301'.
2005-04-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libtoolize.m4sh (func_scan_files, func_serial,
func_ltmain_update, func_config_update, func_install_update):
Placate AIX sed.
2005-04-19 David Edelsohn <dje@watson.ibm.com>
* config/ltmain.m4sh (func_mode_link): If command exceeds
max_cmd_len and file_list_spec exists, write list of input files
to temporary file.
* m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[aix4,aix5]: Define file_list_spec.
2005-04-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/demo-hardcode.test: Fix typo.
2005-04-17 Alexandre Oliva <aoliva@redhat.com>,
Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh: Don't add files with the same base name to
an archive; rename duplicates instead.
(func_extract_an_archive): Remove section to deal with duplicate
base names in an archive.
* tests/functests.at: remove.
* tests/duplicate_members.at: new test.
* tests/testsuite.at: Add new test, remove old.
* Makefile.am: Add new test, remove old.
2005-04-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/demo-hardcode.test [solaris]: Use dumpstabs if available,
to avoid false failure caused by debug section which contains
command line (Solaris cc).
Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
2005-04-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
* libtoolize.m4sh (func_copy_cb): Fix syntax typo.
2005-04-15 Maciej W. Rozycki <macro@linux-mips.org>
* m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Add old_archive_cmds
definition.
2005-04-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_CC_BASENAME): New macro to figure out
$cc_basename. Skip ccache, distcc, purify, cmdline options,
`$host_alias-' prefix.
(_LT_SETUP, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG)
(_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG): Use.
* NEWS, TODO: Update.
2005-04-15 Gary V. Vaughan <gary@gnu.org>
* libltdl/configure.ac (AC_OUTPUT): loaders/Makefile is no longer
used.
* Makefile.am (lt__cd, CD_TESTDIR): New make macros to work around
problems with CDPATH in some shells.
(check-local, installcheck-local, clean-local): Use them.
2005-04-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
* bootstrap: Define srcdir for making `commit'.
2005-04-14 Alexandre Oliva <aoliva@redhat.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (link mode): Add to tmp_libs paths for
libtool dep libs in reverse order as well.
* Makefile.am, tests/testsuite.at, tests/link-order.at: New test.
2005-04-13 Gary V. Vaughan <gary@gnu.org>
Since the bootstrap process requires that several of the rules for
files generated in doc and tests already lived in
$top_srcdir/Makefile.am, along with proxy rules in sub-Makefiles,
this changeset consolidates almost everything into the top
Makefile.am, simplifying things considerably:
* doc/Makefile.am, tests/Makefile.am: Removed. All rules moved...
* Makefile.am: ...to here and adjusted to run from $top_builddir.
Some reformatting to group rules and declarations by purpose, and
simplify with respect to removing much of the make recursion.
Add `doc/PLATFORMS', `doc/fdl.texi' and `doc/notes.texi'.
`defs.in' and `defs.m4sh' are in directory `tests'.
(uninstall-hook): Don't forget to uninstall libtoolize's libltdl
source tree.
* bootstrap: Simplified dirty makefile management, and bootstrap
file creation in light of having only a single pertinent
Makefile.
* configure.ac (CONF_SUBDIRS): Add tests/ prefix to each subdir to
compensate.
(DIST_MAKEFILE_LIST): Adjust.
(AC_CONFIG_FILES): Remove doc/Makefile and tests/Makefile.
* tests/defs.m4sh (LIBTOOL, scripts): Adjust paths.
* tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/cdemo-undef.test,
tests/demo-conf.test, tests/demo-deplibs.test,
tests/demo-exec.test, tests/demo-hardcode.test,
tests/demo-inst.test, tests/demo-make.test,
tests/demo-nofast.test, tests/demo-noinst-link.test,
tests/demo-nopic.test, tests/demo-pic.test,
tests/demo-relink.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-relink.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-dryrun.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/objectlist.test, tests/pdemo-conf.test,
tests/pdemo-exec.test, tests/pdemo-inst.test,
tests/pdemo-make.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,
tests/tagdemo-undef.test, tests/tagtrace.test (func_cd,
func_require): Adjust paths.
2005-04-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/general.m4sh, libtool.m4 (_LT_SETUP), tests/defs.m4sh,
tests/functests.at: Fix definition of $Xsed.
2005-04-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Improved Portland support: prelinking of C++ templates and
whole_archive.
* m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS) [linux]:
Reinstate formatted whole_archive_flag_spec for PGI compilers.
* config/ltmain.m4sh (func_mode_link), m4/libtool.m4
(_LT_LINKER_SHLIBS): New tag prelink_cmds, to be executed before
linking a program.
(_LT_LANG_CXX_CONFIG) [linux]: Use for pgCC.
(_LT_COMPILER_C_O): conftest might be nonempty, clean up more
thoroughly.
* tests/testsuite.at (LT_AT_BOOTSTRAP): Temporary fix for testing
in-tree libtoolize.
* m4/libtool.m4 (_LT_CONFIG_COMMANDS): Only call sed if
necessary while quoting all libtool variables.
Reported by Robert Ögren <lists@roboros.com>.
2005-04-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/Makefile.am: Typo.
2005-04-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* notes.texi: Platform-specific configuration notes.
* doc/libtool.texi: Include as section.
* bootstrap, doc/Makefile.am: build also as notes.txt and
distribute.
2005-04-04 Gary V. Vaughan <gary@gnu.org>
Under certain circumstances, not all of the macro files were
copied into the destination directory. This changeset fixes
that bug:
* libtoolize.m4sh (func_serial_update): Renamed local variable
`my_update_p' to `my_serial_update_p', and initialise it correctly
even when the destination file is not yet there.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2005-04-04 Gary V. Vaughan <gary@gnu.org>
* tests/libtoolize.at: New tests for basic libtoolize
functionality and reporting.
* tests/testsuite.at: Call them.
* tests/Makefile.am: Distribute them.
* libtoolize.m4sh (pkgvdatadir): Renamed from this...
(_lt_pkgvdatadir): ...to this.
* tests/testsuite.at (LT_AT_LIBTOOLIZE): The `-I' option is no
longer supported by libtoolize. Set _lt_pkgvdatadir in the
environment of the invocation instead.
2005-04-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/template.at: New Autotest tests for C++ with templates.
First test provided by
Markus Christen <markus@igc.phys.chem.ethz.ch>.
* tests/Makefile.am, tests/testsuite.at: Use and distribute.
2005-04-04 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_serial_update): Replace missing
destination serial calculation line, presumably lost due to a bad
merge.
* libltdl/loaders/Makefile.am: Removed actually.
2005-04-04 Gary V. Vaughan <gary@gnu.org>
Getting the value of ltdldatafiles from a submake was not
portable, and had problems with GNU make-3.80 at least. This
changeset pulls the installation rules for libtoolize's copy of
the libltdl sources out of libltdl/Makefile.am so that
ltdldatafiles is defined in the same Makefile that uses it. Also,
this makes a start at cleaning up libltdl/Makefile.am so that it
is useful in a package that uses `libtoolize --ltdl':
* libltdl/loaders/Makefile.am: Removed entirely.
* libltdl/Makefile.am (dlopen.la, dld_link.la, dyld.la)
(load_add_on.la, loadlibrary.la, shl_load.la): All built from here
now that the loaders submake has gone.
(show-ltdldatafiles): Removed. No longer required.
(ltdldatadir, ltdldatafiles, install-local): Moved from here...
* Makefile.am (ltdldatadir, ltdldatafiles, install-local): ..to
here.
(libtoolize): Substitute $(ltdldatafiles) directly without calling
make to get the value from libltdl/Makefile.
2005-04-01 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (libtoolize): Substitute $(nobase_pkgvdata_DATA).
pkgvmacro_DATA is no longer set in the makefile.
* libtoolize.m4sh (func_massage_pkgvmacro_DATA): Use it and, for
consistency, renamed from this...
(func_massage_nobase_pkgvdata_DATA): ...to this. Adjust all
callers.
2005-04-01 Gary V. Vaughan <gary@gnu.org>
Fix problems with serial comparison sed scripts, and factor out
common code from similar serial comparison functions:
* libtoolize.m4sh (func_keyword_update): Common code factored out
of func_ltmain_update and func_config_update.
(func_ltmain_update, func_config_update): Adjust, and fix sed
expressions to not use unportable ? modifier.
(func_install_update): New serial number based file updater keyed
off 'scriptversion' variable in install-sh. Adjust all callers.
2005-04-01 Gary V. Vaughan <gary@gnu.org>
Most of the hair introduced ostensibly to enable testing of
uninstalled libtoolize isn't necessary if we allow overriding of
the libtool master copy directory:
* configure.ac (pkvmacrodir): No need to substitute this.
* Makefile.am (edit): No need to substitute pkgvmacrodir.
(dist_pkgvdata_DATA): Use nobase_ prefix so that these files are
installed to $(pkgvdatadir)/config.
(pkgvmacro_DATA): Renamed to...
(nobase_pkgvdata_DATA): ...this, so that files are installed to
$(pkgvdatadir)/m4.
(install-data-hook): Adjust.
* libtoolize.m4sh: Remove -I processing.
(func_filename_path_search): No longer required without -I.
Adjust all callers.
(pkgvltdldirs, pkgvmacrodirs): Deleted.
(pkgvdatadir): Allow overriding from the environment so that we
can write tests for uninstalled libtoolize.
(func_serial_update, func_ltmain_update, func_config_update):
Rename srcdirs parameter to srcdir, and don't call the path_search
function anymore. Adjust all callers.
(--install): Don't blindly copy all config files.
2005-04-01 Mike Stump <mrs@apple.com>
* m4/libtool.m4 (LT_CMD_MAX_LEN) [netbsd, freebsd, openbsd
darwin, dragonfly]: Use 3/4 of argmax, instead of 1/4.
2005-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_LANG_GCJ_CONFIG, _LT_LANG_RC_CONFIG):
Set $cc_basename.
* HACKING: echo vs $ECHO.
2005-03-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
* doc/libtool.texi: Minor formatting cleanups.
2005-03-24 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh: Propogate --debug flag to sub-libtoolizes.
* libtoolize.m4sh: Fix a typo, s/pkgvltdldirs/pkgvdatadirs/.
When using -I to test an uninstalled libtoolize, we need to add
the config subdirectory to the search path so that ltmain.sh can
be found in the source tree.
* libtoolize.m4sh (func_copy_some_files): IFS needs to be set to
path delimiter for all inner loop iterations.
Once a matching file has been copied, no need to keep searching
the path for another -- move on to the next file!
* libtoolize.m4sh: For verbose mode, explain why macro files are
not installed without an AC_CONFIG_MACRO_DIR declaration.
2005-03-24 Gary V. Vaughan <gary@gnu.org>
As a prerequisite for being able to test an uninstalled libtoolize
for copying files correctly from the source tree, we must know
exactly which files should be copied by the --ltdl option to avoid
accidentally picking up compilation objects and other noise when
$builddir == $srcdir:
* libltdl/loaders/Makefile.am (ltdldatadir, ltdldatafiles)
(install-data-local): Removed...
* libltdl/Makefile.am (ltdldatafiles): ...and consolidated here.
(show-ltdldatafiles): New rule...
* Makefile.am (ltdldatafiles, libtoolize): ...used to substitute
exactly which files are installed by libtoolize --ltdl.
(edit): Move pkgvmacro_DATA substitution expression...
(libtoolize): ...to here.
* libtoolize.m4sh: Use func_copy_some_files() instead of
func_copy_all_from_path() to copy the --ltdl option installed
files.
(pkgvltdldirs): New path variable to search for files installed by
--ltdl option.
(func_massage_pkgvltdl_files): New function to calculate the list
of ltdl installation files.
2005-03-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
* m4/libtool.m4, m4/ltdl.m4: Indentation and quoting cleanup.
2005-03-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Use ${wlarc}
and set to empty when using $LD for linking. Fixes regression
introduced in 2004-11-17.
Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de> and
Пухальский Юрий Андреевич <pooh@cryptopro.ru>.
2005-03-21 Gary V. Vaughan <gary@gnu.org>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_SETUP, _LT_LANG_CXX_CONFIG)
(_LT_LANG_F77_CONFIG): For matching compiler names -- Pick only
first word, allow leading white space.
* tests/sh.test: ..and test for missing `*' at end of patterns.
2005-03-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* TODO: Update.
2005-03-20 Peter Ekberg <peda@lysator.liu.se>
* m4/libtool.m4 (_LT_LINKER_SHLIBS) [irix5, irix6, nonstopux]:
Test if it is possible to use the -exports_file linker option on
irix with gcc, as the gcc specs file may include a -hidden_symbol
option that is clashing with the -exports_file option.
See this gcc bugzilla entry for further details:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15288
* THANKS: Update.
2005-03-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/demo-nopic.test: Enhance status output
noted by Tom Burger <tvburger@few.vu.nl>.
2005-03-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh, tests/defs.m4sh: Typos.
2005-03-18 Peter O'Gorman <peter@pogma.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4: The compiler can be a program name with args, so
always check cc_basename against compiler name and a wildcard.
Also, drop unnecessary quotes in `case' argument.
2005-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am: tests/defs.in depends on config/general.m4sh.
* config/general.m4sh: unconditionally set IFS, and set it
to the one true right sequence: space, tab, newline.
* m4/libtool.m4: remove IFS setting and as_* namespace
infringement.
* m4/libtool.m4 (_LT_CONFIG): Reset IFS to fix failure with ash.
* configure.ac, libltdl/configure.ac: s/##/dnl/ for comments
that are meaningless in configure.
Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
2005-03-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/configure.ac: Update version; require Autoconf >= 2.59.
* bootstrap: Allow to override tools.
2005-03-15 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_massage_pkgvmacro_DATA): New function
to calculate the macro filenames to be copied by libtoolize.
* Makefile.am (edit): Substitute pkgvmacro_DATA.
* bootstrap: Need to generate tests/package.m4 from Makefile.am
before generating tests/testsuite from tests/Makefile.am, or
else bootstrap of a fresh checkout fails.
2005-03-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_COPYING): Update Copyright year.
* m4/libtool.m4 (_LT_LINKER_SHLIBS) [linux]: Remove MAIN_
dependency when creating shared libraries with Portland pgf77.
2005-03-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* configure.ac: stamp-vcl is in $top_srcdir, not $top_builddir.
2005-03-12 Per Bothner <per@bothner.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
Allow special characters in source file names. Will break unless
`-o target' is also given, which must not contain special
characters. En passant, fix source file quoting broken for
cygwin/MSVC:
* config/ltmain.m4sh (func_mode_compile): Use new variable
qsrcfile for quoted source file name for compile $command. Fix
missing quotes for _c_o lockfile.
* NEWS: Update.
2005-03-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_link): Reword double negation in
error message.
Reported by Jesper Louis Andersen <jlouis@mongers.org>.
* bootstrap: really remove bogus files Makefile tests/Makefile.
* doc/libtool.texi: Replace wicked whiches by thats or other
better-sounding constructs.
2005-03-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (tiny change)
* tests/Makefile (clean-local): Ignore testsuite cleanup
failures.
2005-03-11 Per Bothner <per@bothner.com> (tiny change)
* tests/Makefile (clean-local): Only run the testsuite cleanup
if the testsuite has been generated.
2005-03-10 Gary V. Vaughan <gary@gnu.org>
* libltdl/Makefile.am (install-data-local): Don't force v7 tar
format with the `o' flag in create mode.
Set the umask to 0 when untarring to avoid copied files taking
their mode from the installer's umask.
* libltdl/loaders/Makefile.am (install-data-local): Ditto.
* libtoolize.m4sh (func_copy_cb): Ditto.
Ignore errors from failed `cd' in the tar processes, since we
may be running in dryrun mode.
Reported by Noah Misch <noah@cs.caltech.edu>,
Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2005-03-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/Makefile.am: $(builddir) is not defined, replace by
`.'.
2005-03-08 Albert Chin-A-Young <china@thewrittenword.com>
* m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[irix*, osf*]: Output -update_registry information to
${output_objdir} directory, not ${objdir}. ${output_objdir}
will work when a project has a single Makefile and performs
builds in subdirectories. ${objdir} expects the source in
the current directory, breaking single-Makefile builds.
2005-03-08 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/stresstest.at: Remove multiple variable definition.
* TODO: Update.
* THANKS: Update.
2005-03-02 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_copy_cb): Use tar chof to avoid symlink
attacks.
* libltdl/Makefile.am, libltdl/loaders/Makefile.am
(install-data-local): Ditto.
2005-02-27 Gary V. Vaughan <gary@gnu.org>
In branch-2-0 (and in time, others) ltversion.m4 has a dot
delimited serial number that didn't used to be processed
correctly by libtoolize. This changeset fixes that, and
leverages those changes to check versions of ltmain.sh and
config.sub, config.guess before overwriting when --force is
not given:
* libtoolize.m4sh: Don't overwrite pkgaux files with --force
unless --install is given too.
(func_serial): Fix underquoting in regexp.
(func_serial_max): New function to compare serial numbers.
(func_serial_update_check): New function factored out of
func_serial_update().
(func_serial_update): Bail if SRCFILE is missing.
Don't display both 'already up to date' and 'use --force to
update' messages for the same file.
Use func_serial_max to cope with `.' delimited serial numbers.
(func_ltmain_update): Use func_serial_update_check and
func_serial_max to do version checking with $package_revision.
(func_config_update): Ditto with $timestamp.
2005-02-26 Gary V. Vaughan <gary@gnu.org>
* libltdl/Makefile.am (install-data-local): cd to $(srcdir)
before tarring up the files for installation to
$(DESTDIR)$(ltdldatadir). Don't remove the destination directory,
since that interacts badly with the multi-Makefile installation.
* libltdl/loaders/Makefile.am (install-data-local): Ditto.
2005-02-26 Gary V. Vaughan <gary@gnu.org>
I assume that it is okay to have undefined symbols in convenience
libraries that will be used as modules -- the pic objects are
built normally, and are not expected to resolve all their symbols
until they are linked into a library; convenience libraries are
then rolled using 'ar' and 'ranlib' (or equivalent) which also do
not check whether symbols are resolved. We now build each of the
loaders as a convenience library module under these assumptions,
and link libltdl.la with selected modules, at which time all of
the symbols *are* resolved:
* TODO: Remove item addressed by this changeset.
* libltdl/Makefile.am (lib_LTLIBRARIES): Remove libdlloader.la.
(libdlloader_la_SOURCES): Declaration removed. Changed all
clients. Source files..
(libltdl_la_SOURCES): ...added back in here.
(libdlloader_LDFLAGS, libdlloader_la_LIBADD): Removed.
(libltdl_la_LIBADD): Remove libdlloader.la; add $(LTLIBOBJS).
* libltdl/loaders/Makefile.am: Removed all references to
libdlloader.la.
2005-02-25 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_copy): Split arguments to func_copy_cb
calls across lines so that quote.test doesn't misdiagnose nested
quotes.
* m4/libtool.m4 (_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC):
Fix some typos -- s/_LT_AC_TAGVAR/_LT_TAGVAR/g.
2005-02-24 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (_LT_LINKER_SHLIBS): The Portland group's
compiler does not pass --whole-archive. Move gnu ld check for
the flag to the top so it can be overridden.
(_LT_LANG_CXX_CONFIG, _LT_COMPILER_PIC): Unset
whole_archive_flag_spec for the portland group's c++ compiler
too.
Reported by Jeff Squyres <jsquyres@lam-mpi.org>
2005-02-23 Gary V. Vaughan <gary@gnu.org>
* libltdl/Makefile.am (install-data-local): Don't forget about
$(DESTDIR).
* libltdl/loaders/Makefile.am (install-data-local): Ditto.
2005-02-23 Gary V. Vaughan <gary@gnu.org>
Preserving the installed timestamps for libltdl sources from
`libtoolize --ltdl --copy' is pointless if they are not preserved
from the libtool source tree at install time:
* libltdl/Makefile.am, libltdl/loaders/Makefile.am
(nobase_ltdldata_DATA): Renamed to...
(ltdldatafiles): ...this.
(install-data-local): New rule to install libltdl tree with tar to
preserve timestamps.
2005-02-23 Christoph Egger <Christoph_Egger@gmx.de> (tiny change)
* config/ltmain.m4sh (func_mode_link): Add -pthread like flags to
inherited_linker_flags.
2005-02-22 Gary V. Vaughan <gary@gnu.org>
* libtoolize.m4sh (func_copy_cb): self.leg->shoot_off() :-/
Let's not redirect stdout to null when sending tar output to a
pipe.
2005-02-22 Gary V. Vaughan <gary@gnu.org>
Using `libtoolize --copy --ltdl' was not preserving timestamps, so
parts of the autoconf bootstrap would be rerun spuriously after
the files had been copied into the source tree:
* libtoolize.m4sh (TAR): New default tar command.
(func_copy_cb): Move the core copying internals to here, using
$TAR to transfer files if possible when --copy was specified.
(func_copy): Adjust to call func_copy_cb.
* TODO: Remember to refactor this fix in due course.
Reported by Jeff Squyres <jsquyres@lam-mpi.org>
2005-02-21 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh (func_extract_archives) [darwin]: This didn't
actually work on a real fat archive, should do now.
* tests/functests.at [darwin]: remove darwin fat tests which
did not actually work.
2005-02-07 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh: Add -pthread like flags when linking
executables too.
Reported by Andreas Schwab <schwab@suse.de>
2005-02-04 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_link): Allow five digits in
version-info.
* NEWS: s/Linux/GNU &/.
2005-02-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/Makefile.am, tests/testsuite.at, tests/stresstest.at:
New test. Stresses several combinations of link flags and
path specifications. Uses several data types to test linkage
against symbols in all kinds of (e.g., ELF) sections.
2005-02-03 Reid Spencer <reid@x10sys.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_generate_dlsyms): Fix broken subdir
path computation, exposed by using `-dlopen self'. Fix broken
sed script exposed by additionally using `-export-symbols FILE'.
2005-02-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* THANKS: Update.
* THANKS: Update.
2005-02-03 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh [darwin]: Don't add installed libs to
temp_rpath when building executables on darwin, or other systems
which use hardcode_automatic. It may break our wrapper scripts.
2005-02-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/getopt.m4sh (func_version, func_usage, func_help):
Exit with nonzero status on write failures.
* config/ltmain.m4sh (func_mode_help, func_config, func_features):
Ditto.
* tests/sh.test: Check for preferred function definition layout.
2005-02-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
[pw32, freebsd3.[01], freebsdelf3.[01]]: Fix [] quoting. Should
fix various spurious failures.
(_LT_LINKER_SHLIBS) [linux with GNU ld < 2.11, aix4.[012]*]:
Ditto.
(_LT_LANG_CXX_CONFIG) [aix4.[012]*, freebsd[12], solaris2.[0-5]]:
Ditto.
(_LT_LANG_GCJ_CONFIG): Ditto.
* tests/Makefile.am: Add `atconfig' to DISTCLEANFILES.
* clcommit.m4sh: Test whether the shell understands `read -r'.
Use as `$read_r' if available, so `\' is preserved in commit
notices.
* HACKING (Editing `.m4sh' Files): Document preferred function
header layout.
* config/ltmain.m4sh (func_win32_libid, func_infer_tag)
(func_generate_dlsyms, func_extract_an_archive)
(func_extract_archives): Adjust to fit.
2005-01-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unicos 9 sed rejects
empty parentheses as in 's/x\(\)/\1/'.
(_LT_COMPILER_PIC) [unicos*]: wl=-Wl,.
* tests/sh.test: Not all sed's like '/.*\n.*/' (Unicos 9 sed
loops endlessly).
* tests/quote.test: Match link quoting against `"$wl"', not
`-Wl,'.
* tests/quote.test: Check for `--no-reexec' in $1 to avoid one
reexec.
* m4/libtool.m4 (_LT_COMPILER_C_O): _LT_TAGDECL(lt_compiler_c_o),
not _LT_DECL, since this is tag-dependent.
* config/ltmain.m4sh, m4/libtool.m4: Change `( cmd ) 2>/dev/null'
to `{ cmd; } 2>/dev/null', when cmd has no side effects and might
be a builtin. Note that it is unspecified whether cmd will run
within a subshell (e.g. Bourne shells) or within the current shell
(most modern shells).
2005-01-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [linux]:
Update for Intel Compiler icc/icpc/ifort: add -i_dynamic and
-nofor_main, if necessary. Simplify logic somewhat.
2005-01-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/Makefile.am: also re-export CPP, CXXCPP, and the value of
SHELL as CONFIG_SHELL.
Reported by Heinz Salzmann <heinz.salzmann@micronas.com>.
2005-01-26 Craig Dooley <xlnxminusx@gmail.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* NEWS, m4/libtool.m4, config/ltmain.m4sh [dragonfly]:
Add support for DragonFly.
2005-01-26 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Work around pdksh
positional parameter expansion bug.
2005-01-25 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh: Fix endless loop in cmdline parsing.
2005-01-25 Albert Chin-A-Young <china@thewrittenword.com>
* config/ltmain.m4sh (func_mode_link) [irix]: Preserve processor
option for SGI Compiler (-r[0-9][0-9]*).
2005-01-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_PROG_XSI_SHELLFNS): Define Bourne and XSI
variants of new function func_stripname for stripping literal
prefixes and suffixes.
* config/ltmain.m4sh (all over): Use func_stripname.
* tests/defs.m4sh: Extract $build from $LIBTOOL.
(func_configure): Pass --host if $host != $build.
(func_exec): Try executing cross-compiled binaries (e.g. i686 ->
i386), but SKIP rather than FAIL.
* tests/depdemo-relink.test: Do not try to access possibly non-
existent files. SKIP rather than FAIL or PASS falsely when
cross-compiling.
* m4/libtool.m4 (_LT_SETUP) [mingw, cygwin, pw32, os2]:
Add _LT_DECLs for host_os, build_alias, build and build_os.
host_os and build were used in a few occasions in ltmain.m4sh
and affect above-mentioned systems, the others are added for
symmetry and in order to be able to detect cross-compiling.
2005-01-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/Makefile.am: Add $(AM_LDFLAGS) to all per-target
variables *_LDFLAGS as per CVS Automake semantic change.
2005-01-16 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh (func_mode_link): Don't pass through
compiler-like thread flags when using $LD to do the linking.
Use compiler_flags instead.
Reported by Mark_Andrews@isc.org.
* m4/libtool.m4 (LT_CMD_MAX_LEN) [osf]: On Tru64 there could
be a kernel panic when testing the maximum command line length
if exec_disable_arg_limit=1. Don't do the tests to figure it
out on *-osf*.
Reported by Dr. Hans Ekkehard Plesser
<hans.ekkehard.plesser@umb.no>
2005-01-14 Guido Draheim <guidod-2003-@gmx.de> (tiny change)
* m4/libtool.m4 (AC_PROG_SED): Don't break test loop early.
2005-01-12 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* TODO: Update.
* libltdl/ltdl.c: Whitespace cleanup.
* config/ltmain.m4sh: New option `--verbose'/`-v' to enable
override of `--silent'. Verbose is the default behavior.
* doc/libtool.texi (Invoking libtool): Document it.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: While "parsing"
/etc/ld.so.conf, skip comments.
Reported by Jens Elkner <elkner@linofee.org>.
2005-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/libltdl/lt__glibc.h: Move all exported slist
symbols into the lt__* namespace.
* libltdl/libltdl/lt__private.h, libltdl/libltdl/slist.h:
Adjust includes.
2005-01-10 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh (func_mode_link): Fix
inherited_linker_flags so it puts it on the link line when
linking shared libraries as well as when linking executables.
* tests/inherited_flags.at: test inherited_linker_flags.
* tests/Makefile.am: Add test.
* tests/testsuite.at: Add test.
Reported by: Albert Chin-A-Young <china@thewrittenword.com>
2005-01-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/sh.test: After `set dummy [...]', check for `shift'
within the same and following line.
* config/ltmain.m4sh (func_enable_tag, func_mode_install)
(func_mode_link): Sprinkle `shift's all over to conform to this.
2005-01-09 Gary V. Vaughan <gary@gnu.org>
* HACKING (Editing 'ChangeLog'): Follow the GCS with respect to
attributions, and mention how to handle tiny changes.
Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
* ChangeLog.2004: Trim 2005 entries.
* ChangeLog: Add missing entries.
2005-01-08 Gary V. Vaughan <gary@gnu.org>
* ChangeLog: Move 2004 change logs from here...
* ChangeLog.2004: ...to here.
* m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: RMS says,
'I think the [license of autoconf macro files] should be:
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is
# preserved.'.
* ChangeLog: Reformatting.
* HACKING: Fix section numbering.
(Editing 'ChangeLog'): New notes on ChangeLog entry format.
2005-01-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/am-subdir.at tests/testsuite.at (AT_BOOTSTRAP,
AT_LIBTOOLIZE, AT_CHECK_LIBTOOLIZE): Rename to ...
(LT_AT_BOOTSTRAP, LT_AT_LIBTOOLIZE, LT_AT_CHECK_LIBTOOLIZE):
...and make use of new names.
2004-12-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/getopt.m4sh (func_version, func_usage, func_help):
Use `$SED -n' instead of `$SED RANGE {..}; d' as AIX sed cannot
handle the latter.
(func_help): start autoconf and automake in subshells to avoid
error messages from ash or Bourne shell if not available.
2004-12-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/general.m4sh (func_quote_for_eval): Move backslash to
beginning of character class, to work around old Bash bug.
(func_quote_for_expand): Also test to avoid unnecessary fork.
2004-12-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
Gary V. Vaughan <gary@gnu.org>
* Makefile.am, bootstrap, clcommit.m4sh, libtoolize.m4sh,
config/ltmain.m4sh: Replace `set --' with `set dummy [...]; shift'
for portability.
* tests/sh.test: Test for this.
2004-12-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libtoolize.m4sh, config/ltmain.m4sh (most functions): New
variable $opt_debug is either `:' or `set -x' depending on
--debug. Execute at most function entries to cater for ksh which
resets `-x'.
* tests/defs.m4sh: Ditto for VERBOSE=debug.
* m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
_LT_TAGVAR missing for `fix_srcfile_path'.
[sysv4, sysv5]: _LT_TAGVAR missing for
`export_dynamic_flag_spec'.
* doc/libtool.texi (all over): Use @option and @command.
Some more minor formatting updates, typos.
* m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Fix variable quoting;
allows lt_ECHO to match --fallback-echo again.
* config/ltmain.m4sh (func_extract_archives): Not all shells grok
`read -r' (unnecessary in this case).
Reported by Ralf Menzel <menzel@ls6.cs.uni-dortmund.de>.
* config/general.m4sh: New variable quote_scanset...
(func_quote_for_eval, func_quote_for_expand): ...use it to work
around SunOS ksh `case' backslash-escaping bug: protect character
class by variable expansion.
Reported by Alexander Kurz <alexander.kurz@qsc.de>.
* tests/quote.test: Restart under the correct shell (the one
$ECHO was computed for).
2004-12-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/lt__dirent.c: Include lt__private.h.
* libltdl/libltdl/lt__private.h: Include lt__strl.h.
2004-12-20 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh (func_extract_archives)
(func_extract_an_archive): On darwin, uniq can not take the flags
-cd together, thanks to Ralf for the fix, also ar does not accept
N, so we use the fact that ar x libfoo.a foo.o will always extract
the first foo.o in the archive and we then delete foo.o from the
archive, which will also delete only the first foo.o, then rinse
and repeat. Also add markers for the testuite.
* m4/libtool.m4 (_LT_CONFIG): Add a marker so that we can use a
sed expression to find the shell functions in libtool.
* tests/functests.at: Test this feature.
* tests/testsuite.at: Add the test.
* tests/Makefile.am: Add the test.
2004-12-20 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libtoolize.m4sh: Install `install-sh' as well, needed for
configure.
* Makefile.am, Makefile.maint: Install, update it.
* NEWS, doc/libtool.texi (Distributing): Document it.
Reported by Ross Boylan <ross@biostat.ucsf.edu>.
* m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Add '${wl}-z
${wl}text' to archive_cmds and archive_expsyms_cmds. I.e., do not
allow nopic in shared libraries.
* m4/libtool.m4 (_LT_LINKER_SHLIBS) [solaris]: Change
no_undefined_flag back to ' -z defs'. Problems with linking
against libgcc.a will have to be resolved differently.
* tests/demo-nopic.test [solaris, sunos]: Skip test.
2004-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libtool.m4 [linux] (_LT_COMPILER_PIC, _LT_LANG_CXX_CONFIG):
Match icpc* and ecpc* (ia64 version of icpc) instead of only icpc.
* libltdl/lt__dirent.c (opendir) [mingw]: Fix write of constant
strings past end of buffer.
(opendir, readdir): Fix read past end of buffer.
2004-12-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* HACKING: Update list of non-Libtool-owned files.
2004-12-17 Akim Demaille <akim@epita.fr>
* libtoolize.m4sh (func_copy_all_from_path): Remove spurious eval.
2004-12-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (trim): Return error rather than do bogus
null pointer arithmetic when parsing a malformed .la file.
2004-12-13 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* libltdl/lt__strl.c, libltdl/libltdl/lt__strl.h: New files to
emulate strlcat and strlcpy, which support size-bounded string
copying and concatenation for improved security.
* libltdl/Makefile.am: Optionally build source files
libltdl/lt__strl.c and libltdl/libltdl/lt__strl.h.
* m4/ltdl.m4 (LTDL_INIT): Add checks for strlcat and strlcpy.
2004-12-13 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG):
Append -G to link command-line on AIX to honor -brtl on
command-line (runtime linking). Already done for IBM C/C++
compilers.
2004-12-12 Patrick Welche <prlw1@newn.cam.ac.uk>
* configure.ac: Fix aclocaldir to use ${datadir}, not ${prefix}.
Necessary for removal of old libtool.m4 files.
2004-12-10 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_extract_archive): Send stderr of $NM
to /dev/null.
Reported by Martin Waitz <tali@admingilde.org>.
2004-12-09 Albert Chin-A-Young <china@thewrittenword.com>
* config/ltmain.m4sh: Preserve -model [arg] option, used
with the Tru64 UNIX C++ compiler. This option selects the
layout of C++ classes, name mangling, and exception handling.
2004-12-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_finish) [solaris]: Fix [] escaping
bug.
* config/ltmain.m4sh (all over the map): Make use of func_basename
and func_dirname in most occasions.
* m4/libtool.m4 (_LT_CHECK_XSI_SHELL, _LT_PROG_XSI_SHELLFNS): New
macros to detect at `configure' time whether the shell supports
some XSI extensions and to copy appropriate versions of new shell
functions into `libtool' through `config.status'. Copied
functions are Bourne and XSI variants of func_basename,
func_dirname (a variant of `dirname' suitable for libtool).
(_LT_SETUP): Require _LT_CHECK_XSI_SHELL.
(_LT_CONFIG): Use _LT_PROG_XSI_SHELLFNS to insert into `libtool'
at marker.
* config/ltmain.m4sh: Set marker for insertion of shell functions.
* config/general.m4sh (func_quote_for_eval): Only fork if the
substitution matches.
2004-12-03 Gary V. Vaughan <gary@gnu.org>
* TODO: Paste Peter's summary of the TODO thread starting at
http://lists.gnu.org/archive/html/libtool/2004-11/msg00130.html.
2004-12-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* config/ltmain.m4sh: Remove code which is no longer needed
now that temp_rpath only contains fully-qualified elements.
2004-11-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/general.m4sh: basename sed-subst is anchored and thus
does not need the `g' flag.
(func_quote_for_eval): Return both the possibly double-quoted
backslashified as well as only the backslashified argument.
* config/ltmain.m4sh (func_mode_link): Use both return values,
to save another sed_quote_subst application per cmdline arg.
2004-11-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_lalib_p): Update function
description.
(func_lalib_unsafe_p): New function with same functionality but
written without forks; this function is safe to use for cases
where the argument either does not exist or is required to be a
lalib for correct operation.
* NEWS: Mention the fact that stdin is not to be used.
* config/ltmain.m4sh (func_mode_execute, func_mode_install)
(func_mode_link): Use func_lalib_unsafe_p where appropriate.
(func_mode_execute): For the program wrapper, use
func_ltwrapper_p instead of func_lalib_p.
* m4/libtool.m4 (_LT_LINKER_SHLIBS): Treat linux-dietlibc with
the `diet' compiler wrapper (as opposed to the `diet-dyn' wrapper)
as a static-only platform.
* NEWS: Updated.
* libltdl/ltdl.c (trim): Use memcpy instead of strncpy here, to
avoid problems with non-conforming strncpy. This is safe here.
* m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we
have a dlloader to preload.
* libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
declare preloaded_symbols then. Fixes libltdl on static platforms.
* NEWS: Updated.
2004-11-29 Gary V. Vaughan <gary@gnu.org>
Add a search path option to libtoolize so that we can run it from
the testsuite without pulling in the last installed macros and
ltdl sources:
* libtoolize.m4sh: Add a -I option to change libtoolize's search
path for macro files, and libltdl master sources.
(pkgvdatadir, pkgvmacrodir): Renamed...
(pkgvdatadirs, pkgvmacrodirs): ...as they can now contain a ':'
delimited list of directories. Adjust all callers.
(func_copy_all_from_path): New function to search a ':' delimited
search path for a directory to copy.
(func_serial_update, func_ltmain_update, func_config_update): New
first parameter is a filename to search for. srcdir parameter can
now be a ':' delimited search path. Adjust all callers.
(func_copy_some_files): Ditto.
Put srcfile_spec first in parameter list for consistency with
other functions. Adjust all callers.
(func_copy_cb): func_copy adapter function to call func_copy
correctly from func_copy_some_files.
(func_filename_path_search): Return the full path to the first
occurence of a named file found in a list of directories.
* tests/testsuite.at (LIBTOOLIZE): Wrap exported LIBTOOLIZE
initialisation in PREPARE_TESTS diversion to stop it being
discarded when testsuite is generated.
(AT_LIBTOOLIZE): Factor out libtoolize calls,
and set search path to find macros and libltdl source files from
the source tree.
(AT_CHECK_LIBTOOLIZE): Test it.
(AT_BOOTSTRAP): Adjust. Split out call to make.
* tests/am-subdir.at: Call make explicitly.
(Makefile.am): Fix typo in ACLOCAL_AMFLAGS,
2004-11-28 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_link): $dlsymsobj is really
$symfileobj, bug exposed only in the static preloading case
(symfileobj is created, but not linked into output).
* tests/demo-relink.test, tests/depdemo-relink.test: SKIP, don't
FAIL if no shared libs available in demo/. Do not try to access
nonexistent files.
* libltdl/loaders/loadlibrary.c: Remove unneeded
file-static variable.
2004-11-27 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* config/ltmain.m4sh: Add fully-qualified paths to temp_rpath
rather than unqualified paths in order to avoid possible errors
when computing the fully-qualified path later.
2004-11-24 Jeff Squyres <jsquyres@lam-mpi.org>
* m4/libtool.m4 (_LT_COMPILER_PIC, _LT_LINKER_SHLIBS)
(_LT_LANG_CXX_CONFIG) [linux]: Support for Portland Group (aka
"pgi") compilers.
* NEWS, THANKS: Updated.
2004-11-24 Gary V. Vaughan <gary@gnu.org>
* Makefile.am: Move Autotest rules from here...
* tests/Makefile.am: ...to here.
* bootstrap: Adjust. Also, create temporary Makefile from
tests/Makefile.am so that bootstrap can create the Autotest
testsuite.
2004-11-23 Gary V. Vaughan <gary@gnu.org>
If the user's login shell is something crazy like, oooh,
/bin/tcsh, trying to execute bourne shell helper scripts with
the `$SHELL /path/to/helper $helper_flags' idiom incase the
execute bits were lost by say, eeer, cvs, is gonna blow up in
our faces. This changeset tries to save these people from
their shells^H^H^H^H^H^H^H^H^Hmselves :->
* tests/defs.m4sh (SHELL): Move definition from here...
* config/general.m4sh (SHELL): ...to here.
2004-11-23 Gary V. Vaughan <gary@gnu.org>
The ltdl.h header is the published interface to libltdl, and
is thus not installed to $prefix/include/libltdl. It has always
been used with `#include <ltdl.h>', so move just that one file
back to where it was before:
* libltdl/libltdl/ltdl.h: Moved from here...
* libltdl/ltdl.h: ...to here.
* libltdl/Makefile.am: Adjust.
2004-11-23 Peter O'Gorman <peter@pogma.com>
Do not require that libtoolize --ltdl=/some/path end in libltdl.
Move most libltdl headers to libltdl/libltdl to allow
`#include <libltdl/ltdl.h>' to always work:
* libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for includes
in the new location.
* libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h,
libltdl/libltdl/lt_system.h, libltdl/libltdl/ltdl.h,
libltdl/libltdl/slist.h: Added files, moved from libtdl/.
* libltdl/lt__alloc.h, libltdl/lt__dirent.h, libltdl/lt__glibc.h,
libltdl/lt__private.h, libltdl/lt_dlloader.h, libltdl/lt_error.h,
libltdl/lt_system.h, libltdl/ltdl.h, libltdl/slist.h: Removed, moved
to libltdl/libltdl.
2004-11-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (LT_INIT): s/libtool 1.6/libtool 2.0/.
(Invoking libtoolize): Fix typo.
2004-11-22 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.m4sh (func_mode_install): Now that func_mktempdir
has been improved, the default directory template is perfectly
fine.
* doc/libtool.texi (Invoking libtoolize): Improve documentation
for use of ACLOCAL_AMFLAGS and AC_CONFIG_MACRO_DIR.
2004-11-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_TAG_COMPILER): Document that with_gcc is
tag-dependent.
* m4/libtool.m4, tests/demo-nopic.test: Undo bogus commit.
* config/ltmain.m4sh (func_mode_link), tests/objectlist.test:
Make sure the argument to `-objectlist' may contain spaces.
2004-11-19 Gary V. Vaughan <gary@gnu.org>
* config/m4general.m4sh, config/mailnotify.m4sh,
clcommit.m4sh: Updated from cvs-utils--tla--1.0 to allow
parallel commits, and use safer tmpfiles.
2004-11-19 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Libltdl interface): Typos.
* doc/libtool.texi (Libltdl interface): Document public macros
LT_PATHSEP_CHAR, LT_DIRSEP_CHAR, use in path descriptions.
2004-11-18 Daniel Reed <djr@redhat.com>
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [linux]: Interpret
`include' statements in toplevel ld.so.conf file.
2004-11-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_LINKER_SHLIBS) [cygwin, mingw, pw32]:
tag-protect setting of ld_shlibs.
2004-11-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Libltdl interface): The path separator
is system-dependent.
* doc/libtool.texi (Linking static libraries): Typo.
* m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
[aix4/aix5 !ia64]: Set whole_archive_flag_spec to '$convenience'
so convenience libs are really added to the link cmdline.
2004-11-17 Mats Rynge <rynge@isi.edu>
* libtool.m4 [linux]: Use only the CC basename in case statment
when checking for icc/ecc. Allows for setting CC to the full path
to the compiler.
* libtool.m4 [solaris]: Added missing 'with linker' flags to
-z allextract ... -z defaultextract flags
2004-11-14 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_LINKER_SHLIBS): Typo: s/--rpath/-rpath/g.
(_LT_LANG_CXX_CONFIG): Ditto.
* configure.ac (APIVERSION): New substituted variable.
(pkgvdatadir): Ditto. Versioned data directory.
(pkgvmacrodir): Ditto. Versioned aclocal directory.
(LN): New check for LN command.
* Makefile.am (aclocal_DATA): Replaced with...
(pkgvmacro_DATA): ...this.
(install-data-local): Remove old shared resources.
(install-exec-hook): Make versioned links to executables.
(uninstall-hook): Remove versioned files.
* libltdl/Makefile.am (ltdldatadir): Redefine in terms of
pkgvdatadir.
* libltdl/loaders/Makefile.am (ltdldatadir): Ditto.
* libtoolize.m4sh: Copy macro files from versioned macro directory
instead of shared aclocal directory.
* doc/libtool.texi: Document it.
* NEWS: Updated.
2004-11-10 Gary V. Vaughan <gary@gnu.org>
From James Henstridge <james@jamesh.id.au>:
* m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4: Added commented out
empty macro definitions to match each AU_DEFUN to help aclocal
from automake-1.4 regexps find the right libtool macro files.
2004-11-10 James E Wilson <wilson@specifixinc.com>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.m4sh (func_mode_link), tests/Makefile.am,
Fix error message with `-objectlist' file that does not exist.
* tests/objectlist.test: New test for this.
* Makefile.am: config/ltmain.sh is generated by
config/ltmain.m4sh.
2004-11-09 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (Compile mode, Link mode,
Libltdl interface, Test descriptions, libtool script
contents): Some quote cleanup, more use of texinfo types.
* doc/libtool.texi (libtool script contents):
echo is now ECHO; mention argument restriction.
* doc/libtool.texi (Multiple dependencies): Minor rewording.
* doc/libtool.texi (User defined module data, References):
indentation and word-wrap cleanup.
* doc/libtool.texi (all over): White space cleanup:
two spaces at start of sentence, no TABs.
2004-11-09 Gary V. Vaughan <gary@gnu.org>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/libtool.texi (libtool script contents): Fix description
of need_lib_prefix.
2004-11-08 Peter Ekberg <spam.protected>
* config/ltmain.m4sh (func_mode_link): forward thread
related flags to dependent applications and libraries
by adding them to `inherited_linker_flags'.
2004-11-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/ltoptions.m4: Change all references of LT_LIBTOOL_INIT
to LT_INIT.
2004-11-05 Peter Ekberg <spam.protected>
* ltmain.m4sh (cwrappersource): clean up other warning on MinGW.
2004-11-04 Bernhard Fischer <spam.protected>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS), m4/ltoptions.m4
(_LT_SET_OPTIONS), README, README.alpha: Typos.
2004-11-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (parse_dotla_file): Fix memleak.
* ltmain.m4sh (cwrappersource): Cast isalpha arguments correctly.
2004-11-03 Peter Ekberg <spam.protected>
* ltmain.m4sh (cwrappersource): clean up warnings and
#include errors on MinGW.
2004-11-01 Peter Ekberg <spam.protected>
* config/ltmain.m4sh (cwrappersource): clean up warnings and
#include errors.
2004-11-01 Peter Ekberg <spam.protected>
Sometimes, a wrapper script is generated for an executable that,
itself, does not link against an uninstalled library. It appears
that this can happen if you are building a project where:
(1) there is a library
(2) there is an executable that does not, itself, link against
that library
In this case, notinst_deplibs is empty, and when the wrapper
script is loaded by libtool during ./libtool mode=install, there
is a check for "is notinst_deplibs empty". In this case, it is,
so libtool reports an error.
I don't think it is wrong to have a wrapper script for an exe that
*technically* doesn't need it. But instead of checking for
notinst_deplib nonempty as a proxy for "did wrapper script get
sourced into my environment properly" a different var should be
used.
* config/ltmain.m4sh (func_mode_install): set new variable
`generated_by_libtool_version' in wrapper script when using
libtool_install_magic. When verifying that wrapper script was
properly sourced, check that `generated_by_libtool_version' is
non-empty, instead of using notinst_deplibs.
2004-11-01 Charles Wilson <spam.protected>,
Peter Ekberg <spam.protected>
* config/ltmain.m4sh (func_mode_install): On Windows based hosts,
ensure that import libraries don't get stripped.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): On Windows based hosts,
use postinstall_cmds to strip DLL (not import lib!) when symbol
stripped installation was requested.
2004-10-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (loader_init_callback): Back out broken cast.
* libltdl/ltdl.c (loader_init_callback, lt_dlexit): Add casts to
target type.
* tests/defs.m4sh (func_exec): `shift'ing when there is nothing
to shift is non-portable.
2004-10-28 Patrick Welche <prlw1@newn.cam.ac.uk>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am, Makefile.maint: Use path for dependencies built
in the source tree, to cater for BSD make.
2004-10-24 Noah Misch <noah@cs.caltech.edu>
* config/ltmain.m4sh (func_lalib_p, func_ltwrapper_p): New
functions that abstract .la sanity checking.
(func_mode_execute, func_mode_install, func_mode_link)
(func_mode_uninstall): Use them.
2004-10-24 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.m4sh (opt_silent): Whether --silent was given.
(run, show): Deleted. All callers converted to opt_dry_run,
opt_silent or calls to func_show_eval.
* tests/mdemo-dryrun.test: Adjust.
* HACKING: Fix a typo in the gpg --verify instructions.
* Makefile.maint (cvs-dist): Generate signatures and directives
for bz2 upload.
2004-10-23 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh (func_mode_link): Make Gary's new tests
pass. When the output wrapper script is not in the current
directory, we can not use an rpath which is relative to the
current directory. Use an absolute path instead.
2004-10-22 Gary V. Vaughan <gary@gnu.org>
* clcommit.m4sh: Add --rcfile option.
* clcommit.m4sh: Updated again, to support file list limited
commits to CVS, and to fix another occurence of the bash bug
that was preventing non-tla users from sending a commit mail.
2004-10-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* TODO, libltdl/lt_error.h, libltdl/ltdl.c, libltdl/ltdl.h:
Undo accidental commit.
* Makefile.maint: Fix typo.
2004-10-22 Gary V. Vaughan <gary@gnu.org>
* clcommit.m4sh, config/mailnotify.m4sh: Updated from
cvs-utils--tla--1.0 to fix quoting of metachars in patch names.
* HACKING: Updated: `.in' files are now `.m4sh'; document some
more coding standards for these files.
* config/general.m4sh (sed_double_backslash): Undo an
over-optimisation.
2004-10-21 Gary V. Vaughan <gary@gnu.org>
* AUTHORS: Reformatted to better reflect the current state of
Libtool maintainership.
* THANKS: Reformatted to give maintainers a quick way to look
up who has supplied FSF paperwork.
2004-10-21 Noah Misch <noah@cs.caltech.edu>,
Gary V. Vaughan <gary@gnu.org>
* config/general.m4sh (sed_double_backslash): Improve this sed
expression to correct left anchored \$ input to
double_quote_subst, as well as backslash escaped $ preceded by
any odd-numbered amount of \ characters.
2004-10-20 Gary V. Vaughan <gary@gnu.org>
* config/general.m4sh (sed_double_backslash): New sed expression
to escape \$ properly in combination with double_quote_subst.
(func_quote_for_eval): Four space indent margin for functions!
(func_quote_for_expand): Use $sed_double_backslash.
(func_show_eval): New function that echos an escaped but variable
expanded command, and then evaluates it.
2004-10-20 Noah Misch <noah@cs.caltech.edu>,
Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (sed_quote_subst): Remove superfluous backslashes
from the match character set.
(double_quote_subst): Ditto.
* config/general.m4sh (sed_quote_subst): Ditto.
(double_quote_subst): New variable, copied from
m4/libtool.m4. Much the same as sed_quote_subst, but variable
references are not quoted.
(func_quote_for_eval): Given any $foo; $bar and
$foo must be identical after the following commands:
func_quote_for_eval "$foo"
eval "bar=$func_quote_for_eval_result"
(func_quote_for_expand): In a similar vein to to func_quote_for_eval,
except that variable expansions are not protected when quoting the
command for subsequent display.
* config/ltmain.m4sh: Factor away use of $sed_quote_subst now that
it has been subsumed into func_quote_for_eval.
(func_mode_link): Instead of `2004-10-14 Peter O'Gorman' below,
use func_quote_for_expand so that ${wl} is expanded properly in
the $show expression.
2004-10-16 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.m4sh (func_mode_finish): solaris-2.6 also has
crle(1).
Reported by Albert Chin-A-Young <china@thewrittenword.com>
2004-10-16 Gary V. Vaughan <gary@gnu.org>
Add some new tests for Libtool's support of Automake
subdir-objects builds. This marks the beginning of a move to an
Autotest driven test framework, which will eventually allow us to
trim away many of the generated files in the current test demo
subdirectories:
* configure.ac (AC_CONFIG_TESTDIR): Re-enable commented out
Autotest macros.
(AUTOTEST, M4SH): Use --language long hand.
* bootstrap: Generate tests/testsuite, and by implication
tests/package.m4.
* Makefile.am (edit): Add substitutions needed to generate
tests/package.m4 from bootstrap.
(check-recursive): Add tests/testsuite.
(TESTSUITE): The new Autotest testsuite target.
(TESTSUITE_AT): The Autotest sources.
(EXTRA_DIST): Distribute the generated testsuite and sources.
(tests/package.m4): Use $(edit) to propagate package metadata to
the new tests.
(tests/testsuite): Build the testsuite.
(tests/atconfig): How to regenerate the file.
(check-local): Hook Autotest into `make check'.
(installcheck-local): Run the testsuite on the installed tree.
(clean-local): Tidy our file droppings.
* tests/Makefile.am: Remove bitrotted code from Autotest
experiments in Autoconf 2.52 era. Updated the rest and moved into
Makefile.am.
* tests/testsuite.at: New container for Autotest test groups.
* tests/am-subdir.at: New test group for compatibility with
Automake's subdir-objects builds. Currently holds two tests, one
for a C project and another similar project in C++.
* TODO: Add an entry to remind us that these new tests expose a
bug in libtool.
* NEWS: Updated.
2004-10-14 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh: Revert most of my last commit, only eval
\$show \"$cmds\", and only when building a library. I'm a wimp.
Thanks Gary for pointing out errors in previous commit.
2004-10-13 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.m4sh (func_mode_finish): Mention crle(1) on
solaris 2.7 and higher in the finalisation notes.
Reported by Kurt J. Lidl <lidl@pix.net>
* tests/cdemo-undef.test: New test for hosts that allow shared
libraries with undefined symbols, but have no C++ compiler
installed.
* tests/Makefile.am (COMMON_TESTS): Add it.
2004-10-13 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh: Make sure that we $show what we will $run,
use eval $show if we do $run eval.
2004-10-13 Charles Wilson <spam.protected>
* config/ltmain.m4sh: add foo/bin for every foo/lib
in dllsearchpath when creating wrapper script. Fixes
depdemo-relink test failure.
2004-10-12 Charles Wilson <spam.protected>
* config/ltmain.m4sh (func_mode_link): don't relink
on cygwin/mingw; no need. But do ensure that wrappers
are created unless doing a purely static build.
2004-10-13 Gary V. Vaughan <gary@gnu.org>
* tests/tagdemo-undef.test: New test for hosts that allow shared
libraries with undefined symbols.
* tests/Makefile.am (CXX_TESTS): Add it.
2004-10-11 Charles Wilson <spam.protected>
* tests/link.test: Fix check for use of libnlsut.a under
Cygwin.
2004-10-11 Noah Misch <noah@cs.caltech.edu>
* tests/quote.test: Do not look for $preargs in the output,
because libtool may change them.
2004-10-10 Charles Wilson <spam.protected>
* config/ltmain.m4sh: Really don't require versions of GNU
sed newer than 3.02 for Cygwin and MinGW, and don't break
dryrun mode.
2004-10-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* config/getopt.m4sh: Under MinGW, reported paths may include ':'
so ':' should not be used as the sed delimiter. Use '*' instead
since it is very unlikely to appear in a path.
2004-10-10 Albert Chin-A-Young <china@thewrittenword.com>
* config/ltmain.m4sh: Don't require versions of GNU sed newer than
3.02 for Cygwin and MinGW.
2004-10-10 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* tests/pdemo-inst.test: Correction for mis-application of
Charles Wilson's earlier patch.
2004-10-09 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_LANG_F77_CONFIG): Make sure the save and
restore code for CC is nested at the same depth.
(_LT_LANG_CXX_CONFIG): Ditto, but for several variables.
2004-10-08 Gary V. Vaughan <gary@gnu.org>
Update to the latest commit and mailnotify scripts from
gary@gnu.org--2004/cvs-utils--tla--1.0:
* commit, config/mailnotify: Removed. Now built from...
* clcommit.m4sh, config/mailnotify.m4sh: ...these new sources.
* Makefile.maint (commit, config/mailnotify): How to build them.
* bootstrap: If we have a checked out tree (i.e. clcommit.m4sh
is present), then build them.
2004-10-08 Gary V. Vaughan <gary@gnu.org>
Fix some issues that mangled the reexecution path to a script,
and thus prevented it from finding itself:
* config/general.m4sh (progname): Don't actually change the name
of the script if it begins with a `-', just prepend `./'.
(progpath): Add a new clause that first searches the execution
PATH, and then finally assumes this script is in the current
working directory if $progname has no directory separators (e.g
when invoked as `$SHELL progname').
2004-10-08 Gary V. Vaughan <gary@gnu.org>
* config/general.m4sh (func_verbose): Work around a bash bug in
shell functions.
2004-10-08 Charles Wilson <cygwin@cwilson.fastmail.fm>
* tests/pdemo-inst.test: pdemo-inst should depend on pdemo-make.
* config/ltmain.m4sh: Windows and Cygwin reserve the .lnk
extension to represent shortcuts. Use the extension ".lnkscript"
rather than ".lnk" for the piecewise linking ld script in order to
avoid the conflict.
2004-10-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (lt_dlexit, lt_dlpath_insertdir): Fix memleaks,
free user_search_path on lt_dlexit.
2004-10-07 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/sh.test: Remove tests which fail on AS_SHELL_SANITIZE
from autoconf >= 2.59.
* TODO: Remove item: no need for a libltdl without stdio.
2004-10-07 Gary V. Vaughan <gary@gnu.org>
* tests/defs.m4sh (scripts): Actually scan the generated ltmain.sh
for shell portability problems.
* m4/libtool.m4 (_LT_FORMAT_COMMENT): Shell meta-characters in
_LT_DECL descriptions were not being escaped before injection into
TAG CONFIG here documents in config.status.
2004-10-06 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (_LT_PROG_CXX, _LT_PROG_F77): New macros to work
around the deficiencies in AC_PROG_CXX and AC_PROG_F77.
* configure.ac: Cleaned up, having moved the checks for compilers
which do not exist to libtool.m4.
2004-10-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (try_dlopen): Move .la file parsing
part.. (parse_dotla_file): ..here. Adjust.
* libltdl/ltdl.c (load_deplibs, try_dlopen): Revert unnecessary casts
to int from my patch from 2004-10-01.
* AUTHORS: Add myself.
2004-10-05 Peter O'Gorman <peter@pogma.com>
* config/ltmain.m4sh [darwin]: Make the -dylib_file flag work on
older darwins too. Reported by Christoph Egger.
2004-10-05 Gary V. Vaughan <gary@gnu.org>
* configure.ac: Bumped version to 2.1a.
2004-10-04 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_PROG_ECHO_BACKSLASH): Don't confuse $ECHO
with $lt_ECHO, or we always get a libtool with ECHO=echo, rather
than testing for a mechanism that quotes \ properly.
* NEWS: Updated.
* config/ltmain.m4sh: Need to include getopt.m4sh earlier so that
progpath is set before it is called to --no-reexec.
* NEWS: Updated.
2004-10-04 Gary V. Vaughan <gary@gnu.org>
Without this change, the distributed libtool tarball has a
dependency on autom4te. There was some inconsistency in the
filenames: now we have foo.m4sh -> m4sh -> foo.in -> configure
-> foo[.sh]. Bootstrap runs the m4sh steps and the resulting .in
files are distributed:
* tests/Makefile.am (EXTRA_DIST): Distribute defs.m4sh.
* Makefile.am (EXTRA_DIST): Distribute libtoolize.m4sh.
(libtoolize.in, libtoolize): Split into bootstrap and runtime
stages.
($(top_srcdir)/tests/defs.in, $(top_srcdir)/tests/defs): Ditto.
($(top_srcdir)/config/ltmain.sh): Swap ltmain.m4sh and ltmain.in
names.
* bootstrap: Make libtoolize.in and tests/defs.in.
* NEWS: Updated.
2004-10-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* README, README.alpha: Update notes regarding available VERBOSE
settings.
2004-10-03 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* config/ltmain.in: Change $XSED to $Xsed to fix hang noticed
under MinGW.
* tests/defs.in: Support VERBOSE=debug to enable shell tracing
while running tests.
2004-10-03 Gary V. Vaughan <gary@gnu.org>
* NEWS: Updated.
* configure.ac: Bumped version to 1.9e.
GNU libtool 1.9d was released.
* configure.ac: Bumped version to 1.9d.
* NEWS: Updated.
* libltdl/lt__alloc.h (lt__alloc_die): Declare with LT_SCOPE as
per Ralf's original patch.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* libltdl/Makefile.am (libltdlc_la_LIBADD): Don't use
libdlloader_la_OBJECTS, an undocumented Automake internal
variable...
(libltdlc_la_SOURCES): ...use libdlloader_la_SOURCES here
instead.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* libltdl/argz_.h: Forgot to spell lt_system.h with just one `_'.
* libltdl/argz_.h: Forgot to include lt__system.h for LT_SCOPE
definition.
2004-10-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>,
Gary V. Vaughan <gary@gnu.org>
* libltdl/lt__alloc.h: Declare exported functions with LT_SCOPE
for mingw32.
* libltdl/lt__dirent.h: Ditto.
* libltdl/argz._h: Ditto. Be careful about not requiring
additional libltdl files when used outside of libltdl.
* libltdl/slist.h: Ditto.
* HACKING: Add a section on libltdl implementation layering.
2004-10-03 Gary V. Vaughan <gary@gnu.org>
* tests/quote.test: echo is called ECHO now. Make sure we extract
the value of ECHO from the libtool script.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2004-10-02 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (hardcode_shlibpath_var) [darwin7*]: Revert my
hack from 2004-09-30 now that I've removed /lib/hello.la and the
tests work properly for me again.
2004-10-02 Jim Tison <jtison@us.ibm.com>
Initial support for s390x-ibm-tpf:
* m4/libtool.m4: Correct obvious spelling errors in remarks.
(_LT_ENABLE_LOCK): Make s390x-ibm-tpf hosts adopt elf64_s390
conventions.
(_LT_SYS_DYNAMIC_LINKER): Set defaults for s390x-ibm-tpf host.
(_LT_CHECK_MAGIC_METHOD): Skip all dependency checks for
s390x-ibm-tpf hosts.
(_LT_LINKER_SHLIBS): Make s390x-ibm-tpf hosts adopt GNU/Linux OS
attributes.
* NEWS: Updated.
2004-10-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* config/ltmain.in (func_mode_install): Need to set $tmpdir before
using it.
* config/ltmain.in (func_mode_link): Fix quoting bug. Fixes
e.g. the quoting of the -export-symbols-regex argument in .la
files' relink_command.
* libltdl/lt__alloc.c (lt__memdup): Allocation can fail, so we
need to guard against null pointer dereference here.
* libltdl/ltdl.c (lt_dlcaller_register): Ditto.
* libltdl/slist.c (slist_foreach): result was declared as
inner variable, shadowing the actually returned value.
* libltdl/ltdl.c (load_deplibs, try_dlopen): Cast argument
to isspace/isalnum to the correct range. Also, cast to int to
avoid compiler warnings.
2004-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (try_dlopen): Fix null pointer dereference in
case the name given to lt_dlopen contains no extension.
* libltdl/lt_dlloader.c (lt_dlloader_remove), libltdl/ltdl.c
(tryall_dlopen, lt_dlhandle_next): Show usage of function pointers.
* doc/libtool.texi (LT_INIT, Using libltdl)
(Module loaders for libltdl, Multiple dependencies)
(libtool script contents): Fix several typos (trivial change).
Also, libltdl consists of more than two small files.
2004-09-30 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (hardcode_shlibpath_var) [darwin7]: My Panther
workstation doesn't hardcode the shared library path, although it
used to, so this is more likely a function of the binutils and/or
gcc I am using at the moment. The hardcode value setting code for
the configure script sucks at the moment though...
* TODO: ...and needs to do a test compile instead of a table
lookup before 2.0 final.
* m4/libtool.m4 (echo): Use ECHO throughout for consistency with
config/ltmain.in.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (rm): Use RM throughout for consistency with
config/ltmain.in.
Reported by Charles Wilson <cwilson@spam.protected>
2004-09-27 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
output during configure. (Really this time, honest)
2004-09-26 Albert Chin-A-Young <china@thewrittenword.com>
* m4/libtool.m4 (_LT_LINKER_SHLIBS) [aix]: In archive_expsym_cmds,
move -bnoentry linker option before $compiler_flags to honor any
possible -e entries in LDFLAGS.
2004-09-25 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.in (func_mode_link): When linking an installed
libtool library on the command line using -lfoo we need to find
the library in the search paths and add it's dependency_libs to
the link in the conv pass so that any libtool libs listed are
correctly expanded in the link pass.
2004-09-24 Charles Wilson <cwilson@spam.protected>
* libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Revert changeset from
`2004-09-22 Charles Wilson <cwilson@spam.protected>'.
2004-09-24 Gary V. Vaughan <gary@gnu.org>
* config/general.m4sh (Xsed): Set a default when not used from
ltmain.in.
(ECHO): Audit for (and correct!) uses of $ECHO with more than one
argument, which breaks when ECHO='printf %s\n', and with possible
`-' as first character of the argument, which breaks `print -r'
and some implementations of `echo'.
* config/ltmain.in, tests/defs.in, libtoolize.in (ECHO): Ditto.
Reported by Albert Chin-A-Young <china@thewrittenword.com>
2004-09-24 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (_LT_CMD_STRIPLIB) [darwin]: strip archives too.
* m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [darwin]: Don't echo gcc -v
output during configure.
2004-09-24 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_DECL_EGREP): Only the newest CVS autoconf
AC_SUBSTs for GREP. Do our own here too to cater for release
autoconfen.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [openbsd3.3]: Set
need_version to yes or no depending on the os release.
Reported by Dalibor Topic <robilad@kaffe.org>
2004-09-23 Gary V. Vaughan <gary@gnu.org>
* 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-hardcode.test, tests/demo-inst.test,
tests/demo-make.test, tests/demo-nofast.test,
tests/demo-noinst-link.test, tests/demo-nopic.test,
tests/demo-pic.test, tests/demo-relink.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-relink.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-dryrun.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/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,
tests/tagtrace.test: POSIX `.' searches only in user's $PATH, so
we must use `. ./defs' to source the common code.
Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Gah. Merge error
corrected.
2004-09-23 Gary V. Vaughan <gary@gnu.org>
Since defs can change (path to grep for example) when it is made
for a different host, it can't be shipped. That also means that
defs will always be generated in the build tree, so each test case
can have the srcdir discovery factored away into tests/defs.in:
* Makefile.am (EXTRA_DIST): s/defs/defs.in/g
* tests/Makefile.am (defs): New rule to remake defs from the
parent directory's Makefile.
* 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-hardcode.test, tests/demo-inst.test,
tests/demo-make.test, tests/demo-nofast.test,
tests/demo-noinst-link.test, tests/demo-nopic.test,
tests/demo-pic.test, tests/demo-relink.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-relink.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-dryrun.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/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,
tests/tagtrace.test: Removed srcdir discovery boilerplate...
* tests/defs.in: ...and put it here.
2004-09-23 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): move symcode calculation
to correct place.
* doc/libtool.texi (libtool script contents): update description
of global_symbol_to_cdecl.
2004-09-23 Gary V. Vaughan <gary@gnu.org>
* configure.ac (M4SH): AC_SUBST m4sh expander.
* config/general.m4sh, config/getopt.m4sh: New files with factored
out functionality from...
* config/ltmain.in, libtoolize.in: ...here. m4_include the shared
code, and call AS_SHELL_SANITIZE. Also quote all `[' and `]' to
survive m4 run.
(func_serial): No need to double up m4sh quotes after a `#'.
(func_check_macros): Escape `dnl' to stop m4sh interpreting it as
a macro.
* tests/defs.in: New file expanded into tests/defs by autom4te.
* m4/libtool.m4 (_LT_DECL_EGREP): Also require fgrep for the tests
that use it.
* Makefile.am ($(top_srcdir)/config/ltmain.sh): Now built with
M4SH.
(libtoolize): Ditto.
* bootstrap: Set M4SH for call to make.
* HACKING: No need to sync to AS_SHELL_SANITIZE by hand any more.
* m4/libtool.m4: _LT_DECL uppercase ECHO.
* config/ltmain.in: Use it throughout.
(func_mkdir_p): Now matches the other implementations in
tests/defs and libtoolize.in.
* tests/sh.test: Updated to detect ECHO misuse.
2004-09-22 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.in (func_mode_link): Propagate a convenience
library's dependency libs correctly when it is being linked into a
libtool library. Deplibs are now propagated whether libdir is set
or not.
2004-09-22 Andreas Schwab <schwab@suse.de>
The dlpreopen pass over libraries reverses the elements in the
$deplibs list. This causes problems when the link pass tries to
find libraries when they are located in non-standard places
denoted by -L options. Due to the reversed order these -L options
occur after the libraries that need them, and they are not found:
* config/ltmain.in: (Un)Reverse $deplibs list at the start of the
link pass in lib mode.
2004-09-22 Charles Wilson <cwilson@spam.protected>
* ltmain.in (func_generate_dlsyms) [cygwin, mingw]: when creating
a .exp file for an executable, also create a .def file, and add
that file to the link command via SYMFILES. This causes binutils
to generate an .edata section, and allows self dlopening to work.
* NEWS: Updated.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better quoting for
postinstall_cmds and postuninstall_cmds to allow spaces in install
paths.
* config/ltmain.in (func_generate_dlsyms): Addresses in
_preloaded_symbols[] cannot go into .rdata section if symbols are
DATA imported from DLL, on windows, because runtime relocations
must happen.
* m4/libtool.m4 (_LT_LINKER_SHLIBS([TAGNAME])): Build exports for
symbols in .rdata sections.
2004-09-19 Gary V. Vaughan <gary@gnu.org>
The checks in assign.test are trying to catch case of this ilk:
`foo=bar break', but unfortunately they also choke on `foo=bar;
break' and `foo=bar && break'. Writing a sophisticated test to
catch just the intended case seems like more trouble than it's
worth, but leaving the test in causes the testsuite to fail on
valid m4sh output:
* tests/assign.test: Removed; chokes on perfectly valid shell
syntax.
* tests/Makefile.am (COMMON_TESTS): Remove assign.test.
* tests/defs.in (scripts): Don't check the m4sh inputs, go back
to checking the generated ltmain.sh script.
2004-09-17 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.in (func_echo): Except for multi-line warnings and
errors, always use func_echo. $show is for command output, and
$echo is for internal use in backtick expressions and similar.
2004-09-17 Gary V. Vaughan <gary@gnu.org>
Missed a couple of MKDIR_P references in ltmain.in in my last
patch; fix them carefully. Introduce an opt_dry_run to ltmain.in
so that the implementations of func_mkdir_p can converge, and a
func_mktempdir to do a better job of temporary directory creation:
* libtoolize.in (func_mkdir_p): Don't fail if the directory wasn't
created in dry run mode.
* tests/defs (func_mkdir_p): Ditto. We don't actually have a dry
run mode for the tests, but the function is written carefully to
be kept in synch and work correctly here too.
* config/ltmain.in (func_mkdir_p): Ditto. This copy of the
function now only differs in its use of $echo over $ECHO.
(func_extract_archive): Removed first redundant mkdir call.
(func_mktempdir): New function that tries to avoid races when
making temporary directories.
(opt_dry_run): Set this if --dry-run is given at the CLI, or if
tests/mdemo-dryrun.test has forced the value of $run.
(func_mode_install): Call $MKDIR directly and error out if the
directory cannot be created.
(func_mode_link): Rather than copying func_mkdir_p into the
wrapper script as a replacement for $MKDIR_P, we know that the
script won't be called my `make -j', so write the current value of
$MKDIR.
2004-09-17 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4: remove an extra "]"
* m4/libtool.m4 [darwin] (_LT_LANG_CXX_CONFIG): Changes for 10.4.
* config/libtool.in [darwin]: ditto.
2004-09-16 Gary V. Vaughan <gary@gnu.org>
My most recent `2004-09-02 Gary V. Vaughan' patch for mkdir_p
below is horrendously broken since it makes the installed libtool
try to run the mkinstalldirs or install-sh helper scripts. This
patch fixes the `make -j' mkdir race condition internally:
* libtoolize.in (func_mkdir_p): New slice and dice algorithm
to build the directory tree one dir at a time, ignoring errors
until the end incase they are transient due to a concurrent
identical mkdir.
* tests/defs (func_mkdir_p): Ditto.
* config/ltmain.in (func_mkdir_p): Ditto, except that ltmain.in
uses $echo rather than $ECHO, and uses $show and $run to interact
correctly with the command line.
* configure.ac (AM_INIT_AUTOMAKE): 1.8 is sufficient again.
* Makefile.am (edit): Don't substitute automake's $(mkdir_p).
* NEWS: Updated.
2004-09-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* libltdl/loaders/loadlibrary.c: Compilation fixes (originally
from Gary V. Vaughan) to compile under MinGW.
* config/mkstamp: Translate input data so that it is assured to
use the Unix line terminations. This is necessary under Windows if
the files are checked out with CR/NL line terminations. A
side-effect of this change is that input must always be from
stdin. Previously a filename argument was accepted as well.
2004-09-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/Makefile.am: Use the same CPP, F77, CXX and CXXFLAGS
for the test suite.
2004-09-15 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_ENABLE_LOCK):Replace AC_TRY_LINK with
AC_LINK_IFELSE to get rid of `autoconf -Wobsolete' warning.
* m4/ltdl.m4 (LT_LIB_DLLOAD): Ditto.
2004-09-15 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.in (func_quote_for_eval): Set a return value to
avoid forking at every call. Changed all callers.
(func_mode_link): Simplified, and removed the final non-portable
nested escaped double quotes in back quotes usage in the process.
2004-09-14 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.in (func_quote_for_eval): Factor out the ugly
shell meta-character quoting. Changed all callers.
2004-09-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Simplification:
distinguish between data and code symbols on every system.
2004-09-14 Albert Chin-A-Young <china@thewrittenword.com>
Unfortunately, libtool has no way of telling if unrecognized
compiler flags need an argument or not, and can disect options and
pass parts through incorrectly. This changeset reverts both
2004-09-06 Albert Chin-A-Young (topmost) and 2004-09-05 Albert
Chin-A-Young below, and recognises more options explicitly:
* config/ltmain.in (func_mode_link): Pass through options needed
to compile in 64-bit mode with gcc, and the SGI, Sun, HP and IBM
compilers.
2004-09-13 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_CMD_GLOBALS_SYMBOLS): Fix a typo I made when
applying 2004-09-11 Ralf Wildenhues.
2004-09-12 Brad <brad@comstyle.com>
* libtool.m4: Fixes for the OpenBSD support
2004-09-12 Peter O'Gorman <peter@pogma.com>
Our fortran tests were not very good. All the libraries created
were convenience libs, so we did not test the creation of shared
libraries on any platform. Also none of the libs used any actual
fortran library calls, adding a call to write(*,*) in each lib
causes the tests to fail on darwin (and presumably other platforms).
These new tests would likely cause many more fortran test failures,
so if there is an error during make it is reported as SKIP.
* tests/f77demo-make.test: Don't fail hard, skip on failure.
* tests/f77demo/foof2.f: New file.
* tests/f77demo/foof3.f: New file.
* tests/f77demo/fprogram.f: Call routine in new lib.
* tests/f77demo/foof.f: Call routine in another new lib.
* tests/f77demo/Makefile.am: Make a couple of new libraries, add
$(FLIBS) to cprogram LDADD.
2004-09-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): The linker distinguishes
data and code symbols on linux-gnu/ia64. Fixes multiple testsuite
failures.
* NEWS: Updated.
2004-09-06 Gary V. Vaughan <gary@gnu.org>
* libltdl/loaders/shl_load.c (get_vtable): Typo.
2004-09-06 Albert Chin-A-Young <china@thewrittenword.com>
Hopefully, passing unrecognised compiler arguments through
unmolested will prove to be a good plan for the 2.0 release. If
it goes awry, we can get back to where we were by reverting this
patch and the 2004-09-05 Albert Chin-A-Young patch, aka
gary@gnu.org--2004/libtool--devo--1.0--patch-169,172:
* config/ltmain.in (func_mode_link): Because we now pass through
compiler arguments we doesn't recognize, the code to pass
through GCC's -m* arguments is not needed.
2004-09-06 Albert Chin-A-Young <china@thewrittenword.com>
* Makefile.am (clean-ltmain-sh): Using '==' to test for equality
in a shell script is not portable. Use '=' instead.
2004-09-05 Andreas Schwab <schwab@suse.de>
* m4/ltdl.m4 (LT_WITH_LTDL): Remove excess quoting in argument of
AC_CONFIG_SUBDIRS.
2004-09-05 Albert Chin-A-Young <china@thewrittenword.com>
* config/ltmain.in (func_mode_link): Pass otherwise unrecognised +
and - style switches to the compiler.
* NEWS: Updated.
2004-09-05 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (libtool): Force libtool to be regenerated if
stamp-vcl has changed.
2004-09-05 Albert Chin-A-Young <china@thewrittenword.com>
* m4/libtool.m4, config/ltmain.in: When calling $LTCC,
pass default $CFLAGS through with $LTCFLAGS.
2004-09-03 David Edelsohn <dje@watson.ibm.com>
* config/ltmain.in (func_mode_link): Use $pic_object as
$non_pic_object if $non_pic_object=none.
* NEWS: Updated.
2004-09-03 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Remember that the ltmain.sh generated by bootstrap
is missing most of its substitution values, so force it to be
rebuilt at make time by touching $(top_srcdir)/config/ltmain.in.
From Martin Quinson <mquinson@ens-lyon.fr>
* m4/libtool.m4 (_LT_SETUP, _LT_ENABLE_LOCK, LT_PATH_LD): Use
AS_HELP_STRING to get rid of autoconf -Wobsolete warning
messages.
* m4/ltdl.m4 (LT_WITH_LTDL, _LT_ENABLE_INSTALL): Ditto.
* m4/ltoptions.m4 (_LT_ENABLE_SHARED, _LT_ENABLE_STATIC)
(_LT_ENABLE_FAST_INSTALL, _LT_WITH_PIC): Ditto.
* TODO: Updated
2004-09-03 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/slist.c (slist_cons): Don't leak the tail of a list.
2004-09-03 Albert Chin-A-Young <china@thewrittenword.com>
* m4/libtool.m4 (_LT_ENABLE_LOCK): Reformatted.
2004-09-03 Gary V. Vaughan <gary@gnu.org>
* HACKING: Explain how to verify detached signatures with gpg in
the release announcement templates.
* AUTHORS: Fix typo in my address.
2004-09-02 Gary V. Vaughan <gary@gnu.org>,
Builds of packages that use libtool and make -j produce "directory
already exists warnings" for .lib directory. Build on automake
wisdom to support make -j builds where a suitable mkdir is
available:
* configure.ac (AM_INIT_AUTOMAKE): Require 1.9, which goes to some
trouble to find a $(mkdir_p) that doesn't interfere with make -j.
* Makefile.am (edit): Substitute for @mkdir_p@.
* config/ltmain.in (MKDIR_P): Take @mkdir_p@ value.
(mkdir): Removed.
(func_mkdir_p): New function to use $MKDIR_P. Factor out all
previous mkdir calls to use this function.
(RM, MV): Declared as in libtoolize.in. Changed all callers.
* libtoolize.in (MKDIR_P): Take @mkdir_p@ value from automake.
(func_mkdir_p): Use it, similarly to new config/ltmain.in.
* tests/defs: Synchronize boiler plate code with ltmain.in.
Adjust all callers.
Add missing copyright preamble.
* tests/demo-static.test: Add missing copyright preamble.
* NEWS: Updated.
Reported by Daniel Reed <n@ml.org>
2004-09-02 Gary V. Vaughan <gary@gnu.org>,
* Makefile.am (clean-ltmain-sh): Quote $(top_builddir) for the
shell, incase it is not set when running maintainer rules with
`make -fMakefile.maint'.
Don't show the shell commands.
* AUTHORS: Fix my email address.
2004-09-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/ltdl.c (try_dlopen): Fix memory leak.
* NEWS: Updated.
2004-09-02 Gary V. Vaughan <gary@gnu.org>,
Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/slist.c, libltdl/slist.h: Merge in changes from latest
upstream. Mostly comments, formal item boxing, a sort function,
and const madness reduction.
(slist_new): Removed.
(slist_box, slist_unbox, slist_sort): New.
(SListCompare, SListCallback): Swapped!
(slist_remove, slist_find): Change order of parameters for
orthogonality with slist_foreach. Changed all callers.
* libltdl/lt_dlloader.c (loader_cmp): Renamed to...
(loader_callback): ...this. Return boxed item.
(lt_dlloader_remove): Adjust to new loader_callback semantics;
unbox each removed item before returning.
Remove unused variable.
Remove const from name parameter, since the slist API cannot
guarantee userdata const-ancy for its callback functions.
(lt_dlloader_find): Adjust to new loader_callback semantics; need
to return the contents of the boxed item.
Remove const from name parameter, since the slist API cannot
guarantee userdata const-ancy for its callback functions.
* libltdl/lt_dlloader.h (lt_dlloader_find, lt_dlloader_remove):
Adjust to new constless footprint.
* libltdl/ltdl.c (ltdl_exit): The global `loaders' list is changed
by `lt_dlloader_remove' while cleaning up, so the address in local
variable `loader' is invalidated. Since some loaders may be
resident modules that cannot be unloaded (though we have none
yet), we must save each `next' address before calling
`lt_dlloader_remove'.
* NEWS: Updated.
* THANKS: Added Ralf.
2004-09-01 Gary V. Vaughan <gary@gnu.org>
* libltdl/lt_dlloader.c (lt_dlloader_add): Handle malloc failure
from slist_new.
* libltdl/ltdl.c (loader_init): Trust lt_dlloader_add(), don't
overwrite its error type, and simplify.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2004-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/slist.c (slist_new): Handle malloc failure gracefully.
2004-09-01 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in, config/ltmain.in: Add CDPATH protection to
preamble.
* tests/defs: Put a full m4sh.m4 style 'Be Bourne compatible'
preamble in here too.
* HACKING: Note that tests/defs needs synching with m4sh.m4 too.
* TODO: Add new item.
* libltdl/ltdl.c (try_dlopen, lt_dlforeachfile): Use correct cpp
macro name, LT_DLSEARCH_PATH.
* libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Fix gcc parentheses
warning.
(foreach_dirinpath, try_dlopen, lt_dlpath_insertdir): Fix gcc
signed vs unsigned warning.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* m4/libtool.m4 (_LT_PROG_LTMAIN): Simplified in light of
ltmain.sh no longer being in the build tree.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2004-09-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* libltdl/loaders/preopen.c: Initialise memory in get_vtable.
* tests/sh.test: Look in the source tree for ltmain.sh.
2004-09-01 Gary V. Vaughan <gary@gnu.org>
Don't use C99 flexible array types as we want to be C89
compatible. Instead, revert to the old way of doing things with
an array of symbol name vs. address, and adding the originator as
the first symbol but with a NULL address:
* config/ltmain.in (func_extract_dlsyms): Store originator as a
NULL address symbol.
* libltdl/ltdl.h (lt_dlsymbol): Removed.
(lt_dlsymlist): Remove originator field.
(LTDL_SET_PRELOADED_SYMBOLS): Adjust.
* libltdl/loaders/preopen.c (vm_open, lt_dlpreload_open): Adjust
for new types.
(vm_sym): Skip the new originator symbol when scanning symbol
names.
* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Adjust preloaded symbols
test file to match.
* NEWS: Updated.
Reported by Andreas Schwab <schwab@suse.de>
2004-09-01 Gary V. Vaughan <gary@gnu.org>
Libtool currently assumes that certain characteristics, such as
enable_shared, apply to the host architecture rather than per-
language. Running the tests over a broken compiler can corrupt
these values, when there is no C++ compiler for example, so we
skip most of the tests in those cases.
* m4/libtool.m4 (_LT_LANG_CXX_CONFIG): If caught_CXX_compiler was
set from configure.ac, then don't run all the compiler tests.
(_LT_LANG_F77_CONFIG): Similarly for caught_F77_compiler.
2004-08-31 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (clean-ltmain-sh): Remove stale config/ltmain.sh
from the build tree that were left behind by previous versions of
libtool.
($top_srcdir)/stamp-vcl: Since this rule is already called on
every invocation of make, hook clean-ltmain-sh in here too.
Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2004-08-31 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* bootstrap: Update warning message to reflect having split
libtool.m4 into several files.
Also, add config/ltmain.sh to list of stale files from previous
versions to be removed before bootstrap.
* libltdl/ltdl.c: Replace strdup with lt__strdup.
2004-08-30 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.in: Double quote even $# for the sake of sh.test.
(exec_cmd): Be careful about "`\"foo\"`" quoting, even in comments
to avoid triggering the tests in sh.test.
* configure.ac: Because of the way the autoconf C++ testing
works, we need to call the C test first to work in an environment
that has no C++ compiler.
* libltdl/lt_dlloader.c (lt_dlloader_remove): Since the return
value of this function is often passed to free, don't declare it
`const'. Responsibility for this memory is given back to the
caller on return.
* libltdl/lt_dlloader.h (lt_dlloader_remove): Ditto.
* libltdl/ltdl.c (lt_dlexit): Adjust.
* NEWS: Updated.
2004-08-30 Andreas Schwab <schwab@suse.de>
* libltdl/ltdl.c (lt_dlexit): Remove lvalue cast.
* libltdl/slist.h (SListCallback): Fix missing type.
* config/ltmain.in: Accept --mode=relink.
2004-08-29 Gary V. Vaughan <gary@gnu.org>
* NEWS: Updated.
* configure.ac: Bumped version to 1.9c.
GNU libtool 1.9b was released.
* configure.ac: Bumped version to 1.9b.
* NEWS: Updated.
* INSTALL, config/config.guess, config/config.sub,
config/texinfo.tex: Updated from canonical source.
* Makefile.maint, HACKING: Update instructions for releasing in a
VPATH build.
* Makefile.am (dist-hook): Only run if README-alpha exists.
* README.alpha: Renamed from README-alpha to stop automake from
automatically adding it to DIST_COMMON.
* NEWS: Merge changes from branch-1-5.
* Makefile.am (dist-hook): Always distribute just a README file,
but take its contents from README-alpha for alpha releases.
* TODO: Reformat. Removed some items that have been implemented.
2004-08-29 Gary V. Vaughan <gary@gnu.org>
Add a new `-weak' flag to tell libtool when not to propogate
dependency libraries from dlpreopened modules to libraries:
* config/ltmain.in: Support new -weak link mode option. Adjust
help message.
* libltdl/Makefile.am (libltdlc_la_LDFLAGS): Use it.
* doc/libtool.texi (Linking with dlopened modules): Document it.
(Link mode): Mention -weak.
* NEWS: Updated.
2004-08-29 Gary V. Vaughan <gary@gnu.org>
* config/ltmain.in (opt_help): Defer showing help messages until
after a possible following --mode argument has been parsed, so we
can handle `libtool --help --mode=foo'.
2004-08-29 Gary V. Vaughan <gary@gnu.org>
We have had shell functions in ltmain.in for a few years without
complaint now, and recently a few more have crept in. Make a
start at refactoring the code with shell functions, and
standardising on option parsing style:
* config/ltmain.in (func_echo, func_verbose, func_error)
(func_fatal_error, func_fatal_help, func_missing_arg)
(func_version, func_usage, func_help): Boiler plate shell
functions mostly copied from libtoolize.in. Changed *lots* of
shell snippets to call these functions as appropriate, rather than
inlining the same code over and over.
(func_config, func_features, func_enable_tag, func_mode_help):
Factored out from the shared option parsing loop. Write a new
shared option parser based on the one in libtoolize.in.
(func_check_version_match): Factored out from global scope.
(func_mode_compile, func_mode_execute, func_mode_finish)
(func_mode_install, func_mode_link, func_mode_uninstall): Break
each of the top level mode handlers out into a function. Adjust
main loop.
(modename, prevopt, prev, optarg, show_help): Removed in the
course of cleaning up the shared option parser.
(opt_duplicate_deps): Use `:' and `false' instead of `yes' and `',
so we can run it directly, rather than calling test.
2004-08-28 Gary V. Vaughan <gary@gnu.org>
To help users submit better bug reports, improve the general
instructions, and provide additional useful info alongside the bug
reporting address in --help output:
* Makefile.am (edit): Substitute $host_triplet.
* libtoolize.in: Output useful debug info with --help.
* config/ltmain.in: Ditto.
* README: Rewritten. Added copyright info.
* README-alpha: Rewritten. Added copyright info.
* HACKING: New file, partly taken from old README-alpha.
2004-08-27 Gary V. Vaughan <gary@gnu.org>
Two things to stop `make distcheck' from trying to rebuild
distributed files (m4/ltversion.m4 and config/ltmain.in) in the
readonly source tree:
* Makefile.am (stamp-vcl): Keep only one copy of stamp-vcl; in
$(top_srcdir), so that an up-to-date version is rolled into the
dist tarball even from a VPATH build.
($(top_srcdir)/config/ltmain.sh): Don't depend on Makefile,
otherwise ltmain.sh needs to be rebuilt after every config.status
run, and then configure needs to be rebuilt, and it all goes
horribly wrong :-/ Unfortunately, we can't depend on Makefile.am
either, because that is a circular dependency. The downside of
this change is that it is now possible to edit Makefile.am to
change the way ltmain.sh is generated, and the dependency
information can't tell that ltmain.sh needs regenerating.
2004-08-27 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (Cheap tricks): Escape the `@' for texinfo.
2004-08-27 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (Cheap tricks): Fix the instructions for making
a ltmain.in wrapping libtool in light of recent changes to the
version checking code.
2004-08-26 Peter O'Gorman <peter@pogma.com>
* config/ltmain.in [darwin]: Use the -dylib_file flag and avoid
linking to so many libraries on darwin.
* m4/libtool.m4 [darwin]: Don't use a libname triplet, a couplet
is perfectly fine.
* m4/ltdl.m4: Don't use the dyld loader on darwin 8 or later.
2004-08-25 Paolo Bonzini <bonzini@gnu.org>
* config/ltmain.in (piecewise linking): Use a GNU ld script if
possible.
* m4/libtool.m4 (_LT_LINKER_SHLIBS): Add per-tag variable
with_gnu_ld.
(_LT_LANG_CXX_CONFIG): Don't set unused variable with_gnu_ldcxx.
2004-08-22 Gary V. Vaughan <gary@gnu.org>
The Grand Renaming. In preparation for libtool-2.0, move all of
the many and varied m4 symbols accumulated by libtool over the
years, considering also that modern autoconf can detect unexpanded
macros even without AC in the macro name:
* bootstrap: Remove libltdl/config.h from previous releases.
* m4/libtool.m4, m4/ltdl.m4, doc/libtool.texi: Basically, run a
giant sed transformation like this:
s,AC_LIB_LTDL,LTDL_INIT,g
s,AC_LIBLTDL_CONVENIENCE,LTDL_CONVENIENCE,g
s,AC_LIBLTDL_INSTALLABLE,LTDL_INSTALLABLE,g
s,AC_WITH_LTDL,LT_WITH_LTDL,g
s,AC_LTDL_ENABLE_INSTALL,_LT_ENABLE_INSTALL,g
s,AC_DEPLIBS_CHECK_METHOD,_LT_CHECK_MAGIC_METHOD,g
s,AC_LIBTOOL_OBJDIR,_LT_CHECK_OBJDIR,g
s,AC_LTDL_OBJDIR,_LT_CHECK_OBJDIR,g
s,AC_LTDL_DLPREOPEN,_LT_CHECK_DLPREOPEN,g
s,AC_LIBTOOL_SYS_MAX_CMD_LEN,LT_CMD_MAX_LEN,g
s,AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,_LT_CMD_GLOBAL_SYMBOLS,g
s,AC_LIBTOOL_SYS_OLD_ARCHIVE,_LT_CMD_OLD_ARCHIVE,g
s,AC_PROG_LD_RELOAD_FLAG,_LT_CMD_RELOAD,g
s,AC_LIBTOOL_SYS_LIB_STRIP,_LT_CMD_STRIPLIB,g
s,AC_CHECK_LIBM,LT_LIB_M,g
s,AC_LTDL_DLLIB,LT_LIB_DLLOAD,g
s,AC_LIBTOOL_COMPILER_OPTION,_LT_COMPILER_OPTION,g
s,AC_LIBTOOL_PROG_CC_C_O,_LT_COMPILER_C_O,g
s,AC_LIBTOOL_PROG_COMPILER_NO_RTTI,_LT_COMPILER_NO_RTTI,g
s,AC_LIBTOOL_PROG_COMPILER_PIC,_LT_COMPILER_PIC,g
s,AC_LIBTOOL_SYS_HARD_LINK_LOCKS,_LT_COMPILER_FILE_LOCKS,g
s,AC_LTDL_DLSYM_USCORE,LT_FUNC_DLSYM_USCORE,g
s,AC_LIBTOOL_LINKER_OPTION,_LT_LINKER_OPTION,g
s,AC_LIBTOOL_PROG_LD_SHLIBS,_LT_LINKER_SHLIBS,g
s,AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH,_LT_LINKER_HARDCODE_LIBPATH,g
s,AC_PATH_MAGIC,_LT_PATH_MAGIC,g
s,AC_PATH_TOOL_PREFIX,_LT_PATH_TOOL_PREFIX,g
s,AC_PROG_LD,LT_PATH_LD,g
s,AC_PROG_LD_GNU,_LT_PATH_LD_GNU,g
s,AC_PROG_NM,LT_PATH_NM,g
s,AC_LTDL_SYS_DLOPEN_DEPLIBS,LT_SYS_DLOPEN_DEPLIBS,g
s,AC_LIBTOOL_DLOPEN_SELF,LT_SYS_DLOPEN_SELF,g
s,AC_LIBTOOL_POSTDEP_PREDEP,_LT_SYS_HIDDEN_LIBDEPS,g
s,AC_LTDL_SYSSEARCHPATH,LT_SYS_DLSEARCH_PATH,g
s,AC_LTDL_SHLIBEXT,LT_SYS_MODULE_EXT,g
s,AC_LTDL_SHLIBPATH,LT_SYS_MODULE_PATH,g
s,AC_LTDL_SYMBOL_USCORE,LT_SYS_SYMBOL_USCORE,g
s,AC_LIBTOOL_SYS_DYNAMIC_LINKER,_LT_SYS_DYNAMIC_LINKER,g
s,_LT_AC_TAGVAR,_LT_TAGVAR,g
s,_LT_AC_SYS_COMPILER,_LT_TAG_COMPILER,g
s,_LT_AC_PROG_ECHO_BACKSLASH,_LT_PROG_ECHO_BACKSLASH,g
s,_LT_AC_SYS_LIBPATH_AIX,_LT_SYS_MODULE_PATH_AIX,g
s,_LT_AC_SHELL_INIT,_LT_SHELL_INIT,g
s,_LT_AC_LOCK,_LT_ENABLE_LOCK,g
s,_LT_AC_CHECK_DLFCN,_LT_HEADER_DLFCN,g
s,_LT_AC_TRY_DLOPEN_SELF,_LT_TRY_DLOPEN_SELF,g
s,LT_AC_PROG_EGREP,_LT_DECL_EGREP,g
s,LT_AC_PROG_SED,_LT_DECL_SED,g
* doc/libtool.texi (Autoconf macros): Document exported macros.
* libtoolize.in: Compare ltdl.m4 serial numbers for LTDL_INIT
instead of newly obsoleted AC_LIB_LTDL.
(func_scan_files): Also set seen_ltdl for LTDL_INIT and
LT_WITH_LTDL.
2004-08-12 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 [GNU/linux] (AC_DEPLIBS_CHECK_METHOD): Cleanup,
thanks to Daniel Reed.
2004-08-11 Daniel Reed <djr@redhat.com>
* tests/demo-nopic.test: Do not run on x86_64 or s390*
2004-08-06 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_dlforeachfile): LT_SYS_LIBSEARCH_PATH is not
an environment variable, it is an actual path.
* bootstrap: Remove `-f Makefile.am' now that we have an actual
Makefile to build ltmain.sh.
Reported by Noah Mish <noah@cs.caltech.edu>
2004-08-05 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Run the bootstrap rules from a file named Makefile,
copied from Makefile.am for fresh checkouts.
2004-08-05 Alexandre Duret-Lutz <adl@gnu.org>
* m4/libtool.m4 (_LT_PROG_LTMAIN): Require ltmain.sh using
using Autoconf's new AC_REQUIRE_AUX_FILE.
2004-08-05 Gary V. Vaughan <gary@gnu.org>
* Makefile.am ($(top_srcdir)/config/ltmain.sh): Depends on
Makefile.
(timestamp): Factor out timestamp setting and edit it based on the
version number, so that it is empty for release versions.
($(top_srcdir)/config/ltmain.sh): Use it.
(libtoolize): Ditto.
* Makefile.am (libtool): Depends on ltmain.sh.
(libtoolize): Set and substitute TIMESTAMP.
* Makefile.am ($(top_srcdir)/config/ltmain.sh): Actually run
$(MKSTAMP) before changing directories, or it won't be found.
Forgot to save before my last commit :-(
* Makefile.am ($(top_srcdir)/m4/ltversion.m4): Since we already did
`cd $(top_srcdir)' for this rule, we can't mv ltversion.tmp to the
relative $(top_srcdir) again! Also, run $(MKSTAMP) before changing
directories, or it won't be found.
($(top_srcdir)/config/ltmain.sh): Ditto.
(EXTRA_DIST): We should distribute ltversion.m4 too.
2004-08-04 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Since CONFIG_SHELL may
not actually be set, we should use SHELL here, also make darn sure
that SHELL is set to something. Bug from Willem Jan Palenstijn
<wpalenst@math.leidenuniv.nl>.
2004-08-03 Jacob Meuser <jakemsr@jakemsr.com>
* ltmain.in: Allow some static libraries to be used in generating a
shared library on NetBSD and OpenBSD. match-pattern_regex decides
which are good.
2004-08-02 Geoffrey Keating <geoffk@apple.com>
* m4/libtool.m4 [darwin]: Don't use -all_load.
2004-08-01 Maciej W. Rozycki <macro@linux-mips.org>
* m4/libtool.m4 (LT_AC_PROG_SED): Set SED when running from cache as
well.
2004-07-31 Gary V. Vaughan <gary@gnu.org>
Although libtool is optimised to not need to subconfigure libltdl,
the installed libltdl sources for libtoolize need to put
libltdl/configure.ac in the parent package so that *it* can
subconfigure libltdl. That way we don't put any constraints on
the build system used by the parent package because the
libtoolized libltdl subtree is a self-contained sub-project:
* libltdl/Makefile.am (EXTRA_DIST): Add configure.ac.
(nobase_ltdldata_DATA): Change back to libltdl's own
configure.ac.
2004-07-30 Gary V. Vaughan <gary@gnu.org>
My thanks to Alexandre Duret-Lutz <adl@gnu.org> for the insight
required to write this changeset -- especially that ltmain.sh is
the same on any machine for a given release, which I hadn't
noticed for some bizarre reason: It turns out that generating
distributed files from configure causes no end of hassle, as
evidenced by the many patches I've generated over the last few
days to try and get the dist and distcheck make rules to work.
Instead of all that hair, we now simply generate our distributed
files (now including ltmain.sh) with make rules -- and since
automake creates make variables for all AC_SUBSTs, that is really
easy. The code looks a lot more like automake and autoconf
Makefile.ams now, and doesn't have all the rough edges the earlier
hacky solution suffered from. We still generate libtool from
config.status, but that is not a distributed file, and doesn't
break the golden rule. Besides, there is way more going on there
than a bunch of substitutions:
* Makefile.am (edit): New common sed substitutions for files now
generated by make instead of config.status.
(CLEANFILES): Clean new tmp files.
(EXTRA_DIST): Add ltmain.sh.
(vcl-tmp): Reinstated.
(m4/ltversion.m4, config/ltmain.sh): New rules. Generate from
here instead of config.status.
(libtoolize): Ditto.
(libtool): Call config.status to regenerate if necessary.
(dist-hook): Removed.
* config/ltmain.in: Moved here from top_srcdir.
* README-alpha: Update instructions to check AS_SHELL_SANITIZE is
up to date.
* bootstrap: Rewritten. Generate m4/ltversion.m4 and
config/ltmain.sh because configure depends on them.
* configure.ac (AC_CONFIG_SRCDIR): Use libtoolize.in now that
ltmain.in has moved.
(AC_CONFIG_FILES): Don't generate distributed files,
config/ltmain.sh and libtoolize from config.status. We have make
rules to do that now.
2004-07-30 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4, ltmain.in: readd the comments that I erased.
* ltmain.in [darwin]: We already had a module var, there can be
only one.
* m4/libtool.m4, ltmain.in: autoconf now says the best thing to do
with CDPATH is to (unset CDPATH) >/dev/null 2>&1 && unset CDPATH,
so do it.
2004-07-29 Gary V. Vaughan <gary@gnu.org>
* Makefile.am ($(top_srcdir)/config/ltmain.sh): Ugh. More hair to
help `make distcheck'; not only do we have to make a copy of
ltmain.sh available in the source tree, but we have to be really
careful about permission bit twiddling when we copy it across into
the possible read-only $(top_srcdir)/config directory!
* tests/tagtrace.test: Skip this test when running a VPATH build
against a read-only source tree (as in distcheck for example),
since autoconf wants to write temporary files in $top_srcdir
otherwise.
* Makefile.am ($(top_srcdir)/config/ltmain.sh): Automake assumes,
quite rightly for every project except libtool, that there will be
an ltmain.sh in the source tree.
(EXTRA_DIST): As do the dist rules it generates.
(dist-hook): Even though we definitely don't want to distribute
our local ltmain.sh.
* config/config.guess, config/config.sub: Don't check these in,
they cause spurious conflicts on cvs commit and update, and are
added by bootstrap in any case.
* configure.ac (AC_INIT): Revert an accidental commit from my
testing of package_revision.
2004-07-29 Alexandre Duret-Lutz <adl@gnu.org>
* doc/libtool.texi (Tags): Document CC.
* m4/libtool.m4 (_LT_SETUP): Register CC as supported tag so that
Automake uses it.
2004-07-28 Gary V. Vaughan <gary@gnu.org>
Fix a long-standing bug where macro_version was always empty in
the generated m4/ltversion.m4. Except for CVS revisions:
* ltmain.in (package_revision): Don't try to deduce it from
TIMESTAMP, since that is empty for release versions; simply
substitute it...
* configure.ac (package_revision): ...from here, having
precalculated it before resetting TIMESTAMP for release versions.
* bootstrap: Force regeneration of m4/ltversion.m4, but retain
timestamps if there is no change to the content.
2004-07-28 Gary V. Vaughan <gary@gnu.org>
To take full advantage of this, libtool must be bootstrapped with
CVS autoconf, otherwise pdksh chokes on some nested escaped quotes
from libtool.m4. Using CVS autoconf protects configure from
non-bourne compatible shells in the same way this changeset
protects libtool and libtoolize:
* libtoolize.in: Include latest CVS autoconf AS_SHELL_SANITIZE
expansion to make various shells fully bourne compatible.
* ltmain.in: Ditto.
* m4/libtool.m4 (AC_PATH_TOOL_PREFIX): Remove spurious quotes, the
RHS of = assignment is not IFS split.
(_LT_LANG_CXX_CONFIG): Ditto.
(AC_LIBTOOL_POSTDEP_PREDEP): Ditto.
2004-07-27 Gary V. Vaughan <gary@gnu.org>
This change fixes another VPATH build bug, where the vcl.tmp
target forced a rebuild of stamp-vcl in the build tree (and
hence regeneration of m4/ltversion.m4, thus an automake driven
rebootstrap that doesn't know about $fakes) requiring a fresh
./bootstrap after every cvs/tla update:
* Makefile.am (vcl.tmp): Removed.
(stamp-vcl): Adopt former vcl.tmp target rules.
2004-07-25 Gary V. Vaughan <gary@gnu.org>
* ltmain.in: Make sure that dependency libraries of -dlpreopened
libraries are propogated properly.
2004-07-23 Joe Orton <joe@manyfish.co.uk>
* libtool.m4: Treat bsdi5* like bsdi4*.
2004-07-22 Peter O'Gorman <peter@pogma.com>
* ltmain.in [darwin](func_extract_archives): $SED not sed.
* ltmain.in [darwin](func_extract_archives): Clean up last commit
a little, some suggestions are from Albert Chin, those that are
broken are mine.
* libltdl/Makefile.am, libltdl/loaders/Makefile.am: Look for
included files in the right places.
2004-07-18 Peter O'Gorman <peter@pogma.com>
* ltmain.in [darwin](func_extract_archives): Because fat archives
on darwin can not be extracted using ar, we need to use lipo to
extract the thin archives and then use lipo again to generate the
individual fat objects. This should allow people to run configure
with CC set to "cc -arch ppc -arch ppc64" or "cc -arch ppc -arch
i386" or whatever to match the toolchain they have available.
2004-07-18 Greg Eisenhauer <eisen@cc.gatech.edu>
* libltdl/loaders/Makefile.am: Use AM_MAKEFLAGS not MAKEFLAGS.
2004-07-18 Peter O'Gorman <peter@pogma.com>
* libltdl/Makefile.am: Ensure that lt__dirent.h is part of the dist,
also make failed looking for configure.ac, look for
$(top_srcdir)/configure.ac instead.
2004-07-15 Gary V. Vaughan <gary@gnu.org>
* libltdl/lt__private.h (lt_dlhandle_struct): Renamed to
lt__handle to better reflect the naming scheme.
* libltdl/ltdl.h (lt_dlhandle): Be truly opaque with a void *.
* libltdl/lt_dlloader.c (lt_dlloader_remove): Party to
lt__private.h, so use internal lt__handle instead of opaque
lt_dlhandle.
* libltdl/ltdl.c (LT_DLGET_FLAG, LT_DLSET_FLAG): Add a cast to
internal lt__handle type.
(try_dlopen, tryall_dlopen, load_deplibs, unload_deplibs): Ditto.
(lt_dlexit, lt_dlclose, lt_dlsym): Use lt__handle to iterate
throught the handle list.
(try_dlopen): Use lt__zalloc instead of MALLOC and memset.
* libltdl/ltdl.h (lt_dlcaller_id): Be truly opaque with a void *.
(lt_dlhandle_interface): New callback type for filtering handles
according to the interface they present.
* libltdl/ltdl.c (lt_dlcaller_register): Take an id and an
interface check callback, and generate a caller_id.
(iterator): New static variable for the use of...
(lt_dlhandle_first): New function. Set the iterator for
subsequent calls to lt_dlhandle_next.
(lt_dlhandle_next): Either work as before when iterator is unset,
or else skip handles that fail the interface check in iterator set
by lt_dlhandle_first.
* libltdl/ltdl.h (lt_dlhandle_first): Declaration.
* doc/libtool.texi (User defined module data): Document the new
APIs.
* NEWS: Updated.
2004-07-15 Gary V. Vaughan <gary@gnu.org>
Split lt_dlloader management into a separate file, and factor
`loaders' list management into a new SList ADT. In the process,
the API for writing loaders is a little cleaner, so all the
existing loaders were tweaked to take advantage of that:
* libltdl/slist.h, libltdl/slist.c: New files implementing a
generic singly linked list container ADT. The ADT is purely
internal, and none of its API's are visible from an installed
libltdl.
* libltdl/lt_dlloader.h (lt_dlloader): Removed next field again
:-) Renamed to lt_dlvtable for API. Changed all callers.
(lt_dlloader_get): New function to turn an lt_dlloader into its
associated lt_dlvtable.
(lt_dlloader_add): Removed unused data parameter. The caller
data belongs to (and is set by) the loader itself, not the
loader's client. Changed all callers.
(lt_dlloader_name, lt_dlloader_data): Removed. Use
lt_dlloader_get instead!
* libltdl/lt__private.h: Include slist.h.
(lt__alloc_die_callback): Add missing LT_SCOPE to declaration.
(lt_dlhandle_struct): Use lt_dlvtable instead of opaque
lt_dlloader.
* libltdl/ltdl.c (lt_dlexit): Rewritten for the new loader API.
(loaders, lt_dlloader_add, lt_dlloader_remove, lt_dlloader_next,
lt_dlloader_find): Moved from here...
* libltdl/lt_dlloader.c ((loaders, lt_dlloader_add,
lt_dlloader_remove, lt_dlloader_next, lt_dlloader_find): ...to
here. And rewritten in terms of new SList interface.
* libltdl/ltdl.c (lt_dlexit, tryall_dlopen): Rewritten in terms of
new lt_dlloader interface.
* libltdl/Makefile.am (libdlloader_la_SOURCES): Add slist.h and
slist.c. Move lt_dlloader.h from here...
(pkginclude_HEADERS): ...to here.
(libltdl_la_SOURCES): Add lt_dlloader.c and lt_dlloader.h.
2004-07-15 Gary V. Vaughan <gary@gnu.org>
Collapse two almost identical structures into one:
* libltdl/lt_dlloader.h (lt_dlloader): Add next field.
* libltdl/ltdl.c (lt_user_dlloader): Remove entirely. Change all
callers to use lt_dlloader instead. Add a compatibility macro.
(lt_dlloader_add): Remove copy and allocate stage, just hook
directly into the loaders list.
2004-07-15 Gary V. Vaughan <gary@gnu.org>
A cleaner way to access the private fields of an lt_dlhandle
than my move of the module field into lt_dlinfo:
* libltdl/ltdl.c (lt_caller_data, lt_dlhandle_struct): Move from
here...
* libltdl/lt__private.h (lt_caller_data, lt_dlhandle_struct):
...to here. And put the module field back here...
* libltdl/ltdl.h (lt_dlinfo): ...instead of here.
* libltdl/loaders/loadlibrary.c (vm_open): Adjust.
2004-07-15 Gary V. Vaughan <gary@gnu.org>
* libltdl/lt__private.h (streq, strneq): New macros to make strcmp
calls as used for simple comparison easier to read.
* libltdl/loaders/dyld.c, libltdl/loaders/preopen.c,
libltdl/ltdl.c: Use them!
2004-07-15 Gary V. Vaughan <gary@gnu.org>
This pervasive changeset makes two intertwined deep changes to the
operation of libtool (neither would work alone). First, there is
a new feature that allows libraries to preopen modules. This
entails a backwards incompatible change to the libltdl API for
separating out the preloaded symbol lists by owner. Second, in
the tradition of "eating our own dogfood", libltdl now preloads
its own dlloaders. The internal API for dlloaders has also had to
change in a backwards incompatible way in support of the new
library preloading feature. If you don't use preloaded libraries,
you needn't change your project sources, though you will need to
recompile against the new libltdl. The API changes are mostly
confined to dlloaders, so you probably needn't worry about those
(unless you have written a custom loader that you want libltdl to
use):
* configure.ac (AC_CONFIG_FILES): Add libltdl/loaders/Makefile.
* libltdl/configure.ac (AC_CONFIG_FILES): Add loaders/Makefile.
* libltdl/loaders: New directory for module loaders, to simplify
Makefile rules, and to give the loaders themselves names that are
unique in the first few characters.
* libtoolize.in (func_copy_all_files): Copy recursively to pick up
the loaders directory contents.
* libltdl/loaders/Makefile.am: New file. Move module building
rules to here...
* libltdl/Makefile.am: ...from here.
(VERSION_INFO): Bumped version info to signify interface changes.
(libltdl_la_CPPFLAGS, libltdlc_la_CPPFLAGS): Set LTDLOPEN
appropriately for each library.
* libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
libltdl/loader-loadlibrary.c libltdl/loader-preopen.c,
libltdl/loader-shl_load.c: Moved from here...
* libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c,
libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c,
libltdl/loaders/loadlibrary.c libltdl/loaders/preopen.c,
libltdl/loaders/shl_load.c: ...to here.
(get_vtable): New entry function for each.
* libltdl/loaders/preopen.c (lt_dlsymlists_t): Replaced by...
(symlist_chain): ...a new structure which maps lists of preloaded
symbols from the object that loads them.
(lt_dlpreload_open): New function to automatically open all
preloaded modules belonging to a named object (ORIGINATOR).
* libltdl/lt__alloc.c (lt__zalloc): New function to return a block
of zeroed out new memory.
* libltdl/lt__alloc.h (lt__zalloc): Prototype it.
* libltdl/lt__private.h (lt__alloc_die_callback): Add missing
prototype.
(lt__error_strings): Make this opaque to callers.
* libltdl/lt_error.c (lt__error_strings): Move the implementation
to here.
* libltdl/lt_dlloader.h (lt_user_dlloader): Add extra fields to
make originator focused preloading possible. *BREAKS BACKWARDS
COMPATIBILITY*
(lt_dlloader_add): Take advantage of new fields to simplify
paramater list.
* libltdl/lt_system.h (LT_STR): New ANSI stringification macro.
(LT_CONC): Fix it to work from within macros.
* libltdl/ltdl.c (loader_init, loader_init_callback): Simplify
dlloader loading.
(get_vtable, preloaded_symbols): Point these at the preopen.c
symbols to bootstrap the loader chain.
(lt_dlinit): Load the preopen dlloader manually, and then use it
to load any other preloaded dlloaders.
(lt_dlloader_add): Simplify parameter list. Populate new
fields. Chain new loaders according to priority field.
* libltdl/ltdl.h (lt_dlsymlist): Add a new originator field.
(lt_dlpreload_callback_func): Type of a callback for automatic
lt_dlpreload_open loading.
(LTDL_SET_PRELOADED_SYMBOLS): Adjust to hook into preloaded
symbols from the "@PROGRAM@" originator.
* tests/demo/dlmain.c (main): Use mangled preloaded_symbols symbol.
* tests/pdemo/longer_file_name_dlmain.c (main): Ditto.
* ltmain.in: Don't spew spurious warnings when dlopening and
dlpreopening modules.
(func_generate_dlsyms): Factored out from multiple copies in the
rest of the code. Generate originator keyed symbol lists.
(func_extract_archives): Also factored. Extract the contents of
convenience archives for linking with dependent libraries when
--whole-archive is not available.
[darwin]: Don't try to link $old_library unless it exists, and
$lib is a bundle.
* m4/ltdl.m4 (AC_LTDL_DLLIB): Check for all possible dynamic
loading libraries/apis rather that stopping when an acceptable one
is discovered.
(LT_DLLOADERS): New variable for holding dlloaders that can be
preloaded.
* doc/libtool.texi: Document interface changes.
* NEWS: Updated.
2004-07-12 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 [darwin]: Set whole_archive_flag_spec to '' for xlc,
or it does not pass it's tests. xlc passes -noall_load (the default)
and when -all_load is also specified Apple's /usr/bin/libtool barfs
and dies.
2004-07-07 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.h (lt_dlinfo): Move private module field to here...
* libltdl/ltdl.c (lt_dlhandle_struct): ...from here. Changed all
callers.
* libltdl/loader-loadlibrary.c (sys_wll_open): Use new inteface to
scan loaded handle->info.module fields for previously loaded
modules.
* doc/libtool.texi (User defined module data): Document changes to
the interface.
* NEWS: Updated.
Reported by Chuck Wilson <cwilson@ece.gatech.edu>
2004-07-07 Brad <brad@comstyle.com>
* m4/libtool.m4: Fixes for the OpenBSD support
2004-06-24 Noah Misch <noah@cs.caltech.edu>
* ltmain.in: Unset the zsh GLOB_SUBST option, which makes zsh
handle backslash quoting poorly, before doing anything else.
* tests/defs: Likewise.
2004-06-21 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in (libtoolize_flags): With the --ltdl option, we
libtoolize the libltdl subdirectory automatically.
* m4/ltdl.m4 (AC_WITH_LTDL): Fix overquoted args.
2004-06-21 Peter O'Gorman <peter@pogma.com>
* ltmain.in (dependency_libs) [darwin]: Remove -framework stuff from
dependency_libs. Instead, invent a new .la var "inherited_linker_flags"
to keep any linker flags which should be used when linking the library,
but are outside the usual -L -l, -R etc that can be used in
dependency_libs. Any unusual flags in dependency_libs cause recent
versions of libtool to die with "cannot find the library `'", so
it is required to move frameworks out of there. :(
2004-06-21 Gary V. Vaughan <gary@gnu.org>
From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>:
* libtoolize.in: Quote $# to make sh.test happy again.
* m4/ltdl.m4 (AC_WITH_LTDL): Remove redundant AC_REQUIRE calls.
Either set variables to allow a client to link with the installed
libltdl, or else compile a local libltdl as a convenience library.
* libtoolize.in (opt_ltdl): Removed in favour of...
(ltdldir): ...this, which is defaulted to "libltdl" or can be set
by the user with an argument to --ltdl.
(Main): Use it!
* doc/libtool.texi (Distributing libltdl): Improved documentation
on libltdl.
(Invoking libtoolize): Document new optional --ltdl target
directory argument.
2004-06-17 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Fix a typo
in allow_undefined_flag: s,${Wl},${wl},g
* libtoolize.in (func_scan_files): Accept AC_WITH_LTDL as an
indication that libltdl is being used.
(Main): Without AC_CONFIG_MACRO_DIR, don't just dump all the
macro files in `.' since they are never used, and aclocal will
copy them from $aclocaldir into aclocal.m4 anyway.
Reported by Alexandre Duret-Lutz <adl@gnu.org>
2004-06-16 Brad <brad@comstyle.com>
* m4/libtool.m4: More improvements to OpenBSD support.
* NEWS: Updated.
2004-06-16 Gary V. Vaughan <gary@gnu.org>
libltdl uses LIBOBJS, which leak out into a parent project if both
share the same configure.ac. Libtool itself doesn't compile any
code, so it is okay to do it during bootstrap, but other projects
need to treat libltdl as a configurable subproject to keep their
respective LIBOBJS separate:
* libltdl/configure.ac: New file, based on configure.ac.
* libltdl/Makefile.am (AC_LOCAL_AMFLAGS): Use our own m4
directory.
(ltdldata_DATA): List *all* the files that libtoolize --ltdl will
install.
2004-06-16 Gary V. Vaughan <gary@gnu.org>
Automake 1.9 won't have the AC_PROG_EGREP bug (aclocal used to
pull an old installed libtool.m4 as well as the bootstrap
m4/libtool.m4 if an AC_DEFUN was removed), and we have
lt~obsolete.m4 to work around it in the mean time. libtoolize
can install macro files from $prefix/share/aclocal perfectly well
without us needing to move to a whole other directory:
* Makefile.am (pkgmacro_DATA): Renamed to aclocal_DATA, so m4
files are installed to $prefix/share/aclocal again.
(install-data-local): Don't remove just installed macros!
* libtoolize.in (pkgmacrodir): Renamed to aclocaldir.
(func_copy_some_files): New function factored out of...
(func_copy_all_files): ...here. Adjust to use func_copy_some_files.
(re_pkgaux_files): Renamed to glob_pkgaux_files, since it is not
a regular expression.
(re_pkgmagro_files): Replaced with...
(pkgmacro_files): ...a colon delimited list of libtool installed
m4 files from aclocaldir.
(Main): Copy macro files from aclocaldir again.
* NEWS: Updated.
2004-05-21 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* ltmain.sh (check_executable): The WIN32 API and MinGW do not support
S_IXOTH and S_IXGRP so use of these modes should be conditional.
2004-05-21 Gary V. Vaughan <gary@gnu.org>
* tests/tagtrace.test: Forgot to add this file to the repository
for Alexandre's 2004-05-16 patch below.
2004-05-18 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Make this an m4_defun,
test the tags compiler to see if it is GCC, not the CC compiler.
2004-05-16 Alexandre Duret-Lutz <adl@gnu.org>
* doc/libtool.texi (Invoking libtool): Mention --tag=TAG.
(Tags, Trace interface): New nodes.
* m4/libtool.m4 (LT_SUPPORTED_TAG): New macro.
(_LT_LANG): Call it.
* tests/tagtrace.test: New file.
* tests/Makefile.am
(TESTS): Add tagtrace.test.
* tests/defs: Define AUTOCONF.
2004-05-14 Mike Gorchak <lestat@i.com.ua>
* ltmain.in: Add new qnx version type support.
* m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Use it. Set
ldqnx.so linker type.
(AC_DEPLIBS_CHECK_METHOD): QNX6 uses GNU C++, with deplib
checking, so use pass_all.
(AC_LIBTOOL_PROG_COMPILER_PIC): Use -shared for QNX.
(_LT_LANG_CXX_CONFIG): QNX can make shared libraries.
* m4/ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): QNX opens deplibs on
dlopen.
* NEWS: Updated.
2004-05-05 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Insert space
around = for a test and a comma between runpath_var and $1. Bug
reported by Max Bowsher.
2004-04-22 Gary V. Vaughan <gary@gnu.org>
* libltdl/argz.h: Moved from here...
* libltdl/argz_.h: ...to here, so as not to shadow system
argz.h when we `#include <argz.h>' for example.
#include stdlib.h and sys/types.h to ensure we get a size_t
definition.
* libltdl/argz.c (HAVE_CONFIG_H): Set it up how ltdl likes it when
used by another client.
* m4/argz.m4: New file.
(gl_FUNC_ARGZ): Try to find an error_t definition, and a system
argz.h.
* m4/ltdl.m4: Use it.
(AC_LTDL_FUNC_ARGZ): Removed.
* libltdl/lt__glibc.h: #include <argz.h> to pick up either the
system argz.h or our libltdl/argz.h if necessary.
* libltdl/Makefile.am (libltdl_la_SOURCES): Move argz.h from
here...
(ltdldata_DATA): ...here. Along with argz.c.
(argz.h): Generate from argz_.h if the system file is missing.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2004-04-22 Gary V. Vaughan <gary@gnu.org>
According to Howard Chu <hyc@highlandsun.com>:
Applications should assume that the native dlopen is NOT
thread-safe, and take care of locking themselves. All application
calls into libltdl should thus be protected by the caller.
* libltdl/lt_mutex.c, libltdl/lt_mutex.h: Removed.
* libltdl/Makefile.am (pkginclude_HEADERS): Removed lt_mutex.h.
(libltdl_la_SOURCES): Removed lt_mutex.c and lt_mutex.h.
* libltdl/ltdl.h: Don't include lt_mutex.h.
* libltdl/lt__private.h (LT__MUTEX_GETERROR, LT__MUTEX_SETERROR)
(LT__MUTEX_SETERRORSTR): Renamed to...
(LT__GETERROR, LT__SETERROR, LT__SETERRORSTR): ...this. Changed
all callers.
(LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, lt_dlmutex_lock)
(lt_dlmutex_unlock, lt_dlmutex_seterror, lt_dlmutex_geterror):
Removed. Changed all callers.
* doc/libtool.texi (Thread Saftey in libltdl):
* NEWS: Updated.
2004-04-19 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Detect Intel C++ compiler
version more idiomatically.
2004-04-19 Albert Chin-A-Young <china@thewrittenword.com>
* m4/libtool.m4: Use cc rather than ld to created
a shared library on HP-UX 11.x. On HP-UX 10.x, the
C compiler doesn't grok -b so we continue to use ld.
* m4/libtool.m4: Use cc rather than ld to create a
shared library on Solaris. When using the Sun
Workshop compiler 5.0 (and I presume any previous
version), revert to ld due to compiler errors.
* m4/libtool.m4: Use cc rather than ld to created
a shared library on Tru64 UNIX.
* m4/libtool.m4: Use cc rather than ld to created
a shared library on IRIX.
* libltdl/loader-shl_load.c: Fix typos during reorg.
2004-04-19 Alexandre Duret-Lutz <adl@gnu.org>
* doc/libtool.texi (LT_INIT): Properly display options in a table.
2004-04-19 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_LANG_CXX_CONFIG): Intel C++ compiler 8.0 and
newer adds predep_objects and postdep_objects itself, so don't
duplicate them in $archive_cmds and $archive_expsym_cmds.
* NEWS: Updated.
Reported by Roberto Bagnara <bagnara@cs.unipr.it>
2004-04-17 Peter O'Gorman <peter@pogma.com>
* libltdl/loader-dyld.c: Fix compilation issues. Set Original author
to me.
2004-04-17 Todd Vierling <tv@duh.org>,
Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use sysctl to get the
max cmd length on BSD* and darwin. Make sure that there is a safety
factor too.
2004-04-15 Scott James Remnant <scott@netsplit.com>
* m4/libtool.m4 (_LT_LANG_DEFAULT_CONFIG): Remove code to handle 'none'
and 'all' options, this now always assumes automatic mode as that
works so well.
(_LT_LANG_DEFAULT): Remove definition
* m4/ltoptions.m4: Remove 'no-lang', 'auto-lang' and 'all-lang' options.
* configure.ac: Invoke LT_LANG for each desired supported language.
* doc/libtool.texi: Remove documentation for the LT_INIT options,
rewrite LT_LANG documentation.
2004-04-14 Alexandre Duret-Lutz <adl@gnu.org>
* bootstrap: Delete acinclude.m4.
2004-04-14 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in (configure_ac): Don't complain about the lack of
aclocal.m4.
Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
2004-04-13 Gary V. Vaughan <gary@gnu.org>
* m4/ltdl.m4 (AC_LIB_LTDL): Remove AC_REPLACE_FUNCS for memmove
and strcpy.
* libltdl/lt__pre89.h, libltdl/memcpy.c, libltdl/memmove.c,
libltdl/strchr.c, libltdl/strcmp.c, libltdl/strrchr.c: Remove
half-assed pre-c89 support entirely.
* libltdl/lt__private.h: Don't refer to lt__pre89.h.
* libltdl/Makefile.am (ltdldata_DATA): Remove references to
deleted files.
* NEWS: Mention it.
* libltdl/lt__pre89.h, libltdl/ltdl.c, libltdl/ltdl.h, libltdl/argz.c,
libltdl/argz.h, libltdl/lt__glibc.h, libltdl/lt_dlloader.h,
libltdl/lt__dirent.c, libltdl/lt__dirent.h, libltdl/lt__private.h,
libltdl/lt__alloc.c, libltdl/lt__alloc.h, libltdl/lt_system.h,
libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
libltdl/loader-dyld.c, libltdl/loader-loadlibrary.c,
libltdl/loader-shl_load.c, libltdl/lt_error.h, libltdl/lt_mutex.h:
Autoconf either defines to 1 or undefs the discovery macros it
puts in config.h, and many (non-GNU) compilers throw a spurious
warning when testing an #undef macro with #if. For consistency,
while we are touching all these lines, use defined(MACRO) style
throughout.
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2004-04-13 Gary V. Vaughan <gary@gnu.org>
Factor out the individual loaders, in preparation for preloading
them as libtool modules. Currently loader-preopen.c is linked
unconditionally and other appropriate loaders discovered by
AC_LTDL_DLLIB are built and linked in:
* libltdl/Makefile.am (libltdl_la_SOURCES): Add loader-preopen
module.
* m4/ltdl.m4 (AC_LTDL_DLLIB): Use AC_LIBOBJ to add appropriate
loaders to libltdl.
* libltdl/lt_system.h (LT_SCOPE): Moved to here.
* libltdl/ltdl.h (lt_dlloader, lt_user_data, lt_module)
(lt_module_open, lt_module_close, lt_find_sym, lt_dlloader_exit)
(struct lt_user_dlloader, lt_dlloader_next, lt_dlloader_find)
(lt_dlloader_name, lt_dlloader_data, lt_dlloader_add)
(lt_dlloader_remove): Moved declarations...
* libltdl/lt_loader.h: ...to here.
* libltdl/ltdl.c: Include lt_loader.h. Move loader implementation
code from here...
* libltdl/loader-dld_link.c, libltdl/loader-dlopen.c,
libltdl/loader-dyld.c, libltdl/loader-load_add_on.c,
libltdl/loader-loadlibrary.c, libltdl/loader-preopen.c,
libltdl/loader-shl_load.c: ...to here.
* tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (AM_CPPFLAGS):
Add -I$(top_srcdir)/../.. so that libltdl include files can be
written as #include <libltdl/lt_dlloader.h> and found correctly.
2004-04-13 Gary V. Vaughan <gary@gnu.org>
Factor out the mutex handling and error handling into their own
modules. Mutex handling is not currently useful in combination
with posix threads, and should be easier to replace if it is in a
separate module. Additionally, we can factor out the loaders in
such a way as to depend on only the portability layer and these
new mutex and error modules now:
* libltdl/Makefile.am (pkginclude_HEADERS): Install lt_error.h and
lt_mutex.h to $includedir/libltdl.
(libltdl_la_SOURCES): Build lt_error and lt_mutex objects.
* libltdl/ltdl.h (LT_SCOPE): Moved from here...
* libltdl/lt_system.h (LT_SCOPE): ...to here.
* libltdl/ltdl.c (lt_dlerror_strings, LT_DLSTRERROR): Moved from
here...
* libltdl/lt__private.h (lt__error_strings, LT__STRERROR): ...to
here as additional internal interfaces to lt_error. Changed all
callers.
* libltdl/ltdl.c (LT_DLMUTEX_LOCK, LT_DLMUTEX_UNLOCK)
(LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR, lt_dlmutex_lock_func)
(lt_dlmutex_unlock_func, lt_dlmutex_geterror_func)
(lt_dllast_error): Moved from here...
(LT__MUTEX_LOCK, LT__MUTEX_UNLOCK, LT__MUTEX_SETERRORSTR)
(LT__MUTEX_GETERROR, lt__mutex_lock_func, lt__mutex_unlock_func)
(lt__mutex_geterror_func, lt__last_error): ...to here as
additional internal interfaces to lt_mutex. Changed all callers.
(LT_MUTEX_SETERROR): Take an errorcode rather than a string.
Changed all callers.
* libltdl/ltdl.c, libltdl/ltdl.h (lt_dlmutex_register): Moved from
here...
* libltdl/lt_mutex.c, libltdl/lt_mutex.h (lt_dlmutex_register):
...to here. New files.
* libltdl/ltdl.c, libltdl/ltdl.h (lt_dladderror, lt_dlseterror)
(lt_dlerror_table):
Moved from here...
* libltdl/lt_error.c, libltdl/lt_error.h (lt_dladderror)
(lt_dlseterror, lt_dlerror_table): ...to here. New files.
2004-04-13 Scott James Remnant <scott@netsplit.com>
* Makefile.am (XDELTA_OPTIONS): Remove --pristine as that
generates huge xdeltas.
2004-04-08 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (argz_append, argz_create_sep, argz_insert)
(argz_next, argz_stringify): Move from here...
* libltdl/argz.c: New file. ...to here.
* libltdl/lt__glibc.h: New file. Rename global symbols into the
lt__ namespace.
* libltdl/lt__private.h: Include lt__glibc.h.
* libltdl/Makefile.am (libltdl_la_SOURCES): Add new files.
(AM_CPPFLAGS): Add -DLTDL.
* libltdl/argz.h (argz_append, argz_create_sep, argz_insert)
(argz_next, argz_stringify): New file. Declare argz functions
here, including lt__glibc.h when LTDL is defined to rename global
symbols for libltdl.
* m4/ltdl.m4 (AC_LTDL_FUNC_ARGZ): Add argz to AC_LIBOBJ if any of
our argz_* functions are missing from the system libraries.
* libltdl/ltdl.c: Move standard headers and preprocessor guards
from here...
* libltdl/lt__private.h: ...to here. New file to declare ltdl's
internal interfaces.
* libltdl/ltdl.c: Include lt__private.h.
* m4/ltdl.m4 (AC_LIB_LTDL): Add lt_dirent to AC_LIBOBJ if all of
opendir, readdir and closedir are missing.
(AC_CHECK_HEADERS): Remove assert.h, ctype.h, errno.h, malloc.h,
stdio.h and stdlib.h; these headers are all available in standard
c89 environments and newer.
* libltdl/lt__private.h: Include them here unconditionally.
* libltdl/lt__dirent.c (opendir, readdir, closedir): New file.
Windows dirent emulation functions moved to here...
* libltdl/ltdl.c (opendir, readdir, closedir): ...from here.
* libltdl/lt__dirent.h: New file. Rename the global symbols from
lt__dirent.c into the lt__ namespace so they don't clash with
other libraries.
2004-04-08 Gary V. Vaughan <gary@gnu.org>
Factor out the bottom portability layer from ltdl. Code in this
layer has global symbols renamed by lt__pre89.h, and may not
refer to any symbols except those provided by the system libraries
or other code in the portability layer:
* libltdl/lt__pre89.h: New file. Rename all the symbols from
LTLIBOBJS into the lt__ namespace so that they don't clash with
other libraries.
* libltdl/ltdl.c (rpl_memcpy, rpl_memmove, rpl_strchr, rpl_strcmp)
(rpl_strrchr): Moved from here...
* libltdl/memcpy.c (memcpy): ...to here, and fixed void *
dereference bug...
* libltdl/memmove.c (memmove): ...to here, and fixed void *
dereference bug...
* libltdl/strchr.c (strchr): ...to here...
* libltdl/strcmp.c (strcmp): ...here...
* libltdl/strrchr.c (strrchr): ...and here.
* libltdl/Makefile.am (libltdl_la_SOURCES): Add lt__pre89.h.
(libltdl_la_LIBADD, libltdlc_la_LIBADD): Add $(LTLIBOBJS).
(ltdldata_DATA): Add replacement sources files.
* m4/ltdl.m4 (AC_LIB_LTDL): Do careful config.h and LTLIBOBJ
setting for missing pre89 functions.
2004-04-08 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.h (LT_PARAMS): Removed. Changed all users to
ANSI prototypes.
(lt_ptr): Keep backwards compatibility stub.
* libltdl/ltdl.c, libltdl/ltdl.h: Use ANSI function declarations
throughout. s/lt_ptr/void */g.
2004-04-08 Fredrik Estreen <estreen@algonet.se>
* m4/ltdl.m4: Rename shrext to shrext_cmds here too.
2004-04-06 Gary V. Vaughan <gary@gnu.org>
There was no clean separation of abstraction layers in libltdl.
The first step in fixing this is to factor out the memory
management abstraction, making a start on removing promiscuity
from the underlying portability layer:
* doc/libtool.texi (Libltdl interface): Remove lt_dlmalloc,
lt_dlrealloc and lt_dlfree references. The memory management
layer used by libltdl is now private.
* libltdl/lt_system.h: New installed header for system portability
abstraction.
* libltdl/ltdl.h: Use it.
* libltdl/lt__alloc.c, libltdl/lt__alloc.h: New module above
system portability layer to abstract ltdl's memory management.
* libltdl/ltdl.c: Use lt__alloc.h.
(closedir): Use free.
(opendir): Use malloc/free.
(lt__xalloc_die_callback): Report memory failures through
lt_dlerror.
(lt_dlinit): Use it to initialise memory management.
(LT_DLMALLOC, LT_DLREALLOC, LT_DLFREE, LT_EMALLOC, LT_EREALLOC)
(rpl_strdup, rpl_realloc, lt_estrdup, lt_emalloc, lt_erealloc):
Removed in favour of...
(lt__strdup, lt__memdup, MALLOC, REALLOC, FREE): ...these calls
from libltdl/lt__alloc.h. Changed all callers.
(rpl_argz_append, rpl_argz_create_sep, rpl_argz_insert): As part
of the portability layer, these functions no longer use libltdl
memory management API.
(free_vars): Factored out.
(LT_DLMEM_REASSIGN): While redoing memory handling, renamed...
* libltdl/lt__alloc.h (MEMREASSIGN): ...to this.
* libltdl/Makefile.am (AUTOMAKE_OPTIONS): Let automake track
dependencies automatically.
(pkgincludedir): Override from parent package's setting.
(pkginclude_HEADERS): Install lt_system.h.
(libltdl_la_SOURCES): Add new files.
* NEWS: Updated.
Reported by Dalibor Topic <robilad@kaffe.org>
2004-04-01 Peter O'Gorman <peter@pogma.com>
* ltmain.in: Remove an extra eval concat_cmds that some idiot added.
Fixes double eval on AIX, reported by Albert Chin and Uwe Moeller.
* NEWS: Add a news item about xlc support that I forgot yesterday.
2004-03-31 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4, ltmain.in (darwin): Support IBM's xlc and xlc++.
2004-03-31 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_LANG_C_CONFIG): If $compiler is not set, then
don't call the macros that test it.
(_LT_LANG_CXX_CONFIG): Ditto.
(_LT_LANG_F77_CONFIG): Ditto.
(_LT_LANG_GCJ_CONFIG): Ditto.
(_LT_LANG_RC_CONFIG): Ditto.
2004-03-30 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in (func_scan_files): sed BRE have no alternation, so
break LT_INIT matcher out.
(func_serial): Don't escape literal parens for grep BRE.
* m4/libtool.m4 (LT_INIT): aclocal can't see AC_DEFUN_ONCE, so use
AC_DEFUN and m4_define.
* libtoolize.in (func_serial): No longer accept AC_DEFUN_ONCE...
(func_grep): ...so mere grep is sufficient again...
(EGREP): ...and this is no longer required.
2004-03-29 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4: Use LT_INIT as #serial tag.
* libtoolize.in: Grok LT_INIT! Pass A[CM]_PROG_LIBTOOL to...
(func_serial_update): ...here, we now take an additional parameter
containing another regex to match ancient serialed files.
(func_serial): Accept AC_DEFUN_ONCE of the #serial tag...
(func_grep): ...which requires egrep...
(EGREP): ...substituted by config.status.
(func_scan_files): Set seen_libtool if LT_INIT goes by.
* Makefile.am (pkgmacro_DATA): Install ltoptions.m4.
* libltdl/Makefile.am (AM_CPPFLAGS): Also check $top_builddir for
config.h.
(ltdl.o): config.h is in $top_builddir.
2004-03-24 Scott James Remnant <scott@netsplit.com>
* NEWS: Explain more fully why we no longer load libraries
with global symbol resolution.
* doc/libtool.texi (libtool script contents): Add missing
documentation for 'inherit_rpath' variable.
* configure.ac: Catch errors during calls to AC_PROG_CXX,
AC_PROG_CXXCPP and AC_PROG_F77 before LT_INIT. Only set the
HAVE_CXX and HAVE_F77 conditions to true if an error didn't
occur (AC_PROG_CXX leaves CXX="g++" even if it didn't find one).
Set HAVE_GCJ and HAVE_RC to true correctly as well.
* m4/libtool.m4 (LT_PROG_GCJ): If AC_PROG_GCJ or AM_PROG_GCJ are
defined, expand to the definition of those instead of our own.
Define GCJ to '' instead of 'no' if not found.
(LT_PROG_RC) Define RC to '' instead of 'no' if not found.
(_LT_LANG_GCJ_CONFIG): Require LT_PROG_GCJ to be expanded first.
(_LT_LANG_RC_CONFIG): Require LT_PROG_RC to be expanded first.
* libltdl/ltdl.c (sys_dl_open): Don't load libraries with global
symbol resolution.
* NEWS: Updated.
2004-03-24 Albert Chin-A-Young <china@thewrittenword.com>
* m4/libtool.m4: Add new variable, inherit_rpath, if the
RPATHs of the libraries being linked are inherited in
the output file. For systems with a linker exhibiting
this feature, programs/libraries must be relinked at
installation time.
* m4/libtool.m4: When linking convenience libraries on Solaris
with the Sun C++ compiler, pass convenience libraries through
to the linker with -Qoption between allextract/defaultextract.
The Sun C++ compiler bundles -Qoption arguments so
convenience libraries are linked with defaultextract
otherwise.
* tagdemo/Makefile.am, tagdemo/main.cpp, tagdemo/conv.h,
tagdemo/conv.cpp: Augment tagdemo test to link a convenience
library with a libtool library.
* ltmain.in: Piecewise linking doesn't work when the output
file is an absolute path, use the basename only instead.
* ltmain.in: When a library is installed, dependent on a
convenience library, and it involves relinking, the object
files extracted from the convenience library are not removed
after the relink. This is a problem if you build as non-root,
install as root, then try to remove the build directory as
non-root; Clean up properly if relink fails; Change
"$realname"U to ${realname}T to be consistent.
2004-03-24 Scott James Remnant <scott@netsplit.com>
* ltmain.in <prog linkmode>: Always add -L options to
$newlib_search_path instead of just in scan mode to ensure that
non-libtool libraries in user-specified directories can be found.
2004-03-22 Scott James Remnant <scott@netsplit.com>
* m4/libtool.m4 (_LT_CONFIG): Remove unneeded else condition
code, now the support determination is done in m4.
(_LT_LANG): Correct comment, unexpected leak from keybuk-lt-tag.patch.
2004-03-21 Scott James Remnant <scott@netsplit.com>
* libltdl/Makefile.am (libltdl_la_LDFLAGS): Increment CURRENT
and AGE of libltdl, warranted by the addition of lt_dlhandle_find()
since 1.5.2.
2004-03-21 Scott James Remnant <scott@netsplit.com>
Further sweeping changes to the user interface to libtool from
`configure.ac' to allow users to better control the list of
supported languages. Three LT_INIT options 'no-lang', 'all-lang'
and 'auto-lang' (the default) control the initial list and others
may be added with LT_LANG.
* m4/libtool.m4 (_LT_CONFIG): Renamed AC_LIBTOOL_CONFIG to _LT_CONFIG
which is more consistent with our own namespace and gets us further out
of Autoconf's.
(_LT_LIBTOOL_TAGS): Output available_tags variable based entirely
on the value of _LT_TAGS.
(_LT_COPYING): Call _LT_LIBTOOL_TAGS to output available tags,
always append tag configuration if the tag is available.
(LT_LANG): New macro to enable support for a language that accepts
tag names (eg. "CXX") or human language names (eg. "C++").
(_LT_LANG): Internal support macro for above that appends the
tag to _LT_TAGS and calls the appropriate config macro.
(LT_INIT): Ensure that LT_LANG is not called before LT_INIT.
(AC_LIBTOOL_TAGS): Removed, call LT_LANG for each language now.
(_LT_AC_TAG_CHECK): Removed, _LT_LANG handles duplicate calls.
(_LT_LANG_DEFAULT_CONFIG): Macro to set initial language support
based on options passed to LT_INIT.
(_LT_SETUP): Call _LT_LANG_DEFAULT_CONFIG.
(_LT_AC_TAG_CONFIG): Removed, handled by _LT_LANG_DEFAULT_CONFIG.
(_LT_AC_LANG_CXX, _LT_AC_LANG_F77, _LT_AC_LANG_GCJ): Removed,
automatic language support inclusion now handled by
_LT_LANG_DEFAULT_CONFIG.
(AC_LIBTOOL_CXX): Obsolete macro, update to LT_LANG(C++).
(AC_LIBTOOL_F77): Obsolete macro, update to LT_LANG(Fortran 77).
(AC_LIBTOOL_GCJ): Obsolete macro, update to LT_LANG(Java).
(AC_LIBTOOL_LANG_C_CONFIG_: Removed.
(_LT_AC_LANG_C_CONFIG): Renamed to _LT_LANG_C_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(_LT_SETUP): Replace call to AC_LIBTOOL_LANG_C_CONFIG with call to
new _LT_LANG_C_CONFIG macro.
(AC_LIBTOOL_LANG_CXX_CONFIG): Removed.
(_LT_AC_LANG_CXX_CONFIG): Renamed to _LT_LANG_CXX_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(AC_LIBTOOL_LANG_F77_CONFIG): Removed.
(_LT_AC_LANG_F77_CONFIG): Renamed to _LT_LANG_F77_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(AC_LIBTOOL_LANG_GCJ_CONFIG): Removed.
(_LT_AC_LANG_GCJ_CONFIG): Renamed to _LT_LANG_GCJ_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(AC_LIBTOOL_LANG_RC_CONFIG): Removed.
(_LT_AC_LANG_RC_CONFIG): Renamed to _LT_LANG_RC_CONFIG, call
_LT_CONFIG instead of AC_LIBTOOL_CONFIG.
(LT_AC_PROG_GCJ): Renamed to LT_PROG_GCJ.
(LT_AC_PROG_RC): Renamed to LT_PROG_RC.
* m4/ltoptions.m4: Define new 'no-lang', 'auto-lang' and 'all-lang'
options which set the default for _LT_LANG_DEFAULT_CONFIG.
* m4/lt~obsolete.m4: Removed AC_LIBTOOL_CONFIG, _LT_AC_LANG_C_CONFIG,
_LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG; all of which are no
long referenced in any way.
* configure.ac: Enable all languages.
* tests/cdemo/configure.ac, tests/demo/configure,ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/mdemo/configure.ac, tests/pdemo/configure,ac,
tests/tagdemo/configure.ac: Remove calls to AC_LIBTOOL_TAGS,
the default 'auto-lang' mode now does the right thing.
* doc/libtool.texi (The LT_INIT macro): Add documentation for
new LT_INIT options and the LT_LANG macro, replacing the old
documentation of AC_LIBTOOL_TAGS which is no more.
* NEWS: Updated.
2004-03-17 Scott James Remnant <scott@netsplit.com>
* m4/libtool.m4: Removed AC_BEFORE references to AC_LIBTOOL_SETUP
which is no more.
* m4/lt~obsolete.m4: As AC_LIBTOOL_SETUP is no longer referenced,
it can be removed from this file. Remove _AC_PROG_LIBTOOL also.
2004-03-14 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/libtool.m4: Remove newlines from lt_ld_extra, so
variable can safely be stored in config.cache.
2004-03-14 Michael Pruett <michael@68k.org>
* m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS0 [irix]: Define
archive_expsym_cmds so that --export-symbols will work.
2004-03-11 Peter O'Gorman <peter@pogma.com>
* ltmain.in (link_all_deplibs,darwin): Link libraries in the
correct order. Bug from Zachary Pincus <zpincus@stanford.edu>.
2004-03-14 Scott James Remnant <scott@netsplit.com>
* m4/ltmain.in: Only check precious_files_regex if it is not empty.
2004-03-14 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (Autoconf and LTLIBOBJS): The correct version
of Autoconf is 2.54.
From Alexandre Duret-Lutz <adl@src.lip6.fr>
2004-03-13 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (Using Automake): Cite correct Automake version
for -dlopen quoting.
(Autoconf and LTLIBOBJS): Cite correct Autoconf versions
throughout.
(Distributing libltdl): Use AM_CPPFLAGS; INCLUDES is deprecated.
From Alexandre Duret-Lutz <adl@src.lip6.fr>
2004-03-05 David Edelsohn <edelsohn@gnu.org>
* m4/libtool.m4: Disable building static libraries if building
shared libraries on AIX 5L.
2004-03-05 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in: Remove --ltdl-tar. It doesn't work with the
current implementation, and seems more or less pointless.
* doc/libtool.texi (Invoking libtoolize): Updated.
* NEWS: Updated.
* doc/libtool.texi: This manual has not been maintained properly
for a number of years. Much of what it said was outdated, or
plain wrong with reference to modern autotools. This change
represents a first pass edit to clean up the obviously wrong.
2004-03-02 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Prune out my arch mirror dir before running
amok through the tree with 'rm -rf'!
2004-03-02 Patrick Welche <prlw1@newn.cam.ac.uk>
* doc/libtool.texi (LT_INIT): Dumb typos fixed.
2004-02-23 Gary V. Vaughan <gary@gnu.org>
* ltmain.in <install mode>: Add missing --help doc for
-inst-prefix option.
* ltmain.in <link mode>: Add missing --help doc for -shrext
option.
* ltmain.in (IFS): Move '\n' to beginning of IFS so that emacs
doesn't offer to strip trailing ' \t' on every save.
* ltmain.in: Add missing --help doc for --preserve-dup-deps.
2004-02-22 Gary V. Vaughan <gary@gnu.org>
* Makefile.maint (web-manual): Generate the web manual carefully
so that links will still work when it is uploaded to gnu.org.
* README-alpha: Note that this rule should be used at release
time.
2004-02-20 Gary V. Vaughan <gary@gnu.org>
Sweeping changes to the user interface to libtool from
`configure.ac' to be more like AC_INIT and accept a space
delimited list of options. Instead of calling `AC_LIBTOOL_DLOPEN;
AC_PROG_LIBTOOL', we now recommend `LT_INIT([dlopen])':
* m4/libtool.m4 (AC_PROG_LIBTOOL, _AC_PROG_LIBTOOL)
(AC_LIBTOOL_SETUP): Removed. Added AU_DEFUNs.
(LT_INIT): Replace with an Autoconf like interface which accepts a
version number as a minimum required libtool release at configure
time.
* m4/ltoptions.m4: New file inspired by automake/m4/amoptions.m4,
which additionally flags an error if the configuring libtool
macros are not new enough according to LT_INIT.
(LT_OPTION_DEFINE): New macro to declare option handlers.
(dlopen, win32-dll, shared, disable-shared, static)
(disable-static, fast-install, disable-fast-install, pic-only)
(no-pic): Newly LT_OPTION_DEFINEd option handlers that use...
(_LT_ENABLE_SHARED, _LT_ENABLE_STATIC, _LT_ENABLE_FAST_INSTALL)
(_LT_WITH_PIC, _LT_WIN32_DLL): New macros to handle
LT_LIBTOOL_INIT options...
* m4/libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC)
(AC_ENABLE_FAST_INSTALL, AC_LIBTOOL_DLOPEN, AC_LIBTOOL_WIN32_DLL):
...to replace these user interface macros, now defined as
AU_DEFUNs.
(AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
Removed. No longer required with LT_INIT_LIBTOOL interface.
Added AU_DEFUNs.
(AM_ENABLE_SHARED, AM_DISABLE_SHARED, AM_ENABLE_STATIC)
(AM_DISABLE_STATIC): Changed AU_DEFUNs to match new interface.
(_LT_SETUP): Internal to LT_INIT, replaces AC_LIBTOOL_SETUP.
* m4/lt~obsolete.m4 (AC_LIBTOOL_SETUP, _AC_PROG_LIBTOOL)
(_LT_PROG_LTMAIN): More AC_DEFUNs that have been retracted.
* configure.ac: Use new interface.
* doc/libtool.texi: Document new interface.
* NEWS: Updated.
2004-02-18 Gary V. Vaughan <gary@gnu.org>
* commit (SHELL): Set it explicitly, incase some madman is using
tcsh as their login shell :-b
2004-02-15 Scott James Remnant <scott@netsplit.com>
* Makefile.am (m4/ltversion.m4): Generate serial number by
removing initial '1.' from the revision, replace @MACRO_SERIAL@
with this new variable.
* m4/ltversion.in: Use @MACRO_SERIAL@ for the serial number
as some shells don't like a '.' when using test.
* m4/ltversion.in: Add a serial number to this file otherwise
libtoolize will refuse to copy it into $pkgdatadir, where it
is needed by m4/libtool.m4.
2004-02-15 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4, ltmain.in: Rename shrext to shrext_cmds.
2004-02-13 Scott James Remnant <scott@netsplit.com>
* ltmain.in, libtoolize.in, commit, config/mailnotify: Correctly
quote usage of $basename and $dirname to avoid (unlikely) path
expansion.
* tests/sh.test: Test the config/ltmain.sh and libtoolize in the
build directory not the source directory, where they won't exist
during 'make distcheck'.
* ltmain.in: Revert one line of previous intendation clean-up
to enable one of the sh.test checks to pass.
* tests/cdemo/configure.ac: Drop AC_PREREQ back to 2.54, this
was debris from Gary's cvsapply going mad and wasn't backed
out.
* Makefile.am (pkgmacro_DATA): We have to distribute
m4/ltversion.m4 because it can be needed before the Makefile
that generates it exists.
2004-02-13 Gary V. Vaughan <gary@gnu.org>
* commit (MKSTAMP): Look for mkstamp in the right place.
2004-02-12 Scott James Remnant <scott@netsplit.com>
* Makefile.maint, Makefile: Move rules intended for Libtool
maintainers only out of the Makefile we distribute and into one
that we only need keep in CVS.
* README-alpha: Add -fMakefile.maint to the instructions where
needed.
2004-02-12 Albert Chin-A-Young <china@thewrittenword.com>
Scott James Remnant <scott@netsplit.com>
* ltmain.in: Fix typo: duplcations -> duplications,
Fix indentation of a handful of badly indented blocks,
Fix last remaining use of 'grep' to $GREP,
Remove unnecessary trailing slash where we break a line on a
command separator.
* m4/libtool.m4: Also remove unnecessary trailing slash where
we break a line on a command separator.
2004-02-12 Scott James Remnant <scott@netsplit.com>
* m4/ltoptions.m4: This got committed by an over-keen Gary,
but the support for this isn't ready yet and if aclocal decides
to m4_include this (which it will) you'll get a non-functioning
libtool. Removed.
* ltmain.in: Remove duplicated version checking block.
* bootstrap, m4/libtool.m4: Argh, Gary went crazy after cvsapply
went crazy and backed out more than he should've. This patch puts
some of it back again.
* ltmain.in, libtoolize.in, commit, config/mailnotify: Remove
$SED from definitions of $dirname and $basename and prefix each
use with it instead. Some shells (zsh) treat the expansion as
a single command instead of a command with arguments.
* config/mailnotify (func_sendmail): Look for sendmail in a
couple of common non-PATH locations as well.
* ltmain.in: Fix typo: macro's -> macros.
* ltmain.in: Correct definition of basename sed expression to
not include single quotes.
2004-02-12 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in: Use $progpath as for ltmain.in to work around the
IRIX bug described below.
* commit, config/mailnotify: Ditto. Resynch with cvs-utils HEAD.
2004-02-12 Albert Chin-A-Young <china@thewrittenword.com>,
Gary V. Vaughan <gary@gnu.org>
* ltmain.in (progpath): Work around backward compatibility issue
on IRIX 6.5. On IRIX 6.4+, sh is ksh but when the shell is invoked
as "sh" and the current value of the _XPG environment variable is
not equal to 1 (one), the special positional parameter $0, within
a function call, is the name of the function. So, rather than
using "$0" in functions, we set $progpath in the body and use that
everywhere instead (incase of code refactoring later).
(EXIT_SUCCESS, EXIT_FAILURE, EXIT_MISMATCH): For clarity.
2004-02-12 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (EXTRA_DIST): Remove config/mailnotify after all; it
is of no use in a distribution tarball.
2004-02-11 Gary V. Vaughan <gary@gnu.org>
* commit: Fix cut-n-paste error.
* commit: Completely change CVS/Root->name sed script to actually
work when :ext: is not shown.
* commit: Improve CVS/Root->name sed script to work when :ext: is
not shown.
2004-02-11 Albert Chin-A-Young <china@thewrittenword.com>
* m4/libtool.m4: Fix typo: testring -> teststring.
2004-02-11 Gary V. Vaughan <gary@gnu.org>
* commit: Mail a nicer commit notification.
2004-02-10 Gary V. Vaughan <gary@gnu.org>
* NEWS, bootstrap, configure.ac, ltmain.in, m4/libtool.m4:
* m4/lt~obsolete.m4, tests/cdemo/configure.ac: Arghh. cvsapply just
went crazy and committed a bunch of stuff that shouldn't have been
in the last changeset. The patch backs it all out.
* config/mailnotify: New file for mailing commit notifications,
imported from cvs-utils.
* commit: Updated from cvs-utils and tweaked for libtool.
* Makefile.am (EXTRA_DIST): Add config/mailnotify.
2004-02-06 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Remove vcl.tmp, otherwise it can interfere with make.
* Makefile.am (vcl.tmp): Move comment out of multi-line command,
as this rule is called from bootstrap as if it were a Makefile.
* m4/ltversion.in: New file to capture what version number macros
are being used.
* Makefile.am (m4/ltversion.m4): New rule to create it from
m4/ltversion.in.
(nodist_pkgmacro_DATA): Add m4/ltversion.m4.
(EXTRA_DIST): Add m4/ltversion.in.
* m4/libtool.m4 (AC_LIBTOOL_SETUP): AC_REQUIRE LTVERSION_VERSION
from ltversion.m4.
* bootstrap: Call the Makefile.am to create an initial
m4/ltversion.m4.
* ltmain.in: Diagnose version mismatches of various flavours.
* TODO: Remove mismatch item.
* NEWS: Updated.
* Makefile.am ($(top_builddir)/config.status): Removed.
* configure.ac (CONFIG_STATUS_DEPENDENCIES): This substitution is
how automake-1.8 now informs all Makefiles when config.status
needs to be rebuilt.
Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
* configure.ac (AC_CONFIG_FILES): Generate libtoolize from here.
* Makefile.am (libtool, libtoolize): These rules are redundant.
Automake generates better rules for remaking these files.
* m4/libtool.m4 (AC_LIBTOOL_SETUP): Catch unexpanded macros with
beginning with LT_ and _LT_.
* configure.ac (LT_MAJOR, LT_MINOR, LT_MICRO, LT_ALPHA): Renamed
to lt_major, lt_minor, lt_micro, lt_alpha to save triggering the
unexpanded macros error.
* m4/libtool.m4 (AC_PROVIDE_IFELSE): Removed. We now require
Autoconf 2.58, which ships this macro anyway.
* Makefile.am: Comment typo.
* m4/libtool.m4 (LT_PREREQ): Declare the minimum release number
that is required for the calling code.
* doc/libtool.texi (AC_PROG_LIBTOOL): Document it.
* NEWS: Updated.
2004-02-05 Peter O'Gorman <peter@pogma.com>
* ltmain.in (infer_tag, win32_libid): Style changes. Rename
infer_tag to func_infer_tag and win32_libid to func_win32_libid.
* m4/libtool.m4 (cygwin): rename win32_libid to func_win32_libid.
2004-02-04 Peter O'Gorman <peter@pogma.com>
* ltmain.in (infer_tag): Move tag inferrence to a shell function.
Also test $base_compile against $CC with escaped arguments. Bug
reported by Geoff Keating <geoffk@apple.com>.
2004-02-03 Scott James Remnant <scott@netsplit.com>
* Makefile.am (install-data-hook): Manually make config.guess
and config.sub executable after they are installed as _DATA.
We can't use _SCRIPTS because the various program name
transforms may be applied to them.
(dist_pkgdata_DATA): List config.guess and config.sub here
(pkgdata_SCRIPTS): instead of here.
2003-02-03 Scott James Remnant <scott@netsplit.com>
* ltmain.in: Create temporary directory under a strict umask
rather than running chmod afterwards, preventing a race
condition where the directory could be replaced with a symbolic
link in the time between the two commands.
2004-01-31 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (_LT_CONFIG_STATUS_DECLARE): Change `echo to
`$echo, causes problems when builtin echo is broken. Reported
by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2004-01-27 Scott James Remnant <scott@netsplit.com>
This fixes release procedure problems discovered whilst making
the 1.5.2 release.
* Makefile.am (cvs-dist): Because we check whether ChangeLog
has been committed, this rule can't be run with uncommitted
source so we can't run 'commit' and don't need to run
'make dist' a second time. Fix CVS tag as it should be
"release-X" not "Release-X".
(cvs_commit): New rule for the cvs-release chain that runs
'commit'
(cvs-release): Depend on cvs-commit, depend on deltas instead of
cvs-diff and xdelta.
(cvs-diff): Removed, replaced with delta-diff.
(delta-diff): Unpack and diff the old and new tarballs rather
than using CVS, so we get a genuinely complete diff.
(xdelta): Removed, replaced with delta-xdelta.
(got-xdelta): New rule for improved reading.
(delta-xdiff): Copied and cleaned up version of old xdelta rule.
(deltas): Depends on delta-diff and delta-xdelta (make deltas).
(cvs-news): Don't depend on timestamps, cvs-dist itself does now.
(prev-tarball): This is the only place we need a LASTRELEASE check
so copy the code here and remove the CHECK_RELEASE variable.
(new-tarball): Check there's a new tarball (did cvs-dist work?)
(FETCHFILES): Remove obsolete libltdl mentions.
* README-alpha: Update CVS instructions as everything's changed
on Savannah.
(Release procedure): Update NEWS and ChangeLog after changing
the version number (both times); Run 'make fetch' after running
'configure' (difficult to do it beforehand); Require 'commit'
before 'make cvs-dist' as that checks ChangeLog is committed;
'make deltas' instead of 'cvs-diff' and 'xdelta', pass LASTRELEASE
to make instead of OLDVERSION (and it's mandatory); Clean up
uploading paragraph; Clearer announcement sending instruction;
Removed ftp-upload@gnu.org mail as that's not necessary now;
Make web page updating instructions a bit clearer; Add an instruction
to update the manual for non-alphas.
(Alpha release note template): Add a Subject; update CVS instructions.
(Full release note template): Add a Subject; update CVS instructions.
* configure.ac: Add dist-bzip2 to AM_INIT_AUTOMAKE as we talk
about bz2 files in our release announcements; remove old reference
to OLDVERSION.
2004-01-25 Scott James Remnant <scott@netsplit.com>
* NEWS: Include 1.5.2 release information.
2004-01-22 Gary V. Vaughan <gary@gnu.org>
This fixes a bug in the libtoolize ltdl source installation rules,
which were copying Makefile.in from the libtool tree into the
package running libtoolize. Now we explicitly list the files to
copy to force the package to generate its own Makefile.in:
* libltdl/Makefile.am (libltdl_la_SOURCES, libltdlc_la_SOURCES):
Add ltdl.h.
(ltdldatadir): New variable for installation directory of
libtoolize --ltdl files.
(ltdldata_DATA): Tell automake what files to copy there at install
time (and remove at unistall time!).
(local-install-files): Removed. This hack is not required
anymore, the automake generated install rules are much more
advanced than this.
* Makefile.am (install-data-hook, uninstall-local): Removed.
Libltdl files for libtoolize are installed by their own Makefile
now.
2004-01-22 Jeff Squyres <jsquyres@lam-mpi.org>
* m4/libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Some compilers
(e.g. Intel Linux icc compiler) write temporary files to the current
directory. These compilers do support -c and -o simultaneously but
wrongly fail the test due to the failure to create temporary
files. It is incorrect to penalize compilers which write temporary
files to the current directory so the 'chmod -w .' is therefore
removed.
2004-01-22 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (LT_AC_PROG_EGREP): Wrapper for AC_PROG_GREP.
AIX has a brain-dead grep that only handles lines < 2048
characters. Default GREP incase we are not using a future
autoconf that sets it for us :-) Changed all callers to use $GREP
instead of grep, and to AC_REQUIRE LT_AC_PROG_EGREP.
Declare GREP as a libtool config var.
* ltmain.in: Use it.
* tests/sh.test (scripts): Accept `if $GREP "^foo=bar"' by
tightening the regexp.
Reported by Albert Chin-A-Young <china@thewrittenword.com>
2004-01-21 Nick Hudson <skrll@netbsd.org>
* m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [netbsd*]: Remove
gratuitous ${libname}${release}${shared_ext} from
library_names_spec.
2004-01-21 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4 (AC_PROG_LD_RELOAD_FLAG): On darwin change the
reload_cmds to use $CC, otherwise ld will thin out any fat
objects.
2004-01-18 Benjamin Reed <ranger@befunk.com>
* ltmain.in: Fix handling of frameworks in search paths. Also
a one-liner fix to eval shrext in the libtool library search.
2004-01-16 Gary V. Vaughan <gary@gnu.org>
* configure.ac (AM_INIT_AUTOMAKE): Require 1.8 for bootstrap, or
else aclocal.m4 is huge, and m4 directory is not distributed.
* configure.ac (AC_CONFIG_HEADERS): Create config.h in
$top_srcdir.
* m4/ltdl.m4 (AC_LIB_LTDL): Run AC_CONFIG_HEADERS for the user if
necessary. Calculate filename from first argument to
AC_CONFIG_HEADERS, and substitute as CONFIG_H.
* libltdl/Makefile.am (AM_CPPFLAGS): Make sure we are searching in
$top_srcdir for headers.
(DEFS): Override the default HAVE_CONFIG_H with the config.h
filename.
(ltdl.lo): Reference config.h via $(CONFIG_H).
* libltdl/ltdl.c (HAVE_CONFIG_H): Ditto.
2004-01-15 Scott James Remnant <scott@netsplit.com>
* m4/lt~obsolete.m4: Add a file containing aclocal-fooling
macro definitions which stop the contents of an installed
libtool.m4 ending up in our aclocal.m4 when we bootstrap.
* Makefile.am (pkgmacro_DATA): Note that we don't need to add
lt~obsolete.m4 to this list.
2004-01-12 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_COPYING): Factor out copyright message so it
only needs to be updated in one place.
(AC_LIBTOOL_CONFIG): Refactor to be more readable. Only add
tags if a compiler was found; ie if you have no gcj compiler,
don't tack the GCJ tag onto the generated libtool script.
2004-01-13 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4: Quote shrext as it is evaled in ltmain.
2004-01-11 Scott James Remnant <scott@netsplit.com>
* ltmain.in: new -precious-files-regex link mode option
to prevent removal of matching files from the temporary
output directory.
(Debian Bug #221420)
* doc/libtool.texi: document the new option.
* NEWS: announce the new option.
2004-01-11 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in (func_copy_all_files): s/xfunc_copy/Xfunc_copy.
Now the test can actually succeed sometimes.
2004-01-09 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in: Break out of the command argument parse loop when
-- is encountered.
2004-01-08 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in (func_copy_all_files): s/test "x/test "X/ to keep
tests/sh.test happy.
2004-01-07 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (aclocal_macros, aclocal_DATA): Removed.
(EXTRA_DIST): Remove m4 macro files; they are automatically
added by automake.
(pkgmacrodir): Where to install libtool macro files.
(pkgmacro_DATA): List installable libtool macro files.
(install-data-local): Remove previous versions of ltdl.m4 and
libtool.m4 from their old location.
* libtoolize.in: Use new pkgmacrodir installed macros when
libtoolizing a project. Treat libtool.m4 and ltdl.m4 specially,
and func_serial_update() any other files from pkgmacrodir.
(pkgmacrodir): Where to find installed libtool macro files.
(aclocaldir): Removed.
(func_copy_all_files): Add an optional callback parameter to
control how files are copied. If the callback is passed, don't
tell it whether it can copy or not.
(func_serial): Exchange parameters and make macro_regex optional,
so that this function can be used to extract serial numbers from
files with the traditional /^# serial [1-9][0-9]*$/ syntax.
Changed all callers.
(func_serial_update): Make macro_regex optional last parameter, so
that this function can be used as a callback for
func_copy_all_files(). Changed all callers.
* m4/ltsugar.m4: Add a serial number.
2004-01-07 Gary V. Vaughan <gary@gnu.org>
A complete rewrite of the m4 code involved in the generation of
libtool via config.status. The old way involved manually
synchronising disparate bits of shell code in several macros, to
quote a copy of a shell variable, put that in config.status, maybe
add it to some quotation loops to prevent early expansion, and
then add a block to _LT_CONFIG_COMMANDS to bring it into the
libtool script. The new way is to mark shell variables for
propogation using _LT_DECL for language independent variables, or
_LT_TAGDECL for those that need to be propogated in several
language flavours. The marking can be done in the macro that
probes the variables, and this new m4 machinery takes care of
synchronising all the other bits of code at autoconf time:
* m4/ltsugar.m4: New file. Macros that are useful outside the
context of libtool. Initially, contains some generalised list
management macros, and the scaffolding for dictionary type data
storage and retrieval.
* Makefile.am (aclocal_macros): Install ltsugar.m4.
* m4/libtool.m4 (_LT_DECL): Mark a shell variable for export to
the libtool script, along with a comment, and hints for quoting
and renaming.
(_LT_TAGDECL): Similarly mark a tagged shell variable for export
in each tag.
(lt_decl_tag_varnames, lt_decl_quote_varnames)
(lt_decl_dquote_varnames, lt_decl_varnames_tagged)
(lt_decl_all_varnames): New utility macros for managing lists of
shell variable names from _LT_DECL and _LT_TAGDECL.
(_LT_CONFIG_STATUS_DECLARATIONS, _LT_CONFIG_STATUS_DECLARE):
Expand to correctly quoted variable declarations in config.status
from all marked shell variables.
(_LT_LIBTOOL_DECLARE): Expand to commented and quoted variable
declaration for libtool tag section.
(_LT_LIBTOOL_CONFIG_VARS, _LT_LIBTOOL_TAG_VARS): Pass all marked
variables to _LT_LIBTOOL_DECLARE.
(_LT_CONFIG_COMMANDS): Use _LT_CONFIG_STATUS_DECLARATIONS and
friends to generate all the variable passing shell code for
config.status, to get marked variables from libtool.m4 into
libtool itself eventually.
(AC_LIBTOOL_CONFIG): Generate marked variable code for libtool tag
configuration. Changed all client macros to mark variables
suitably rather than the hand pasting that was necessary
previously.
(AC_PROG_SED): Renamed from LT_AC_PROG_SED.
(LT_AC_PROG_SED): Wrap AC_PROG_SED, and mark shell variables for
propogation to the libtool script.
2004-01-07 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in (seen_gettext): Removed unused variable.
2004-01-06 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in (func_scan_files): Don't assume the existence of
aclocal.m4. Make the comment more descriptive.
Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>
* NEWS: Note libtoolize changes.
* ChangeLog.2003: New file, containing all the ChangeLog entries
from 2003. Trimmed ChangeLog accordingly.
* ltmain.in: Output 2004 in the copyright from libtool --version.
2004-01-03 Stefan Nordhausen <nordhaus@informatik.hu-berlin.de>
Scott James Remnant <scott@netsplit.com>
* ltmain.in: Don't use the mkdir -p option when creating a
temporary output directory so a symlink attack can't be used to
arbitrarily chmod other directories on the system if libtool
gets run as root.
2004-01-02 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4: Ensure that ${ZSH_VERSION+set} is properly escaped.
* m4/libtool.m4 (CDPATH): Change the CDPATH setting so that it
allows for zsh differences, as noted in the autoconf manual's
Portable Shell - Special Shell Variables section.
2004-01-02 Scott James Remnant <scott@netsplit.com>
* .cvsignore: Ignore stamp-vcl created by the Makefile.
2004-01-02 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
Joe Orton <joe@manyfish.co.uk>
* m4/libtool.m4 (AC_LIBTOOL_CONFIG): Add extra blackslash
in front of all the inner double-quotes as this is removed
on Solaris, IRIX and AIX leading to broken definitions
in config.status.
2004-01-02 Scott James Remnant <scott@netsplit.com>
* NEWS: Next release will be in 2004.
2003-12-31 Scott James Remnant <scott@netsplit.com>
* ltmain.sh: Infer tagged configuration for link mode with the
full compiler arguments available rather than only the first.
2003-12-31 Alexandre Duret-Lutz <adl@gnu.org>
* ltmain.sh: Quote $exec_cmd before it is eval'ed, so that
libtool --mode=execute echo '4 * 5' does not expand the `*'.
2003-11-28 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4: Move things around so that "setopt NO_GLOB_SUBST"
to make zsh behave wrt \ escapes happens early in config.status.
2003-11-27 Gary V. Vaughan <gary@gnu.org>
* libltdl/configure.ac: Removed.
* configure.ac (AC_CONFIG_HEADERS): Merged from
libltdl/configure.ac.
(AC_LIB_LTDL): Ditto.
(AC_CONFIG_FILES): Add libltdl/Makefile.
(AC_CONFIG_SUBDIRS): Removed.
(AC_CONFIG_COMMANDS): Remove generation of libltdl/ltmain.sh.
* libltdl/Makefile.am (libtool): Removed references, since we now
share $(top_builddir)/libtool.
* NEWS: Updated.
2003-11-26 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (vcl.tmp): Be careful of VPATH builds.
* Makefile.am (EXTRA_DIST): Add stamp-vcl, or we go back to a
double configure run from a distributed tarball :-?
2003-11-26 Gary V. Vaughan <gary@gnu.org>
Okay, the problem I am trying to solve is that when a change (say,
bumping the version to 1.6 for the next release) is committed, the
timestamp in ChangeLog is updated, but ltmain.sh and libtoolize
inherit the pre-commit build number from config.status. This
delta notes the change in build number in the unstamped ChangeLog
and forces a rerun of configure etc. to roll a new ltmain.sh with
the correct TIMESTAMP:
* Makefile.am (stamp-vcl): We actually need a new config.status to
force the correct timestamp into libtoolize and ltmain.sh,
rerunning autoconf has no effect at all if configure.ac hasn't
changed.
2003-11-26 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (stamp-vcl): New rules to force libtool and
libtoolize scripts to update when the TIMESTAMP changes in
ChangeLog, but the file modification time doesn't (e.g in cvs
commit). Otherwise we'll carry on releasing tarballs with the
wrong version numbers in the tools!
* config/mkstamp: Change output format to ` $rev $date'.
* configure.ac: Make the banner more like suggestions in
http://www.gnu.org/prep/standards_toc.html Section 4.6.
* libtoolize.in: Make --version output conform to the GNU
standard.
* ltmain.in: Ditto. And tweak the generated file headers to
match.
2003-11-25 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (config.status): Removed. Rebuilding config.status
isn't enough, because the TIMESTAMP in configure is still out
of date.
(configure): We actually need a new configure to force the
correct timestamp into ltmain.sh.
* Makefile.am (config/ltmain.sh): Removed. Rebuilding ltmain.sh
isn't enough, because the TIMESTAMP in config.status is still out
of date.
(config.status): We actually need a new config.status to force the
correct timestamp into ltmain.sh.
* Makefile.am (config/ltmain.sh): Note the dependency on the
timestamp in ChangeLog so we don't ship libtools that report the
wrong version number :-/
* bootstrap: Explain automake and autoconf version dependencies
truthfully, and the difference between bootstrap and user
dependencies.
* configure.ac (AM_INIT_AUTOMAKE): List AUTOMAKE_OPTIONS here.
* Makefile.am, doc/Makefile.am, tests/Makefile.am
(AUTOMAKE_OPTIONS): Removed from here.
2003-11-24 Gary V. Vaughan <gary@gnu.org>
* tests/defs (func_configure): cdemo, demo and mdemo are shows
signs of indeterminacy for some users. Be more verbose during
failure to help track down the cause.
2003-11-22 Peter O'Gorman <peter@pogma.com>
* ltmain.in: Check for module_cmds if max_cmd_len is exceeded too.
* ltmain.in: Move eval to after command separation to allow ~ in paths.
* tests/demo-hardcode.test: Call ./libtool not libtool.
* ltmain.in: Test $old_striplib before using it, not $striplib.
2003-11-22 Gary V. Vaughan <gary@gnu.org>
* configure.ac (LASTRELEASE): Calculate it as best as we can from
AC_PACKAGE_VERSION.
* Makefile.am (distdir): Remove dependency on timestamps so that
it is possible to roll a dist without contacting the cvs server.
Use `make cvs-release' for that.
(cvs-news): Extracted from cvs-dist.
(cvs-dist): Depend on cvs-news.
(CHECK_LASTRELEASE): Check LASTRELEASE has been set.
(prev-tarball): New rule. Use LASTRELEASE to make sure the
previous release tarball is present.
(cvs-diff): Use CHECK_LASTRELEASE.
(xdelta): Ditto.
(cvs-release): Depend on prev-tarball, timestamps, cvs-news and
fetch. Provided you set LASTRELEASE appropriately, making a full
cvs release is just a matter of `make cvs-release', and submitting
the files to ftp-upload.
2003-11-19 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_PROG_LTMAIN): Ensure config.status has a
value for `ac_aux_dir' when automake is not used.
Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
* configure.ac (AC_PREREQ): AS_HELP_STRING was introduced after
autoconf-2.57 was released.
2003-11-18 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_dlhandle_find): New function to find a handle
by module name.
* libltdl/ltdl.h (lt_dlhandle_find): Declare it.
* doc/libtool.texi (User defined module data): Document it.
* NEWS: Updated.
2003-11-17 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (AC_LIBTOOL_SETUP): Uncomment call to
_LT_CONFIG_COMMANDS.
(_LT_AC_TAG_CONFIG, AC_LIBTOOL_CONFIG): Accumulate tag generation
for `config.status' using _LT_CONFIG_SAVE_COMMANDS. Remove
AC_MSG_NOTICE noise now that libtool is generated by a single
config.status tag.
* Makefile.am (libtool): Specify CONFIG_COMMANDS properly now that
libtool is generated in one pass.
* configure.ac (CONF_SUBDIRS): Make these relative to
tests/Makefile.am.
(DIST_MAKEFILE_LIST): Adjust to compensate for having removed the
`tests/' part in CONF_SUBDIRS.
* tests/Makefile.am (DIST_SUBDIRS): Distribute these directories.
(SUBDIRS): Set to `.', a NOP, to workaround an automake bug which
ignores DIST_SUBDIRS unless SUBDIRS is also set.
* Makefile.am (DIST_SUBDIRS): Don't try to distribute the tests
subdirectories from here, since the recursive automake dist rule
only works with direct child directories. Defer to
tests/Makefile.am in this case.
2003-11-15 Scott James Remnant <scott@netsplit.com>
* ltmain.in: In compile mode, delay parsing of -shared, -static,
-prefer-pic and -prefer-non-pic until after tagged configuration
has been read. In link mode, read tagged configuration before
parsing any arguments. These arguments will now work when using
a non-C compiler.
2003-11-14 Gary V. Vaughan <gary@gnu.org>
* NEWS: Mention AC_LIBTOOL_TAGS.
* Makefile.am (EXTRA_DIST): List ChangeLog files correctly.
* tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Declare just
the tags we need using AC_LIBTOOL_TAGS, reducing the size of the
configure script by 50% in most cases.
2003-11-14 Marius Vollmer <mvo@zagadka.de>
* doc/libtool.texi (Libltdl interface): libltdl does in fact load
dependency libs for lt_dlopen()ed modules.
2003-11-14 Gary V. Vaughan <gary@gnu.org>
Run our configure.ac files through Autoconf 2.59's autoupdate, and
then tweak the results by hand:
* m4/libtool.m4 (AC_PROG_LD): In common with all the other
AC_PROG_ macros, AC_SUBST the discovered LD.
(AC_PROG_NM): Similarly for NM.
(LT_AC_PROG_SED): Similarly for SED.
* configure.ac: No need to SUBST NM and LD manually any more.
(AC_PREREQ): Conservatively downgrade from 2.59 to 2.54.
* tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/pdemo/configure.ac, tests/tagdemo/configure.ac: Ditto.
* m4/libtool.m4 (AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC,
AM_PROG_LD, AM_PROG_NM): AU_DEFUN these macros so autoupdate can
use the newer definitions.
2003-11-12 Gary V. Vaughan <gary@gnu.org>
The rules for uploading releases to gnu.org have been updated, and
are in fact now rather complicated. This delta updates the
release instructions to the describe the new process, and updates
the maintainer rules to help automate many of the steps:
* README-alpha: Updated release instructions.
* Makefile.am (GPG): Name of the program for generating signatures
for files to be uploaded.
(XDELTA, XDELTA_OPTIONS): Invocation of xdelta.
(cvs-dist): Run distcheck before tagging the cvs tree incase
distcheck fails, and then generate the gpg signature files.
(cvs-diff): Generate the gpg signature files for the diff.
(xdelta): New rule for generating the xdelta diffs and associated
gpg signature files.
(cvs-release): New rule to do all of the above, if you don't mind
typing your gpg passphrase over and over again. :-)
(fetch): New rule inspired by automakes similar rule for updating
files maintained outside the project.
* config/config.guess, config/config.sub: Updated with the new
fetch rule.
2003-11-11 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_dlinit): Save a function call for each loader
added to the list, in exchange for appending loaders to the list
with O(N) rather than O(1). The longest the loader list can ever
get is 4 (on cygwin with dld installed) so it probably constitutes
a small speedup, in addition to making the code much more readable.
* m4/libtool.m4 (AC_LIBTOOL_SETUP): Don't define the value for
ltmain unconditionally.
(_LT_PROG_LTMAIN): New macro to ensure that the
shell variable `ltmain' actually points at a suitable `ltmain.sh'.
(_AC_PROG_LIBTOOL): Require it.
(AC_LIBTOOL_CONFIG, _LT_AC_TAG_CONFIG): Invoke it.
* Makefile.am (libtool): ltmain.sh is in the build tree.
* libltdl/configure.ac: Ditto.
2003-11-10 Scott James Remnant <scott@netsplit.com>
* ltmain.in: Add -pthread and similar to $deplibs ($compile_deplibs
and $finalize_deplibs for programs) when found on the command line
or in a .la file's dependency_libs (but don't place them there) so
they are honoured when linking both programs and libraries.
2003-11-10 Scott James Remnant <scott@netsplit.com>
* m4/libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [linux]: Include
directories found in /etc/ld.so.conf in sys_lib_dlsearch_path_spec.
2003-11-09 Peter O'Gorman <peter@pogma.com>
* ltmain.in (linkalldeplibs,darwin): Fix a bug reported by Idar
Tollefsen where a dir could be added to the link line with no '-L'
on darwin.
2003-11-07 Gary V. Vaughan <gary@gnu.org>
* tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/pdemo/configure.ac, tests/tagdemo/configure.ac:
s/AM_PROG_LIBTOOL/AC_PROG_LIBTOOL/. Marching boldly into the 21th
century :-$
* m4/libtool.m4 (AC_LIBTOOL_TAGS, AC_ENABLE_SHARED,
AC_DISABLE_SHARED, AC_ENABLE_STATIC, AC_DISABLE_STATIC,
AC_ENABLE_FAST_INSTALL, AC_DISABLE_FAST_INSTALL, AM_PROG_LIBTOOL,
AM_ENABLE_SHARED, AM_ENABLE_STATIC, AM_DISABLE_SHARED,
AM_DISABLE_STATIC): These macros must be AC_DEFUNed after all,
otherwise aclocal can't find them when it tries to construct
`aclocal.m4'.
* Makefile.am (install-data-local): Wipe out old installation
pkgdatadir before installing new files.
* NEWS: Updated.
* libtoolize.in (func_scan_files): If libtoolize is run before
automake has created install-sh and configure.ac does not mention
AC_CONFIG_AUX_DIR, fall back to the current directory for auxdir.
2003-11-07 Robert Millan <zeratul2@wanadoo.es>
* m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD) [GNU/KNetBSD]: Detect
inter-library dependencies.
2003-11-06 Gary V. Vaughan <gary@gnu.org>
* m4/libtool.m4 (_LT_AC_FILE_LTDLL_C): Removed; no longer in use.
* m4/libtool.m4: s/ifelse(/m4_if(/g
(_LT_AC_SYS_LIBPATH_AIX, _LT_AC_SHELL_INIT,
_LT_AC_PROG_ECHO_BACKSLASH, AC_LIBTOOL_LINKER_OPTION,
AC_LIBTOOL_TAGS, _LT_AC_TAG_CHECK, _LT_AC_TAG_CONFIG,
AC_ENABLE_SHARED, AC_DISABLE_SHARED, AC_ENABLE_STATIC,
AC_DISABLE_STATIC, AC_ENABLE_FAST_INSTALL,
AC_DISABLE_FAST_INSTALL, _LT_AC_LANG_C_CONFIG,
_LT_AC_LANG_GCJ_CONFIG, _LT_AC_LANG_RC_CONFIG, AC_LIBTOOL_CONFIG,
_LT_AC_TAGVAR, AM_PROG_LIBTOOL, AM_ENABLE_SHARED,
AM_ENABLE_STATIC, AM_DISABLE_SHARED, AM_DISABLE_STATIC): Use
m4_define instead of AC_DEFUN for internal macros that do not
AC_PROVIDE or AC_REQUIRE, and documented user macros that cannot
be AC_REQUIREd because they need arguments, or because that would
violate the documented API.
* m4/libtool.m4 (AC_LIBTOOL_SETUP): Add a new
delay_single_quote_subst sed script to quote single quotes in
variables that are copied to `config.status'.
(_LT_CONFIG_STATUS_DECLARE): New macro to apply
delay_single_quote_subst to a named variable.
(AC_LIBTOOL_CONFIG): Use _LT_CONFIG_STATUS_DECLARE to declare all
`configure' variables that are copied to `config.status'.
(AC_LIBTOOL_PROG_COMPILER_PIC): Fix a quoting bug exposed by
_LT_CONFIG_STATUS_DECLARE using the null quadrigraph in the
rvalues of lt_prog_compiler_pic.
2003-11-06 Owen Taylor <otaylor@redhat.com>
* m4/libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Recognise the
'R' symbol type so read-only symbols can be exported when combining
GCC and Solaris LD.
2003-11-06 James Henstridge <james@daa.com.au>,
Scott James Remnant <scott@netsplit.com>
* m4/libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [Linux]: Fix the
-export-symbols and -export-symbols-regex options.
2003-11-06 Scott James Remnant <scott@netsplit.com>
* tests/demo-nopic.test: Skip test on hppa, which don't like
non-PIC shared libraries.
2003-11-06 Charles Wilson <cwilson@ece.gatech.edu>
* tests/depdemo/configure.ac, tests/mdemo/configure.ac,
tests/mdemo2/configure.ac: process 'libtool --features'
from Makefile, not configure -- because libtool doesn't
exist at configure time.
* 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.
* 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.
* NEWS: Updated.
2003-11-06 Charles Wilson <cwilson@ece.gatech.edu>,
Gary V. Vaughan <gary@gnu.org>
* 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.
2003-11-06 Gary V. Vaughan <gary@gnu.org>
* 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.
2003-11-05 Gary V. Vaughan <gary@gnu.org>
* README-alpha: Mention autotools-announce@gnu.org, and update release
note templates.
2003-11-01 Scott James Remnant <scott@netsplit.com>
* 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.
2003-11-01 Peter O'Gorman <peter@pogma.com>
* tests/mdemo2/Makefile.am: Let mdemo2 find ltdl.h again.
2003-10-30 Peter O'Gorman <peter@pogma.com>
* 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.
2003-10-21 Gary V. Vaughan <gary@gnu.org>
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.
2003-10-21 Gary V. Vaughan <gary@gnu.org>
* ChangeLog, ChangeLog.0, ChangeLog.1: Refactored...
* ChangeLog, ChangeLog.2002, ChangeLog.2001, ChangeLog.2000,
ChangeLog.1999, ChangeLog.1998, ChangeLog.1997, ChangeLog.1996:
...into entries by year for easier copyright confirmation.
* configure.ac, libltdl/configure.ac, tests/cdemo/configure.ac,
tests/demo/configure.ac, tests/depdemo/configure.ac,
tests/f77demo/configure.ac, tests/mdemo/configure.ac,
tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
tests/tagdemo/configure.ac (AM_INIT_AUTOMAKE): Remove redundant
arguments.
* libltdl/configure.ac: Use quadrigraphs to escape macronames.
* bootstrap (reconfdirs): Same as yesterday, only with portable
bourne shell syntax. :-/
2003-10-20 Gary V. Vaughan <gary@gnu.org>
* 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!
2003-10-19 Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>
Charles Wilson <cygwin@cwilson.fastmail.fm>
* 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.
2003-10-19 Charles Wilson <cygwin@cwilson.fastmail.fm>
* libtoolize.in: protect sed expression against
AC_CONFIG_AUX_DIR_DEFAULT.
2003-10-16 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* 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.
2003-10-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* 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.
2003-10-15 Albert Chin-A-Young <china@thewrittenword.com>
* m4/libtool.m4: Restrict the list of tags that can be created
with a new AC_LIBTOOL_TAGS([tag1 tag2 ...]) macro. Deprecate
--with-tags.
2003-10-15 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in: Typo when copying config.sub.
From Patrick Welche <prlw1@newn.cam.ac.uk>
* 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.
* 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.
* configure.ac (AC_CONFIG_TESTDIR, AC_CONFIG_TESTFILES): Comment
this out for now, the autotest testsuite rewrite is not ready
yet.
* tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am (top_distdir):
Removed. `autoreconf' needs literals in ACLOCAL_AMFLAGS.
2003-10-14 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in (func_mkdir_p): Synch with tests/defs; if there
are no more directories in the stack, break out of the loop.
* tests/Makefile.am (COMMON_TESTS): Remove pdemo-unst.test, which
isn't a real test.
2003-10-14 Gary V. Vaughan <gary@gnu.org>
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.
2003-10-12 Peter O'Gorman <peter@pogma.com>
* m4/libtool.m4: Speed up max_cmd_len check.
2003-10-08 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in: AC_CONFIG_M4_DIR has landed in CVS autoconf.
Only it's called AC_CONFIG_MACRO_DIR. Search and replace.
Grumble. ;-)
2003-10-08 Scott James Remnant <scott@netsplit.com>
* libltdl/ltdl.c (lt_dlerror): change return value when
no error has occured to NULL to match documentation.
(Debian Bug #157229)
2003-10-07 Gary V. Vaughan <gary@gnu.org>
* ltmain.in: Don't suppress output of PIC mode compile if
-no-suppress option is given.
* doc/libtool.texi (Invoking libtool): Document it.
* NEWS: Updated.
2003-10-07 Marcus Comstedt <marcus@mc.pp.se>
* m4/libtool.m4 [amigaos-ppc, amigaos-m68k]: Differentiate between
amigaos on ppc and m68k.
* NEWS: Updated.
2003-10-07 Ralph Schleicher <rs@nunatak.allgaeu.org>
* 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.
2003-10-07 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (Invoking libtool): Updated.
* ltmain.in: Add missing clean and finish modes to the shorthand
options.
* ltmain.in: Typo in the --mode shorthand.
2003-10-07 Scott James Remnant <scott@netsplit.com>
* m4/libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Remove dead code
for platforms that have been using pass_all for some time now.
2003-10-07 Gary V. Vaughan <gary@gnu.org>
* 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.
2003-10-05 Peter O'Gorman <peter@pogma.com>,
Gary V. Vaughan <gary@gnu.org>
* ltmain.in: Remove inferrence of mode, add shorthand for mode
choice.
* ltmain.in: Specifying -allow-undefined is now an error.
2003-09-29 Scott James Remnant <scott@netsplit.com>
* 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)
2003-09-29 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>,
Dalibor Topic <robilad@kaffe.org>
* libltdl/ltdl.c: Only include malloc.h if stdlib.h can not be
found.
2003-09-26 Alfred M. Szmidt <ams@kemisten.nu>
* mdemo2/Makefile.am (INCLUDES): Include `$(top_srcdir)/../libltdl'
instead of `../libltdl'.
2003-09-24 Gary V. Vaughan <gary@gnu.org>
* 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.
2003-09-21 Robert Millan <robertmh@gnu.org>
* libtool.m4: Add GNU/KNetBSD support.
* ltdl.m4: Likewise.
2003-09-13 Scott James Remnant <scott@netsplit.com>
* 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)
2003-09-11 Peter O'Gorman <peter@pogma.com>
* AUTHORS, THANKS: Added myself to AUTHORS, removed from THANKS.
2003-09-10 Peter O'Gorman <peter@pogma.com>
* 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.
* 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.
2003-09-10 Arne Woerner <woerner@mediabase-gmbh.de>
* libtool.m4 [openbsd]: openbsd 3.x needs versioning information.
2003-08-29 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Typo.
2003-08-29 Alexandre Duret-Lutz <adl@gnu.org>
* libtool.m4 (_LT_AC_LANG_C_CONFIG): Fix unquoted call to
_LT_AC_LANG_C_CONFIG.
(AC_PROG_EGREP): Remove, now that Libtool requires Autoconf 2.56.
* bootstrap: Issue an upgrade warning.
2003-08-27 Gary V. Vaughan <gary@gnu.org>
* 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.
2003-08-27 Gary V. Vaughan <gary@gnu.org>
Work around a bug in AU_ALIAS in CVS Autoconf that inserts a
newline just before AC_FD_CC, by hand updating:
* ltdl.m4 (AC_LTDL_SYMBOL_USCORE): s/AC_FD_CC/AS_MESSAGE_LOG_FD/g.
2003-08-05 Jim Pick <jim@kaffe.org>,
Ito Kazumitsu <kaz@maczuka.gcd.org>,
Gary V. Vaughan <gary@gnu.org>
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.
2003-08-01 Peter O'Gorman <peter@pogma.com>
* 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.
2003-08-01 Robert Boehne <rboehne@gnu.org>
* libltdl/ltdl.h: Tweak the header to support visual studio.
2003-07-31 Greg Eisenhauer <eisen@cc.gatech.edu>
* ltmain.in: Provide absolute paths for dlopen and dlpreopen
files in generating uninstalled libtool libraries.
* mdemo2/main.c, mdemo2/Makefile.am, mdemo2/README,
mdemo2/configure.ac, mdemo2/.cvsignore, mdemo/mlib.c,
tests/mdemo2-conf.test, tests/mdemo2-exec.test,
tests/mdemo2-make.test: New files for testing above feature.
* configure.ac, bootstrap, tests/Makefile.am: Accomodate new
test directory.
* mdemo/Makefile.am: Build libmlib.la for mdemo2 tests.
2003-07-30 Tony Wyatt <wyattaw@optushome.com.au>
* libtool.m4: Remove parentheses around finish_eval part which
broke on amigaos pdksh.
2003-07-30 Christiaan Welvaart <cjw@daneel.dyndns.org>
* tests/dryrun.test: Ignore any 'total' line from "ls -l" output.
2003-07-30 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Correctly remove IRIX C++
template files.
2003-07-24 Robert Millan <robertmh@gnu.org>
* libtool.m4: More fixes for the new GNU/FreeBSD triplet.
2003-07-14 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* config.guess, config.sub: Synchronized from ftp.gnu.org since
Robert Millan's patch requires it.
2003-07-14 Robert Millan <zeratul2@wanadoo.es>
* 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.
2003-07-14 Andreas Schwab <schwab@suse.de>
* libtool.m4 (_LT_AC_LOCK): Also match powerpc64-*linux* in
addition to ppc64-*linux*. From Markus Meissner
<meissner@bogus.example.com>.
2003-07-14 Dalibor Topic <robilad@yahoo.com>
* 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.
2003-06-25 Alexandre Oliva <aoliva@redhat.com>, Tim Waugh <twaugh@redhat.com>
* 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.
2003-06-11 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AC_LIBTOOL_COMPILER_OPTION): Require LT_AC_PROG_SED to
ensure $SED is set by the time it is used.
* ChangeLog: Restore missing entries from 2003-04-22.
* NEWS: Sychronised from branch-1-5.
2003-06-03 Benjamin Reed <ranger@befunk.com>
* ltmain.in: search libraries in the order of preference, rather
than picking .la's even if they're in a less preferred directory.
2003-06-03 Robert Millan <rmh@debian.org>
* ltdl.m4: Add support for GNU/FreeBSD.
* ltmain.in: Add support for GNU/FreeBSD.
2003-06-03 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: No need to use sed to remove leading comma when
appending to $tagnames.
2003-06-03 Albert Chin-A-Young <china@thewrittenword.com>
* 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).
2003-06-03 Peter O'Gorman <peter@pogma.com>
* 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.
2003-06-03 Max Bowsher <maxb@ukf.net>
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Reorder cygwin's
system library search path.
2003-06-01 Robert Boehne <rboehne@gnu.org>
* 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.
2003-05-30 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (argz_insert): Corrected an off by one error when
checking that before is not out of range.
2003-05-29 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_int_dyld_lib_install_name): Removed unused
variable mh1.
(sys_dyld_close): Removed unused variable size.
2003-05-21 Bruno Haible <bruno@clisp.org>
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Add support for
GNU/FreeBSD.
2003-04-22 Alexandre Oliva <aoliva@redhat.com>
* libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
mips*-linux* variants.
2003-04-22 Samuel Meder <meder@mcs.anl.gov>
* libtool.m4 Switch on $CC and add paterns to cases.
2003-04-22 Peter O'Gorman <peter@pogma.com>
* 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.
2003-04-22 Samuel Meder <meder@mcs.anl.gov>
* libtool.m4: Switch on $CC and add patterns to cases.
2003-04-21 Richard Dawe <rich@phekda.freeserve.co.uk>
* doc/libtool.texi: Use @ifnottex instead of @ifinfo,
to allow production of HTML documentation using makeinfo.
2003-04-14 Robert Boehne <rboehne@gnu.org>
* NEWS: Updated.
* 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.
2003-04-10 Alexandre Oliva <aoliva@redhat.com>
* libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on all
mips*-linux* variants.
2003-04-09 Samuel Meder <meder@mcs.anl.gov>
* libtool.m4 Switch on $CC and add paterns to cases.
2003-04-09 Peter O'Gorman <peter@pogma.com>
* 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.
2003-04-09 Samuel Meder <meder@mcs.anl.gov>
* libtool.m4 Switch on `basename $CC` not $CC
2003-04-05 Peter O'Gorman <peter@pogma.com>
* 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.
2003-04-05 Allan Sandfeld Jensen <snowwolf@one2one-networks.com>
* libtool.m4: Switch on $CC not $cc_basename.
2003-04-02 Robert Boehne <rboehne@gnu.org>
* tests/defs: Quote $DJGPP to prevent problems with some shells.
Pointed out by Albert Chin <libtool@thewrittenword.com>
2003-04-01 Peter O'Gorman <peter@pogma.com>
* libtool.m4: Fix the echo test which I broke earlier.
* ltmain.in: Make DESTDIR work on darwin, don't use otool.
2003-03-31 Keith Packard <keithp@keithp.com>
* ltmain.in: New flag -version-number to be used for maintaining
compatability with a previously non-Libtool versioning scheme.
* doc/libtool.texi: Document it.
2003-03-31 Naofumi Yasufuku <naofumi@yasufuku.net>
* ltmain.in (win32_libid): Fixed sed expression error in
win32_nmres evaluation.
2003-03-31 Albert Chin <libtool@thewrittenword.com>
* ltmain.in: Don't pass -R flags found in a .la's dependency_libs
variable directly down to the linker.
Reported by Tim Mooney <mooney@dogbert.cc.ndsu.nodak.edu>.
2003-03-28 Richard Dawe <rich@phekda.freeserve.co.uk>
* Makefile.am: Define CONF_SUBDIRS.
* 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.
2003-03-28 Peter O'Gorman <peter@pogma.com>
* libltdl/ltdl.c (dyld): Remove some debug printf's, fix a bug.
* ltmain.in (darwin): Only link against shared libraries when doing
link_all_deplibs.
2003-03-25 Robert Boehne <rboehne@gnu.org>
* bootstrap: Add f77demo to the directories that AUTOHEADER
is run in.
2003-03-21 Wesley W. Terpstra <terpstra@ito.tu-darmstadt.de>
* ltmain.in: Don't accumulate directory information in clean mode.
Include properly pathed wrapper script.
2003-03-21 Peter O'Gorman <peter@pogma.com>
* README: Remove "Important" information about patching automake.
* 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.
2003-03-20 Peter O'Gorman <peter@pogma.com>
* ltmain.in: Always use $echo not echo for consistency.
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.
2003-03-19 Robert Boehne <rboehne@gnu.org>
* libtool.m4 (_LT_AC_TAGCONFIG): Add test around the macro that
adds tags to the libtool script so that they won't run when not
needed.
* configure.ac: Set F77 to no when no Fortran compiler is found.
2003-03-16 Charles Wilson <cwilson@ece.gatech.edu>
* ltmain.in (win32_libid): use $SED, not head.
2003-03-02 Alexandre Oliva <aoliva@redhat.com>
* libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
(_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
and reset them for a C++ environment. Use the with_gnu_ld setting
from AC_PROG_LD.
2003-02-28 Ralph Schleicher <rs@nunatak.allgaeu.org>
* ltmain.in: Only append a dot to the wrapper script when
building on cygwin/MSYS (check for $build, not $host).
2003-02-27 Samuel Meder <meder@mcs.anl.gov>
* libtool.m4 (ia64): Add support for Intel compiler (ecc) on IA64
Linux.
2003-02-27 Benjamin Reed <ranger@befunk.com>
* THANKS: Added people who have submitted 3 or more patches
to libtool to the THANKS file.
* README: Added notes about the Darwin (MacOSX) support.
2003-02-25 Bob McElrath <bob+libtool@mcelrath.org>
* libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Add support for
the Compaq C compiler for Alpha Linux.
2003-02-25 Benjamin Reed <ranger@befunk.com>
* libtool.m4 (darwin): Disable hardcoding library paths to
make relinking unnecessary.
2003-02-24 Robert Boehne <rboehne@gnu.org>
* libltdl/configure.ac: Use AC_CONFIG_AUX_DIR([.]) to place
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.
2003-02-24 Ralph Schleicher <rs@nunatak.allgaeu.org>
* libtool.m4 (AC_LIBTOOL_SETUP): Check for ar.
2003-02-23 Peter O'Gorman <peter@pogma.com>
* libtool.m4 (darwin): Revamp darwin platform support.
* ltdl.m4 (darwin): Support dlcompat if found.
* ltmain.in: Make sure ranlib is run if needed when piecewise
linking.
2003-02-23 Alexandre Duret-Lutz <adl@gnu.org>
* ltmain.in (--help): Show mailing-address for bug reports.
(--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.
2003-02-19 Alexandre Oliva <aoliva@redhat.com>
* libtool.m4 (AC_PROG_LD): Use $CC instead of GCC.
(_LT_AC_LANG_CXX_CONFIG): Preserve variables used by AC_PROG_LD,
and reset them for a C++ environment. Use the with_gnu_ld setting
from AC_PROG_LD.
* libtool.m4: Replace $linker_flags with $compiler_flags wherever
it is used as argument to $CC.
* libtool.m4: Use linux version_type on IRIX with GNU ld.
Prefix -soname, -set_version and their arguments with ${wl}. Add
-melf* linker scripts to LD, and use them to determine libsuff,
shlibsuff and libmagic.
2003-02-17 Allan Sandfeld Jensen <snowwolf@one2one-networks.com>
* libtool.m4: Intel icc fixups for version 7.0.
2003-02-17 Ralph Schleicher <rs@nunatak.allgaeu.org>
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Prepend a dot to
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.
2003-02-17 Charles Wilson <cwilson@ece.gatech.edu>
* ltmain.in (win32_libid): Rewritten to improve speed.
2003-02-11 Richard Dawe <rich@phekda.freeserve.co.uk>
* libtoolize.in: Use the program found by AC_PROG_LN_S
to create symlinks.
2003-02-08 Jan Kratochvil <project-libtool@jankratochvil.net>
* ltmain.in: Handle duplicate object file names when performing
piecewise archive linking by renaming object files when needed.
2003-02-05 Robert Boehne <rboehne@gnu.org>
* libtool.m4 (AC_CHECK_LIBM): Search for a real symbol in
the math library rather than 'main', it causes problems for
C++ compilers with certain Auto* tools.
(AC_LIBLTDL_INSTALLABLE): ditto.
2003-02-05 Christian Cornelssen <ccorn@cs.tu-berlin.de>
* libtool.m4 (_LT_AC_LANG_CXX_CONFIG)
(AC_LIBTOOL_PROG_LD_SHLIBS): Rewrite printf commands so
that the format string cannot be mistaken as an option.
Reported by Martin MOKREJS.
2003-02-05 Robert Boehne <rboehne@gnu.org>
* libtool.m4: Modify the sys_lib_search_path_spec to allow
for either native sed or GNU sed to be used.
2003-02-04 Nick Hudson <skrll@netbsd.org>
* libtool.m4: don't use -nodefaultlibs in archive_commands
or archive_expsym_commands on NetBSD.
2003-02-04 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: Change setting of archive_cmds_need_lc
so that it doesn't overwrite the previous setting.
2003-01-28 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: Allow compiler variable, CC, CXX, etc. to
be a program name with arguments. Original version stripped
arguments for CC.
2003-01-28 Charles Wilson <cwilson@ece.gatech.edu>
* ltmain.in: add code for a binary wrapper
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.
2003-01-28 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: Hardcode library paths into libraries on IRIX.
2003-01-18 Robert Boehne <rboehne@gnu.org>
* libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC): Don't add -DPIC
for languages other than C and C++.
2003-01-13 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4, ltmain.in: Add support for hppa*64* based on
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=''.
2003-01-12 Robert Boehne <rboehne@gnu.org>
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Revert an
accidental rearranging of dylib and so for darwin.
2003-01-10 Robert Boehne <rboehne@gnu.org>
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Modify the
"-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.
2002-12-31 Benjamin Reed <ranger@befunk.com>
* ltmain.in [darwin]: disable lazy linking, needed
to resolve C++ global constructor issues
2002-12-30 Ralph Schleicher <rs@nunatak.allgaeu.org>
Rework by Robert Boehne <rboehne@gnu.org>
* 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.
2002-12-30 Charles Wilson <cwilson@ece.gatech.edu>
* libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): modify
$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.
2002-12-30 Charles Wilson <cwilson@ece.gatech.edu>
* libtool.m4 (AC_LIBTOOL_RC): AC_PROG_RC doesn't exist --
but we do AC_DEFUN something called LT_AC_PROG_RC.
Call that instead.
2002-12-30 Robert Boehne <rboehne@gnu.org>
* libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Copy the section
for Darwin from AC_LIBTOOL_PROG_LD_SHLIBS so that the CXX
tag doesn't use the g++ defaults for the OS X compiler.
2002-12-30 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: Sync methods used to detect GNU ld.
2002-12-20 Robert Boehne <rboehne@gnu.org>
* libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
AC_LIBTOOL_PROG_CC_C_O): Do not escape } or ? in sed argument.
2002-12-19 Robert Boehne <rboehne@gnu.org>
* ltmain.in: Use the sed program found by LT_AC_PROG_SED
so that relink commands don't get truncated.
2002-12-18 Robert Boehne <rboehne@gnu.org>
* libtool.m4: Move AC_REQUIRE([LT_AC_PROG_SED]) to AC_PROG_LD
so it is invoked earlier.
2002-12-11 Allan Sandfeld Jensen <snowwolf@one2one-networks.com>
* libtool.m4: Add support for Intel icc compiler for Linux.
2002-12-11 Robert Boehne <rboehne@gnu.org>
* ltmain.in: Revert the version +1 change for IRIX, it could
cause compatibility problems.
2002-11-22 Christian Cornelssen <ccorn@cs.tu-berlin.de>
* libtool.m4 (AC_LIBTOOL_COMPILER_OPTION,
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.
2002-11-19 Paul Eggert <eggert@twinsun.com>
Don't assume that egrep and fgrep exist. POSIX 1003.1-2001 no
longer requires them; you're supposed to use grep -E and grep -F
instead. Also, don't assume that "test -a" works, since POSIX
doesn't require it.
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER, _LT_AC_LANG_C_CONFIG,
_LT_AC_LANG_CXX_CONFIG, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE,
AC_LIBTOOL_PROG_LD_SHLIBS):
egrep -> grep, when that makes no difference.
* libtoolize.in: Likewise.
* ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Likewise.
* ltmain.in: Likewise.
* demo/Makefile.am (hc-direct): Likewise.
* pdemo/Makefile.am (hc-direct): Likewise.
* tests/build-relink.test, tests/build-relink2.test,
tests/cdemo-conf.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/demo-conf.test,
tests/demo-nofast.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/hardcode.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: Likewise.
* libtool.m4 (AC_PROG_EGREP):
New macro, defined if Autoconf doesn't define.
(AC_PATH_TOOL_PREFIX, AC_PROG_LD_GNU): Use it.
(AC_PROG_LD, AC_PROG_NM, AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE):
Use shell pattern matching rather than egrep.
(AC_LIBTOOL_CONFIG): Set lt_EGREP and EGREP.
* demo/Makefile.am (SET_HARDCODE_FLAGS): Use sed instead of egrep.
* pdemo/Makefile.am (SET_HARDCODE_FLAGS): Likewise.
* tests/defs (EGREP, FGREP): New vars.
* ltmain.in: egrep -> $EGREP
* tests/assign.test, tests/demo-exec.test, tests/demo-inst.test,
tests/pdemo-exec.test, tests/pdemo-inst.test, tests/sh.test:
Likewise.
* tests/hardcode.test: fgrep -> $FGREP
* tests/f77demo-exec.test: test -a -> test &&
2002-11-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* ltmain.in: When using gcc, pass -mfoo to the linker
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.
2002-11-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* tests/Makefile.am: Conditional assignment of FFLAGS = @FFLAGS@
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.
2002-11-18 Jakub Jelinek <jakub@redhat.com>
* libtool.m4: Support linking of 64-bit libraries on
sparc{,v[789]}-*linux*, s390*-*linux*, ppc*-*linux*
GNU/Linux systems when the platform default is to build
32-bit libraries.
2002-11-18 Andreas Jaeger <aj@suse.de>, Bo Thorsen <bo@suse.de>
* libtool.m4: Support linking of 32-bit libraries with ld
on the x86-64, ppc64, s390x and sparc64 GNU/Linux systems.
2002-11-18 Akim Demaille <akim@epita.fr>
* ltmain.in: Do not change the PATH in the wrappers: let them
launch the real binary using its path.
2002-11-18 Kevin Ryde <user42@zip.com.au>
* doc/libtool.texi (Library tips): Note array dimensions.
2002-11-18 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* tests/*.test: MinGW's MSYS treats files under /dev
specially. This causes 'test -r /dev/null/config/site' to
improperly report success, causing configure to fail. Change the
CONFIG_SITE definition from "/dev/null/config/site" to
"/nonexistent" to avoid this problem.
2002-11-18 Charles Wilson <cwilson@ece.gatech.edu>
* libtool.m4 (_LT_AC_LOCK): remove support for ancient
versions of mingw and cygwin.
(AC_LIBTOOL_POSTDEP_PREDEP): new function.
moved the "find hidden library dependencies" code here
from AC_LIBTOOL_LANG_CXX_CONFIG. Attempted to make it
multi-tag compatible, but currently only CXX calls it.
(AC_LIBTOOL_LANG_CXX_CONFIG): set
enable_shared_with_satic_runtimes to 'no' by default
Set it to 'yes' for cygwin, mingw, pw32. Replace
"find hidden library dependencies" code with a call
to the new function AC_LIBTOOL_POSTDEP_PREDEP.
Consolidate cygwin and mingw/pw32 stanzas.
(AC_LIBTOOL_LANG_F77_CONFIG): set
enable_shared_with_static_runtimes to 'no' by default
(AC_LIBTOOL_CONFIG): add
enable_shared_with_static_runtimes to the list of variables
to write into ltmain.sh; include it in the libtool script
template as allow_libtool_libs_with_static_runtimes.
(AC_LIBTOOL_PROG_LD_SHLIBS): set
enable_shared_with_static_runtimes to 'no' by default
Set it to 'yes' for cygwin, mingw, pw32.
(AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): only put cr in regexp
if the build_os is mingw, not host_os
* ltmain.in (case deplibs_check_method): for all appropriate
cases, if allow_libtool_libs_with_static_runtimes, then remove
predeps and postdeps from the list of dependencies that must
be checked for "dynamicness". For the "none" case, the
presence of compiler-generated postdeps and predeps should
not trigger "inter-library dependencies not supported" error.
(initial setup after arg processing): on cygwin/mingw, allow
compiler-generated dependent libs to be duplicated without
elimination.
(initial search loop for deplibs): if the deplib in question
is a libtool lib, then if
allow_libtool_libs_with_static_runtimes then parse the .la file.
If the .la file only has an "old_library", add the deplib
directly to the deplibs list (-lstdc++) and DON'T use the .la
file; this allows the (case deplibs_check_method) change above
to take effect.
* ltmain.in (for pass in $passes loop): remove predeps,
postdeps, and compiler_lib_search_path from dependency_libs.
2002-11-08 Robert Boehne <rboehne@gnu.org>
* doc/libtool.texi: Add --mode=* to every example using libtool.
2002-11-03 Ossama Othman <ossama@doc.ece.uci.edu>
* ltmain.in: add support for installing into temporary
staging area (e.g. 'make install DESTDIR=...')
2002-11-03 Charles Wilson <cwilson@ece.gatech.edu>
* libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): restore setting
allow_undefined_flag=unsupported for cygwin and mingw.
(AC_LIBTOOL_PROG_LD_SHLIBS): ditto, for both "normal" gcc/ld
and for the (unmaintained?) MSVC case.
2002-11-03 Charles Wilson <cwilson@ece.gatech.edu>
* doc/libtool.texi (Install mode): document new
-inst-prefix option.
2002-11-02 Robert Boehne <rboehne@gnu.org>
* ltmain.in: Print a warning if the mode is not specified.
* doc/libtool.texi: Document the change that the mode must be
specified.
2002-10-30 Charles Wilson <cwilson@ece.gatech.edu>
* libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): use printf, not
echo. (AC_DEPLIBS_CHECK_METHOD): use new shell function
win32_libid on w32 platforms
* ltmain.in: add new section for shell functions. Add
win32_libid() shell function.
* f77demo/Makefile.am: add -no-undefined flag
2002-10-30 Rob Browning <rlb@defaultvalue.org>
* ltdl.c (realloc): Remove custom realloc. (#define
rpl_realloc realloc) and comment out later code for custom
realloc. You can't define your own malloc unless you know
enough about the malloc in use to be able to tell how big
the src ptr is. The disabled code incorrectly used the
*destination* ptr to decide how much to copy. This
sometimes results in out-of-bound accesses which cause
segfaults. This is a quick hack for now; we may want
something cleaner later.
(tryall_dlopen_module): check to be sure (dirname_len > 0) before
testing first character against '/'.
(try_dlopen): check for feof(file) in read loop -- otherwise
infinite loop?
2002-10-25 Robert Boehne <rboehne@gnu.org>
* ltmain.in (-XCClinker): New flag passes a linking option
directly to the compiler driver without appending ${wl}.
2002-10-25 Gary V. Vaughan <gary@gnu.org>
* README-alpha: Add some release note templates for inspiration
and consistency at release time.
* Makefile.am (cvs-diff): Compress the generated diff file, ready
for upload to ftp.gnu.org.
2002-10-25 Howard Chu <hyc@highlandsun.com>
* ltmain.in [aix]: Be sure to deal with xlc_r, cc_r and other
compiler variants.
2002-10-25 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (_LT_AC_FILE_IMPGEN_C): Removed. No longer used.
(_LT_AC_FILE_LTDLL_C): Ditto.
(AC_LIBTOOL_CONFIG) [cygwin, mingw, pw32, os2]: Don't call
_LT_AC_FILE_LTDLL_C or _LT_AC_FILE_IMPGEN_C.
2002-10-25 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: When LDFLAGS="-Wl,-brtl,[other options]", the
-brtl special-case code for AIX never gets triggered because
were are being too specific about how we search for -brtl.
Use case statement to avoid this. Remove extraneous
semicolon.
* ltmain.in: Recognize the IBM xlc compiler.
2002-10-24 Andrew Suffield <asuffield@debian.org>
* libltdl/ltdl.c (lt_dlopenext): Corrected sense of "file not
found" check.
2002-10-24 Ossama Othman <ossama@doc.ece.uci.edu>
* ltmain.in: Support compiler names matching g++*
2002-10-23 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* libtool.m4: Removed old Windows cruft.
* libtool.m4: Adapted pw32 to be like Cygwin/MinGW.
2002-10-23 Robert Boehne <rboehne@gnu.org>
ltmain.in: Do not add 1 to the version under IRIX, it is
not necessary.
2002-10-15 Charles Wilson <cwilson@ece.gatech.edu>
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): avoid long delay on
cygwin/Win9x when computing commandline length.
(AC_LIBTOOL_SYS_DYNAMIC_LINKER): fix postinstall_cmds when
sources are in a subdirectory
* ltdl.m4 (AC_LTDL_SYSSEARCHPATH): use $PATH_SEPARATOR, not
$ac_path_separator
* configure.ac: move depdemo-specific stuff. You must configure
libtool before you can try './libtool --features'.
* mdemo-inst.test: set $PATH to include the directory in which
the modules are installed (on cygwin, DLL search path is the
$PATH)
2002-10-15 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* ltmain.in: MinGW works identically to Cygwin.
* libtool.m4: lt_cv_sys_max_cmd_len hard-coded to 8192
* Model MinGW configuration after Cygwin configuration.
Some portions share implementation.
2002-10-15 Elizabeth Barham <soggytrousers@yahoo.com>
* libtool.m4: Pattern MinGW library naming after that
used by Cygwin except use 'lib' prefix rather than 'cyg'.
* Transfer some configuration from Cygwin with adjustments
for MinGW.
2002-10-15 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: When a module is built for AIX, the 'lib'
prefix isn't needed, neither is the version. AIX dlopen
will honor the RPATH in a library.
2002-10-11 Christoph Egger <Christoph_Egger@gmx.de>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS, darwin): Add
-install_name to the link line only when -dynamiclib is
specified for a module. Use -bind_at_load when linking C++
shared libraries.
2002-10-04 Elizabeth Barham <soggytrousers@yahoo.com>
* libtool.m4 (AC_LIBTOOL_SETUP): GCC now checks -shared to
create a dll for Windows targets.
2002-09-24 Robert Boehne <rboehne@gnu.org>
* ltmain.in: Fixed a few spelling errors.
2002-09-17 Robert Boehne <rboehne@gnu.org>
* libltdl/ltdl.c: Commented out access() call that checks for a
library file's existence and permissions, as it appears to fail
in every case.
2002-09-09 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: Custom $symcode for Tru64 UNIX to catch 'Q',
read-only constants.
2002-09-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.de>
* libtool.m4 (osf[345]): Append $major to soname_spec.
Reflect this in library_names_spec.
* ltmain.in (osf): Prefix $major with '.' for use as extension.
2002-08-28 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* ltdl.m4 & libltdl/ltdl.c: Port fully to native Win32 API.
2002-07-31 Robert Boehne <rboehne@gnu.org>
* f77demo/.cvsignore: New file, forgotten in the last commit.
2002-07-31 Eric Lindahl <erik@theophys.kth.se>
* libtool.m4 (AC_PROG_LIBTOOL): Added support for the new F77
Fortran support tag.
(AC_LIBTOOL_PROG_CC_C_O, _LT_AC_TAGCONFIG): Support F77 tag.
(AC_LIBTOOL_F77, _LT_AC_LANG_F77, AC_LIBTOOL_LANG_F77_CONFIG):
New macros for F77 tag Fortran support.
* configure.ac: Add support for creating the new F77 tag.
* bootstrap: Add f77demo directory to the list to be processed.
* Makefile.am: Add support for FFLAGS and FLIBS.
* tests/Makefile.am: Add new Fortran tests.
* tests/f77demo-*.test: New files.
* f77demo/configure.ac, f77demo/cprogram.c, f77demo/fooc.c
* f77demo/foof.f, f77demo/foo.h, f77demo/fprogram.f
* f77demo/Makefile.am, f77demo/README: New files.
2002-07-16 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (tryall_dlopen): We need to catch missing file
errors early so that file_not_found() can detect what happened.
2002-06-26 Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Remove
extraneous '=' character which appears in gcc 3.1
-print-search-dirs output.
Handle both upper and lower case drive letters when testing for
Windows vs POSIX style path output from -print-search-dirs
output.
2002-06-24 Robert Boehne <rboehne@gnu.org>
* ltmain.in (Piecewise linking): Add a clause to skip creating
the export file until the reloadable object file(s) have been
created, then use them as input for $export_symbols_cmds.
2002-06-23 Albert Chin-A-Young <china@thewrittenword.com>
* ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Need to quote [ and ] for
Autoconf.
* ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): HP/UX needs
libltdl_cv_sys_dlopen_deplibs set to yes.
2002-06-23 Kevin Ryde <user42@zip.com.au>
* libtool.m4 (AC_LIBTOOL_SETUP, _LT_AC_LOCK): Use
AC_PROVIDE_IFELSE to test AC_LIBTOOL_WIN32_DLL and
AC_LIBTOOL_DLOPEN, necessary for autoconf 2.53.
2002-06-23 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (argz_insert): Actually, BEFORE can be NULL
when *PARGZ_LEN is non-NULL, so the assertion to the contrary was
bogus.
Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
and Albert Chin-A-Young <china@thewrittenword.com>
2002-06-21 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (foreach_dirinpath): Ensure that filename is '\0'
terminated by all code paths.
Reported by Lutz M�ller <lutz@users.sourceforge.net>
2002-06-20 Gary V. Vaughan <gary@gnu.org>
From Kevin Ryde <user42@zip.com.au>:
* doc/libtool.texi (Platform quirks): s/dependan/dependen/
* libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Ditto.
* TODO: Ditto.
2002-06-13 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* ltmain.in (irix, nonstopux): Set major before use.
2002-06-11 Daniel Kobras <kobras@linux.de>
* libltdl/ltdl.c (try_dlopen): Don't return bogus handle to user
if tryall_dlopen() fails.
2002-06-01 Gary V. Vaughan <gary@gnu.org>
* tests/pdemo-exec.test: Typo. s/hell-static/hell_static/
2002-05-31 Charles Wilson <cwilson@ece.gatech.edu>
* NEWS: Updated.
* libtool.m4: use $NM to create the symbol list on cygwin, not
$ltdll_cmds as on mingw. For all tags, (and host=cygwin) set
allow_undefined_flag="" so that the --auto-import magic
works properly. For all tags (and host=cygiwn) set
always_export_symbols=no -- it is unnecessary thanks to
binutils' auto-export magic.
* libltdl/ltdl.c: Don't force cygwin to use the LoadLibrary
wrapper; use cygwin's builtin implementatino of dl*.
* cdemo/Makefile.am: the downside of unsetting
'allow_undefined_flag' -- we must include -no-undefined
in the _la_LDFLAGS variable.
* depdemo/l1/Makefile.am: ditto.
* depdemo/l2/Makefile.am: ditto.
* depdemo/l3/Makefile.am: ditto.
* depdemo/l4/Makefile.am: ditto.
* mdemo/Makefile.am: ditto.
* tagdemo/Makefile.am: ditto.
* demo/Makefile.am: ditto. But also, we must make special
provision to clean up the hell0 wrapper script.
* pdemo/Makefile.am: ditto -no-undefined. ditto hell0.
And use 'hell_static' instead of 'hell.static'.
* tests/pdemo-inst.test: use 'hell_static' instead
of 'hell.static'.
* tests/pdemo-exec.test: ditto.
2002-05-30 Charles Wilson <cwilson@ece.gatech.edu>
* tests/build-relink2.test: look for installed libl3.la
in $prefix/lib/ as well as $prefix/lib/extra/.
2002-05-30 Gary V. Vaughan <gary@gnu.org>
* tests/hardcode.test: Use libtool --config to collect the
variable values for the test, otherwise the tag values interfere
with a straight grep.
2002-05-30 Gary V. Vaughan <gary@gnu.org>
Finally fix the annoying bug which always adds all tags to the
libtool script built by your project configure. Now we set the
default tags depending on whether AC_PROG_CXX et. al. are actually
called from configure.ac.
* libtool.m4 (_LT_AC_TAGCONFIG): Don't default the tagnames when
no --with-tags argument is given.
(_LT_AC_SHELL_INIT): Factored out from the AC_DIVERT_PUSH code
in...
(_LT_AC_PROG_ECHO_BACKSLASH): ...which now calls the macro
instead.
(AC_LIBTOOL_CXX): Use _LT_AC_SHELL_INIT to add CXX to the
initialisation sequence for tagnames.
(AC_LIBTOOL_GCJ): Similarly for GCJ tag.
(AC_LIBTOOL_RC): Likewise for RC tag.
2002-05-21 Jon Meredith <jonm@alchemetrics.co.uk>
* ltmain.in: Fix a problem on SCO OpenServer5 that caused a
failure in three depdemo-make tests. For some reason the linker
tries to find the dependent libraries using the library search
path before it has read the libraries specified with absolute
paths in the full commandline. This patch add -L's for each of
the dependent library directories so that they can be resolved.
2002-05-09 Nick Hudson <skrll@netbsd.org>
* libtool.m4: Update support for NetBSD
* ltdl.m4: Make sure that libltdl_cv_func_dlopen and
libltdl_cv_lib_dl_dlopen are set and used instead of the
ac_cv_ versions. Also, use lt_cv_sys_global_symbol_pipe
instread of global_symbol_pipe. This fixes the detection of
dlopen on BSD derived plaforms and more importantly fixes
need_uscore detection.
2002-05-06 Paul Eggert <eggert@twinsun.com>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): head -1 -> sed 1q to
port to POSIX 1003.1-2001 hosts, like textutils 2.0.21 with
_POSIX2_VERSION=200112.
2002-05-06 Paul Eggert <eggert@twinsun.com>
* ltmain.in: Don't assume that "sort +2" works, as POSIX
1003.1-2001 says that "sort +2" is supposed to sort the file
named "+2". An example host that behaves like this is
textutils 2.0.21 with _POSIX2_VERSION=200112.
2002-05-06 Loren James Rittle <rittle@latour.rsch.comm.mot.com>
* ltmain.in: Detect and handle object name conflicts while
piecewise linking a static library.
2002-05-02 Dave Vasilevsky <thevas@mac.com>
* ltmain.in: Remove convenience libraries from deplibs for Darwin.
2002-05-02 Fritz Elfert <felfert@to.com>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Modify archive_expsym_cmds
to catch properly handle dll alias symbols.
2002-04-24 Kevin Ryde <user42@zip.com.au>
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Use $build_os not $host_os.
2002-04-14 Robert Boehne <rboehne@gnu.org>
* doc/libtool.texi (C++ libraries): Finally updated to reflect
Libtool's support for C++.
2002-04-14 Jean-Frederic Clere <jfrederic.clere@fujitsu-siemens.com>
* libtool.m4: Update support for Fujistu-Siemens Computers (FSC).
* ltmain.in: Add support for EBCDIC based systems.
2002-04-07 Robert Boehne <rboehne@gnu.org>
* libtool.m4 (LT_AC_PROG_SED): Refactor, removing temporary directory
and consistent use of the shell variable namespace "lt_ac_".
2002-04-02 Robert Boehne <rboehne@gnu.org>
* ltmain.in: Finish the tag matching logic started yesterday and
refactor it a bit.
2002-04-01 Robert Boehne <rboehne@gnu.org>
* ltmain.in: Handle the case when no tag is explicitly set, and
$base_compile has a space in front of $CC, and revert the setting
of tagname checked in on 2002-3-14.
2002-04-01 Robert Boehne <rboehne@gnu.org>
* tagdemo/foo.cpp: Use C++ IO to catch problems linking to C++
runtime libraries.
* tagdemo/main.cpp: Ditto.
2002-03-16 Gary V. Vaughan <gary@gnu.org>
* TODO: Removed obsolete comments about RMS' package system.
2002-03-14 Robert Boehne <rboehne@gnu.org>
ltmain.in: Touch-up to make testsuite pass, and default tagname
to CC when it isn't explicitly set.
2002-03-14 Anthony Green <green@redhat.com>
* libtool.m4 (AC_LIBTOOL_PROG_CC_C_O): Albert Chin's gcj fix.
(AC_LIBTOOL_PROG_COMPILER_PIC): Per Bothner's change for not
using -DPIC with gcj.
2002-03-11 Bruce Korb <bkorb@gnu.org>
* ltmain.in(compile): bring a touch of order to the option processing
2002-02-09 Gary V. Vaughan <gary@gnu.org>
* NEWS: Updated.
* THANKS: Added Rob Collins and Chuck Wilson for their cygwin
work.
From Robert Collins <robert.collins@itdomain.com.au>:
* configure.ac (AC_EXEEXT): Needed for DOSish systems.
* libtool.m4 (shlibpath_overrides_runpath) [cygwin]: Set to yes
when compiling with gcc.
(lt_prog_compiler_pic) [cygwin]: No longer needs the -DDLL_EXPORT
hack, so we just say the pic is the default.
(AC_LIBTOOL_PROG_LD_SHLIBS) [cygwin]: Extract symbols from a
library normally.
[cygwin]: Declare C++ compiler characterisics for g++, taking into
account the new auto-import support in cygwin ld.
* ltmain.in (specialdeplibs) [cygwin]: Be careful about
eliminating duplicate -lgcc's from the link line.
[cygwin]: Be smarter about .exe suffixes.
* demo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL): Support
DOSish systems properly.
* depdemo/configure.ac (AC_EXEEXT, AC_LIBTOOL_WIN32_DLL): Ditto.
* demo/Makefile.am (deplibs-check): Allow for .exe suffix. Use
hell_static instead of hell.static for multi-`.' inhibited OSes.
* tests/demo-exec.test: Ditto.
* tests/demo-inst.test: Ditto.
* demo/foo.h [cygwin]: Sanitize cygwin dll support.
* demo/foo.c (_LIBFOO_COMPILATION_): No longer required.
* demo/hello.c (_LIBFOO_COMPILATION_): Ditto.
* depdemo/Makefile.am (bin_PROGRAMS): Use depdemo_static instead
of depdemo.static for multi-`.' inhibited OSes.
* tests/depdemo-exec.test: Ditto.
* tests/depdemo-inst.test: Ditto.
* mdemo/Makefile.am (bin_PROGRAMS): Ditto for mdemo.static.
* tests/dryrun.test: Ditto.
* tests/mdemo-exec.test: Ditto.
* tests/mdemo-inst.test: Ditto.
* tests/build-relink.test: Be careful about possible .exe
suffixes.
* tests/noinst-link.test: Allow for .exe suffix.
2002-02-07 Alexandre Oliva <aoliva@redhat.com>
Reverted incorrect patch:
2001-10-24 H.J. Lu <hjl@gnu.org>
* ltmain.sh: Allow link against an archive when building a
shared library.
* libtool.m4 (lt_cv_deplibs_check_method): Always use
file_magic for Linux ELF.
2002-01-30 Robert Boehne <rboehne@ricardo-us.com>
* libtool.m4 (LT_AC_PROG_SED): Removed a mysterious newline.
2002-01-28 Robert Boehne <rboehne@ricardo-us.com>
* libtool.m4 (LT_AC_PROG_SED): New macro tests sed for truncation of
output. AC_REQUIRE the new macro.
* ltmain.in: Use $SED rather than plan old sed, as set by the new
macro LT_AC_PROG_SED.
2002-01-10 Volker Christian <voc@soft.uni-linz.ac.at>
* libltdl/ltdl.c (find_handle_callback): treat the result of a call
to access(2) correctly when deciding whether a library can be found
in a directory from user_search_path.
2002-01-07 Robert Boehne <rboehne@ricardo-us.com>
* NEWS: Fixed wrong path for texinfo.tex.
* configure.ac: Bumped version to 1.4e.
GNU libtool 1.4d was released.
* configure.ac: Bumped version to 1.4d.
* NEWS: updated.
* config.guess, config.sub, texinfo.tex: Synchronised from
ftp.gnu.org.
2001-12-06 Jens Petersen <petersen@redhat.com>
* ltmain.in: Replace all test "-a"s by "&& test"
for portability.
2001-11-28 Robert Boehne <rboehne@ricardo-us.com>
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Change the
factor of saftey as 3/4 of the result was not low enough.
2001-11-28 Gary V. Vaughan <gary@gnu.org>
* libtoolize.in: The test for whether AC_PROG_LIBTOOL is defined
in aclocal.m4 had bitrotted slightly.
Reported by Takahiko Kawasaki <Takahiko_Kawasaki@cii.csk.co.jp>
2001-11-27 Donald D. Anderson <dda@sleepycat.com>
* ltmain.in: Treat freebsd like openbsd, in that -lc/-lc_r should
not be explicitly used. ld handles this depending on the presence
of the -pthread option.
2001-11-27 Robert Boehne <rboehne@ricardo-us.com>
With help from Michael Matz <matz@kde.org>:
* ltmain.in: Add a new command line argument
--preserve-dup-deps for preserving duplicate
dependent libraries.
* libtool.texi: Document it.
2001-11-27 Kevin Ryde <user42@zip.com.au>
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Send "test"
warnings to /dev/null, helps FreeBSD and maybe others.
2001-11-15 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: quote LTCC because autoconf AC_PROG_CC_STDC
macro might add to $CC if options needed by compiler to
grok ANSI.
2001-11-15 Gary V. Vaughan <gary@gnu.org>
From Joseph S. Myers <jsm28@cam.ac.uk>:
* ltmain.in: Typo.
2001-11-15 Mo DeJong <supermo@bayarea.net>
* ltmain.in: Place parens around a generated relink_command
so it is run is a subshell. This avoids an install error
where libtool ended up in the wrong directory after
relinking a .la file.
2001-10-31 Raja R Harinath <harinath@cs.umn.edu>
* configure.ac (pkgdatadir): Move the invocation of AC_INIT_AUTOMAKE
before the use of $PACKAGE in $pkgdatadir.
Reported by Bob Friesenhahn <bfreisen@simple.dallas.tx.us>
2001-10-28 Gary V. Vaughan <gary@gnu.org>
From Tom Bates <Tom.Bates@compaq.com>:
* libtool.m4 [mips-compaq-nonstopux]: New port.
* ltmain.in [mips-compaq-nonstopux]: Support
$version_type == nonstopux.
2001-10-28 Albert Chin-A-Young <china@thewrittenword.com>
* libltdl/ltdl.c (foreach_dirinpath): change some types to size_t
from int because strlen() returns size_t. argz_len changed to
size_t because argzize_path() takes 3rd argument as size_t, not
int.
Based on lint run from Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
2001-10-27 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (_LT_AC_TAGCONFIG): Cray sed does not allow character
sets to contain the separator character.
Reported by Kevin Ryde <user42@zip.com.au>
* ltdl.m4 (AC_WITH_LTDL): New macro to add `--with-included-ltdl'
option to configure, but to find an appropriate ltdl library and
append the right options to link it.
2001-10-24 Kevin Ryde <user42@zip.com.au>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Remove a stray ' quote.
2001-10-24 H.J. Lu <hjl@gnu.org>
* ltmain.sh: Allow link against an archive when building a
shared library.
* libtool.m4 (lt_cv_deplibs_check_method): Always use
file_magic for Linux ELF.
2001-10-12 Guido Draheim <guidod-2001q3@gmx.de>
* ltdl.m4: Changed "underscode to underscore".
2001-10-06 Gary V. Vaughan <gary@gnu.org>
* configure.ac: General modernisation and cleanup.
* cdemo/configure.ac: Ditto.
* demo/configure.ac: Ditto.
* depdemo/configrue.ac: Ditto.
* ltdl/configure.ac: Ditto.
* ltdldemo/configure.ac: Ditto.
* mdemo/configure.ac: Ditto.
* pdemo/configure.ac: Ditto.
* tagdemo/configure.ac: Ditto.
2001-10-04 Albert Chin-A-Young <china@thewrittenword.com>
* libltdl/ltdl.c: Match function return type with prototype
(add static initializer to file_not_found).
2001-09-30 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AC_LIBLTDL_CONVENIENCE): s/INCLTDL/LTDLINCL/ for
consistency with gettext's INTLINCL. Keep the old symbol too for
backwards compatibility.
(AC_LIBLTDL_INSTALLABLE): Ditto.
* doc/libtool.texi (Distributing libltdl): Adjust documentation.
2001-09-22 Albert Chin-A-Young <china@thewrittenword.com>
* ltdl.m4 (AC_LTDL_DLLIB): Even though HP-UX 10.20 and 11.00
support shl_load *and* dlopen, dlopen works correctly only
with a patch. Because we want to avoid the situation where we
build on a system with the patch but deploy on a system without,
use shl_load exclusively if found.
2001-09-22 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (_LT_AC_FILE_LTDLL_C): Be carefule that the start
marker searched for by sed must start in column 0.
(_LT_AC_FILE_IMPGEN_C): Ditto.
Reported by Tor Lillqvist <tml@iki.fi>
2001-09-22 Tor Lillqvist <tml@iki.fi>
* libtool.m4 [mingw* cygwin*]: Small improvement for mingw-hosted
tool support (while still running libtool on cygwin). In that case
PATH_SEPARATOR is ':', but gcc -print-search-dirs still prints its
search path with ';' as separator.
(AC_LIBTOOL_RC, AC_LIBTOOL_LANG_RC_CONFIG): Add support for .rc
files (Windows resource files), compiled by the resource compiler
(windres in mingw) to .o files.
(AC_PROG_NM): Minor bug fix for $PATH elements with spaces in
them.
* configure.ac: Use LT_AC_PROG_RC.
* ltmain.in: Check for .rc files.
* NEWS: Updated.
* ltmain.in: Add a space to $base_compile in the case statement,
as the case labels checks for trailing spaces, but there aren't
necessarily in $base_compile.
2001-09-22 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: When setting archive_cmds for CC, don't
test for $GXX but for $GCC on HP-UX. Indentation fixes.
2001-09-21 Gary V. Vaughan <gary@gnu.org>
From Tor Lillqvist <tml@iki.fi>:
* ltmain.in [cygwin* mingw*]: Take care of the difference between
wrapper script name and executable name.
* libtool.m4 (archive_cmds) [darwin1.[0-2]]: Darwin uses zsh-3.1.6
for /bin/sh, and that shell does not handle escaped quotes
properly yet.
Reported by Christopher Pfisterer <cp@chrisp.de>
2001-09-21 Albert Chin-A-Young <china@thewrittenword.com>
* libltdl/ltdl.c: Match function return type with prototype
(add static initializer to some functions) to prevent warnings
from HP-UX cc.
2001-09-21 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c: Added support for dmalloc, and uncovered some
memory bugs as a result.
2001-09-21 Albert Chin <china@thewrittenword.com>
* libtool.m4: Don't include main() when testing for command to
parse $NM output because some C++ compilers don't allow you to
take the address of main (e.g. HP-UX aCC).
* libtool.m4: Some uses of $GXX were unquoted, but GXX is either
NULL or yes. Use "$GXX".
2001-09-13 Assar Westerlund <assar@sics.se>
* ltdl.m4 (AC_LTDL_DLLIB): call dlopen with arguments so the test
does not fail due to a prototype in dlfcn.h
2001-09-13 Gary V. Vaughan <gary@gnu.org>
* ltdl.m4 (AC_CHECK_HEADERS): Check for assert.h.
* libltdl/ltdl.c: If not, disable assertions manually.
2001-09-11 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Be robust to having no files that need removing.
* libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump libltdl version to
1.2.
* libltdl/Makefile.am (libltdl_la_LDFLAGS): Bump libtool library
version info to 4:0:1.
2001-09-11 Gary V. Vaughan <gary@gnu.org>
* libtool.m4: No need to undefine([symbols]), proper quotation is
enough.
2001-09-10 Gary V. Vaughan <gary@gnu.org>
* libtool.m4: CVS Autoconf guarantees a decent default IFS, so
there is no need for us to preset it anymore.
Be careful not to set IFS="${IFS}$PATH_SEPARATOR" for PATH
splitting, otherwise spaces in directory names will be lost.
Use $PATH_SEPARATOR... don't rely on $ac_path_separator, which was
an autoconf internal until just now, when it disappeared!
* ltmain.in: Default IFS once, at the start.
Reported by Akim Demaille <akim@epita.fr>
2001-09-10 Brad <brad@comstyle.com>
* libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Missed an instance of
Autoconf square bracket quoting style normalisation.
* ltmain.in (-lc_r): Style improvement.
* doc/libtool.texi: Remove obsolete references to ltconfig.
* tests/quote.test: s/ltconfig/\$0/
2001-09-09 Gary V. Vaughan <gary@gnu.org>
* libtool.m4: Use Autoconf square bracket quoting style
consistently throughout.
2001-09-08 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Cleanup `autom4te' and `libtool' so that we don't
get caught by something from a previous build.
* libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Revert
my 2001-09-06 patch.
(no_undefined_flag)i [solaris*]: Revert Alexandre's 2001-04-11 patch.
2001-09-07 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (foreach_dirinpath): argz_len should be a size_t.
Reported by Albert Chin <china@thewrittenword.com>
2001-09-06 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [solaris*]: Typo. s/GXX/GCC/.
* libtool.m4 (archive_cmds, archive_expsym_cmds) [solaris*]: Changing
no_undefined_flag from `-z text' to `-z defs' (see entry below at
2001-04-11 Alexandre Oliva <aoliva@redhat.com>) has a problem.
when linking a shared library with gcc calling /usr/ccs/bin/ld (eg.
the gcc supplied with Solaris 8 companion CD), using the flag
-no-undefined, shared library linking will always fail because of
the unresolved symbols from libgcc.a. Consequently we have to
provide a path to libgcc.a when linking shared libraries in
conjunction with -no-undefined!
From Michael Pruett <mpruett@engr.sgi.com>:
* libltdl/ltdl.c (find_module): `0' valued arguments to
tryall_dlopen_module() must be explicitly cast to avoid compiler
warnings on some environments.
From Daniel Johnson <danielj7@mac.com>:
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [darwin*]: Move from GNU
ld section to non-GNU ld section.
2001-09-05 Robert Boehne <rboehne@ricardo-us.com>
* pdemo/Makefile.am (helldl): Automake 1.4 can't find the target
if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
Using both targets to the left of the colon seems to work though!
2001-09-03 Gary V. Vaughan <gary@gnu.org>
* demo/Makefile.am (helldl): Automake 1.4 can't find the target
if we use helldl$(EXEEXT), and Automake 1.5 barfs unless we do.
Using both targets to the left of the colon seems to work though!
2001-09-03 Brad <brad@comstyle.com>
* ltdl.m4 [AC_LTDL_SYS_DLOPEN_DEPLIBS]: Teach ltdl about the
behavior of OpenBSD's dlopen().
2001-09-03 Gary V. Vaughan <gary@gnu.org>
From Marius Vollmer <mvo@zagadka.ping.de>:
* libltdl/ltdl.c (tryall_dlopen_module): Don't forget to propogate
errors over recurse levels.
2001-09-03 Brad <brad@comstyle.com>
* libtool.m4 [openbsd*]: More improvements to the OpenBSD port.
2001-09-02 Gary V. Vaughan <gary@gnu.org>
From Albert Chin <china@thewrittenword.com>:
* libtool.m4 (_LT_AC_LANG_C_CONFIG) [aix4*]: Be careful with
shared namespaces for static and shared libs.
(AC_LIBTOOL_DLOPEN_SELF): If all else fails, try dld_link from GNU
DLD.
2001-09-02 Christopher Pfisterer <cp@chrisp.de>
* libtool.m4, ltmain.in: Linker flag and version numbering fixes
for darwin.
2001-09-02 Gary V. Vaughan <gary@gnu.org>
Based on a patch from Marius Vollmer <mvo@zagadka.ping.de>:
* NEWS: updated.
* ltdl.m4 (AC_LIB_LTDL): Check for unistd.h.
* ltdl.c: Include unistd.h if it exists.
(LTDL_SEARCHPATH_VAR): Macro to prevent hardcoding
"LTDL_LIBRARY_PATH".
(LTDL_ARCHIVE_EXT): Macro to prevent hardcoding ".la".
(archive_ext): Have only one copy of ".la" in the readonly
segment of the compiled library.
(find_handle_callback): Don't bother trying to dlopen the file if
it doesn't exist.
(find_handle): Don't bother searching for files if no search_path
was supplied.
(file_not_found): A new function to determine whether the last
error was due to a file not found condition.
(try_dlopen): Renamed from lt_dlopen() and changed to have the
same footprint as tryall_dlopen. This involved a minor rewrite of
much of the internals of this function.
(lt_dlopen): A new function wrapped arounf try_dlopen().
(lt_dlopenext): If a file already has a suitable extension, don't
bother adding additional extensions and trying to open those.
Tidy up the rest of the code to prevent continued searching with
an eventual FILE_NOT_FOUND when a genuine failure earlier in the
search process could be legitimately reported.
* demo/Makefile.am (helldl$(EXEEXT)): Automake-1.5 made me change
this from just `helldl'.
2001-07-31 Robert Boehne <rboehne@ricardo-us.com>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) Fixed a problem
with export_symbols_cmds not being set for CXX tags, and
not being properly set for any tag under AIX/Power.
2001-08-19 Ossama Othman <ossama@uci.edu>
* libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG): Corrected and improved
error message that is displayed when there was a problem
compiling the C++ test program. It still mentioned the now
non-existent `ltcf-cxx.sh' file.
* doc/libtool.texi (LTDL_SET_PRELOADED_SYMBOLS): Removed
parentheses at end of starting "defmac" line, as pointed out by
makeinfo.
2001-08-18 Brad <brad@comstyle.com>
* ltmain.in: Do not remove -lm from deplibs for OpenBSD.
2001-08-16 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (argz_create_sep): Don't forget to include the
terminating '\0' when counting argz_len.
(argz_create_sep): When canonicalizing argz, don't forget to copy
the terminating '\0', incase canonicalization has shortened argz.
(argz_stringify): Don't covert the final '\0' to a separator.
2001-08-15 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_dlhandle_next): Now we can loop through all
loaded module handles as originally intended.
* libltdl/ltdl.c (lt_dlseterror): Oops. This never worked
either, due to a pair of typos. Now fixed.
* libltdl/ltdl.c (N_ELEMENTS): Deleted. How come nobody noticed
there was no way this could have ever worked?
(lt_dlcaller_set_data): Now that valid caller_ids must be
non-zero, allocate an addition entry in the caller_data vector and
use a zero valued key as the end marker.
(lt_dlcaller_get_data): Iterate up to the end marker in one pass.
2001-08-14 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_dlcaller_register): Caller ids are allocated
starting from value `1', so that clients can use a value of zero
to indicate that libltdl has not yet initialised.
* ltmain.in (exec_cmd): Fix quoting in execute mode so that the
double quotes added by libtool (to prevent lossage with embedded
spaces in filenames etc.) are not interpreted as literals by the
shell.
2001-08-13 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (find_file_callback): Fix a multiple free()
bug.
(tryall_dlopen_module): Remove some unused variables.
* libltdl/ltdl.c (lt_dlinsertsearchdir): Calculate the address
of the end of user_search_path correctly.
* libltdl/ltdl.c (rpl_argz_stringify): New fallback implementation.
* ltdl.m4 (AC_LTDL_FUNC_ARGZ): Test for argz_stringify in libc.
* libltdl/ltdl.c (lt_argz_insertinorder): Renamed from
lt_argz_insert to make room for...
(lt_argz_insert): Wraps argz_insert with libltdl error handling.
(lt_dlpath_insertdir): Insert new path elements into an
argzized path.
(lt_dlinsertsearchdir): New function to insert new search
directories anywhere into user_search_path using the above.
(lt_dladdsearchdir): Rewritten to use lt_dlpath_insertdir.
* libltdl/ltdl.h (lt_dlinsertsearchdir): Prototype for export.
* doc/libtool.texi (Libltdl interface): Document it.
* NEWS: Updated,
2001-08-07 Gary V. Vaughan <gary@gnu.org>
From Albert Chin <china@thewrittenword.com>:
* ltmain.in [irix*]: $with_gcc is either "yes" or "" (empty string)
with current autoconf, so we need to be robust to that when testing
it,
2001-08-06 Gary V. Vaughan <gary@gnu.org>
From Brad <brad@comstyle.com>:
* libtool.m4 (deplibs_check_method) [aix*]: Removed redundant setting
of this variable.
2001-08-05 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (load_deplibs): Insert missing 1st argument to
LT_EMALLOC.
2001-08-05 Tim Van Holder <tim.van.holder@pandora.be>
* ltdl.m4: Canonicalize descriptive text used with
AC_DEFINE.
* libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR): Remove.
(_LT_AC_PROG_ECHO_BACKSLASH): Use $ac_path_separator
instead of $PATH_SEPARATOR.
(AC_LIBTOOL_SYS_DYNAMIC_LINKER): Ditto.
(_LT_AC_TAGCONFIG): Ditto.
(AC_ENABLE_SHARED): Ditto.
(AC_ENABLE_STATIC): Ditto.
(AC_ENABLE_FAST_INSTALL): Ditto.
(AC_PATH_TOOL_PREFIX): Ditto.
(AC_PATH_MAGIC): Ditto.
(AC_PROG_LD): Ditto.
(AC_PROG_NM): Ditto.
* ltdl.m4 (AC_LTDL_SYSSEARCHPATH): Ditto.
2001-08-05 Gary V. Vaughan <gary@gnu.org>
From Brad <brad@comstyle.com>:
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]: OpenBSD
can build modules without a `lib' prefix and version number.
Move the deplibs check code from here...
(AC_DEPLIBS_CHECK_METHOD): ...to here.
2001-08-05 Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
* libtool.m4 [osf3*, osf4*, osf5*]: Tru64 *can* build modules
without a `lib' prefix to the module name.
2001-08-05 Gary V. Vuaghan <gary@gnu.org>
From Guido Draheim <Guido.Draheim@tek.com>:
* ltmain.in: Display better and different error messages when
library linkage fails in various ways.
2001-08-05 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Add newline after
terminating '}' grouping character. Change '[0-9][0-9]'
to '0' as we've already matched it.
2001-08-05 Gary V. Vaughan <gary@gnu.org>
From Brad <brad@comstyle.com>:
* libtool.m4 (archive_cmds) [darwin, newsos, sysv4]: Replace
1.3 era $linkopts references with $linker_flags.
* libltdl/ltdl.c: Fixed several careless mistakes in the
foreach_dirinpath support functions.
(foreach_dirinpath): Walk path elements with the argz API.
2001-08-04 Gary V. Vaughan <gary@gnu.org>
From Sedi Master Albert Chin <china@thewrittenword.com>:
* libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Replace the awk invocation
with an equivalent bit of sed wizardry.
From Edouard G. Parmelan <egp@free.fr>
* libtool.m4 [darwin, openbsd]: Fix quoting problems with
unquoted [] expressions.
2001-08-03 Gary V. Vaughan <gary@gnu.org>
* bootstrap: s/ltdldemo // -- This demo soesn't work properly,
so I haven't committed it yet.
2001-08-01 Ossama Othman <ossama@doc.ece.uci.edu>
* libtool.m4 (AC_LIBTOOL_SETUP): Require Autoconf-2.50 via the
AC_PREREQ autoconf macro since the new libtool macros utilize
macros from that version of Autoconf.
2001-08-01 Gary V. Vaughan <gary@gnu.org>
* ltdl.m4: Bump serial number.
General reformat and tify up in line with Autoconf-2.50 support.
(AC_LTDL_FUNC_ARGZ): Test for system implementations of a
handful of argz API calls, the error_t type, and the argz.h
header.
* libltdl/configure.ac (AM_INIT_AUTOMAKE): Bump version number.
* libltdl/ltdl.c (rpl_argz_append, rpl_argz_create_sep.
rpl_argz_insert, rpl_rgz_next): Fallback implementations of
the similarly named functions for machines that don;t use glibc.
(lt_dlrealloc): New memory function pointer that can be set by
the client. Defaults to rpl_realloc, which in turn uses only
lt_dlmalloc and lt_dlfree.
(LT_EMALLOC, LT_EREALLOC): Set internal out-of-memory error
inside the functions called by these new macros. Simplified all
callers by removing explicit client error reporting.
(memmove): Fallback implementation of overlap safe memory copy
function.
(tryall_dlopen): Factorized common code into...
(tryall_dlopen_module): ...this new helper function.
(canonicalize_path): Changed function signature to return success
or failure. Updated all callers.
(foreachfile_callback): Make use of argz API.
(LT_DLSTRLEN): Moved from here...
* libltdl/ltdl.h (LT_STRLEN): ...to here. Updated all callers.
(lt_dlrealloc): Declare new memory management handle.
2001-07-31 Robert Boehne <rboehne@ricardo-us.com>
* libtool.m4 (mingw*) Revert the previous change as it was
applied by mistake.
2001-07-31 Guido Draheim <Guido.Draheim@tek.com>
* libtool.m4 (mingw*) sys_lib_search_path_spec:
Sets the proper path separator for cross-compiling.
2001-07-30 Steve Ellcey <sje@cup.hp.com>
* libtool.m4 (ia64-*-hpux*) Add support for ia64*-*-hpux* platform.
2001-07-30 Robert Boehne <rboehne@ricardo-us.com>
* libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Fixed an
incorrect resetting of lt_prog_compiler_static when using gcc
under AIX Power.
2001-07-31 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Remove generated files (incase they are links) before
rerunning the autotools to regenerate them.
2001-07-30 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AC_LIBTOOL_SETUP): Use Autoconf-2.50 era
quadrigraphs and AC_HELP_STRING to bring AC_ARG_WITH/ENABLE
macros up to date.
(_LT_AC_LOCK): Ditto.
(_LT_AC_TAGCONFIG): Ditto.
(AC_PROG_LD): Ditto.
(AC_ENABLE_SHARED): Ditto. And eliminate the last remaining
changequote invocations.
(AC_ENABLE_STATIC): Ditto. And Ditto.
(AC_ENABLE_FAST_INSTALL): Ditto. And Ditto.
* ltdl.m4 (AC_LTDL_ENABLE_INSTALL): Use Autoconf-2.50 era
quadrigraphs and AC_HELP_STRING to bring AC_ARG_ENABLE
macro up to date.
* NEWS: Updated.
* libtool.m4 [UnixWare7, OpenUNIX8]: Initial support for
UnixWare7 and OpenUNIX8. Accept these identifiers from the
latest config.guess/config.sub as pseudonyms for sysv5uw[78].
* NEWS: Updated.
Reported by Boyd Lynn Gerber <gerberb@zenez.com>
2001-07-29 Gary V. Vaughan <gary@gnu.org>
* tests/sh.test: Add a new test to enforce X as the fill
character in `test "X...'.
Beef up the `test' tests to also check `test -.' and `test ! -.'
phrases for compliance.
* ltmain.in: Fix quoting problems uncovered by the new tests.
2001-07-29 Andrew C. Feren <aferen@CetaceanNetworks.com>
* tests/sh.test: New test to disallow `test $foo', where
`test "$foo"' is much safer.
* ltmain.in: Fix quoting problems uncovered by the new test.
2001-07-29 Steve Ellcey <sje@cup.hp.com>
* libtool.m4 (lt_cv_sys_global_symbol_to_cdecl): Change it from
"extern char" to "extern int" so that GCC 3.0 won't complain and
refuse to compile programs containing "extern char main()".
2001-07-29 Gary V. Vaughan <gary@gnu.org>
From Guido Draheim <Guido.Draheim@tek.com>:
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [mingw]: Support
cross compilation to mingw by allowing `:' or ';' as a path
separator.
* NEWS: Updated.
2001-07-27 NIIBE Yutaka <gniibe@m17n.org>
* libtool.m4 (lt_cv_deplibs_check_method): Use pass_all
for sh*-*-linux* (SuperH) too.
2001-07-25 Ossama Othman <ossama@debian.org>
From Thomas Poindessous <poinde_t@epita.fr>
* ltmain.in (pic_mode): Added missing quotes around shell
variable in "if test" conditional.
From Peter Moulder <pmoulder@longford.csse.monash.edu.au>
* ltmain.in (xform): Add support for pre-processed
(e.g. `*.{i,ii}' sources).
2001-07-25 Gary V. Vaughan <gary@gnu.org>
From Steve Ellcey <sje@cup.hp.com>:
* libltdl/ltdl.c (foreach_dirinpath): Free unassigned pointer
fix for `canonical'.
2001-07-23 Robert Boehne <rboehne@ricardo-us.com>
* libtool.m4 (AC_LIBTOOL_LANG_CXX_CONFIG, AC_LIBTOOL_PROG_LD_SHLIBS)
[aix4*, aix5*]: Fixed a mispelled binder option under AIX.
The option to throw errors for unresolved external references is
-bernotok, not -bnoerok.
2001-07-23 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (EXTRA_DIST): Don't forget to distribute
ChangeLog.1.
From Erik Lindahl <E.Lindahl@chem.rug.nl>
* libtool.m4 (_LT_AC_SYS_LIBPATH_AIX): Used on aix to discover
the compiler's default library search path so that the MPI
compiler suite is not hosed by the previously hardcoded path.
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [aix4*, aix5*]: Use it.
2001-07-23 Andreas Schwab <schwab@suse.de>
* libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
s390*-*-linux* and m68*-*-linux*.
2001-07-19 Robert Boehne <rboehne@ricardo-us.com>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix tag support
problems with CXX variables being overwritten by the individual
macros.
(AC_LIBTOOL_PROG_CC_C_O): Ditto.
(AC_LIBTOOL_PROG_COMPILER_PIC): Ditto.
(AC_LIBTOOL_LANG_CXX_CONFIG): Moved call to
AC_LIBTOOL_SYS_HARD_LINK_LOCKS after the call to
AC_LIBTOOL_PROG_CC_C_O as it depends on the result.
(AC_LIBTOOL_LANG_GCJ_CONFIG): Ditto.
(AC_LIBTOOL_LANG_C_CONFIG): Ditto.
(AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH): Used the macro
_LT_AC_TAGVAR to ensure the correct variable is being queried.
(AC_LIBTOOL_SYS_DYNAMIC_LINKER): Changed the naming of shared
objects under IRIX back to what it was in the MLB.
2001-07-23 Mark Kettenis <kettenis@gnu.org>
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN) [gnu*]: Remove spurious
"break" and bogus comment
(_LT_AC_LANG_CXX_CONFIG): Add support for the Hurd.
* ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): Add support for the Hurd.
2001-07-16 Robert Boehne <rboehne@ricardo-us.com>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
* ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): add cases and comments for
more platforms, including AIX, Digital/Tru64 UNIX and IRIX.
2001-07-16 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix ia64 AIX
run-time-linking when not using gcc.
(AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
Reported by Dan McNichol <mcnichol@austin.ibm.com>
2001-07-12 Gary V. Vaughan <gary@gnu.org>
From dda@sleepycat.com (Don Anderson):
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [qnx]: New
supported architecture.
(AC_DEPLIBS_CHECK_METHOD) [qnx]: Ditto.
* NEWS: Updated.
From Stefan Ondrejicka <ondrej@idata.sk>:
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [cygwin*]: Make
sure that /lib/w32api is searched for system libraries to
match recent versions of cygwin.
* NEWS: Updated.
2001-07-12 Dan McNichol <mcnichol@austin.ibm.com>
From albert chin <china@thewrittenword.com>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Fix AIX
run-time-linking when using gcc.
(AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
2001-07-11 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
solaris]: Doh! the evalled variable shouldn't have been
quoted.
* libtool.m4 (_LT_AC_LANG_CXX_CONFIG) [hpux, linux, osf,
solaris]: output_verbose_link_cmd have unquoted `*' in case
statements for these architectures. Be sure to quote them
with a sed expression before passing to eval.
Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
2001-07-09 Gary V. Vaughan <gary@gnu.org>
* README-alpha: s/configure.in/configure.ac.
* configure.ac: Bumped version to 1.4c.
GNU libtool 1.4b was released.
* configure.ac: Bumped version to 1.4b.
* NEWS: updated.
* config.guess, config.sub, texinfo.tex: Synchronised from
ftp.gnu.org.
2001-07-09 Robert Boehne <rboehne@ricardo-us.com>
From Michael Elizabeth Chastain <chastain@cygnus.com>:
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Set max_cmd_len
to a maximum of 512Kb, as it seems some HPUX 11.0 systems
have trouble with 1MB.
2001-07-09 Gary V. Vaughan <gary@gnu.org>
* README-alpha: Upgrade distribution instructions to include
canonical location of texinfo.tex.
2001-07-09 Timothy Wall <twall@oculustech.com>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS): Don't disable shlibs
on AIX5/IA64 with GNU ld. Keep gnu defaults if using gnu tools
on AIX5/IA64.
2001-07-09 Robert Boehne <rboehne@ricardo-us.com>
* libtool.m4 (AC_LIBTOOL_SYS_MAX_CMD_LEN): Set max_cmd_len
to -1 on hurd, it has no command line argument limits.
* ltmain.in Handle max_cmd_len=-1 for systems that don't have
command line argument limits.
2001-07-05 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (_LT_AC_LANG_C_CONFIG): Revert to 1.3.x
sematics, and always build static libs when the host machine
cannot build shared libs. Even if static libs were explicitly
disabled.
2001-07-02 Gary V. Vaughan <gary@gnu.org>
Cleanup of libltdl:
* ltdl.c (lt_dladderror): Don't use `index' as a variable name,
since it is a function on BSD based boxes.
(lt_dlseterror): Ditto.
(lt_dlexit): Remove unused errormsg declaration.
(foreach_dirinpath): Make sure filename is initialised.
(find_handle): Return NULL for a failed search.
(foreachfile_callback): Don't reuse data2 symbol from prototype
in func declaration to prevent symbol shadowing.
* ltdl.h (lt_dlmutex_seterror): Don't use `error' as a parameter
name, since it is a function on glibc boxes.
* libtoolize.in: Display --version in the same format as
autoconf and automake.
* ltmain.in: Ditto.
2001-06-30 Gary V. Vaughan <gary@gnu.org>
Merge test improvements from multi-language-branch:
* tests/defs: Find and set the value of CC probed by libtool.m4
* tests/link-2.test: Use a .lo wrapper script, and the value of
CC set by defs instead of hardcoding gcc.
* tests/link.test: Use the value of CC set by defs instead of
hardcoding gcc.
* tests/quote.test: Ditto.
* tests/suffix.test: Ditto.
* libtool.m4 (AC_LIBTOOL_PROG_COMPILER_PIC) [aix*]: Always set
lt_prog_compiler_wl to `-Wl'.
Reported by Albert Chin-A-Young <china@thewrittenword.com>
* ltdl.m4 (AC_LTDL_DLLIB) [sco3.2*]: When searching for a dlopen
implementation, and adding `-ldl' has failed, try linking a call
to dlopen, #including dlfcn.h, and without -ldl. On sco3.2 the
header files redefines the interface symbols to point at the
implementation symbols in libc.
Reported by "Golubev I. N." <gin@mo.msk.ru>
2001-06-29 Tim Van Holder <tim.van.holder@pandora.be>
General cleanup of autoconf-2.50 upgrade:
* configure.ac: Mark as needing autoconf-mode in
emacs. Pass arguments to AC_INIT.
* cdemo/configure.ac: Ditto.
* demo/configure.ac: Ditto.
* depdemo/configure.ac: Ditto.
* libltdl/configure.ac: Ditto.
* mdemo/configure.ac: Ditto.
* pdemo/configure.ac: Ditto.
* tagdemo/configure.ac: Ditto.
* ltdl.m4: Mark as needing autoconf-mode in
emacs.
* libtool.m4: Mark as needing autoconf-mode in
emacs. Don't add () to AS_MESSAGE_LOG_FD.
* libltdl/configure.ac: Use config-h.in as
template for config.h.
* tagdemo/configure.ac: Drop the AC_DIAGNOSTIC. Move
AC_LANG([C++]) after the OBJEXT/EXEEXT check.
2001-06-29 Gary V. Vaughan <gary@gnu.org>
From Tim Van Holder <tim.van.holder@pandora.be>
* tests/suffix.test: Typo in 2nd for loop.
From Tim Van Holder <tim.van.holder@pandora.be>
* libltdl/Makefile.am (OBJECTS): This was an implicit variable.
instead state the list of object variables explicitly.
From Bruno Haible <haible@ilog.fr>
* libtool.m4: undefine the m4 builtin `symbols', so that the
string `symbols' can be used in the rest of the code without
causing errors with autoconf-2.13.
From "Golubev I. N." <gin@mo.msk.ru>
* tests/Makefile.am (CPPLAGS): Typo. s/CPPLAGS/CPPFLAGS.
* mdemo/Makefile,am (foo1_la_LIBADD): Add libsub.la, since foo1
does use symbols from libsub.la -- only platforms that allow
undefined symbols in libraries were able to cope with this
previously.
Reported by Robert Collins <robert.collins@itdomain.com.au>
From "Golubev I. N." <gin@mo.msk.ru>
* libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [sco3.2v5*]: Needs
-wl,-Bexport to make self dlopen work.
2001-06-28 Gary V. Vaughan <gary@gnu.org>
From Alexander Bluhm <Alexander.Bluhm@WiredMinds.de>
* libltdl/ltdl.c (lt_dlopen): Fix bad memory initialisation
assumptions.
* libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE) [HPUX]: Define
lt_cv_sys_global_symbol_to_c_name_address to be a sed expression
for mangling the output of the symbol pipe into a brace delimited
C declaration of symbol name and address.
* ltmain.in: Use it to generate the fooS.c symbol name
Reported by Albert Chin-A-Young <china@thewrittenword.com>
2001-06-28 Tim Van Holder <tim.van.holder@pandora.be>, Gary V. Vaughan <gary@gnu.org>
* bootstrap: Use cp instead of ln -s, for systems without
symlinks. Reorder the statements to avoid repetition outside
the loop.
2001-06-28 Paolo Bonzini <bonzini@gnu.org>, Gary V. Vaughan <gary@gnu.org>
Libtool now builds with the help of Autoconf-2.50!
* configure.ac (AC_PREREQ): Require Autoconf-2.50 or newer.
(AC_PROG_CPP, AC_EXEEXT, AC_OBJEXT): Removed. Autoconf-2.50
doesn't have the AC_REQUIRE bug that required these to be called
explicitly from here. Autoconf-2.50 uses this file instead of...
* configure.in: ...this, which is now deleted.
* cdemo/configure.ac, cdemo/configure.in: Ditto.
* demo/configure.ac, demo/configure.in: Ditto.
* depdemo/configure.ac, depdemo/configure.in: Ditto.
* libltdl/configure.ac, libltdl/configure.in: Ditto.
* mdemo/configure.ac, mdemo/configure.in: Ditto.
* pdemo/configure.ac, pdemo/configure.in: Ditto.
* tagdemo/configure.ac, tagdemo/configure.in: Ditto.
* libltdl/acconfig.h: Deleted.
* Makefile.am (libtool): libtool now depends on configure.ac.
* libtool.m4 (_LT_AC_LOCK): Use 2.50's AC_LANG_PUSH/AC_LANG_POP
instead of 2.13's AC_LANG_SAVE/AC_LANG_RESTORE.
(AC_LIBTOOL_LANG_C_CONFIG): Ditto.
(AC_LIBTOOL_LANG_CXX_CONFIG): Ditto.
* libtoolize.in: Use $configure_ac, instead of hardcoding
configure.in.
2001-06-28 Tim Van Holder <tim.van.holder@pandora.be>
* pdemo/Makefile.am: Use '=' instead of '+=' to shut up
automake.
2001-06-27 Gary V. Vaughan <gary@gnu.org>
From brad@openbsd.org:
* NEWS: Updated.
* libtool.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER) [openbsd]: Improved
support for various openbsd platforms.
(AC_LIBTOOL_PROG_LD_SHLIBS): Ditto.
* ltmain.in: Ditto,
2001-06-26 Gary V. Vaughan <gary@gnu.org>
* NEWS: Updated.
* libltdl/ltdl,c (LT_DLMUTEX_LOCK): Renamed from MUTEX_LOCK to
avoid potential namespace clash.
(LT_DLMUTEX_UNLOCK, LT_DLMUTEX_SETERROR, LT_DLMUTEX_GETERROR):
Ditto.
(lt_dlmutex_lock_func): Renamed from mutex_lock to avoid a
namespace clash of NCR MP-RAS.
(lt_dlmutex_unlock_func, lt_dlmutex_seterror_func,
lt_dlmutex_geterror_func): Ditto.
Reported by Edouard G. Parmelan <egp@free.fr>
* libltdl/ltdl.c (LT_DLSTRLEN): Call strlen only if the argument
is non-NULL and non-zero in length. Changed all calls to strlen
appropriately.
* libltdl/ltdl.c: Prototype all static functions.
* ltdl.m4: Bump serial number to 3.
(AC_LIB_LTDL): Require AC_HEADER_DIRENT for ltdl.c.
* libltdl/ltdl.h (lt_dlforeachfile): Prototype for new function.
* libltdl/ltdl.c: Include an appropriate header for the
opendir/dirent api.
(foreach_dirinpath): Visit each file in a list of directories.
(find_file_callback): Factor out the core of find_file() to make
use of foreach_dirinpath().
(find_file): Use it!
(find_handle_callback, find_handle): Ditto.
(lt_dlforeachfile): New function to find files in a searchpath.,,
(foreachfile_callback): ...using this callback.
* doc/libtool.texi (Libltdl interface): Document new
lt_dlforeachfile api call.
2001-06-25 Gary V. Vaughan <gary@gnu.org>
* THANKS: Added Albert Chin-A-Young.
* libtool.m4 (IFS): When IFS is changed to split a string for
examination in a loop, restore it inside the loop as well as
outside incase IFS is needed by commands in that loop.
Reported by Pavel Roskin <proski@gnu.org>
2001-06-25 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: Prefer shl_load to dlopen on HP-UX because dlopen
won't work properly without a patch.
2001-06-25 Daniel Harvey <daniel@amristar.com.au>
* libtool.m4 (ltdll_cmds): [$]0 doesn't appear to translate through
the script correctly, change to $''0
2001-06-25 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
* libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
mips-*-linux* and mipsel-*-linux*.
2001-06-24 Andreas Schwab <schwab@suse.de>
* libtool.m4 (AC_LIBTOOL_SETUP): Remove failed try to
transform linux to linux-gnu in $host.
(AC_LIBTOOL_SYS_DYNAMIC_LINKER): Match $host_os against
linux*, not linux-gnu*.
(AC_DEPLIBS_CHECK_METHOD): Likewise.
2001-06-24 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR): Set
PATH_SEPARATOR appropriately if it is not set already,
(_LT_AC_TAGCONFIG): Use it.
(AC_ENABLE_SHARED): Ditto.
(AC_ENABLE_STATIC): Ditto.
(AC_ENABLE_FAST_INSTALL): Ditto.
(AC_PATH_TOOL_PREFIX): Ditto.
(AC_PATH_MAGIC): Ditto.
(AC_PATH_PROG_NM): Ditto.
From Tim Van Holder <tim.van.holder@pandora.be>:
* libtool.m4: Use the canonical absolute path test
([\\/]* | ?:[\\/]) and $PATH_SEPARATOR wherever
appropriate.
(AC_LIBTOOL_PROG_CC_PIC): Properly recognize DJGPP as a
platform that doesn't support shared libraries.
(AC_LIBTOOL_SYS_MAX_CMD_LEN): Avoid this test on DJGPP; use a
fixed value (12K) instead.
(AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't forget $ac_exeext
when testing for link success.
* configure.in (AM_INIT_AUTOMAKE): Bumped version to 1.4a.
Complete the new configure time tags creation facility based on
the ltcf-*.sh and ltconfig.in files from multi-language-branch:
* libtool.m4: More refactoring and reformatting.
(_LT_AC_LANG_GCJ_CONFIG): Merged ltcf-gcj.sh from
multi-language-branch.
(_LT_AC_LANG_CXX_CONFIG): Merged ltcf-cxx.sh from
multi-language-branch.
* configure.in (AC_PROG_CXX, LT_AC_PROG_GCJ): Compiler checks must
be done before AC_PROG_LIBTOOL which appends tags based on their
results.
2001-06-12 Robert Boehne <rboehne@ricardo-us.com>
* docs/libtool.texi: Updated the libltdl interface documentation
to bring it up to date.
2001-06-06 Gary V. Vaughan <gary@gnu.org>
* demo/Makefile.am (objdir): Use `libtool --config' for
extracting configuration values, since a given value may
be present in each tag.
(hc-libpath): Ditto.
(hc-minusL): Ditto.
* libtool.m4 (_LT_AC_TAGCONFIG): Add tagged configurations from
the --with-tags option.
(_LT_AC_LTCONFIG_HACK): Factored out into separate configuration
macros -- The interdependencies and running order are still
immutable, and need a lot of work to fix.
(AC_LIBTOOL_CONFIG): Taken from the previous incarnation of
_LT_AC_LTCONFIG_HACK -- this macro is used both to create the
primary (C language) libtool configuration from
_LT_AC_LTCONFIG_HACK and also to append tagged configurations from
_LT_AC_TAGCONFIG.
* NEWS: Merged from multi-language-branch.
2001-06-06 Robert Boehne <rboehne@ricardo-us.com>
* bootstrap: Added tagdemo and pdemo tests from
multi-language-branch.
* configure.in: Added pdemo and tagdemo to CONF_SUBDIRS
and merged references to CXX and GCJ from multi-language-branch.
* pdemo: Added test directory from multi-language-branch.
* tagdemo: Added test directory from multi-language-branch.
* tests/Makefile.am: Merged additional tests from
multi-language-branch.
* tests/pdemo-*.test: ditto.
* tests/tagdemo-*.test: ditto.
2001-05-30 Gary V. Vaughan <gary@gnu.org>
* libtool.m4: Merged ltconfig.in from multi-language-branch.
2001-05-28 Gary V. Vaughan <gary@gnu.org>
* libtool.m4: Reformatting for consistency, and some refactoring
in preparation for ltcf-*.sh merge.
2001-05-27 Gary V. Vaughan <gary@gnu.org>
* ltmain.in: Merged from multi-language-branch.
* libtool.m4: Merged from multi-language-branch.
* ChangeLog: Started afresh. Old ChangeLog history moved to...
* ChangeLog.1: ...here.
2000-06-04 Mark Mitchell <mark@codesourcery.com>
* ltcf-c.sh (archive_cmds, archive_expsym_cmds) [solaris,
with_gcc]: Use `gcc -shared' to build a shared library.
2001-06-04 John David Anglin <dave@hiauly1.hia.nrc.ca>
* ltcf-c.sh (archive_cmd) [hpux, with_gcc]: Use gcc to link shared
archives.
2001-05-28 Simon Patarin <simon.patarin@inria.fr>
* ltcf-cxx.sh (osf3/osf4/osf5): Support creation of C++ shared
libraries when using g++ with native linker.
2001-05-28 Albert Chin <china@thewrittenword.com>
* ltconfig.in (version_type, soname_spec) [aix4* | aix5*]: Use
linux-style versioning, and remove trailing .o from soname_spec.
2001-05-22 Alexandre Oliva <aoliva@redhat.com>
* ltcf-cxx.sh (allow_undefined_flag, no_undefined_flag)
[aix4*|aix5*]: Prepend blank.
2001-05-20 Alexandre Oliva <aoliva@redhat.com>
* configure.in: Reverted to 1.4, to avoid confusion with MLB.
Mainline is the release snapshot, except for the ChangeLog version
number, until the multi-language branch is merged into it.
* ltconfig.in: Fix sh.test regression introduced in previous patch.
* ltconfig.in (lt_cv_sys_max_cmd_len): Improve test to work better
in case of non-built-in echo. Set bounds correctly.
* ltcf-cxx.sh (allow_undefined_flag) [aix4* | aix5*]: Fix quote
error.
* ltmain.in (exec_cmd): New variable. Don't exec programs within
the big `case'; set the variable instead, and exec the cmd
afterwards, so that the shell gets a chance to clean up here-doc
files.
* NEWS: Update.
2001-05-16 Alan Modra <amodra@one.net.au>
* libtool.m4 (lt_cv_deplibs_check_method): pass_all for hppa*-linux.
2001-05-03 Andreas Jaeger <aj@suse.de>, Andreas Schwab <schwab@suse.de>
* ltmain.in (relink_command): Arrange for wrapper script to save
output to a variable and display it only if relinking fails.
2001-04-25 Gary V. Vaughan <gary@gnu.org>
* configure.in: bumped version to 1.4a.
GNU libtool 1.4 was released.
* configure.in: Bumped version to 1.4.
* config.sub, config.guess: Synchronised from ftp.gnu.org.
* NEWS: updated.
2001-04-24 Peter Eisentraut <peter_e@gmx.net>
* libtool.m4: Support $host_os as /sysv5uw7*/ from newer
config.guess in addition to older /unixware*/. Use compiler
driver, not linker, for linking shared libraries.
2001-04-24 Gary V. Vaughan <gary@gnu.org>
* libtool.m4, ltmain.in, libltdl/configure.in,
tests/quote.test: Remove stale references to ltconfig.
* ltdl.m4 (AC_C_INLINE): No longer required.
* libltdl/ltdl.c (strdup, strcmp, strchr, strrchr, memcpy, trim,
free_vars): Revoke inline keyword from declarations. `static
inline' is not very portable, and in addition Unixware 7.1.1's
compiler says you can't access static variables from inline
functions.
Reported by Peter Eisentraut <peter_e@gmx.net>
2001-04-24 Albert Chin-A-Young <china@thewrittenword.com>
* libtool.m4: Handle case where /bin/nm -p outputs multiple
symbol types (like under HP-UX 11.00).
2001-04-24 Thomas Tanner <tanner@ffii.org>
* TODO: describe problems with libltdl
* ltmain.in (ILD): tidy up, add comments, remove dead code,
merge duplicate code
* ltmain.in (ILD): don't touch newdependency_libs after scan or
dlopen pass
* ltmain.in (ILD): don't dlpreopen dependency_libs of a dlopened
module (remove absolutely wrong quick hack)
* ltmain.in (ILD): remove wrong comments about duplicate removal
* ltmain.in (ILD): build a static-only module if it has
static libraries in its dependencies (so that libltdl can
safely load dependency_libs)
* ltmain.in (argument parsing): prefix comparsions of -l args with X,
replace -lc with `-framework System' _after_ the ILD passes
* ltmain.in (argument parsing): support dl[pre]open
for both .o and .lo files
* ltmain.in (deplibs_check): use portable test syntax
* ltmain.in (help): document -prefer-[non-]pic flags
* ltmain.in: improve readablity by adding some comments,
rename uninst_* to notinst_* (more adequate name)
2001-04-24 Gary V. Vaughan <gary@gnu.org>
* doc/PLATFORMS: More updates from subscribers to
libtool@gnu.org.
From Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
* tests/Makefile.am (TESTS_ENVIRONMENT): Make sure the *.test
scripts get the same make that was used in the top level
directory.
2001-04-23 Gary V. Vaughan <gary@gnu.org>
* doc/PLATFORMS: Updated with more platforms successfully
tested by members of libtool@gnu.org.
2001-04-23 Peter Eisentraut <peter_e@gmx.net>
* doc/PLATFORMS: With this patch, freebsd4.3 passes the test
suite.
* libltdl/ltdl.c (lt_dlexit): Quit loop if only resident modules
are left.
2001-04-23 Gary V. Vaughan <gary@gnu.org>
* doc/PLATFORMS: With this patch, my Solaris boxes now pass the
test suite, Yay!
From Albert Chin-A-Young <china@thewrittenword.com>
* ltmain.in: `test -L' is not portable, and infact breaks uninstall
mode on Solaris. Fallback to `test -h' and finally `test -f',
but be careful not to let the failure status cause libtool to
stop.
From Simon Spero <ses@ibiblio.org>
* ltdl.m4 (AC_LTDL_DLSYM_USCORE): Add $LIBADD_DL while
checking for dlsym _.
From Simon Spero <ses@ibiblio.org>
* libtool.m4 (lt_cv_deplibs_check_method) [darwin]: Set it!
* TODO: Make a note to undo this later.
From Christoph Pfisterer <cp@chrisp.de>
* libtool.m4: Use $() execution substitution quotation to work
around zsh builtin echo \ escape removal.
2001-04-22 Peter Eisentraut <peter_e@gmx.net>
* bootstrap: Allow overriding the location aclocal, automake,
autoconf, autoheader from the environment.
* demo/Makefile.am: Automake 1.4e does not allow `+=' assignments
if the variable was not set with `=' earlier. `+=' was not useful
here anyway.
2001-04-22 Gary V. Vaughan <gary@gnu.org>
* ltdl.m4 (AC_CHECK_HEADERS): UW7 has sys/dl.h, so we must
check for that here.
* libltdl/ltdl.c (HAVE_SYS_DL_H): Include it if necessary for
the dlopen loader.
Reported by Matthew Schalit <mschalit@pacbell.net>
* libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use pass_all for
various releases of UnixWare and OpenServer that support it.
Reported by Matthew Schalit <mschalit@pacbell.net>
* doc/PLATFORMS: Updated with various platforms successfully
tested by members of libtool@gnu.org.
2001-04-21 Gary V. Vaughan <gary@gnu.org>
* TODO: propose pkg-config merge.
2001-04-21 Nick Hudson <skrll@netbsd.org>
* ltmain.in: Correct an error in yesterday's patch.
2001-04-20 Nick Hudson <skrll@netbsd.org>
* libtool.m4: Improve NetBSD support.
* ltmain.in: ditto.
2001-04-19 Dan McNichol <mcnichol@austin.ibm.com>
* libtool.m4: Build standard shared libraries on AIX POWER
more like AIX does, with a shared object archived into lib<xxx>.a.
On AIX -bexpall flag does strange things... Don't use it.
Fix quotes around -berok flag. Add support for AIX 5.
Add support for run time linking on AIX POWER. (should work
on AIX 4.2 and up). Turn this feature on by adding -brtl flag
to LD_FLAGS. Add support for AIX on IA64. Note: AIX on IA64
uses a SYSV type linker. Add a comment telling what to do if the
TOC starts getting too large on AIX.
* NEWS: mention aix5 support.
2001-04-18 Alexandre Oliva <aoliva@redhat.com>
* TODO: Add -L- flag.
2001-04-11 Alexandre Oliva <aoliva@redhat.com>
* libtool.m4 (no_undefined_flag) [Solaris ld]: Change to -zdefs.
2001-04-11 Ossama Othman <ossama@uci.edu>
* AUTHORS: Added myself to the list of maintainers.
2001-04-08 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (hardcode_libdir_flag_spec, osf4/osf5): Use ${wl}
to pass -rpath when compiling with gcc.
Reported by Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
* libltdl/ltdl.c (sys_shl_open): Cache a handle for the `self'
module, since HPUX adds module symbols into the `self' pool if
it is opened later. Return the cached pointer if the caller
subsequently tries to open `self'.
(sys_shl_sym): Diagnose NULL modules.
From Peter Eisentraut <peter_e@gmx.net>
* ltmain.in (clean,uninstall): test -e is not portable. Well,
neither is -L, but I'm hoping that redirecting error messages
to /dev/null and relying on non-zero exit status will work okay
on the few hosts that don't support -L.
2001-04-08 Nick Hudson <skrll@netbsd.org>
* ltmain.in: Improve check for valid -version-info parameter.
2001-04-08 Gary V. Vaughan <gary@gnu.org>
From Nick Hudson <skrll@netbsd.org>
* doc/Makefile.am (libtool_TEXINFOS): Add fdl.texi so that it
is included in the distribution.
2001-04-07 Peter Eisentraut <peter_e@gmx.net>
* ltmain.in (clean,uninstall): Do not error if the file doesn't
exist and 'rm -f' was used. Exit with status 1 on error.
2001-04-06 Nick Hudson <skrll@netbsd.org>
* ltmain.in: Implement a new deplibs_check_method called
match_pattern that does pattern matching on filenames...
* libtool.m4: ...use it with NetBSD
2001-04-05 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (Multiple dependencies): A note about the
problems I've reintroduced by reverting the my patch of 2001-03-31.
From Edward Lee <tailbert@yahoo.com>
* libtool.m4: Typos.
* tests/Makefile.am (TESTS): Delete references to depdemo-dups.test.
* 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 Ahmed Masud <masud@googgun.com>
* libltdl/ltdl.c (sys_shl_open): Return a NULL module handle
for self opening.
(sys_shl_close): Be careful not to close a NULL module handle.
(sys_shl_sym): Allow shl_findsym() to open NULL modules, but
discard the modified module address it returns.
* libltdl/ltdl.c (lt_dlopen): When reading the .la file,
reallocate the line buffer size if the line overflows the
original buffer.
Reported by Nick Hudson <skrll@netbsd.org>
* NEWS (1.3d) Removed bogus ltconfig reference.
2001-04-03 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (_LT_AC_LTCONFIG_HACK): Remove the spurious
`dnl' from the help text of --with-pic.
Reported by stefan <stefan@lkcc.org>
2001-04-02 Gary V. Vaughan <gary@gnu.org>
* configure.in: bumped version to 1.3e.
GNU libtool 1.3d was released.
* NEWS: inserted todays date.
2001-04-01 Christoph Pfisterer <cp@chrisp.de>
* libtool.m4: Fixed 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".
2001-03-31 Gary V. Vaughan <gary@gnu.org>
* ltmain.in: Remove the code for stripping duplicate deplibs
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.
2001-03-29 Edward M. Lee <tailbert@yahoo.com>
* libtoolize.in: Check configure.ac and prefer configure.ac to
configure.in.
* libtoolize.in: change recommendation from AM_PROG_LIBTOOL to
AC_PROG_LIBTOOL.
* libtool.m4: Generate dll/import libraries for cygwin according
to the following: libFOO.a (static lib), libFOO.dll.a (import
lib), cygFOO-version.dll (dll). Update postinstall_cmds and
postuninstall_cmds to reflect this.
* ltmain.in: Generate installed .la files with dlnames set to
../bin/cygFOO-version.dll for normal dlls. dlls for modules
remain with the .la file.
* libltdl/ltdl.c: Use windows paths while calling LoadLibrary.
2001-03-16 Albert Chin <china@thewrittenword.com>
* libtool.m4 (save_CPPFLAGS): Fix typo.
2001-03-13 Alexandre Oliva <aoliva@redhat.com>
* libtool.m4 (lt_cv_compiler_c_o): Cache it.
(lt_cv_compiler_o_lo): Likewise.
2001-03-09 Peter Eisentraut <peter_e@gmx.net>
* ltmain.in (clean): Automatically remove $objdir (usually '.libs').
2001-03-08 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (library_names_spec): Undo latin-1 spaces I pasted
in yesterday by mistake.
2001-03-07 Gary V. Vaughan <gary@gnu.org>
From Tor Lillqvist <tml@iki.fi>
* libtool.m4 (export_symbols): On Windows, if the export_symbols
file (which has been passed to libtool with the -export-symbols
command line switch) already is a .def file, use it as is.
* libtool.m4 (library_names_spec): Using m4 quotes correctly this
time around!
From Tor Lillqvist <tml@iki.fi>
* libtool.m4 (library_names_spec): Use an appropriate filename
prefix for dlls -- lib for mingw; cyg for cygwin; pw for pw32.
2001-03-06 Alexandre Oliva <aoliva@redhat.com>
* libtool.m4 (can_build_shared) [AIX 4.[01], GCC]: GCC up to
2.96 can't build shared libraries reliably. Disable them.
* ltmain.in: When dropping dependencies of a -no-undefined
library, give up on building a shared library.
2001-03-05 Akim Demaille <akim@epita.fr>
* ltmain.sh: Don't quote the argument of case/esac and
assignments.
* libtool.m4: Likewise.
2001-03-03 Markus F.X.J. Oberhumer <markus@oberhumer.com>,
Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* libtool.m4: Added explicit return type to all C functions.
2001-02-22 Gary Vaughan <gary@gnu.org>
* NEWS: Updated.
* 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.
2001-02-20 Gary Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_dlcaller_register): dont set an unsigned
type to a negative number.
Reported by Guenter Millahn <Guenter.Millahn@Informatik.TU-Cottbus.DE>
2001-02-05 Gary V. Vaughan <gary@gnu.org>
From Nick Hudson <skrll@netbsd.org>
* ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): netbsd* is able to
automatically load module deplibs without assistance from
libltdl.
2001-02-02 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (load_deplibs): Make sure the depcount is reset,
even when deplibs are not used because of the patch below.
* ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): If we know that the host
architecture automatically loads deplibs, then...
* libltdl/ltdl.c (load_deplibs): ...don't manually load each one.
2001-01-31 Gary V. Vaughan <gary@gnu.org>
* TODO: Updated.
* libltdl/ltdl.c (load_deplibs): If loading a deplib fails,
don't sweat -- it may be a lib that is already statically linked
into the loading application.
* libltdl/ltdl.c: Clean up the shadowing of the global handles
variable.
(LT_DLRESIDENT_FLAGS): Add extra parens to satisfy -Wall.
(load_deplibs): Cast isspace() argument to an int to satisfy
-Wall.
2001-01-30 Robert Boehne <rboehne@ricardo-us.com>
* AUTHORS: added myself to the list of maintainers.
2001-01-28 Alexandre Oliva <aoliva@redhat.com>
* libltdl/Makefile.am (CLEANFILES): Clean conditionally-built
libraries.
2001-01-27 Alexandre Oliva <aoliva@redhat.com>
* libtool.m4 (ld_shlibs) [aix4*]: Disable on unknown CPU types.
2001-01-07 Gary V. Vaughan <gary@gnu.org>
* NEWS: Updated.
* doc/libtool.texi (User defined module data): Updated.
* libltdl/ltdl.c (lt_dlhandle_next): New function.
* libltdl/ltdl.h (lt_dlhandle_next): Prototypes.
2001-01-05 Gary V. Vaughan <gary@gnu.org>
* NEWS: Updated.
* doc/libtool.texi (User defined module data): Document it all.
* ltdl.m4: Check for memcpy, or else bcopy.
* ltdl.c (lt_caller_data): New type.
(lt_dl_handle_struct): Add an lt_caller_data field.
(lt_dlcaller_register, lt_dlcaller_set_data,
lt_dlcaller_get_data): New functions.
(rpl_memcpy): A minimal fallback implementation.
(rpl_realloc): A realloc implemented with lt_dlmalloc and
lt_dlfree.
(LT_DLMALLOC, LT_DLFREE, LT_DLREALLOC, LT_DLMEM_REASSIGN):
New memory handling convenience macros. Use them
appropriately throughout the rest of this file.
* ltdl.h (lt_dlcaller_register, lt_dlcaller_set_data,
lt_dlcaller_get_data): Prototyped.
2001-01-04 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.h: formatting change.
2000-12-23 Gary V. Vaughan <gary@gnu.org>
From vvv@vsu.ru:
* doc/fdl.texi (GNU Free Documentation License): contained @bye
command which prevented part of document to be generated (indices,
etc).
* doc/libtool.texi (Dlpreopening): the @deftypevar did not contain
a space after a type.
2000-12-22 Akim Demaille <akim@epita.fr>
* libtool.m4: s/[ \t]*$//
2000-12-22 Aneesh Kumar K.V <kvaneesh@hotmail.com>
* libtool.m4 (OSF/1): Revert my patch of 2000-12-16.
2000-12-20 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_dlexit): Was checking for residency of the
wrong module.
Reported by Robert Boehne <rboehne@ricardo-us.com>
* ltmain.in (dlprefiles): Now that `2000-12-15 Utz-Uwe Haus' patch
below can detect preopened library deplibs correctly in libltdl,
we need to ensure that libtool library deplibs are also preloaded
into the binary for that phase to work.
2000-12-16 Aneesh Kumar K.V <kvaneesh@hotmail.com>
* libtool.m4 (OSF/1): Change the way to pass linker flags through
compiler on a Tru64 machine.
2000-12-16 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (sys_lib_search_path_spec): Use test instead of
`['.
(archive_cmds): And another one.
* libtool.m4 (darwin*): Fixed a pair of stupid typos I made in the
last patch.
* libtool.m4 (AC_DEPLIBS_CHECK_METHOD): moved rogue settings from
sequent, ncr and newos6 back into here from other macros.
2000-12-16 Wilfredo Sanchez <wsanchez@apple.com>
* libtool.m4: (dyld/darwin*) Much improved port.
* ltmain.in: (dyld/darwin*) Much improved port.
2000-12-16 Sascha Schumann <sascha@schumann.cx>
* libtool.m4: Accept darwin as an alias for rhapsody.
* ltmain.in: ditto.
* libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use the HPUX 10.20
methods to check for library dependencies on HPUX 11.
2000-12-16 Nick Hudson <skrll@netbsd.org>
* libtool.m4 (netbsd*, deplibs_check_method): Enable ILD support
for NetBSD a.out.
2000-12-15 Akim Demaille <akim@epita.fr>
* libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Rename
`ac_cv_sys_global_symbol_pipe' as `lt_cv_sys_global_symbol_pipe'.
Similarly with `lt_cv_global_symbol_to_cdecl
(_LT_AC_LTCONFIG_HACK): Similarly with `ac_cv_prog_cc_pic',
`ac_cv_prog_cc_shlib', `ac_cv_prog_cc_wl', `ac_cv_prog_cc_static',
`ac_cv_prog_cc_no_builtin', `ac_cv_prog_cc_can_build_shared',
`ac_cv_prog_cc_static_works', `ac_cv_archive_cmds_need_lc'.
(AC_PATH_TOOL_PREFIX): Similarly with `ac_cv_path_MAGIC_CMD'
(AC_PROG_LD) <ac_cv_path_LD>: Likewise.
(AC_PROG_LD_GNU) <ac_cv_prog_gnu_ld>: Likewise.
(AC_PROG_NM) <ac_cv_path_NM>: Likewise.
2000-12-15 Utz-Uwe Haus <haus@mail.math.uni-magdeburg.de>
* libltdl/ltdl.c (lt_dlopen): Changed "dl_dependency_libs" keyword
to "dependency_libs".
2000-12-14 Tod Milam <tmilam@traclabs.com>
* libltdl/ltdl.c (lt_dlexit): Reset the loaders value to zero when
the last module has been unloaded.
2000-12-14 Michael Schmitz <mschmitz@iname.com>
* libtool.m4: Port to *-sni-sysv4 (Reliant Unix)
* README: added Reliant Unix to hte list of supported platforms
* doc/PLATFORMS: added note on tests on Reliant Unix
2000-12-14 Masahiro Nobori <nobori@ss.titech.ac.jp>
* README: Updated.
* NEWS: Updated.
* libtool.m4: New port to NEWS-OS Release 6.
2000-12-14 Nick Hudson <skrll@netbsd.org>
* libtool.m4 (hardcode_libdir_flag_spec): Remove linker
specification for netbsd.
2000-12-14 Akim Demaille <akim@epita.fr>
* libtool.m4: Don't depend on Autoconf internals:
s/ac_cv_prog_gcc/GCC/.
2000-12-14 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): Don't empty
out ac_cv_global_symbol_to_cdecl inside the loop, incase we
need to go around again and try with underscore prefix.
(_LT_AC_TRY_DLOPEN_SELF): On some hosts (cygwin for instance)
self dlclosing unloads the main program and causes a SIGSEGV. So
don't do it for now.
2000-12-05 Gary V. Vaughan <gary@gnu.org>
Oh My! Cygwin support has bitrotted while I was looking the other
way. This should fix it some:
* libtool.m4 (extract_expsyms_cmds): There is a quoting problem
with autoconf-2.13 that prevents [$]0 from expanding. Use shell
quotes instead to delay eval of $0.
(impgen.c) The '# ' sequence stripped by sed works again.
2000-12-01 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (Libltdl interface): Add documentation.
* libltdl/ltdl.h (lt_dlmakeresident, lt_dlisresident): Add
prototypes.
(LT_DLERROR_CLOSE_RESIDENT_MODULE): New error status.
* libltdl/ltdl.c (lt_dlmakeresident, lt_dlisresident): Allow
making and testing of resident module status, which prevents a
module from being lt_dlclosed.
(lt_dlopen): If lt_dlopen()ing self, make the module resident.
(lt_dlclose): Return an error if the module is resident.
* libtool.m4 (_LT_AC_LTCONFIG_HACK): Move the tests for dlopen
from here...
(AC_LIBTOOL_DLOPEN_SELF): ...to here.
(_LT_AC_CHECK_DLFCN): Factor out repeated code for dlfcn.h
(_LT_AC_TRY_DLOPEN_SELF): Factor out repeated code for
checking dlopen status.
* ltdl.m4 (AC_LIB_LTDL): Use _LT_AC_CHECK_DLFCN.
dlopen compile time checking. Use _LT_AC_CHECK_DLFCN.
(AC_LTDL_DLSYM_USCORE): Use _LT_AC_TRY_DLOPEN_SELF.
2000-11-29 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.h (lt_dlhandle): Rename the wrapped structure
to prevent nameclash when used from C++.
* libltdl/ltdl.c: Fixed all references.
2000-11-25 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_dlopen): Change the default search order
for modules. If the named module has no directory component,
always start the search with the user_search_path directories,
and then fall back on the current directory only if that fails.
2000-11-20 Gary V. Vaughan <gary@gnu.org>
* libltdl/Makefile.am (libltdl_la_LDFLAGS): increment the version
number to reflect the breakage of binary compatibility.
* doc/libtool.texi (Libltdl interface): Document
LT_NON_POSIX_NAMESPACE.
* libltdl/ltdl.h (LT_POSIX_NAMESPACE): Deleted. The default is
now to use this namespace, so the cpp macro is no longer
necessary.
2000-11-20 Morten Eriksen <mortene@sim.no>
* ltdl.m4 (AC_LIB_LTDL, AC_LTDL_SYMBOL_USCORE): Break a circular
dependency between AC_LTDL_SYMBOL_USCORE and AC_LTDL_DLSYM_USCORE.
2000-11-20 Paul Berrevoets <paul@swi.com>
* ltmain.in: Some versions of expr respond with "0" if a
regexp fails to match.
2000-11-19 Paul Berrevoets <paul@swi.com>
* libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote the $ in $#, $2 and
$3 in variable 'archive_expsym_cmds' for cygwin.
2000-11-19 Gary V. Vaughan <gary@gnu.org>
* ltdl.c: Relegate non-POSIX-compliant symbols (e.g. those
ending in ``_t'') to deprecated #define compatibility macros.
Also ease up on the namespace pollution, so that only ``lt_''
and ``LT_'' prefixes are taken from the global namespace.
* ltdl.h: ditto.
2000-11-17 Gary V. Vaughan <gary@gnu.org>
* ltdl.c: Reformatted.
* ltdl.h: ditto.
2000-11-11 Gary V. Vaughan <gary@gnu.org>
* ltdl.m4 (AC_LTDL_SYMBOL_USCORE): Use $ac_ext for conftest
sourcefile.
* libtool.m4: Use $ac_ext and $ac_objext respectively for conftest
sources and objects.
Reported by Carlo Wood <carlo@alinoe.com>
* doc/fdl.texi: New file. The license for distributing the
libtool manual.
* doc/libtool.texi: Reference the new license.
2000-10-31 Morten Eriksen <mortene@sim.no>
* libtool.m4 (_LT_AC_LTCONFIG_HACK): Quote argument to avoid
error output from cygpath when $srcdir is empty.
2000-10-31 Gary V. Vaughan <gary@gnu.org>
* bootstrap: rm Makefiles to prevent infinite loop during
configure when libtool.m4 is newer than Makefile.
2000-10-31 Akim Demaille <akim@epita.fr>
* libtool.m4: Adjust the copyright notice.
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.
2000-10-30 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi: Corrected another attack of CRLF line
endings.
2000-10-30 Ossama Othman <ossama@debian.org>
* libtool.m4 (archive_expsym_cmds): Fix typo where line was broken
in the middle of an expression.
2000-10-30 Aneesh Kumar K.V <kvaneesh@hotmail.com>
* libtool.m4 (archive_expsym_cmds): Support for -export-symbol
option on Tru64.
(hardcode_libdir_flag_spec): Fixed cxx throwing error while using
libtool. Done by passing -rpath directlty to the compiler.
2000-10-27 Robert Boehne <rboehne@ricardo-us.com>
* docs/libtool.texi: Added pointers to documentation
of Hewlett-Packard, Compaq Tru64 and IBM AIX systems.
2000-10-02 Gary V. Vaughan <gary@gnu.org>
From Bruce Korb <bkorb@cruzio.com>
* ltmain.in (execute_dlfiles): Reduce obfuscation.
2000-09-30 Alexandre Oliva <aoliva@redhat.com>
* libtool.m4 [netbsd*] (deplibs_check_method, file_magic_cmd,
file_magic_test_file): Removed inappropriate duplicate
definitions; these variables are set in AC_DEPLIBS_CHECK_METHOD.
* libtool.m4 (lt_cv_file_magic_cmd): Don't use '${MAGIC_CMD}' or
'${OBJDUMP}'; Solaris' /bin/sh loses with `}' in cache files.
(ac_cv_path_MAGIC_CMD): Renamed to lt_cv_path_MAGIC_CMD.
2000-09-28 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (MAGIC_CMD): Don't use MAGIC, since BSD versions of
the file command use this environment variable to hold the
location of the magic database.
Reported by Marc Espie <Marc.Espie@liafa.jussieu.fr>
2000-09-19 Gary V. Vaughan <gary@gnu.org>
* doc/PLATFORMS: Updated.
* demo/configure.in: Revert to the `libtool --features' test.
* Makefile.am (libtool): This needs to rerun configure now that
libtool is generated entirely by AC_PROG_LIBTOOL again.
(ltconfig): Removed.
(ltmain.sh): Is now regenerated when ltmain.in changes.
* libtool.m4 (_LT_AC_LTCONFIG_HACK): Now does all of the work for
generating libtool immediately in configure.in, rather than
deferring part of the creation until config.status runs.
2000-09-17 Gary V. Vaughan <gary@gnu.org>
* bootstrap: Backed out yesterdays patch which is no longer
necessary.
* Makefile.am (libtool): Reworked rule for regeneration of libtool,
now that it is built entirely withing config.status.
(libtoolize): Tidied for orthogonality with the other generation
rules.
(ltconfig): This is now generated by AC_PROG_LIBTOOL, called from
make by running config.status --recheck.
(ltmain.sh): Moved primary generation of this file into here...
* configure.in (AC_OUTPUT): ...instead of here.
* libtool.m4 (AC_OUTPUT_COMMANDS): Write the config to ltconfig
where it can be reused, rather than directly to libtool.
* demo/configure.in: libtool is no longer present immediately
after AC_LIBTOOL_M4 has completed, so the tests now grep through
ltconfig instead -- which *will* be present.
2000-09-16 Gary V. Vaughan <gary@gnu.org>
* TODO: Removed the item describing the change below, and added a
similar item to remind us to change the ltdl.m4 macros again when
_LT_AC_LTCONFIG_HACK is divided into proper macros.
* ltdl.m4 (AC_LTDL_SNARF_CONFIG): Removed. No longet required
now that ltconfig has migrated to libtool.m4.
(AC_LTDL_SHLIBEXT): Require _LT_AC_LTCONFIG_HACK.
(AC_LTDL_SHLIBPATH): ditto.
(AC_LTDL_SYSSEARCHPATH): ditto.
* ltdl.m4 (AC_LTDL_DLPREOPEN): Require the libtool.m4 symbol_pipe
macro.
(AC_LTDL_SYMBOL_USCORE): ditto.
(AC_LTDL_GLOBAL_SYMBOL_PIPE): Removed, since it is a duplicate
of...
* libtool.m4 (AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE): ...this new
macro, extracted from _LT_AC_LTCONFIG_HACK.
* ltdl.m4 (changequote): An audit of changequote and m4
quote usage -- all changequotes have been removed, and some
latent unquoted `[' and `]' bugs have been fixed.
* configure.in (AC_OUTPUT): ltmain.sh must be generated in the
source tree since this is where it would be found in a freshly
unrolled tarball.
* configure.in: Replace `dnl' comments with `#' comments for
more conformity with cvs autoconf.
Removed emacs hack-local-variables, since there is now a
proper Autoconf major mode.
Removed a couple of changequote()s.
* bootstrap (ltconfig): When bootstrapping libtool with a
stock automake (i.e. without the README patch applied),
references to ltconfig are manually removed from the generated
Makefile.in files.
2000-09-15 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi: Removes references to ltconfig, and a small
amount of tidying up to compensate.
2000-09-15 Nick Hudson <skrll@netbsd.org>
* libtool.m4 (netbsd): Improved support.
2000-09-15 Gary V. Vaughan <gary@gnu.org>
* ltmain.in (version_type): Use "-iface" as the windows
versioning scheme, where iface is the number of the oldest
interface supported.
2000-09-14 Gary V. Vaughan <gary@gnu.org>
From Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
* libtool.m4 (pw32): Initial support for pw32, assuming that
libtool's behaviour in this environment is identical to under
cygwin.
* ltmain.in (pw32): ditto.
* NEWS: Updated.
* libtool.m4 (changequote): An audit of changequote and m4
quote usage -- all changequotes (except a few with non-nesting
square brackets) have been removed.
* Makefile.am (EXTRA_DIST): The bootstrap script should be
distributed with libtool.
2000-09-13 Gary V. Vaughan <gary@gnu.org>
libtool.m4 (_LT_AC_LTCONFIG_HACK): Oh man! Third time lucky.
I just discovered that '&' needs to be escaped inside
AC_TRY_EVAL.
2000-09-12 Michael Matz <matz@ifh.de>
* ltmain.in: Be careful about filenames with multiple `.'s in
them when calculating file extensions.
Reported by Joel Reed <jreed@support.ddiworld.com>
2000-09-12 Gary V. Vaughan <gary@gnu.org>
libtool.m4 (AC_PROG_LIBTOOL): Removed, as it was triggering a
bug in Autoconf-2.13 AC_REQUIRE implementation which inserted
some of the expanded tests too early in the generaated configure.
(_AC_PROG_LIBTOOL): renamed to AC_PROG_LIBTOOL, and defines
itself to an empty expansion to prevent multiple expansions.
configure.in (AC_LIBTOOL_SETUP): Replaced by a call to
AC_PROG_LIBTOOL now that the AC_REQUIRE bug has been worked
around.
2000-09-09 Gary V. Vaughan <gary@gnu.org>
libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to escape the
redirections inside AC_TRY_EVAL in the need_lc tests. Doh!
libtool.m4 (_LT_AC_LTCONFIG_HACK): Forgot to redirect the
output of grep to /dev/null in the need_lc tests.
configure.in (AC_PROG_LIBTOOL): Using this in libtools own
configure.in interacts badly with the AC_PROVIDE calls and
results in several tests being inserted into configure too
early. Use AC_LIBTOOL_SETUP instead.
2000-09-08 Gary V. Vaughan <gary@gnu.org>
libtool.m4 (_LT_AC_LTCONFIG_HACK): The ltconfig.in code I
ported from ltconfig.in was incomplete -- this is a backport
of the missing code taken from the multi-language branch.
2000-09-07 Pavel Roskin <proskin@gnu.org>
* libtool.m4 (_LT_AC_LTCONFIG_HACK): Fixed incorrect use of
changequote
2000-09-07 Gary V. Vaughan <gary@gnu.org>
* NEWS: Updated.
* TODO: Add a reminder to get rid of ltconfig in mlb.
* README: Until things even out, I have added a note and a
patch to make the installed automake cooperate with the new
ltconfig free libtool.
* libtool.m4 (_LT_AC_LTCONFIG_HACK): with_gcc is only useful in
ltmain.sh as it has not yet been set in libtool.m4. Use
$ac_cv_prog_gcc instead.
* doc/PLATFORMS: Updated.
* configure.in (AC_PROG_AWK): Removed -- no longer required by
the build process.
* lineno: ditto.
* libtoolize.in (files): Don't try to install ltconfig -- it
doesn't exist!!
* bootstrap: Fake an ltconfig incase the installed automake
calls an installed libtoolize (as part of its --add-missing
process) which thinks ltconfig should be there.
* libtool.m4 (_LT_AC_LTCONFIG_HACK): Deleted a vital `;;'
terminator from a case statement by mistake.
* Makefile.am (ltmain.sh): Make this depend on TSDEPS again
so that the Changelog timestamp is used for ltmain.sh at `make
dist' time.
2000-09-06 Gary V. Vaughan <gary@gnu.org>
libtool.m4 now contains a version of the code that used to run
from ltconfig, so that ltmain.sh and then libtool are
generated at configure time.
* Makefile.am: Don't generate ltmain.sh or ltconfig anymore.
* bootstrap: ltconfig is no more!
* configure.in: Call AC_PROG_LIBTOOL directly.
(AC_OUTPUT): Generate tmain.sh.
* libtool.m4: Don't build an argument list for ltconfig.
(_LT_AC_LTCONFIG_HACK): Refactoring of the former contents of
ltconfig.in to take advantage of the m4 macros from autoconf.
* ltmain.in: Don't do a version check against ltconfig.
* tests/assign.test: Remove reference to ltconfig.
* tests/hardcode.test: ditto.
* tests/sh.test: ditto.
2000-09-05 Alexandre Oliva <aoliva@redhat.com>
* depdemo/main.c: Support -alt.
* tests/build-relink2.test: Try it.
* ltconfig.in: Removed all references to what used to be
hardcode_into_libs=all. 2000-09-03's patch was wrong.
* ltmain.in: Likewise.
* tests/build-relink.test, tests/build-relink2.test: Adjust.
* mdemo/Makefile.am (lib_LTLIBRARIES): Move libsub.la before
libfoo2.la, so that they're installed in the right order.
2000-09-04 Alexandre Oliva <aoliva@redhat.com>
* tests/dryrun.test: Build libsub.la along with the object files,
since it is needed by libfoo2.la.
* mdemo/Makefile.am: Mark only libfoo2 as -no-undefined.
Explicitly link it with libsub.la.
* ltconfig.in (need_lc): Preserve allow_undefined_flag.
* tests/*.test (CONFIG_SITE): Ultrix's /bin/sh fails on
`. /dev/null'. Set CONFIG_SITE to /dev/null/config/site, to make
sure we pick a non-existent file.
* Makefile.am (libtool, clibtool): Pass CONFIG_SHELL along with
ECHO down to ltconfig.
* ltconfig.in (hardcode_libdir_flag_spec, export_dynamic_flag_spec):
Use ${wl}, not ${wlarc}.
* ltmain.in (compile, need_lock): Don't create nor remove lock
files in dry runs.
* libltdl/ltdl.c (load_deplibs): Don't append shlib_ext; use
lt_dlopenext() instead.
* ltmain.in (link -static): Don't add $link_static_flag; only
-all-static should do that.
* mdemo/configure.in: Revert part of the previous delta.
* mdemo/configure.in: Don't use -static on AIX4.1.
* mdemo/Makefile.am: Likewise.
2000-09-03 Alexandre Oliva <aoliva@redhat.com>
* ltconfig.in: Get rid of hardcode_into_libs=all; use
hardcode_into_libs=yes && shlibpath_overrides_runpath!=yes
instead.
[FreeBSD 3.[01]] (shlibpath_overrides_runpath): Set to no.
* ltmain.in: Likewise.
* tests/build-relink.test, tests/build-relink2.test: Adjust.
* libtool.m4: Fix typo I introduced in yesterday's patch.
* libltdl/ltdl.c (lt_dlopen): Set dlname from library_names if
dlname is empty.
* ltdl.m4 (HAVE_LIBDL): Look for dlopen in -lsvld.
* ltconfig.in: Likewise.
* tests/mdemo-exec.test: Modify failure message.
* ltmain.in (newdlprefiles): Use dlname if it's available and
old_library isn't; use linklib only if dlname is not available.
* ltconfig.in (enable_dlopen): Set to no when lt_cv_dlopen is no.
* libtool.m4: Don't quote CONFIG_SHELL nor ORIGINAL_CONFIG_SHELL.
Quote $@ properly so that the shell expands it, not m4.
* libtool.m4: Don't quote SHELL when `re-exec'ing, so that SHELL
can be `/path/to/shell -x'.
* tests/quote.test: Move the match test out of case statements, to
work around bug in /bin/sh of several OSs.
* ltmain.in (variables_saved_for_relink): Attempt to unset them
instead of setting them to an empty string.
2000-09-02 Alexandre Oliva <aoliva@redhat.com>
* ltconfig.in [with_gnu_ld] (archive_cmds, archive_expsym_cmds)
<solaris*, sysv5*, beos*>: Use compiler_flags instead of linker
flags.
Reported by Alex Hornby <alex@anvil.co.uk>
2000-09-02 Makoto Ishisone <ishisone@sra.co.jp>
* libtool.m4 (lt_cv_deplibs_check_method, freebsd): Fix typo,
add support for compact format library.
2000-09-02 Alexandre Oliva <aoliva@redhat.com>
* ltdl.m4: Oops, I had forgotten to commit this part of Syd Polk's
patch from 2000-06-17.
2000-09-02 Tom Kacvinsky <tjk@ams.org>, Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
* libtool.m4: Ignore Tru64's nm's complaint.
2000-09-02 Pavel Roskin <proski@gnu.org>
* ltconfig.in: only load $cache_file if it's a regular file
2000-09-02 Assar Westerlund <assar@sics.se>
* ltconfig.in: Add back ranlib calls for static libraries if there
is a ranlib.
2000-08-31 Gary V. Vaughan <gary@gnu.org>
Move the echo detection code to a macro in libtool.m4. The code
at the top ofltconfig.in is ugly, but will go away when the rest
of ltconfig is migrated.
* Makefile.am (libtool): Pass the value of $ECHO to ltconfig as
an environment variable.
* libtool.m4 (_LT_AC_PROG_ECHO_BACKSLASH): Quote the ECHO value
correctly so that it inserts the correct code into configure.in
suitably quoted for M4 expansion. This code needs to be near
the top of configure.in as it calls itself recursively, so I
am using AC_DIVERSION_NOTICE (or simply NOTICE on CVS
Autoconf). The value of ECHO is also substitued into the
Makefile to be used when Make calls ltconfig to generate
libtool, so another layer of quotation is required for the
Makefile.
(AC_LIBTOOL_SETUP): Use it.
* ltconfig.in: Accept a value for ECHO from the environment, and
carefully substitue for $0 if it is present in the ECHO value.
Because ECHO was quoted for Make, when ltconfig is called by
configure, it is overquoted, and one layer of quotes must be
stripped.
2000-08-27 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (with_gcc): Make the value of this option
available to the generated libtool script.
* ltmain.in (compile_command, finalize_command): The native C
and C++ compilers on IRIX require the -LANG:std in order to to
compile correctly. The same options should _not_ be passed
through to gcc on IRIX, or at all on other architectures for
backwards compatibility (among others).
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
Reported by Albert Chin-A-Young <china@thewrittenword.com>
2000-08-26 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (old_reload_flag): typo.
2000-08-01 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* ltmain.in (shtool): Use echo|grep instead of expr, as in the
original patch.
2000-08-01 Alexandre Oliva <aoliva@redhat.com>
* ltconfig.in (need_lc): Fix test message.
2000-07-24 Mocha <netbsd_alpha@yahoo.com>
* ltconfig.in (NetBSD, deplibs_check_method): Use file_magic.
(NetBSD, file_magic_cmd, file_magic_test_file): Set.
2000-07-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>, David Kaelbling <drk@orchietta.hudson.sgi.com>
* ltmain.in (irix, major): Prepend a `.'.
* ltconfig.in (irix, soname_spec, library_names_spec): Adjust.
2000-07-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>, Ralf S. Engelschall <rse@engelschall.com>
* ltmain.in: Support GNU shtool's install.
2000-07-24 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* ltconfig.in (linkopts): Don't set for test.
2000-07-24 Nick Hudson <skrll@netbsd.org>
* ltconfig.in (linkopts): Replace with linker_flags.
* ltmain.in (ILD): Fix addition of deplibs in relink case.
2000-07-18 H.J. Lu <hjl@gnu.org>
* ltconfig.in: Check if -lc is necessary for building shared
library. Set build_libtool_need_lc to indicate it.
* ltmain.in: Add -lc when building shared library only if
necessary.
2000-07-10 Mo DeJong <mdejong@redhat.com>
* libtool.m4 (AC_PROG_NM): Fix macro so that it
finds a cross NM on the PATH.
2000-07-10 Ken Block <block@zk3.dec.com>
* libltdl/ltdl.h: Also check for __cplusplus, __STDC__ is not
by Compaq C++ compiler
2000-07-10 Alexandre Oliva <aoliva@lsd.ic.unicamp.br>
* ltconfig.in (wlarc, netbsd, aout): Set to empty.
(hardcode_dynamic_flag_spec, export_dynamic_flag_spec): Use it.
* ltconfig.in (dynamic_linker, linux, powerpc): Do not disable
shared libraries just because of MkLinux.
* libtool.m4 (lt_cv_deplibs_check_method, freebsd): Do not depend
on $version_type; check for ELF support as in other BSDs.
2000-06-17 Syd Polk <spolk@redhat.com>
* libtool.m4 (AC_LIBTOOL_SETUP): Do not generate a libtool based
on target; use host instead.
2000-05-30 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (ORIGINAL_CONFIG_SHELL): Prevent lossage when
the echo probing code falls into this branch without setting
this variable.
* ltconfig.in (netbsd*): archive_cmds and archive_expsym_cmds
were reversed with respect to definition of __ELF__.
From Keisuke Inoue <keisuke@csl.sony.co.jp>
2000-05-29 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (netbsd*): Use -L option to file_magic_cmd as for
freebsd (below).
* libtool.m4 (netbsd ELF): support file_magic.
From Dan Winship <danw@helixcode.com>.
2000-05-29 Steven M. Schultz <sms@moe.2bsd.com>
* libtool.m4 (bsdi4*): Add -L option to bsdi4's file_magic_cmd
command. Under BSD/OS 4.1 several libraries are now symlinks
rather than regular files. Adding -L tells the file program
to follow the symlink.
2000-05-29 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (i*86-*-freebsd*): Forgot to changequote(,).
* NEWS: Updated.
* libtool.m4 (i*86-*-freebsd*): Support a.out shared libs.
From <suzukis@file.phys.tohoku.ac.jp>
2000-05-29 Fred Fish <fnf@be.com>
Support AR=mwld AR_FLAGS='-xml -o' for PPC Beos.
* ltconfig (old_AR_FLAGS): Add.
(old_archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
(archive_cmds): Use AR_FLAGS rather than hardcoding "cru".
(AR_FLAGS): Default to "cru" if not set.
2000-05-29 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (echo): The following code actually prints the
double quotes -- so I removed them:
echo='printf "%s\n"' /bin/ksh -c '$echo \\t'
From Tuukka Toivonen <tutoivon@mail.student.oulu.fi>
* NEWS: Updated.
2000-05-29 Bernhard Rosenkraenzer <bero@redhat.de>
* libtool.m4: adding ia64 as supported linux platform
2000-05-29 Michael Matz <matz@ifh.de>
* ltmain.in: fix quoting for $var_value.
* ltconfig.in: check for dlfcn.h: include return value
to make -Wall in CFLAGS work.
2000-05-27 Gary V. Vaughan <gary@gnu.org>
* README-alpha: note new location of config.(guess|sub).
2000-05-27 Chad Cunningham <ccunning@math.ohio-state.edu>
* ltconfig.in (rhapsody*): New Port.
* ltmain.in (rhapsody*): ditto.
2000-05-27 Chris Lattner <sabre@skylab.org>
* ltconfig.in (*-sequent-sysv4): New Port.
2000-05-17 Gary V. Vaughan <gary@gnu.org>
* ltmain.in: cygwin-1.1.0 and higher no longer grok backslash path
separators.
2000-05-14 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* libtool.m4 (AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE):
Pick LIBLTLD from top_builddir and INCLTDL from top_srcdir.
* mdemo/configure.in: Remove comments on
AC_LIBLTLD_CONVENIENCE.
* libtool.m4 (_AC_PROG_LIBTOOL): Renamed from...
(AC_PROG_LIBTOOL): Just AC_REQUIRE(_AC_PROG_LIBTOOL), to avoid
effects of multiple runs.
2000-05-11 Thomas Tanner <tanner@ffii.org>
* NEWS: update
* doc/libtool.texi (libltdl): rename lt_(find|next|add|remove)_dlloader
to lt_dlloader_*
* libltdl/ltdl.c: ditto
* libltdl/ltdl.h: ditto, add declaration of lt_dlloader_(find|remove)
2000-05-06 Pavel Roskin <pavel_roskin@geocities.com>
* libltdl/ltdl.c: Typo.
* libtool.m4 (AC_LIBTOOL_SETUP): CVS autoconf no longer sets
target to "NONE", but to an empty string.
2000-05-05 Paul Sokolovsky <Paul.Sokolovsky@technologist.com>
* ltdl.c: support lt_dlopen(0) for win32
2000-05-03 Thomas Tanner <tanner@ffii.org>
* doc/libtool.texi (libltdl): fix typos,
INCLTDL starts with top_srcdir, replace NULL with @code{NULL}
* ltmain.in (ILD): search in newlib_search_path, too
* ltmain.in (ILD): fix bugs in conv pass, expand convenience
libs to deplibs and link them later on
* ltmain.in (ILD): don't allow convenience libs to be
-dlopen/preopen'ed
* ltmain.in (ILD): it's not required to link all deplibs
in fast-install mode
* ltmain.in (ILD): if hardcode_into_libs=all, only relink
a library if it is linked against uninstalled libtool libraries,
rename link_against_libtool_libs to uninst_deplibs
* ltmain.in (ILD): tidy up, add some comments
2000-05-03 John Wehle (john@feith.com)
* libtool.m4 (hpux10.20*): use file_magic for
inter-library dependency tracking.
2000-05-02 Gary V. Vaughan <gary@gnu.org>
* AUTHORS: Update my email address.
* commit: ditto.
2000-04-11 Thomas Tanner <tanner@ffii.org>
* NEWS: update
* libtool.m4: add AC_LIBTOOL_PICMODE
* ltconfig.in: move pic_mode checks to ltmain.in
* ltmain.in: add -prefer-pic and -prefer-non-pic
2000-03-29 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* ltmain.in (tmpdir): Do not accept an existing directory, and
force its mode to 700, for security reasons.
Reported by Joseph S. Myers <jsm28@cam.ac.uk>
2000-03-27 Thomas Tanner <tanner@ffii.org>
* NEWS: reformatting
* ltmain.in (ILD): add extra convenience library scanning pass
* ltmain.in (ILD): accept -R flags for libraries, too
* ltmain.in (ILD): correclty merge the dlpreopened libraries
with deplibs
* ltmain.in (install mode): remove directories from filenames
before relinking (reported by Elrond <Elrond@Wunder-Nett.org>)
* doc/libtool.texi (libltdl): rename Library -> Lesser,
clarify exception clause
* libltdl/ltdl.c, libltdl.h (License): ditto
2000-03-21 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* ltconfig.in (variables_saved_for_relink): Set to `PATH
$shlibpath_var $runpath_var'. If with_gcc, add gcc-related
environment variables. Add it to the configuration section.
* ltmain.in (relink_command): Expand those variables.
2000-03-14 Christopher A. Knight <chriskn@crt.com>
* ltconfig.in: added main() definition in compile
check for header `dlfcn.h' to fix link errors
when built with Sun Workshop Pro CC 4.2 (and perhaps
others).
2000-02-03 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_find_dlhandle): Deleted. This was B.S.
far cleaner to use lt_dlforeach and lt_dlgetinfo.
* libltdl/ltdl.h: Prototype deleted.
* doc/libtool.texi: Documentation deleted.
* NEWS: annoncement deleted.
2000-02-23 Thomas Tanner <tanner@ffii.org>
* ltmain.in: remove duplicates from deplibs, handle
interdependent libraries (e.g. -la -lb -la),
this requires adding deplibs in reverse order
* ltmain.in: link dlpreopened libraries before other libraries
(reported by Pavel Roskin)
* mdemo/Makefile.am: build and link libsub.la
* mdemo/sub.c: new file used by both dlopened modules
* mdemo/foo*: use sub() defined in libsub
* tests/dryrun.test: build libsub.la
* mdemo/Makefile.am: always link mdemo.static with -static
* mdemo/configure.in: ditto
* ltmain.in: fix dlopen/dlpreopening of objects
* ltmain.in (ILD): fix misplaced `continue' in -R* argument handler
* ltmain.in: merge duplicated code of clean and uninstall mode
* libtool.m4: recognize powerpc*linux* (reported by
Dirk A. Mueller <dmuell@gmx.net>)
2000-02-23 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (old_MAGIC, old_STRIP, old_reload_flag,
old_deplibs_check_method, old_file_magic_cmd): New variabes.
Treat these as old_CC etc.
(STRIP, MAGIC): Create and set these variables in the generated
libtool script.
Reported by Pavel Roskin <pavel_rosin@geocities.com>
* configure.in: Due to a bug in autoconf-2.13 implementation of
AC_SUBST, `AC_SUBST(FILE)' can never work. Use MAGIC as the
holder of the command to run in file_magic_cmd instead.
* ltconfig.in: s/FILE/MAGIC/g.
* libtool.m4 (AC_PROG_LIBTOOL): set MAGIC in the environment when
calling ltconfig.
(AC_PATH_MAGIC): renamed from AC_PATH_FILE.
(AC_PATH_TOOL_PREFIX): s/FILE/MAGIC/g. Also set file_magic_cmd
to '${MAGIC}' so that make can grok it.
* Makefile.am (libtool):
(clibtool): ditto.
2000-02-21 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_find_dlhandle): New function.
(tryall_dlopen): Use it.
* libltdl/ltdl.h: Prototype it.
* doc/libtool.texi: Document it.
* NEWS: updated.
* libltdl/ltdl.c (lt_dlinit): removed unused variable, `loader'.
* libltdl/ltdl.c (lt_remove_dlloader): typo, s/=/==/g.
2000-02-03 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.h (lt_dlloader_data_t): New type for loader
instance data.
(lt_user_dlloader): New lt_dlloader_data_t field.
(lt_module_open_t): Add lt_dlloader_data_t parameter.
(lt_module_close_t): Add lt_dlloader_data_t parameter.
(lt_find_sym_t): Add lt_dlloader_data_t parameter.
(lt_dlloader_exit_t): Add lt_dlloader_data_t parameter.
* libltdl/ltdl.c: A sprinkling of /*ARGSUSED*/ markers to
reassure lint that the unused arguments are intentional.
(lt_dlloader_t): New lt_dlloader_data_t field.
(lt_dlloader_data): New function to return the contents of the
dlloader_data field.
(sys_dl_open): Take an additional lt_dlloader_data_t argument.
(sys_dl_close): Ditto.
(sys_dl_sym): Ditto.
(sys_dl): Initialise lt_dlloader_data_t field.
(sys_shl_open, sys_shl_close, sys_shl_sym, sys_shl): As above.
(sys_wll_open, sys_wll_close, sys_wll_sym, sys_wll): As above.
(sys_bedl_open, sys_bedl_close, sys_bedl_sym, sys_bedl): As
above.
(sys_dld_open, sys_dld_close, sys_dld_sym, sys_dld): As above.
(presym_init, presym_exit, presym_open, presym_close, presym_sym,
presym): As above.
(lt_dlinit): Call presym_init with additional argument.
(lt_dlexit): Call dlloader_exit method with additional argument.
(tryall_dlopen): Call module_open method with additional argument.
(lt_dlclose): Call module_close method with additional argument.
(lt_dlsym): Call find_sym method with additional argument.
(lt_add_dlloader): Initialise dlloader_data field.
(lt_remove_dlloader): Call dlloader_exit method with additional
argument.
* libltdl/ltdl.c (find_file): Prevent early release of memory
in filename/*pdir.
From Jon Leichter <jon@symas.com>
(sys_wll_init): Deleted. No longer required. And this time,
with feeling!
(sys_wll_exit): Ditto.
2000-02-02 Gary V. Vaughan <gary@gnu.org>
* NEWS: updated.
* doc/libtool.texi (Libltdl interface): Moved user defined module
loader documentation from here...
(Module loaders for libltdl) ...to here, and updated the text and
added examples.
* ltdl.m4 (AC_CHECK_FUNCS): check strcmp for lt_find_dlloader.
* libltdl/ltdl.h: Reformatted and commented for readability.
(struct lt_user_dlloader): New data type for passing
initialisation pointers to lt_add_dlloader.
(LTDL_ERROR_INVALID_LOADER): New error message when non loader
handles are passed to the user loader API.
(LTDL_ERROR_INIT_LOADER): New error when loader initialisation
fails.
(LTDL_ERROR_REMOVE_LOADER): New error when loader removal fails.
(lt_module_open_t): renamed from lt_lib_open_t.
(lt_module_close_t): renamed from lt_lib_close_t.
(lt_dlloader_exit_t): renamed from lt_dlloader_exit_t.
* libltdl/ltdl.c: Reordered builtin loaders so that the "dld"
loader no longer occurs before "dlopen" on some platforms and
after it on others.
(lt_dlloader_t): Moved here from ltdl.h, added a field,
"loader_name", for identifying the loader, and renamed from
lt_dltype_t. Renamed type variables to loader IFF of type
lt_dlloader_t.
(lt_module_t): Renamed from lt_syshandle. Renamed handle variables
to module IFF of type lt_module_t.
(LTDL_TYPE_TOP): Deleted. No longer required.
(sys_dl): Initialised as a struct lt_user_dlloader.
(sys_dl_init): Deleted. No longer required.
(sys_dl_exit): Ditto.
(sys_shl): Initialised as a struct lt_user_dlloader.
(sys_shl_init): Deleted. No longer required.
(sys_shl_exit): Ditto.
(sys_wll): Initialised as a struct lt_user_dlloader.
(sys_wll_init): Deleted. No longer required.
(sys_wll_exit): Ditto.
(sys_bedl): Initialised as a struct lt_user_dlloader.
(sys_bedl_init): Deleted. No longer required.
(sys_bedl_exit): Ditto.
(sys_dld): Initialised as a struct lt_user_dlloader.
(sys_dld_init): Deleted. No longer required.
(sys_dld_exit): Ditto.
(sys_presym): Initialised as a struct lt_user_dlloader.
(lt_mod_init_t): Moved to here from ltdl.h.
(lt_dlinit): Add builtin loaders using the user loader API.
(lt_dlexit): Unregister and free all loaders.
(lt_add_dlloader): New function to add a new module loader after the
loader specified in the argument.
(lt_remove_dlloader): New function to remove a module loader.
(lt_next_dlloader): New function for iterating over module loaders.
(lt_dlloader_name): Accessor function for name of dlloader.
(lt_find_dlloader): New function to get a reference to a registered
module loader.
(strcmp): static implementation incase the host has none.
(lt_dlgettypes, lt_dlsettypes): Removed.
2000-02-02 Thomas Tanner <tanner@ffii.org>
* libltdl/ltdl.c: replace NULL with 0, remove unused system
and app_private pointers from lt_dlhandle_t
* libltdl/ltdl.c (presym_add_list): new preloaded symbols
don't need to be added to the end
* libltdl/ltdl.c (lt_dlgetdata, lt_dlsetdata): removed
* libltdl/ltdl.h: ditto
* doc/libtool.texi (libltdl interface): ditto
2000-02-01 Thomas Tanner <tanner@ffii.org>
* ltmain.in: support -dlopen/dlpreopen for libraries
* NEWS: updated
* TODO: updated
* ltmain.in: rename dlopen to dlopen_support
* ltconfig.in: ditto
* doc/libtool.texi: ditto
* ltmain.in: check whether libraries are moved out of $libdir,
replace .a and .lib with .$libext, .o and .obj with .$objext
2000-01-31 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.h (lt_dlrealloc): removed declaration.
* libltdl/ltdl.c (lt_dlrealloc): removed definition.
(lt_dladderror): Instead of calling lt_dlrealloc, use lt_dlmalloc,
and lt_dlfree.
2000-01-30 Ossama Othman <ossama@debian.org>
* libtool.m4 (lt_cv_cc_needs_belf): Set the test language to C
prior to executing the test that checks if the C compiler needs
"-belf."
Reported by Chris Butler <chrisb@sandy.force9.co.uk>
2000-01-28 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AC_DEPLIBS_CHECK_METHOD): Use changequote to
protect `[' and `]' in deplibs_check_method.
* libltdl/ltdl.h (lt_dlrealloc): Added declaration.
* libltdl/ltdl.c (lt_dlrealloc): Added default definition.
* libltdl/ltdl.c (lt_dlseterror): Catch errorcodes below 0 as
invalid.
* libltdl/ltdl.h (LTDL_ERROR): Added missing '_' in K&R
definition.
* libltdl/ltdl.h (ltdl_error_table): Added missing error code, and
fixed typo in another code.
* doc/libtool.texi (Libltdl interface): Added missing @end
clause.
2000-01-27 Thomas Tanner <tanner@ffii.org>
* ltconfig.in: Oops, replace the remaining $objdir's
* ltmain.in: merge library linking code of programs and libraries,
some cleanups
2000-01-27 Gary V. Vaughan <gary@gnu.org>
* NEWS: Updated.
* doc/libtool.texi (Libltdl interface): Document new entry
points.
* libltdl/ltdl.c (lt_dladderror): New function to add a user
defined error message to the tables used by lt_dlerror().
(lt_dlseterror): New function to allow setting of last_error by
user modules.
(ltdl_error_strings): New preprocessor generated table of internal
error diagnostic strings.
(user_error_strings): New internal list of registered user error
diagnostic strings.
(throughout!): Use error messages from ltdl_error_strings.
* libltdl/ltdl.h (ltdl_error_table): New macro to tabulate
internal diagnostic error strings alongside enum keys.
* NEWS: Updated.
* doc/libtool.texi (Libltdl interface): Document new entry
points.
* libltdl/ltdl.c (lt_dltype_t): Use new type definitions for
existing fields.
(lt_dladdtype): New function to add a new ltdl dynamic loader
type to the end of the list of valid types..
(lt_dlgettypes): New function to return the complete list of ltdl
dynamic loader types.
(lt_dlsettypes): New function to replace the list of ltdl dynamic
loader types entirely -- e.g. to prepend a new type to the
existing list.
(sys_dl_open, sys_dl_close, sys_dl_sym): Work with lt_syshandle.
(sys_shl_open, sys_shl_close, sys_shl_sym): ditto.
(sys_dld_open, sys_dld_close, sys_dld_sym): ditto.
(sys_wll_open, sys_wll_close, sys_wll_sym): ditto.
(sys_bedl_open, sys_bedl_close, sys_bedl_sym): ditto.
(presym_open, presym_close, presym_sym): ditto.
(tryall_dlopen): Call lt_lib_open_t functions lt_syshandle
compatibly.
(lt_dlclose): Call lt_lib_close_t functions lt_syshandle
compatibly.
(lt_dlsym): Call lt_find_sym_t functions lt_syshandle compatibly.
(lt_dltype_t): moved type declaration from here...
* libltdl/ltdl.h (lt_dltype_t): ...to here.
(lt_syshandle): new type for low level system handles passed by
loader functions
(lt_mod_init_t): New type for functions implementing the
initialisation for an ltdl dynamic loader.
(lt_mod_exit_t): Type of exit functions for the same.
(lt_lib_open_t): Type of loader functions for the same.
(lt_lib_close_t): Type of unloader functions for the same.
(lt_find_sym_t): Type of symbol resolver functions for the same.
* libltdl/ltdl.c (sys_dl_init, sys_dl_exit, sys_dl_open,
sys_dl_close, sys_dl_sym): Preprocess these away on cygwin to
avoid spurious error messages.
2000-01-24 Thomas Tanner <tanner@ffii.org>
fix severe bugs reported by Elrond <Elrond@Wunder-Nett.org>
* ltconfig.in: replace $objdir with $output_objdir
* ltmain.in: change to the builddir before relinking programs
* ltmain.in, ltconfig.in, libtool.m4, ltdl.m4:
remove unnessary spaces from line endings
2000-01-19 Thomas Tanner <tanner@ffii.org>
* ltmain.in: rewrite of the ILD code, merge linking code for
programs, libraries and objects, allow linking of shared libraries
against static libraries/objects on platforms that support it
but print a warning, fix some typos
* partially revert my previous change and
update only copyright notices of files that were actually modified
* NEWS: update
* libltdl/Makefile.am: version number was wrong
* libltdl/ltdl.c (tryall_dlopen): revert Gary's change
since it breaks dlpreopening
* ltdl.m4: ditto
* libltdl/ltdl.c (sys_search_path): search in the system default
library search path, too
* ltdl.m4 (AC_LTDL_SYSSEARCHPATH): extract the path
* libltdl/ltdl.c (find_module): remove bogus file_not_found_error
* libltdl/ltdl.c (load_deplibs): implement loading of dependency
libraries
* libltdl/ltdl.c (unload_deplibs): implement unloading of dependency
libraries
* libltdl/ltdl.c (lt_dlexit): correctly close all modules and
their dependencies
* libltdl/ltdl.c (lt_dlforeach): new function
* libltdl/ltdl.h: ditto
* doc/libtool.texi (using libltdl): document it
* libtool.m4: reformatting, only add -I$topsrc_dir/libltdl to
INCLTDL
* libtoolize.in: reformatting
* ltconfig.in: reformatting
* ltmain.in: reformatting
* mdemo/configure.in: AC_SUBST INCLTDL
* mdemo/Makefile.am: use INCLTDL
* tests/Makefile.am: reexport OBJEXT and EXEEXT
* tests/dryrun.test: use them for building main.obj and mdemo.exe
2000-01-17 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (tryall_dlopen): Abort with
file_not_found_error before trying all lib_open() methods
if the file to be dlopened doesn't exist.
* ltdl.m4 (AC_HAVE_HEADERS): add unistd.h.
2000-01-16 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (find_file): memory error fixed.
2000-01-14 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (Usage): Now it matches the code!
Reported by Jon Leichter <jon@symas.com>
* README: Some notes about libtool release numbers.
* mdemo/README: Explain the deliberate incompleteness of the
Windows port.
* mdemo/configure.in: Use AC_LIBTOOL_WIN32_DLL.
* mdemo/Makefile.am (LDFLAGS): Add -no-undefined.
* libltdl/ltdl.h (LTDL_STMT_START, LTDL_STMT_END): Macros for
wrapping other macros to make a portable compound statement from
multiple C statements in the expansion.
(LTDL_SET_PRELOADED_SYMBOLS): Use the above macros to add an
extern declaration for lt_preloaded_symbols, to remove
dependency on undefined symbol from libltdl.dll on cygwin (and
other -no-undefined architectures).
* libltdl/ltdl.c (lt_preloaded_symbols): No longer defined here.
* libtool,m4 (AC_LIBTOOL_SETUP): The result of lt_cv_need_dllmain
was set to the opposite of what it should be.
* configure.in (AC_LIBTOOL_WIN32_DLL): Call to this macro is
required for libtool configury to test lt_cv_need_dllmain on
Windows.
* ltconfig.in (opt_cr, mingw*): replace unescaped ? with correctly
escaped and portable \{0,1\} in sed expression.
From Jon Leichter <jon@symas.com>
2000-01-13 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AC_LIBLTDL_CONVENIENCE): Add -I${top_srcdir}/libltdl
to default INCLTDL for VPATH.
(AC_LIBLTDL_INSTALLABLE): ditto.
Reported by Tom Tromey <tromey@cygnus.com>
2000-01-12 Thomas Tanner <tanner@ffii.org>
* update all copyright notices to 2000
* doc/libtool.texi (using libltdl): document new lt_dlinfo struct,
replace NULL with @code{NULL}, document lt_dlsetdata(),
lt_dlgetdata() and lt_dlgetinfo()
* libltdl/Makefile.am: increment interface version number
* libltdl/configure.in: set version number to 1.1
* libltdl/ltdl.c: make some variables public by moving them
to the info struct, add support for application specific data
within module handles, new lt_dlsetdata(), lt_dlgetdata() and
lt_dlgetinfo() functions,
fix memory leaks, minor cleanups
* libltdl/ltdl.h: ditto
* mdemo/main.c: demonstrate use of lt_dlgetinfo,
improved handling of errors
* ltconfig.in: set hardcode_into_libs = yes for GNU/Hurd, Linux
and Solaris, only hardcode *all* run-paths if hardcode_into_libs
is set to 'all', otherwise hardcode only user-specified rpaths
into libraries
* ltmain.in: minor cleanups, we don't need to add user-specified
rpaths to compile_rpath, finalize_rpath is sufficient
* ltconfig.in: transform linux* -> *linux-gnu* _after_ host_os has
been set! (reported by Bruno Haible <haible@ilog.fr>)
* configure.in: AC_SUBST reload_flag, deplibs_check_method
and file_magic_cmd
* README: use 'libtool --version' instead of 'ltconfig --version'
(suggested by Francios Pinard <pinard@iro.umontreal.ca>
2000-01-10 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Leave undefined when
not compiling for a Windows target.
* libltdl/ltdl.c (canonicalize_path): New function to
ensure internal paths use '/' directory separators.
(find_file): use canonicalize_path. Memory management
changed to cope.
(lt_dlopen): ditto.
(free_vars): Removed `dir' and `name', which are now handled
internally.
* libltdl/ltdl.h (LTDL_DIRSEP_CHAR): Define to '/' or '\\',
as suitable for the target host.
(LTDL_PATHSEP_CHAR): Similarly with ':' or ';'.
* libltdl/ltdl.c: Use LTDL_DIRSEP_CHAR and LTDL_PATHSEP_CHAR
instead of hardcoding throughout.
Reported by Jon Leichter <jon@symas.com>
1999-12-18 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* ltmain.in: Oops, `largarg' -> `lastarg'.
* ltmain.in (-Wc, -Xcompiler): Implemented in compile mode.
* ltmain.in (-Xcompiler, -Xlinker): Add to compile_command and
finalize_command.
(-Wc, -Wl): Likewise.
* tests/quote.test: Adjust quoting style of -Wl.
* ltmain.in: Oops, `echo' -> `$echo'.
* ltmain.in (-Wl, -Wc): Make commas argument separators, just like
in gcc.
* ltmain.in (libtool_args): Get all arguments properly enclosed in
quotes and backslash-protected when needed.
1999-12-16 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* ltdl.m4: Renamed from...
* libltdl/ltdl.m4: that no longer exists.
* configure.in (ACINCLUDE_M4_LIST): Removed libltdl/acinclude.m4.
* Makefile.am (aclocal_macros): Added ltdl.m4.
(libltdl/acinclude.m4): Concatenate libtool.m4 and ltdl.m4.
* bootstrap: Likewise.
* libltdl/Makefile.am (ACLOCAL): Remove the definition. Relying
upon -I may lead to duplicates.
* doc/libtool.texi: Suggest appending ltdl.m4 to acinclude.m4.
* libtoolize.in: Check AC_LIB_LTDL version number in aclocal.m4.
* libltdl/configure.in (with_auxdir): Do not use it as the
argument of AC_CONFIG_AUX_DIR, automake requires a literal here.
Use AC_CONFIG_AUX_DIRS/DIR_DEFAULT instead.
* libltdl/Makefile.am (ACLOCAL): Define with `-I .', as in
bootstrap.
1999-12-15 Thomas Tanner <tanner@ffii.org>
* libltdl/configure.in: path to auxiliary files can be specified
using --with-auxdir (idea by Howard Chu <hyc@highlandsun.com>)
* ltmain.in: don't remove multiple occurences from dependency_libs
of a library, otherwise many dependencies would get lost
* bootstrap: use "aclocal -I ." instead of adding the contents
of ltdl.m4 to acinclude.m4
1999-12-13 Gary V. Vaughan <gary@gnu.org>
* NEWS: updated.
* libltdl/Makefile.am: Use -no-undefined for dll compliance.
* libltdl/configure.in: Use AC_LIBTOOL_WIN32_DLL for dll
compliance.
* libltdl/ltdl.c: Define and use LTDL_GLOBAL_DATA to correctly
export global data symbols from libltdl.dll.
* libltdl/ltdl.h: Define and use LTDL_SCOPE to declare data
symbols as dllexport, dllimport or plain ornary extern depending
in the context in which it is used.
* doc/libtool.texi (Distributing libltdl): document use of
ltdl.m4.
* libltdl/configure.in: Removed header checks, as they are
automatically performed by AC_LIB_LTDL.
* libltdl/ltdl.m4: Added header checks from configure.in, so that
AC_LIB_LTDL is sufficient to compile ltdl.c.
Reported by Stephan Kulow <coolo@kde.org>.
* ltconfig.in (ltdll_obj): fixed typo: objdir -> $objdir
1999-12-12 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (cygwin*, mingw*, export_symbols_cmds): keep any
DATA tags associated with symbols by recent dlltool.
(cygwin*, mingw*, archive_expsym_cmds): Honor any DATA tags
found in the symbol list.
Reported by Jon Leichter <jon@symas.com>.
1999-12-10 Gary V. Vaughan <gary@gnu.org>
From Stephan Kulow <coolo@kde.org>
* libltdl/ltdl.m4: Add arg 3 to AC_DEFINE's to save the user
from having to hack acconfig.h.
1999-12-06 Gary V. Vaughan <gary@gnu.org>
* NEWS: Updated.
* TODO: Note some cleanups that are now needed.
* libltdl/configure.in: Use the new macroised tests.
* libltdl/ltdl.m4: New file, macroised tests formerly in
libltdl/configure.in.
Reported by Stephan Kulow <coolo@kde.org>.
From Tim Mooney <mooney@dogbert.cc.ndsu.NoDak.edu>
* ltconfig.in: split off the osf3 section, so that the osf4 and
osf5 sections can add `-msym' to arguments passed to the linker
for shared libs.
1999-12-03 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* ltconfig.in (ac_compile): Use $ac_ext instead of .c.
(ac_link): Likewise.
(dlfcn.h, ac_try): Do not add filename, it is already in
ac_compile.
Reported by Stephane Conversy <Stephane.Conversy@lri.fr>
* ltconfig.in (linux-gnu*): Disable hardcode_into_libs until it
works together with fast_install.
* libtool.m4: Use host when --target is not specified.
* configure.in: AC_SUBST variables that are used by ltconfig to
build libtool.
* ltconfig.in (irix6*): Do not override deplibs_check_method
here.
* libtool.m4: Do not AC_SUBST anything other than LIBTOOL.
1999-11-20 Michael Forster <email@michael-forster.de>
* ltconfig.in (linux-gnu*): Set hardcode_into_libs=yes.
1999-11-29 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in: Be friendlier to C++ compilers when testing
for dlopen support.
Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
1999-11-26 Gary V. Vaughan <gary@gnu.org>
* libtool.m4: better use of $target instead of $host to support
cross compilation.
Reported by Sam Latinga <slouken@devolution.com>
1999-11-16 Thomas Tanner <tanner@ffii.org>
* configure.in: generate ltconfig and ltmain.sh before configuring
libltdl
1999-11-04 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* tests/sh.test: New test to detect uses of quotes within
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>
* configure.in: Move ltconfig and ltmain.sh generation back...
* Makefile.am: here.
1999-11-02 Thomas Tanner <tanner@ffii.org>
* 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
1999-11-02 Wolfgang Rapp <ulris@bn-ulm.de>
* ltconfig.in: add support for Unixware (sysv4.2uw2*)
1999-10-29 Gary V. Vaughan <gary@gnu.org>
* ltmain.in: Damnit! Cygwin cvs committed all the
dos line endings.
1999-10-28 Stephane Conversy <Stephane.Conversy@lri.fr>
* ltmain.in (-DPIC): changed the order of pic flags a little to
prevent upsetting the sgi c++ compiler.
1999-10-28 Olly Betts <olly@muscat.co.uk>
* ltconfig.in (opt_cr): Handle crlf sequences output by the
mingw toolchain.
* libtool.m4: Third time lucky, with Tor's patch.
1999-10-19 Tor Lillqvist <tml@iki.fi>
* 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.
1999-10-18 Tor Lillqvist <tml@iki.fi>
* 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.
1999-10-16 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* libltdl/ltdl.c (lt_dlopen): Do not search paths when the
specified library is not just a basename.
1999-10-10 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AC_PATH_FILE): new macro replaces
AC_PATH_TOOL_GREP_OUTPUT.
(AC_PATH_TOOL_PREFIX): new macro replaces
AC_PATH_PROG_GREP_OUTPUT.
(AC_LD_RELOAD_FLAG): migrated from ltconfig.in.
(AC_DEPLIBS_CHECK_METHOD): ditto.
* ltconfig.in (reload_flag): moved to libtool.m4.
(deplbs_check_method): ditto.
1999-10-07 Gary V. Vaughan <gary@gnu.org>
* 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.
1999-10-06 Gary V. Vaughan <gary@gnu.org>
* NEWS: updtaed.
* ltconfig.in: Accept osf5.
Reported by Sascha Schumann <sascha@schumann.cx>
1999-10-04 Gary V. Vaughan <gary@gnu.org>
* 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.
* ltmain.in (-no-fast-install): Wrapper script used to add the
exeext on again when naming the wrapped executable.
1999-10-03 Gary V. Vaughan <gary@gnu.org>
* 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.
1999-10-03 Thomas Tanner <tanner@ffii.org>
* NEWS: new -no-install flag
* configure.in: fix typo
* doc/libtool.texi(Link mode): document -no-install flag,
correct -no-fast-install docs
* libtool.m4: check for "file" command
* ltconfig.in: don't hardcode /usr/bin/file, remove second
definition of sysv5, replace linkopts -> linker_flags
* ltmain.in: add new -no-install flag, print help for -no-install
and -no-fast-install flags
1999-10-03 Olly Betts <olly@muscat.co.uk>
* ltmain.in: always create output_objdir
1999-10-03 Pavel Roskin <pavel_roskin@geocities.com>
* libltdl/Makefile.am: don't preserve file attributes when
installing the libltdl sources
1999-10-01 Gary V. Vaughan <gary@gnu.org>
* configure.in (AC_OUTPUT_COMMANDS): generate ltmain.sh
* Makefile.am (ltmain.sh ltconfig): removed. Automake inserts the
rules to automatically call config.status.
* 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.
1999-09-30 Donald Anderson <dda@world.std.com>
* ltconfig.in (sco3.2v5): use pass_all deplibs_check_method
for SCO3.2.
1999-09-29 Gary V. Vaughan <gary@gnu.org>
* 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!
1999-09-29 Vadim <vadim@olly.ru>
* ltconfig.in (sysv): More UW7 support.
1999-09-28 Albert Cheng <acheng@ncsa.uiuc.edu>
* ltmain.in (shlibpath_var): ensure the variable is non-empty before
exporting it.
1999-09-27 Manfred Weichel <weichel@global.nacamar.de>
* ltconfig.in (sysv5): Added support required for shared
library linking on SCO UW7.
1999-09-22 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (whole-archive-flag-spec): test whether the
version of GNU ld being used understands --whole-archive
before using it.
1999-09-19 Thomas Tanner <tanner@ffii.org>
* ltmain.in: don't ignore convenience libraries for objects/archives
(temporary hack)
1999-09-14 Alexandre Oliva <oliva@lsd.ic.unicamp.br>
* ltconfig.in (CDPATH): Set to `:' instead of empty.
* ltmain.in (CDPATH): Likewise.
Reported by Greg McGary <gkm@eng.ascend.com>
1999-08-24 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (ltdll.c, impgen.c): Prevent the shell from
expanding variables & backslash escapes when writing these
files to the libtool script.
1999-08-24 Thomas Tanner <tanner@ffii.org>
* 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
1999-08-24 Boyd Gerber <gerberb@zenez.com>
* ltconfig.in: add support for UnixWare 7.X.X
* doc/PLATFORMS: add new platforms
1999-08-24 Pavel Roskin <pavel_roskin@geocities.com>
* 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
1999-08-24 Bert Driehuis <bert_driehuis@nl.compuware.com>
* ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
1999-08-07 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/COPYING.LIB: Update to version 2.1.
* libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
1999-08-03 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (mingw*, AC_PROG_LD): use tr for carriage return
stripping.
* ltconfig.in: ditto.
From Olly Betts <olly@muscat.co.uk>
1999-08-02 Olly Betts <olly@muscat.co.uk>
* 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 (AC_PROG_LD): strip carriage returns from the
output of gcc -print-prog-name=ld.
* ltconfig.in: ditto.
1999-07-30 Pavel Roskin <pavel_roskin@geocities.com>
* ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
initialised structures are sometimes emitted in the code section.
1999-07-30 Mumit Khan <khan@xraylith.wisc.edu>
* ltconfig.in: Read line at a time to avoid tokenisation by
shell.
1999-07-29 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in: Fix creation of relative links to object files in
sub-dirs.
1999-07-29 Olly Betts <olly@muscat.co.uk>
* ltconfig.in(cygwin mingw32, archive_expsym_cmds): Only compile
and link ltdll.c if the libtool.m4 macros discovered that it is
required.
1999-07-26 Olly Betts <olly@muscat.co.uk>
* libtool.m4(cygwin mingw32, AC_LIBTOOL_SETUP): Oops. Fix some
typos made by Evil Gary while (mis)applying my patch :-).
* 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.
1999-07-24 Erez Zadok <ezk@cs.columbia.edu>
* doc/PLATFORMS (i*86-*openbsd2.5): New platform.
Slight reordering of other bsd entries.
1999-07-24 Olly Betts <olly@muscat.co.uk>
* 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.
1999-07-24 Bert Driehuis <bert_driehuis@compuware.com>
* ltconfig.in: Updated bsdi4 soname specs to be more like
linux as discussed on the bsdi mailing list.
1999-07-20 Gary V. Vaughan <gary@gnu.org>
* 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.
1999-07-19 Erez Zadok <ezk@cs.columbia.edu>
* doc/PLATFORMS: Updated mostly *bsd platforms.
1999-07-19 Alexandre Oliva <oliva@dcc.unicamp.br>
* doc/libtool.texi (Porting inter-library dependencies): Typos
Reported by Petter Reinholdtsen <pere@hungry.com>
1999-07-17 Thomas Tanner <tanner@ffii.org>
* 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
1999-07-09 Olly Betts <olly@muscat.co.uk>
* doc/libtool.texi (C++ Libraries): fixed a typo.
1999-07-06 Gary V. Vaughan <gary@gnu.org>
* README-alpha: improved the release instructions to mention
actual list addresses for announcements, and urls for upload
locations.
1999-07-03 Thomas Tanner <tanner@ffii.org>
* doc/PLATFORMS: 1.3b passes all tests on cygwin
1999-07-03 Pavel Roskin <pavel_roskin@geocities.com>
* ltconfig.in: finish_cmds for FreeBSD removed
* depdemo/l3/Makefile.am: install libl3.la into an extra directory
1999-07-02 Gary V. Vaughan <gary@gnu.org>
* configure.in: bumped version to 1.3c.
GNU libtool 1.3b was released.
* NEWS: inserted todays date.
1999-07-02 Alexandre Oliva <oliva@dcc.unicamp.br>
* doc/PLATFORMS: Tested on as many platforms as possible for me.
1999-07-01 Thomas Tanner <tanner@ffii.org>
* NEWS: updated
* doc/PLATFORMS: updated
* changed my email address
1999-06-30 Thomas Tanner <tanner@ffii.org>
* 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
1999-06-29 Thomas Tanner <tanner@ffii.org>
* 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
1999-06-29 Alexandre Oliva <oliva@dcc.unicamp.br>
* 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>
1999-06-29 Pavel Roskin <pavel_roskin@geocities.com>, Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (freebsd*, shlibpath_overrides_runpath): Set to
yes; tested on 3.1-ELF by Pavel and on 2.2.6 by Alexandre.
1999-06-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* 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.
1999-06-23 Thomas Tanner <tanner@ffii.org>
* NEWS: updated
* README: added GNU Hurd to the supported platforms
* doc/libtool.texi: document `-dlpreopen dummy'
instead of `-dlopen dummy'
* libltdl/ltdl.c (strchr): fixed typo (missing star)
1999-06-23 Stephan Kulow <coolo@itm.mu-luebeck.de>
* libltdl/ltdl.c (strrchr): fixed typo (missing star)
* libltdl/ltdl.c (trim): use `const' to silence -Wwrite-strings
1999-06-23 Olly Betts <olly@muscat.co.uk>
* ltmain.in (ltdll.c): Support for crosscompiling from linux to
mingw32.
1999-06-23 Gary V. Vaughan <gary@gnu.org>
* 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.
1999-06-20 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in: moved the test for NM after the test for
no_builtin_flag.
1999-06-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in: Use sed '$q' instead of sed "" for copying ltmain,
just in case some sed does not support an empty command.
* ltconfig.in (link_static_flag, ac_cv_prog_cc_static): Use the
latter in the test.
1999-06-18 Thomas Tanner <tanner@ffii.org>
* 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 dummy', 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
1999-06-18 Teun Burgers <burgers@ecn.nl>
* ltconfig.in: CR/LF fix for broken DJGPP bash
* ltmain.in: CR/LF fix for DJGPP
1999-06-18 Gary V. Vaughan <gary@gnu.org>
* ltmain.in (outputname): When generating the executable wrapper
script, $outputname already has the $exeext suffix, so we needn't
add it again.
1999-06-16 Gary V. Vaughan <gary@gnu.org>
* libltdl/configure.in (ac_cv_lib_dl_dlopen): missing "x" in test
comparison corrected.
* 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.
1999-06-15 Gary V. Vaughan <gary@gnu.org>
* 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.
1999-06-14 Thomas Tanner <tanner@ffii.org>
* ltconfig.in: use eval when setting have_dlfcn_h, reformatting
1999-06-12 Thomas Tanner <tanner@ffii.org>
* 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)
1999-06-10 Alexandre Oliva <oliva@dcc.unicamp.br>
* 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>
1999-06-09 Gary V. Vaughan <gary@gnu.org>
* 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>
1999-06-09 Pavel Roskin <pavel_roskin@geocities.com>
* ltconfig.in (exeext): Use quotes in the test, to prevent a
failure in sh.test.
1999-06-09 Gary V. Vaughan <gary@gnu.org>
* 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
* 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.
* 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.
1999-06-08 Gary V. Vaughan <gary@gnu.org>
* 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.
* ltconfig.in (objext): Accept, in order of decreasing preference:
the cached value; the result of a test object compilation.
* 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.
* 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.
* 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.
* ltconfig.in (cygwin, need_version): Set to no, otherwise module
dll's end up with mighty long names!
1999-06-06 Alexandre Oliva <oliva@dcc.unicamp.br>
* 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>.
1999-06-05 Mark Kettenis <kettenis@gnu.org>
* 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.
1999-06-02 Nick Rasmussen <nick@jive.org>
* ltmain.in (link): use "$nonopt" as the compiler for
compile/finalize_command
1999-05-27 Alexandre Oliva <oliva@dcc.unicamp.br>
* 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.
1999-05-27 Pavel Roskin <pavel_roskin@geocities.com>
* ltconfig.in (GNU Hurd, deplibs_check_method): Use pass_all.
1999-05-27 Alexandre Oliva <oliva@dcc.unicamp.br>, Olly Betts <olly@muscat.co.uk>
* ltmain.in: Expand convenience libraries when creating reloadable
objects.
* NEWS: Ditto.
1999-05-27 Alexandre Oliva <oliva@dcc.unicamp.br>
* NEWS: Mention the two bugfixes below.
* 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.
* 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>
1999-05-27 David Jones <jones@mosaid.com>
* libltdl/ltdl.c (LTDL_BIND_FLAGS): Remove BIND_VERBOSE, to avoid
printing error messages.
1999-05-26 Alexandre Oliva <oliva@dcc.unicamp.br>
GNU libtool 1.3.2 was released.
1999-05-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* NEWS: List fixed problems.
* doc/PLATFORMS: Tested for 1.3.2.
* config.guess: Synch with GNU common.
* ltmain.in: Revert to stripping .exe on all platforms.
* TODO: Note about this problem. Demo is fixed on win32. Support
`empty' convenience libraries.
* 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>
1999-05-25 Frank Ch. Eigler <fche@cygnus.com>
* ltmain.in: file_magic check would not avoid cyclic links.
1999-05-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* depdemo/main.c, depdemo/l1/l1.c, depdemo/l2/l2.c: K&R-ize.
* depdemo/l3/l3.c, depdemo/l4/l4.c: Likewise.
* ltmain.in: Remove object files before writing to them, to avoid
circular links.
Reported by Ron O'Hara <rono@sentuny.com.au>
1999-05-24 Thomas Tanner <tanner@ffii.org>
* NEWS: support for installing stripped libraries using GNU strip
* ltconfig.in: set deplibs_check_method=pass_all on FreeBSD,
Linux and Solaris since no one can reproduce the famous deplibs
bug
* ltmain.in: preserve $CC (reported by Tom Tromey),
strip libraries using GNU strip if it's available and the
-s flag was passed to "install"
1999-05-23 Alexandre Oliva <oliva@dcc.unicamp.br>
* doc/PLATFORMS: Release 1.3.1 passes on GNU Hurd/x86.
Reported by Pavel Roskin <pavel_roskin@geocities.com>
1999-05-23 Thomas Tanner <tanner@ffii.org>
* ltmain.in: strip off the .exe suffix only on *Win
(Reported by Matthew D. Langston <langston@SLAC.Stanford.EDU>)
1999-05-22 Thomas Tanner <tanner@ffii.org>
* NEWS: updated
* TODO: -Wc, -Wl, implemented
* AUTHORS: changed my email address
* doc/libtool.texi: fix "wierd" typo :)
* ltmain.in: linking against convenience libraries was broken,
implemented the "-Wc," "-Wl," "-Xcompiler" "-Xlinker" flag for
compiler and linker-specific flags,
add -lc before we do the deplibs check
* ltconfig.in: linkopts -> compiler_flags for $CC and linker_flags
for $LD, link_all_deplibs=yes on IRIX
1999-05-22 Gary V. Vaughan <gary@gnu.org>
* NEWS: insert todays date alongside 1.3.1 release.
* Makefile.in: use gnu not gnits rules
* config.guess: synch with gnu common & apply Takabatake-san's
MIPS *000 patch.
* config.sub: synch with gnu common.
1999-05-22 Doug Evans <devans@casey.cygnus.com>
* libltdl/configure.in (dlerror): Fix typo in dlopen found in -ldl
test.
1999-05-21 Pavel Roskin <pavel_roskin@geocities.com>
* Makefile.am (EXTRA_DIST): Don't distribute instutils.
(install-data-hook): use libltdl/Makefile.am's local-install files
rule.
* libltdl/Makefile.am (local-install-files): New rule to install
libltdl without creating links or mode 777 directories.
* instutil/*: deleted.
1999-05-21 Alexandre Oliva <oliva@dcc.unicamp.br>
* doc/PLATFORMS: Updated to 1.3.1 for all platforms I've got.
Added sparc-unknown-linux-gnu.
1999-05-21 Gary V. Vaughan <gary@gnu.org>
* demo/foo.h: s/PARAMS/LTDL_PARAMS/g
* libltdl/ltdl.h: ditto.
* libltdl/ltdl.c: ditto.
* demo/foo.h: s/__P/PARAMS/g
* libltdl/ltdl.h: ditto.
* libltdl/ltdl.c: ditto.
Reported by Akim Demaille <demaille@inf.enst.fr>
1999-05-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* NEWS: Updated docs.
* TODO: Recommend libtool.m4 to be inserted in acinclude.m4. AIX
4.3.2.0 no longer fails on static dlopening. GNU DLD no longer
has to support .la files, since libltdl already does. Convenience
libraries and reloadable objects should be tested in the
testsuite. We could support some amount of control on the soname
of libraries.
* doc/libtool.texi: Notes about convenience libraries and
automake. Documented INCLTDL.
1999-05-20 Thomas Tanner <tanner@gmx.de>
* cdemo/main.c: "Welcome _to_ ..."
* mdemo/main.c: ditto
* libltdl/configure.in: support multiple dlopening mechanisms
at once
* libltdl/ltdl.c: prefix system dependent functions with "sys_"
to avoid symbol conflicts (libdld didn't work)
* libtool.m4 (AC_LIBLTDL_*): set INCLTDL to the path of ltdl.h
* ltconfig.in: check for dlopen with -ldl first
1999-05-19 Gary V. Vaughan <gary@gnu.org>
* NEWS: Added 1.3.1 news items.
* doc/PLATFORMS: updated the boxes I have access to, to 1.3.1
in preparation for the next release.
1999-05-18 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (cygwin*, whole_archive_flag_spec): dlltool chokes
on this, so leave it unset in this case so that the ltmain code
knows it has to unpack convenience archives by itself.
1999-05-17 Gary V. Vaughan <gary@gnu.org>
* ltmain.in: Do not exit when an unknown library name is passed
passed in, simply warn and continue since some compilers require
-LANG:* like options to work.
Reported by Adam C. Powell, IV <adam.powell@nist.gov>
1999-05-17 Jiro Takabatake <jiro@din.or.jp>
* ltconfig.in: port to NEC UX/4800.
* NEWS: updated.
1999-05-17 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (beos*, deplibs_check_method): set to pass_all. BeOS
is PIC by default.
Reported by "Shawn T . Amundson" <amundson@gimp.org>
* libltdl/configure.in: Fix test failures on AIX 4.3.2 by checking
for dlopen *with* -ldl first.
Reported by Greg Wooledge <ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
* demo/foo.h: Don't set any declspecs until we have full dll
support.
1999-05-16 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (solaris2.6, whole_archive_flag_spec): Do not use
-Wl for allextract.
1999-05-14 Alexandre Oliva <oliva@dcc.unicamp.br>
* instutil/chmod: New script to avoid chmod'ing files while
installing libltdl's sources.
* instutil/ln: New script to avoid hard-linking libltdl's sources
in the install tree.
* Makefile.am (EXTRA_DIST): Dist them.
(instal-data-hook): Add srcdir/instutil to the beginning of the
PATH before installing libltdl's sources.
1999-05-09 Gary V. Vaughan <gary@gnu.org>
* TODO: updated.
1999-05-06 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (install-data-hook): make sure the install directory
is not left world writable.
Reported by Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
1999-04-30 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4: Use ifelse instead of if.
Reported by David Mazieres <dm@amsterdam.lcs.mit.edu>
1999-04-29 Alexandre Oliva <oliva@dcc.unicamp.br>
GNU Libtool 1.3 was released.
* NEWS: Summarize news from 1.2 to 1.3.
* ltmain.in: Save exit status of link_command before removing
symbol table object file.
1999-04-29 Gary V. Vaughan <gary@gnu.org>
* doc/PLATFORMS: updated my hpux-10.20 and cygwin box entries.
1999-04-29 Alexandre Oliva <oliva@dcc.unicamp.br>
* NEWS: Improved support for DU and IRIX too.
* config.sub, config.guess: Updated from GNU common.
* mdemo/configure.in: Move AC_LIBLTDL_CONVENIENCE before
AM_PROG_LIBTOOL, as suggested by autoconf.
* doc/libtool.texi (Distributing libltdl): Document that -static
may cause the same problems on libltdl as -all-static.
* TODO: We might want to fix this in the future.
* doc/libtool.texi: Clear up overfull hbox.
* libltdl/Makefile.am (ltdl.lo): Add dependencies.
* libltdl/configure.in: Clean up some duplicate defines. Enable
support for multiple dlopening mechanisms.
* libltdl/acconfig.h: New file. Add #undefs for defines that
would be duplicated.
1999-04-29 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (cygwin*|mingw*, DLLTOOL, OBJDUMP, AS): Only expand the
code that makes these configure time checks on hosts that need the
tools *and* if the AC_LIBTOOL_WIN32_DLL macro is used.
1999-04-29 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (nlist, SYMFILE): Use outputname instead of output for
names within output_objdir.
1999-04-28 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (AC_ENABLE_SHARED, AC_ENABLE_STATIC,
AC_ENABLE_FAST_INSTALL): Do not call AC_BEFORE here, they're
AC_REQUIREd by AC_LIBTOOL_SETUP.
(AC_DISABLE_SHARED, AC_DISABLE_STATIC, AC_DISABLE_FAST_INSTALL):
Call AC_BEFORE here, and now with two arguments, since these do
change the default.
(AC_LIBLTDL_CONVENIENCE, AC_LIBLTDL_INSTALLABLE): Fix calls to
AC_BEFORE.
1999-04-28 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (ltconfig_enable_win32_dll): pass --enable-win32-dll to
ltconfig if this is set.
(AC_LIBTOOL_WIN32_DLL): New macro required for libtool to attempt
a dll build on win32 hosts.
* ltconfig.in (--enable-win32-dll): new flag for the cli.
(cygwin*|mingw*|os2*, ltconfig_enable_win32_dll): if this is not set
to yes, then do not attempt to build shared libraries.
* doc/libtool.texi: document AC_LIBTOOL_WIN32_DLL.
* NEWS: noted new macro.
1999-04-27 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (AC_LIBTOOL_DLOPEN, AC_ENABLE_SHARED,
AC_ENABLE_STATIC, AC_ENABLE_FAST_INSTALL, AC_LIBLTDL_CONVENIENCE,
AC_LIBLTDL_INSTALLABLE): Warn if they appear after
AC_PROG_LIBTOOL. AC_LIBTOOL_SETUP, actually.
(AC_LIBTOOL_SETUP): Check whether DLOPEN support is to be enabled
at autoconf time, not configure time. Simplify code and
improve (?) help message about --disable-libtool-lock.
1999-04-27 Thomas Tanner <tanner@gmx.de>
* NEWS: new clean mode
* THANKS: added Ossama Othman
* doc/libtool.texi: documented the new `clean' mode
* ltconfig.in: set need_version=no on OSF (reported by
Marcus Sundberg <mackan@stacken.kth.se>)
* ltmain.in: allow absolute non-existant -L paths,
always use output_objdir instead of objdir for temporary files,
delete generated temporary symbol lists,
don't add .la twice in the pseudo-library header,
implemented and documented clean mode (deletes libraries,
programs and object files and the files associated with them),
if build_libtool_libs=no and no static library is available,
try to link the program against the shared library,
don't add a statically linked library to the dependency_libs
* ltmain.in (help uninstall): added a missing backslash
after echo (reported by Ossama Othman)
1999-04-27 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (old_archive_cmds): Iterate on oldobjs to find out
which links to object files we must create. Do not test for empty
pic_flag to create such links. Use objext when searching for
object files extracted from convenience library.
* ltconfig.in (compiler_c_o): Make sure the compiler does not
create temporaries in the current directory when output should go
elsewhere. We must perform locking if it does.
1999-04-27 Gary V. Vaughan <gary@gnu.org>
* ltmain.in (old_archive_cmds): Ensure that there are always .o
objects available before running old_archive_cmds.
1999-04-26 Erez Zadok <ezk@cs.columbia.edu>
* doc/PLATFORMS: Updates for netbsd 1.3.3 and 1.4.
1999-04-26 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (aix4.[01], always_export_symbols): The case pattern
would never match; fixed.
Reported by Stephan Kulow <coolo@itm.mu-luebeck.de>
1999-04-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (OBJDUMP): Pass it to ltconfig.
* configure.in: AC_SUBST DLLTOOL, OBJDUMP and AS.
* Makefile.am (libtool, clibtool): Pass them to ltconfig.
1999-04-25 Frank Ch. Eigler <fche@cygnus.com>
* libtool.m4 (cygwin*): Look for target objdump tool.
* ltconfig.in (cygwin*, file_magic_cmd): Use autoconf-located target
objdump tool. Track OBJDUMP like DLLTOOL and AS.
* ltconfig.in (cygwin*, deplibs_check_method): Accept
"architecture: i386" as optional suffix, for it is printed on a
separate line sometimes.
* ltmain.in (cygwin*, ltdll.c): Wrap DllMain declaration in extern "C".
* ltmain.in (deplibs_check_method=file_magic): Redirect stderr to
/dev/null, to suppress error messages from target objdump.
1999-04-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (irix*, soname_spec, library_names_spec): Missing
dots before $versuffix and $major.
* ltconfig.in (solaris*, whole_archive_flag_spec): Use -z
allextract/defaultextract from Solaris 2.6 on.
Reported by Brian Ford <ford@vss.fsi.com>
* ltconfig.in (beos*, allow_undefined_flag): Do not build shared
libraries with undefined symbols.
* ltconfig.in (aix4*, allow_undefined_flag): Set to -berok.
(aix4*, shared_flag): Set to -shared or ${wl}-bM:SRE.
(aix4*, archive_cmds): Use -bexpall.
(aix4*, archive_cmds, archive_expsym_cmds): Use shared_flag and
allow_undefined_flag.
(aix4*, always_export_symbols): Set to yes up to AIX 4.1.*,
because -bexpall is supported from 4.2 on.
Reported by Greg Wooledge
<ic5035%tss1crs.amgreetings.com@rose.amgreetings.com>
* ltconfig.in (hpux*, hardcode_minus_L): Set to yes.
(hpux*, hardcode_libdir_flag_spec): Do not use +s by default.
(hpux*, shlibpath_overrides_runpath): Set to no.
* ltconfig.in (irix*, osf*, archive_cmds): Write so_locations
within objdir.
* ltconfig.in (irix*, soname_spec): Append $major.
(irix*, library_names_spec): Add new soname.
Reported by David Kaelbling <drk@sgi.com>
* ltconfig.in (irix*, sys_lib_dlsearch_path_spec): /usr/local/lib
is not searched by default. /usr/lib is searched before /lib.
* ltconfig.in (irix*, sys_lib_search_path_spec): /usr/lib is
searched before /lib.
* ltconfig.in (irix5*, need_lib_prefix, need_version): Set to no,
by unifying with irix6*.
* ltconfig.in (irix*, osf*, deplibs_check_method): Use pass_all.
* ltconfig.in (old_LDFLAGS, old_LIBS): Save and write to comments
in output file.
* ltmain.in (prefer_static_libs): New variable, set to no by
default, but set to yes by -static and -all-static. Used instead
of build_libtool_libs to decide whether to use a shared or static
version of a library, when both versions are available.
1999-04-25 Boyd Lynn Gerber <gerberb@zenez.com>
* ltconfig.in (sco3.2v5*): Use LD_RUN_PATH for hard-coding.
1999-04-25 Pavel Roskin <pavel_roskin@geocities.com>
* Makefile.am (uninstall-local): Remove installed libltdl tree.
1999-04-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* demo/Makefile.am (hc-direct, hc-libflag, hc-libpath, hc-minusl):
Added CFLAGS to link commands; SCO OSR needs it for -belf.
* TODO: -Wl and -Wc options.
1999-04-12 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c: Remove trivial warnings.
1999-04-22 Frank Ch. Eigler <fche@cygnus.com>
* ltconfig.in: Correct sed expression that extracts symbols
from cygwin def files. Ignore demangled C++ names, if any.
1999-04-12 John David Anglin <dave.anglin@nrc.ca>
* libltdl/ltdl.c (shl_close): shl_t was correct here...
(shl_sym): ... but we have to pass the handle by reference here.
1999-04-12 Alexandre Oliva <oliva@dcc.unicamp.br>
* doc/libtool.texi (Invoking ltconfig): Document environment
variables used.
* doc/libtool.texi (Invoking ltconfig): Document --cache-file.
* doc/libtool.texi (Invoking ltconfig): Document
--disable-fast-install, --enable-dlopen, --with-gnu-ld and
--disable-lock.
1999-04-11 Thomas Tanner <tanner@gmx.de>
* libltdl/configure.in: check for shl_load in libdld
* libltdl/ltdl.c (shl_close, shl_sym): use (shl_t *) instead of shl_t
* ltconfig.in (check for gcc): removed a bogus line,
check for shl_load in libdld
* ltmain.in: added a warning to the header of the .la file
to warn users against deleting the file,
link shared against static libraries if
deplibs_check_method == pass_all
1999-04-10 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (AC_PROG_LD, AC_PROG_NM): When looking for programs,
try $ac_exeext too, so that they're found on DJGPP/MS-DOS.
* ltconfig.in: Likewise.
Reported by Robert S. Maier <rsm@math.arizona.edu>
* ltconfig.in (Usage): Removed --enable-dlopen-self.
Reported by Pavel Roskin <pavel_roskin@geocities.com>
* ltconfig.in: Moved sysv4 before sysv4.*.
(symcode): Brian's overrider is specific to sysv4, not sysv4*.
1999-04-09 Thomas Tanner <tanner@gmx.de>
* NEWS, README: Motorola System V 4 support
* doc/PLATFORMS: added mk88-motorola-sysv4
* ltconfig.in: installed patch from Brian Ford <ford@vss.fsi.com>
to support mk88-motorola-sysv4
* doc/libtool.texi: some cleanups in the libltdl documentation
1999-04-07 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (--fallback-echo): Do not put an inline document and
an exec in the same if construct; otherwise the inline document
may not be removed.
* ltmain.in (--fallback-echo): Likewise.
Reported by John David Anglin <dave.anglin@nrc.ca>
* dryrun.test: It would still fail at random times, because `cp'
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.
1999-04-07 Thomas Tanner <tanner@gmx.de>
* NEWS: support for moved libraries
* libtool.m4: another DJGPP fix
1999-04-07 Alexandre Oliva <oliva@dcc.unicamp.br>
* doc/PLATFORMS: Updated to 1.3 for all platforms I've got. I'll
make sure 1.3 won't be released unless it passes all tests on
those platforms.
* doc/libtool.texi (Compile mode): Document potential problem and
work-around for `-c -o dir/foo.lo'.
* tests/dryrun.test: The constant modifications of libtool would
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.
1999-04-06 Alexandre Oliva <oliva@dcc.unicamp.br>
* tests/dryrun.test: We cannot rely on setting LIBTOOL, because
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.
* tests/dryrun.test: Use cmp instead of diff.
(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.
1999-04-06 Thomas Tanner <tanner@gmx.de>
* ltmain.in: added a missing line of the ILD patch
* NEWS: improved DJGPP support
* doc/libtool.texi: removed hardcode_into_libs documentation
* libtool.m4: some DJGPP fixes
* ltconfig.in: ditto, reverted one of my previous patches: we need
to check for NM, removed the hardcode_into_libs support since
no platform seems to support it
* ltmain.in: some DJGPP fixes, removed the hardcode_into_libs support
1999-04-05 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (netbsd*, GNU ld): Support a.out shared libraries
* Makefile.am (CVS): allow command-line overriding of cvs
* ltconfig.in (exclude_expsyms): Exclude _GLOBAL_OFFSET_TABLE_ by
default, as most a.out platforms use it, and end up in trouble if
we preload it, so it's safer to rule it out by default, and
special case its removal from exclude_expsyms if someone ever
complains.
1999-04-05 Thomas Tanner <tanner@gmx.de>
* doc/libtool.texi: reorder tests to reflect execution order,
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
* demo/run.test: removed the unnecessary test
* demo/Makefile.am: ditto
* ltmain.in: set the DLL search path on cygwin,mingw and os2
1999-04-04 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (sunos4*, GNU ld): -Bstatic is not enough for
deplibs.test to work with GNU ld; -Bshareable is needed here.
* ltconfig.in (ld_shlibs, amigaos*): Disable shared libs with
native ld too.
* ltconfig.in (sunos4*, GNU ld): Reordered.
* ltconfig.in (archive_cmds, sunos4*): Revert to -Bstatic; the
native linker doesn't even support -Bshareable, only GNU ld does.
Do not use `gcc -shared' in archive_cmds, it breaks deplibs.test.
* ltconfig.in: if ld_shlibs=no, set can_build_shared=no too,
otherwise it will just be disregarded. This would cause
netbsd/m68k with GNU ld a.out, and certainly many other platforms,
to incorrectly believe that shared libraries were supported, while
archive_cmds was empty, causing shared libraries not to be created
1999-04-03 Alexandre Oliva <oliva@dcc.unicamp.br>
* NEWS: improved support for AIX and HP/UX
1999-04-03 Thomas Tanner <tanner@gmx.de>
* NEWS: updated
* libtool.m4: check for main in libm instead of cos
* ltmain.in: cosmetic fixes, don't try to link libraries only once
(although it's not necessary on many platforms and looks ugly...),
1999-04-02 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (convenience): fixed race condition when more than one
library was linked with the same convenience library by
uniquifying the extract directory. It is now named after the new
library *and* the old one, and lives in the objdir of the new one.
* ltmain.in (-L*): do not abort just because a directory specified
with -L does not exist; just warn and discard it
* depdemo/l1/Makefile.am (AUTOMAKE_OPTIONS): no-dependencies
* depdemo/l2/Makefile.am (AUTOMAKE_OPTIONS): ditto
* depdemo/l3/Makefile.am (AUTOMAKE_OPTIONS): ditto
* depdemo/l4/Makefile.am (AUTOMAKE_OPTIONS): ditto
* ltconfig.in (archive_cmds, sunos4*): where we used -Bstatic, we
should have been using -Bshareable
* demo/Makefile.am (CLEANFILES): clean EXTRA_* from deplibs-check
* libtool.m4 (LDFLAGS, LIBS): pass them to ltconfig, for the tests
that involve linking
* Makefile.am (LDFLAGS, LIBS, libtool, clibtool): ditto
* tests/Makefile.am (CFLAGS, CPPFLAGS, LDFLAGS, LIBS): set
(LDFLAGS, LIBS, TESTS_ENVIRONMENT): pass them down
1999-04-02 Erez Zadok <ezk@cs.columbia.edu>
* doc/PLATFORMS: 1.2f ok on various versions of hpux cc
1999-04-02 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (link_all_deplibs): set to unknown by default
* ltmain.in: test != no, not = yes
* doc/libtool.texi: document unknown
1999-04-01 Thomas Tanner <tanner@gmx.de>
* doc/libtool.texi: documented deplibs.test
* demo/Makefile.am: moved testsuite specific declarations to the end,
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
1999-03-31 Thomas Tanner <tanner@gmx.de>
* ltmain.in: always link a library before its dependency libs
* mdemo/Makefile.am: test -export-symbols-regex
1999-03-30 Thomas Tanner <tanner@gmx.de>
* doc/libtool.texi: fixed a typo
* libtoolize.in: add the libtool scripts to libltdl.tar.gz
* libtool.m4: don't AC_SUBST(USE_SYMBOL_UNDERSCORE),
AC_CHECK_LIBM sets LIBM, AC_LIBLTDL_INSTALLABLE doesn't work
when libltdl is already installed
* *demo/Makefile.am: use LIBM
* *demo/configure.in: AC_SUBST LIBM
* libltdl/configure.in: use ac_cv_sys_symbol_underscore instead of
USE_SYMBOL_UNDERSCORE
* ltconfig.in: added link_all_deplibs variable
* doc/libtool.texi: document it
* ltmain.in: always search for libname.la - don't eval libname_spec,
when linking libraries against static ones just print a warning
and add them to dependency_libs, add -lc before deplibs,
always link all dependencies of a static library or if
link_all_deplibs is yes, hardcode library paths if
hardcode_into_libs is no, don't link against dependency_libs
that already are deplibs
1999-03-30 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (aix4*, collect2name): make sure collect2 exists
before running string on it, to avoid errors on old gccs
Reported by Erez Zadok <ezk@cs.columbia.edu>
* ltconfig.in (aix4*, hardcode_libdir_flag_spec): unless we're
using gcc with old collect2, use -b libpath to hardcode the
library search path
* ltmain.in, ltconfig.in: reverted most of the quoting changes
from 1999-03-25; Gary's delay_variable_subst patch from 1999-02-19
obviates it. Keep only quoting of $PATH, for uniformity with
other systems that already did it
1999-03-29 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.c (lt_dladdsearchdir): Forgot to mallocate the
extra byte of memory for the teminating NUL, and forgot to
strcpy the original path in to the new memory before appending
the new path compononent.
1999-03-27 Thomas Tanner <tanner@gmx.de>
* NEWS: updated
* README: updated (BeOS support, no longer shared libraries
support for AmigaOS), cleanups, we have now two mailing lists
* REAMDE-alpha: autogen -> bootstrap, we have now two mailing lists
* THANKS: added Xavier Pianet
* doc/PLATFORMS: BeOS works
* doc/libtool.texi: we have now to two mailing lists,
updated -dlopen self documentation, documented libltdl's license,
put each author in a separate line,
inter-library dependencies on uninstalled libtool libraries are
now supported, cleanups and minor corrections
* libltdl/COPYING.LIB: new file
* libltdl/ltdl.[ch]: added special exception to the LGPL license
* libtool.spec: removed, it was outdated
* Makefile.am: removed libtool.spec
* ltmain.in: use TMPDIR when possible, create a subdirectory
in the temporary directory, added -export-symbols-regex to the help,
1999-03-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* demo/Makefile.am: create a static library, link two libtool
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
* ltmain.in ($PATH): instead of modifying the PATH, better prevent
its expansion the first time *_cmds variables are eval'ed. Modify
$show within loops that eval them so as to expand variables
* ltconfig.in (*_cmds): quote $ so that they're not expanded by
the first eval
1999-03-25 Gary V. Vaughan <gary@gnu.org>
* ltmain.in ($PATH): Expand any tildes in the users path to the
contents of $HOME to avoid problems with *_cmds splitting and
evaluation.
1999-03-24 Thomas Tanner <tanner@gmx.de>
* TODO: support -dlopen for libraries
* doc/PLATFORMS: Erez Zadok reported that libtool works on bsdi 4.0.1
* doc/libtool.texi (libltdl): libltdl supports BeOS
* libltdl/ltdl.c: shlib_ext was declared even if LTDL_SHLIB_EXT
didn't exist, partially reverted my previous patch: BeOS will
automatically search in ADDON_PATH
* ltmain.in: don't allow relative run-paths, fixed a typo in a warning,
ignore -dlopen self for libraries and objects,
only accept -L paths that exist, minor cleanups,
bugfix: add -lc for normal libraries, not convenicence libraries
removed offensive warnings/comments
1999-03-24 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (ld_shlibs, amigaos*): disable shared libraries
1999-03-23 Gary V. Vaughan <gary@gnu.org>
* libltdl/configure.in: the sed expression for finding the shared
library extension used to think the . in [.] for the cygwin
shared_library_names_spec was the start of the extension!! We now
remove anything in square brackets (assuming that the square
brackets delimit a sed or expr expression which is not part of the
extension) before looking for the extension.
* TODO (cygwin): food for thought re: mutually dependant dlls.
1999-03-21 Alexandre Oliva <oliva@dcc.unicamp.br>
* tests/build-relink.test: if we relink and have hardcode_direct,
removing an uninstalled library breaks an uninstalled program
* doc/libtool.texi: documented convenience libraries
* TODO: removed entry about it
* tests/*-unst.test: if directory is not configured, skip it
* tests/demo.test, tests/mdemo.test: unused, removed
* tests/depdemo.test: ditto
1999-03-20 Thomas Tanner <tanner@gmx.de>
* doc/libtool.texi (link mode): documentation for -module updated
* ltconfig.in: fast-install mode doesn't work for
hardcode_into_libs=yes
* ltmain.in: bugfix: "-dlopen self [-all]-static" wouldn't use
dlopen_self_static, automatically enable -export-dynamic when
using "-dlopen self", always make run-paths absolute,
ignore -lc only on platforms that don't have such a library,
cleanups in the ILD code, find even installed libtool libraries
that were moved, before generating the DLL-import library we need
to set libname, improved hardcoding of shlibpath for libraries,
don't generate an installable pseudo-library for convenience
libraries, bugfix: export_symbols would be removed immediately
before it is used
1999-03-19 Thomas Tanner <tanner@gmx.de>
* use the same header in all configure.in's and Makefile.am's
* 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)
1999-03-19 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (sunos4*, with_gnu_ld, hardcode_minus_L): remove, we
have -rpath
(aix4*, without_gnu_ld, hardcode_shlibpath_var): unsupported is
default
(hpux9*, hpux10*, hpux11*, archive_cmds): drop +s, unneeded here
(hpux9*, hpux10*, hpux11*, hardcode_libdir_flag_spec): add +s
before +b
(hpux9*, hpux10*, hpux11*, shlibpath_overrides_runpath): since +s
appears before +b, set it to yes
(hardcode_shlibpath_var, hardcode_action): do not use
shlibpath_var to specify the compile-time search path; it loses,
and we may end up linking with pre-installed older versions of
libraries instead of yet-to-be-installed ones
(*, hardcode_direct, hardcode_minus_L): remove entries that set
them to no, that is default
* demo/Makefile.am (hc-direct, hc-libpath, hc-minusL): link with
$$hardcode_libdir_flag_spec, if available, with libdir=$(libdir),
to make sure the hardcode_* variables will produce the expected
results even in the presence of a hardcoding flag; depend on
libhello.la having been installed already
(hc-libflag): link with the installed library, but try to
hard-code the uninstalled one
* doc/libtool.texi: document the changes
* tests/*.test: when a test fails, skip tests that depend on it.
If a certain configuration is not supported, skip all its tests.
* doc/libtool.texi: reorder tests to reflect execution order
* tests/noinst-link.test: new test
* tests/Makefile.am (TESTS): added noinst-link.test
* doc/libtool.texi: document it
1999-03-19 Gary V. Vaughan <gary@gnu.org>
* ltmain.in (dependency_libs): There is no reason to infer that
the pseudo library is invalid if dependency_libs='' at
install-time, or else libltdl/libltdl.la is invalid!!
1999-03-18 Thomas Tanner <tanner@gmx.de>
* merged my inter-library dependencies code from the ILD branch:
* 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.
1999-03-17 Gary V. Vaughan <gary@gnu.org>
* doc/PLATFORMS: Thanks to Alexandres changes below, both my
hp boxes pass the entire test suite.
1999-03-17 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (hpux*, hardcode_minus_L): should be no, we have +b
(hpux*, hardcode_libdir_separator): set to colon
1999-03-17 Alexandre Oliva <oliva@dcc.unicamp.br>
* doc/PLATFORMS: egcs is gcc; updates from Erez Zadok
1999-03-16 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (deplibs, beos*): don't append -lc
Reported by Xavier Pianet <xavier@xingo.com>
* tests/build-relink.test (hardcode_action): when set to relink,
skip the test with lt-hell
* Makefile.am (EXTRA_DIST): add mkstamp
Reported by Xavier Pianet <xavier@xingo.com>
* Makefile.am (EXTRA_DIST): add ChangeLog.0
1999-03-16 Thomas Tanner <tanner@gmx.de>
* doc/libtool.texi: some minor corrections to the "-dlopen self"
documentation
* tests/Makefile.am: sorted by name, added assign.test
* ChangeLog: started new file
* ltconfig.in: some cosmetical changes
* ltmain.in: ditto
1999-03-15 Alexandre Oliva <oliva@dcc.unicamp.br>
* configure.in, libtool.spec, NEWS: bump to 1.3a
* Branched for release 1.3 (branch-1-3)
* configure.in, libtool.spec, NEWS: bump to 1.2g
* configure.in, libtool.spec: bump to 1.2f
* doc/PLATFORMS: ditto
* NEWS: libtool 1.2f released
* ltmain.in: silence ``unbug'' :-) detected by sh.test
1999-03-14 Alexandre Oliva <oliva@dcc.unicamp.br>
* TODO: we now use full pathnames for `file'
1999-03-14 Thomas Tanner <tanner@gmx.de>
* TODO: libltdl is now documented
* doc/libltdl.texi (linking with installed libtool libraries):
fixed typo
* doc/libltdl.texi (libltdl): added documentation for building
libtool modules and examples how to embed libltdl
* ltmain.in: don't ignore user-specified run-paths (fixed it
at the right place)
1999-03-14 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (deplibs_check_method=none): discard -L and -R
switches when testing whether deplibs contains some library
1999-03-14 Erez Zadok <ezk@cs.columbia.edu>
* config.sub: recognize hppa2.0w, yet to be installed at GNU
* config.guess: minor update for FreeBSD-elf, yet to be installed
at GNU
1999-03-14 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (bsdi4*, sys_lib_search_path_spec,
sys_lib_dlsearch_path_spec): fix thinko in variable names; add
standard directories
* ltmain.in (exclude_expsyms): exclude symbols before sorting,
otherwise only the sorted list will have them excluded
* ltconfig.in (file_magic_cmd, file_magic_test_file, freebsd-elf*,
bsdi4*): use full pathnames when possible
* Makefile.am (all-recursive): depend on ACINCLUDE_M4_LIST
(all-local, check-local): remove, unused
* doc/PLATFORMS: updated platforms tested on 1.2f-pre; clean up;
reorder; untabify
* config.guess, config.sub: updated from GNU common
* doc/libtool.texi: notes on thread-safety problems of
libltdl/dlopen on GNU/Linux and FreeBSD
* ltconfig.in (aix3*, aix4*): GNU ld on AIX is very broken: it
cannot create working shared libraries. Print a warning
suggesting the user not to use it and disable shared libraries.
1999-03-13 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (global_symbol_to_cdecl): was reset before trying
`symprfx=_', rendering the test with `_' useless
* doc/libtool.texi (AM_PROG_LIBTOOL): eliminate overfull boxes
* doc/libtool.texi: complete dlopening/libltdl documentation
* ltconfig.in (osf3*, osf4*, deplibs_check_method): pass_all does
not really work; use file_magic instead.
(osf3*, osf4*): customize sys_lib_[dl]search_path_spec
* ltconfig.in (file_magic_test_file): new variable; if set, it
will be used as an argument for $file_magic_cmd to test whether
the regex in deplibs_check_method matches its output
(file_magic_cmd): use full pathnames whenever possible
* ltconfig.in (sys_lib_dlsearch_path_spec): new variable, that
lists the system *run-time* search path. Listed directories are
not implicitly hard-coded into executables.
* ltmain.in: use it, but *never* discard -R flags
* doc/libtool.texi: document it
* NEWS: ditto
Reported by Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
* tests/sh.test: look for `$Xsed' without `$echo "X...'
* ltconfig.in, ltmain.in: fixed a few such occurrences
* ltmain.in (-static, -all-static): revert March 11's patch, I was
barking up the wrong tree
1999-03-12 Thomas Tanner <tanner@gmx.de>
* libltdl/ltdl.c: removed FILENAME_MAX since LTDL_FILENAME_MAX
is sufficient and doesn't break HP/UX
1999-03-11 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in: (global_symbol_pipe) extract symbol tag from the
output of NM too
(global_symbol_to_cdecl): new variable; convert the output of
global_symbol_pipe to valid C declarations; on HP/UX, convert
text symbols to function declarations
* libtool.m4: similar modifications
* doc/libtool.texi: document new variable
* ltmain.in: use global_symbol_to_cdecl to generate lt_dlpreopened
symbols; avoid extracting symbol lists from dlpreopened files
twice; do not filter symbols from dlpreopened libraries
* TODO: fixed HP/UX dlpreopening problem
* ltmain.in (-static, -all-static): set dlopen_self to
$dlopen_self_static regardless of link_static_flag or pic_flag
* ltmain.in: FreeBSD bug that needs symbol table compiled with
-fPIC is fixed in release 3.1; use it only for 2.* and 3.0
1999-03-11 Thomas Tanner <tanner@gmx.de>
* ltmain.in: when building a library it doesn't make
sense to remove a relinked program ("lt-" prefix)
1999-03-11 Alexandre Oliva <oliva@dcc.unicamp.br>
* mdemo/main.c (main, test_dl, test_dlself): propagate error
conditions better, to avoid false positives
* */configure.in: AC_SUBST(LIBTOOL_DEPS)
* */Makefile.am $(OBJECTS): depend on libtool
(libtool): rebuild automatically
* ltconfig.in: set dlopen_* variables to unknown when appropriate
* ltmain.in: only emit warning about lack of AC_LIBTOOL_DLOPEN if
*all* dlopen_* variables are set to unknown
1999-03-11 Thomas Tanner <tanner@gmx.de>
* ltmain.in: delete the old output files (incl. the relinked binary)
before linking.
* ltconfig.in: replaced `configure' with $progname and all
line numbers with @LINENO@
1999-03-11 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c (strdup): cannot return str when it's NULL
because of const correctness
1999-03-10 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c (strdup): always use our own, because the
standard strdup won't use lt_dlmalloc
* ltconfig.in (dlfcn.h): function definition may cause warnings;
define variable instead
* ltmain.in: properly create an export file for a program,
avoiding error messages about not finding it
* TODO: need to document AC_LIBLTDL_*; static self dlopening
problem fixed
* libtool.m4 (AC_LIBTOOL_DLOPEN): just set lt_dlopen=yes
(AC_LIBTOOL_SETUP): if lt_dlopen=yes, add --enable-dlopen to
libtool_flags; drop --enable-dlopen-self
* ltconfig.in: perform all the dirty work of testing for dlopening
support, because we need platform-dependent equivalents for
-export-dynamic, for self dlopening, and -static, for static self
dlopening
(dlopen_self_static): new configuration variable that is set to
yes only if static programs can dlopen themselves
* ltmain.in (-static, -all-static): dlopen_self=dlopen_self_static
* libltdl/configure.in (libltdl_cv_need_uscore): do not assume
dlfcn.h and LTDL_LAZY exist; use LTDL_GLOBAL and LTDL_LAZY_OR_NOW.
This test is likely to fail if self-dlopening does not work,
especially because we do not link the program with
-export-dynamic. Let's just hope that platforms whose symbol
names start with underscores will also accept underscores for
dlopen. We should probably use libtool to compile and link this
test, so that we can use -export-dynamic.
* mdemo/Makefile.am (@LIBLTDL@): depend on ../libltdl/config.h
* configure.in: fix AC_OUTPUT_COMMANDS for ltconfig and ltmain.sh
so that they work if srcdir is relative too
* libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
avoid introducing multiple --enable options when re-running
config.status
* libltdl/configure.in: if enable_ltdl_* is not set, assume no
* configure.in: if enable_ltdl_install is not set, enable it
* libltdl/configure.in: only assume implicit installation if
libltdl was libtoolized. If not, print a warning message
suggesting the use of --enable-ltdl-install or of one of the
AC_LIBLTDL_* macros.
* libtool.m4 (AC_LIBTOOL_SETUP): new macro, that does all the
configure-work that AC_PROG_LIBTOOL used to do; add
--cache-file=$cache_file to libtool_flags
(AC_PROG_LIBTOOL): call AC_LIBTOOL_SETUP, save the cache, run
ltconfig and reload the cache
* configure.in: run AC_LIBTOOL_SETUP, then set LIBTOOL_FLAGS to
libtool_flags
* ltconfig.in: support --cache-file switch. If it is used, load
the cache in the beginning and save it just before terminating
* tests/Makefile.am (TESTS): run demo-nofast before demo-shared
* configure.in: create ltconfig and ltmain.sh at the end of
config.status, if they do not exist. This fixes the bootstrap
problem reported by Erez Zadok <ezk@cs.columbia.edu>
1999-03-10 Thomas Tanner <tanner@gmx.de>
* NEWS: sorted by importance
* Makefile.am: set LIBTOOL_FLAGS when generating libtool
* configure.in: check for dlopen support and set LIBTOOL_FLAGS
accordingly
* configure.in: fix spacing for --disable-ltdl-install,
always configure libltdl, add libltdl/acinclude.m4 to
ACINCLUDE_M4_LIST, disable installation of libltdl if necessary
* libltdl/Makefile.am: set version info for libltdl.la
* libltdl/configure.in: don't check whether
enable_ltdl_convenience/install was set so that libltdl
can be used as independent package (libltdl.tar.gz) without
the need to use --enable-ltdl*
* libltdl/ltdl.c: minor cleanups, allocate the line cache
dynamically (lt_dlopen)
1999-03-10 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c (lt_dlopen): some preprocessors choke if the `#'
of `#define' is not in column 1; let's go back to fortran! :-)
Add #undefs too, to avoid potential warnings or errors.
1999-03-09 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
renamed convenience libltdl, dropped toinst hack for installable
* libltdl/Makefile.am: ditto
* libltdl/configure.in: ditto; abort if none of the macros is used
* ltmain.in: $output_objdir/$objdir/ -> $output_objdir/lt-
1999-03-09 Thomas Tanner <tanner@gmx.de>
* libltdl/ltdl.c (lt_dlopen): don't hardcode the length of the
constant strings
1999-03-09 Alexandre Oliva <oliva@dcc.unicamp.br>
* Makefile.am (install-data-hook): install libltdl as a directory,
not as a tar-file, so that we do not modify the build tree at make
install time
* libtoolize.in (ltdl, ltdl_tar): update
* configure.in, Makefile.am, NEWS: install libltdl by default
* libtool.m4 (AC_LIBLTDL_INSTALLABLE, AC_LIBLTDL_CONVENIENCE):
new macros
* NEWS: ditto
* libltdl/configure.in: if none of the new macros or configure
arguments are used, warn and build convenience library only
* libltdl/Makefile.am: conditionally build convenience libltdl.la
* mdemo/configure.in: use AC_LIBLTDL_CONVENIENCE
* mdemo/Makefile.am: refer to @LIBLTDL@
1999-03-09 Gary V. Vaughan <gary@gnu.org>
* NEWS: updated.
1999-03-08 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in: extract symbols from program objects to nlist first,
then translate them to the export_symbols format. Now it works,
but it appears to be needlessly extracting the symbol list from
dlpreopened libraries twice
* ltmain.in: temporarily disable dlopen_self when linking with
-static or -all-static, until we figure out how to test whether it
works at configure time
* TODO: remember to fix this later
* tests/build-relink.test: when hell is expected to fail, run it
within a subshell and redirect stderr to stdout, so that dynamic
linker errors are only printed in verbose mode
* ltmain.in (hardcode_libdir_separator, compile_rpath,
finalize_rpath): only substitute hardcode_libdir_flag_spec if
hardcode_libdirs is non-empty
* libtool.m4 (AC_LIBTOOL_DLOPEN): do not depend on the existence
of dlfcn.h nor on the definition of RTLD_LAZY
* tests/build-relink.test: hellT was renamed to lt-hell
* libltdl/Makefile.am (@TOINST@/libltdl.la): do not hide the
command that creates the TOINST directory; remove `-o $@' from the
LINK command, $(LINK) already contains it.
1999-03-08 Thomas Tanner <tanner@gmx.de>
* doc/libtool.texi (tests): documented demo-nofast.test and
renamed cdemo* to demo*
1999-03-08 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/Makefile.am, libltdl/configure.in, mdemo/Makefile.am:
libltdl must not be renamed; if there's a problem with the install
option, let's fix it, not just work around it by breaking code of
users of the convenience library
* tests/build-relink.test: link broken libhello.la with at least
one libtool object
1999-03-08 Thomas Tanner <tanner@gmx.de>
* TODO: updated (libltdl build problem fixed)
* 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
1999-03-07 Alexandre Oliva <oliva@dcc.unicamp.br>
* tests/Makefile.am (TESTS): run hardcode before build-relink
trashes libhello.la
* tests/hardcode.test (need_prefix): set to yes so that _inst is
not removed
* ltmain.in (compile_command): append finalize search path to
compile search path
* tests/build-relink.test: new; check shlibpath_overrides_runpath
* tests/Makefile.am (TESTS): add build-relink.test; remove
hardcode.test duplicates
* doc/libtool.texi: document it
* ltmain.in (relink_command): do not prepend cd `pwd` to it, the
scripts already enters the correct directory, and expanding the
pathname would prevent the build tree from moving
* ltconfig.in (enable_fast_install): force it to no only if we
need relink; in the other cases, set it to needless
* ltmain.in (fast_install): if needless, set relink_command empty
* doc/libtool.texi (fast_install, shlibpath_overrides_runpath):
document the new behavior
* ltconfig.in (enable_fast_install): test whether it can be forced
off after shlibpath_overrides_runpath and enable_shared are set
1999-03-07 Thomas Tanner <tanner@gmx.de>
* TODO: updated
* NEWS: updated
* TODO: scheduled some items for next release/future
* demo/configure.in: use AC_LIBTOOL_DLOPEN
* libtool.m4: added AC_ENABLE/DISABLE_FAST_INSTALL macro
* ltconfig.in: added --disable-fast-install flag
* ltmain.in: partially reverted Alexandre's patch and implemented
on-demand linking in such a way that the old developer-friendly
linking style is optional,
don't hardcode library paths that are in the system search path,
fixed a typo in lib_search_path,
implemented -export-symbols-regex for programs
1999-03-06 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c (LTDL_LAZY_OR_NOW): renamed from LTDL_NOW; prefer
LAZY loading because it's much faster and NOW is apparently
partially broken on FreeBSD
Reported by Archie Cobbs <archie@whistle.com>
* ltconfig.in (archive_expsym_cmds, solaris, without_gnu_ld):
$lib.exp already starts with $objdir/
Reported by Godmar Back <gback@cs.utah.edu>
* ltmain.in (freebsd): compile symbol table file with pic_flag
only on FreeBSD and when not static linking; it's been causing
trouble on platforms such as OpenBSD.
1999-02-26 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (cygwin): s/\\(mingw\\|cygwin\\)32/\\1/g. Must've
missed this file when I changed to cygnus' new sanction name.
* ltconfig.in (sub_uncdrive): removed. This won't work with
the next version of cygwin.
(sub_uncdir): removed. We use <drive>:/path/to/executable now.
* libtool.m4 (AC_PROG_LD): removed sub_uncdrive and sub_uncdir.
1999-02-25 Thomas Tanner <tanner@gmx.de>
* TODO: added items for next alpha release, ILD etc.
* libltdl/ltdl.c: removed unnecessary check from presym_sym,
fixed bug in lt_dlclose, allow lt_dlopenext(NULL),
set deplibs for lt_dlopen(NULL)
1999-02-24 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (file_magic_regex): sed `10q' is faster than `11,$d'
1999-02-22 Thomas Tanner <tanner@gmx.de>
* ltconfig.in (dlopen, dlopen_self): default is unknown
* ltmain.in: fixed -dlopen self, print a warning
if -dlopen is used without AC_LIBTOOL_DLOPEN
* mdemo/Makefile.am: use -dlopen self
1999-02-22 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in: added missing mkdir $progdir for on-demand executable
* ltmain.in: create on-demand executable as $progdir/$$-$program,
and rename it to $progdir/$program only when it's finished, to
avoid race conditions. We can still get the program linked
multiple times, if multiple instances are started simultaneously
and the program does not exist, but they are very unlikely to
interfere with each other. There's still a possibility that one
process removes the $program another has just created, and doesn't
replace it before the other tries to run it, in a system whose
`mv' is not atomic, so it will $rm then $mv, but so what? :-)
Locking files have been avoided to prevent dead-locks in case they
are left over after a reboot or crash.
* TODO: removed ILD, soon to be merged, and added convenience
libraries docs
* ltconfig.in (irix5*, irix6*, shlibpath_overides_runpath): yes
* ltmain.in: remove on-demand executable in the proper place, and
just warn if it can't be removed; add wrapper code to test whether
the install-executable is newer than the build-executable, to
relink it when it appears to be out-of-date
* libltdl/configure.in: check for dld.h
* libltdl/ltdl.c: include dld.h
(dld_open) it's spelled memory_error, not no_memory_error
Reported by Stefan Burstroem <f94sbu@efd.lth.se>
* ltmain.in: fix typos in my last change (s/ocmpile/compile/)
1999-02-21 Thomas Tanner <tanner@gmx.de>
* libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
when dlopening the executable
* libtool.m4 (AC_LIBTOOL_DLOPEN): removed the redundant "yes: "
prefix for lt_cv_dlopen, renamed lt_cv_dlopen_LIBS
to lt_cv_dlopen_libs (more consistent)
* ltmain.in: implemented -dl[pre]open self, necessary for
lt_dlopen(NULL), generation of exported symbols was broken
1999-02-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in: avoid duplication of -L switches, it sometimes breaks
IRIX 5.2's linker
* ltconfig.in (freebsd*, finish_cmds): expand objformat here
Reported by Vladimir Kushnir <kushn@mail.kar.net>
1999-02-20 Vladimir Kushnir <kushn@mail.kar.net>
* ltconfig.in (freebsd-elf*, need_version, need_lib_prefix): no
(freebsd-elf*, library_names_spec): add $libname.so instead of
$libname.so$versuffix; add $libname$release.so
1999-02-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* doc/libtool.texi: remove ticks from menu items; it breaks TeX
Reported by Erez Zadok <ezk@cs.columbia.edu>
* ltmain.in: fixes for export-symbols dry-run
* ltconfig.in (shlibpath_overrides_runpath): new variable;
determines whether LD_LIBRARY_PATH or equivalent can be used to
override a hard-coded library search path; default to unknown
(linux-gnu*): set it to no
(solaris*, sunos4*): set it to yes
* ltmain.in (build_libdirs_flags, build_libdirs, build_rpath): if
shlibpath_overrides_runpath is not yes, arrange that wrapper
scripts create, on demand, programs that use uninstalled libraries
* doc/libtool.texi: document it
* libtool.m4 (AC_LIBTOOL_DLOPEN): check for dlopen in libc before
trying in dl. Add the actual dlopening type to lt_cv_dlopen, and
add any needed libraries to lt_cv_dlopen_LIBS. Add test for
MS-Windows' LoadLibrary. Check whether a program can dlopen
itself only if we really have dlopen(), not some equivalent
function, but leave room for testing with other mechanisms.
(AC_PROG_LIBTOOL): assume some form of dlopen, but not
dlopen(NULL), is available if AC_LIBTOOL_DLOPEN is not used, for
backward compatibility.
1999-02-20 Archie Cobbs <archie@whistle.com>
* libltdl/ltdl.c (lt_dlopen): use newhandle instead of handle
where appropriate, when dlopening a non-libtool library
1999-02-19 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (export_symbols_cmds): renamed from
export_symbols_cmd.
(cygwin, mingw): Be sure to compile the ltdll.c object before
extracting the exported symbol list. Extract only the names
of the exported symbols from the def file [otherwise we might
run into trouble with -export-symbols-regex].
(archive_expsym_cmds): Regenerate the def file from the symbol
export list.
(delay_variable_subst): New sed expression to allow us to delay
evaluation of $foo in a double_quote_subst evaluated variable by
using \$.
* ltmain.in (export_symbols_cmds): evaluate each ~ delimitted cmd
separately.
* doc/libtool.texi (libtool script contents): new paragraph to
explain the difference between _cmd and _cmds suffixes for
variable names.
(export_symbols_cmds): renamed from export_symbols_cmd.
1999-02-18 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (ld_shlibs): move -soname and similar flags to the
end of archive_cmds and archive_expsym_cmds, so as to prevent
gcc's collect2 from inserting an object file between -soname and
the library name
* ltconfig.in (openbsd*, netbsd*, library_names_spec): append
alternate name without ${release}, otherwise build fails when
-release is used
1999-02-18 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (archive{,_sym}_commands): Be careful not to
re-export the dll entry points DllMain@12, _cygwin_dll_entry@12 and
_cygwin_noncygwin_dll_entry@12 to avoid bugs with the wrong entry
function being called with inter-dll dependencies.
Reported by DJ Delorie <dj@delorie.com>
* THANKS: Added DJ Delorie, since his code inspired the impgen.c
program and because he has patiently answered all of the
irritating dll and win32 questions I have fired at him.
* ltmain.in (version_type): Oops. Irix versioning implies that
major version numbers are 1 based (not zero based). Fixed.
* ltmain.in (version_type): Implement irix versioning.
* ltconfig.in (irix{5,6}*): Use new irix shared object versioning.
* TODO: remove irix versioning from TODO list.
* ltmain.in (impgen.c): Added a new embedded C file that can be
used under win32 to extract a def file (symbol export list) from a
dll that has none. Code to use it might need to wait for the ILD
merge before it will be useful...
1999-02-18 Thomas Tanner <tanner@gmx.de>
* TODO: updated
* autogen: only libltdl needs autoheader
* doc/libtool.texi (link mode): documented -export-symbols-regex
and updated -export-symbols
* doc/libtool.texi (script contents): documented
always_export_symbols, export_symbols_cmd, exclude_expsyms,
include_expsyms, dlopen and dlopen_self
more detailed description of need_lib_prefix
* ltconfig.in: a "'" was missing in the default value
of export_symbols_cmd
* ltmain.in: implemented -export-symbols-regex
1999-02-17 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in: (freebsd2*, sunos4*, exclude_expsyms): exclude
_GLOBAL_OFFSET_TABLE_
* ltmain.in: implement exclude_expsyms with egrep
* libltdl/ltdl.c (lt_dlmalloc, lt_dlfree): SunOS' cc can't cope
with argument lists, we __P even in the definition
1999-02-15 Thomas Tanner <tanner@gmx.de>
* cdemo/Makefile.am: renamed *foo1 to *foo, removed $(MATH_LIB)
* cdemo/foo1.c: renamed to foo.c
* libltdl/ltdl.c: eliminated lt_dltype, in presym_open():
search for @PROGRAM@ if filename == 0, in lt_dlopen():
fixed bug for filename == 0
* libltdl/ltdl.h: use __P macro for lt_dlmalloc/free
* libtool.m4: new macro AC_LIBTOOL_DLOPEN: checks for dlopen
and dlopen(NULL) support
* ltconfig.in: added new variables dlopen and dlopen_self,
--enable-dlopen[-self] flags for AC_LIBTOOL_DLOPEN
* ltmain.in: use dlopen[_self], dlpreopen files if there's no
dlopen support, build lt_preloaded_symbols only if
-dl[pre]open was used, include program symbols if -export-dynamic
was specified and there's no dlopen(NULL) support
* mdemo/configure.in: use AC_LIBTOOL_DLOPEN
* mdemo/main.c: demonstrate lt_dlopen(0)
1999-02-15 Gary V. Vaughan <gary@gnu.org>
* demo/dlmain.c (_WIN32): The lt_symlist structure is now const,
so my original horrible temporary win32 hack no longer worked.
Here is a new horrible temporary hack to prevent helldl from SEGVing
on win32. I will fix this properly when we figure out how to do
data exports from dlls.
1999-02-14 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (AC_CHECK_LIBM): do not set MATHLIB or AC_SUBST it,
this has a negative side-effect of causing automake to add MATHLIB
to every single Makefile. Let's use plain AC_CHECK_LIB, so that
LIBS get set, until we find a better alternative
* *demo/Makefile.am: remove $(MATHLIB)
* libltdl/configure.in: add a DESCRIPTION argument to AC_DEFINEs
where appropriate, so as to get rid of acconfig.h
* libltdl/acconfig.h: removed
1999-02-13 Thomas Tanner <tanner@gmx.de>
* *demo/Makefile.am: use $(MATHLIB)
* *demo/configure.in: use AC_CHECK_LIBM
* doc/libtool.texi: renamed file_magic_command to file_magic_cmd,
renamed archive_sym_cmds to archive_expsym_cmds
* ltconfig.in: ditto
* ltmain.in: ditto
* libltdl/ltdl.c: use lt_dlmalloc/free
* libltdl/ltdl.h: define lt_dlmalloc/free
* libtool.m4: added AC_CHECK_LIBM macro
* ltconfig.in: renamed archive_sym_cmds to archive_expsym_cmds,
added always_export_symbols, export_symbols_cmd, exclude_expsyms,
include_expsyms, removed archive_cmds for cygwin/mingw and AIX,
on Solaris store the exported symbols list in objdir
* ltmain.in: allow -export-symbols for modules, use thread_safe flag,
add include_expsyms to the exported symbols
1999-02-12 Gary V. Vaughan <gary@gnu.org>
* libltdl/ltdl.h (_LTDLL_EXTERN): libltdl is no longer linked as a
shared library, so the _declspec's were preventing the linker from
resolving symbols on win32. They have been removed now.
1999-02-12 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in: don't try to read objdir/libname.la before it is
created!
* ltmain.in: create libname.lai at link time, not at install time,
but still create it at install time if it is missing
Reported by Akim Demaille <demaille@inf.enst.fr>
* libltdl/ltdl.c (tryall_dlopen): strcmp filenames was reversed
1999-02-11 Thomas Tanner <tanner@gmx.de>
* autogen: libltdl needs autoheader
* 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
1999-02-10 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (irix5*, irix6*, osf3*, osf4*): do not use
-set_version in archive_cmds if verstring is empty
(irix6*, shlibpath_var, sys_lib_search_path-spec,
deplibs_check_method): set appropriate values depending on
selected ABI, -32, -n32 or -64, as set in LD by libtool.m4
(uts4*): remove dot between .so and versuffix
1999-02-08 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (irix5*, irix6*, deplibs_check_method): use
file_magic for inter-library dependency tracking
* ltconfig.in (irix5*, hardcode_libdir_separator): set it to a
colon, because on IRIX 5 only the last -rpath switch prevails, and
it can be a list of colon-separated directories. This change will
affect irix6 too, but that's not a problem.
* ltconfig.in (irix5*, library_names_spec): add soname_spec,
otherwise we can't dlopen
1999-02-08 Thomas Tanner <tanner@gmx.de>
* ltconfig.in: according to Marcus Sundberg <mackan@stacken.kth.se>
HP/UX, IRIX, OpenBSD, Digital Unix and SunOS support
need_version=no and need_lib_prefix=no,
fixed a bug in Solaris' archive_sym_cmds
1999-02-04 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (ac_cv_sys_global_symbol_pipe): accept TAB in
addition to space as separator, and allow more than one space
between the symbol code and the symbol name; HP/UX's nm, for
example, uses two spaces
* ltconfig.in (global_symbol_pipe): ditto
(bsdi4, deplibs_check_method): variable name was misspelled
* libltdl/configure.in (libltdl_cv_preloaded_symbols): rewrite
test, so as not to depend on the way global_symbol_pipe is
initialized; the current test would get false positives, as
global_symbol_pipe was initialized `x=""', not `x='
* libltdl/ltdl.c (find_module): initialize filename if dir is NULL
Reported by Godmar Back <gback@cs.utah.edu>
1999-02-04 Godmar Back <gback@cs.utah.edu>
* libltdl/ltdl.c (lt_dlopenext): missing space for terminator when
allocating memory for shlib_ext
1999-02-03 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c (lt_dlopenext): tmp would be trashed if shlib_ext
was longer than 3 characters
1999-02-02 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in: new config.guess returns *-*-cygwin now instead of
*-*-cygwin32. sed -e 's%\(cygwin\|mingw\)32%\1%g' ltconfig.in
* ltmain.in: sed -e 's%\(cygwin\|mingw\)32%\1%g' ltmain.in
* ltconfig.in (hardcode_libdir_flag_spec, allow_undefined_flag,
archive_cmds, archive_sym_cmds, old_archive_from_new_cmds):
removed duplication of config by assuming that `test $with_gcc =
yes' implies gnu ld, otherwise MSVC++ (which I haven't tested
since I inheritted the code from Ian Lance Taylor btw!) is implied.
1999-01-28 Gary V. Vaughan <gary@gnu.org>
* ltmain.in: Reverted this change of Alexandre's from the
1999-01-25; "don't try to use .o instead of .lo just because
there's no PIC flag. It loses if --disable-static, and there's
not much point if we're referring to the same file anyway...",
because not all linkers will accept .lo object names.
* ltmain.in: In the case where --disable-static is specified (as
noted in Alexandre's log entry), we just link some .o files to
prevent the original error.
Reported by Andrey Slepuhin <pooh@msu.ru>
1999-01-27 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtoolize.in: search for A[MC]_PROG_LIBTOOL, not
AM_PROG_LIBTOOL
Reported by Jeff Garzik <jgarzik@pobox.com>
1999-01-27 Gary V. Vaughan <gary@gnu.org>
* THANKS: Now that we have a policy, applied it to the existing
list. This in no way demeans the work of those people removed
from the THANKS file, who are still credited in the ChangeLogs and
without who's work, libtool would not work so well on many
platforms, but serves to highlight the outstanding and continued
contribution the remaining people have made. And I quote, "We
reserve THANKS for people who have made major contributions, and
leave the credit to the others for the ChangeLog only."
* THANKS: added Sam Vilain.
* ltconfig.in ($echo): When using printf to replace echo the shell
expands %s\n to %sn. Changed to use "%s\n" (with quotes).
Reported by Sam Vilain <sam.vilain@nz.unisys.com>
1999-01-27 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c (find_file): fix endless loop condition
(find_module): filename allocation was off by 1
* libltdl/Makefile.am (distclean-local): renamed from
distclean-hook, that didn't work
* libltdl/ltdl.c (lt_dlopen, non-.la): find_file now returns 0 on
failure
* Makefile.am (ltconfig, ltmain.sh): some broken makes don't like
macros in targets; replace $(srcdir) with @srcdir@
* configure.in (ACINCLUDE_M4_LIST): same problem; expand $srcdir
* libltdl/Makefile.am (@TOINST@/libltdl.la): if installation is
enabled, create to-be-installed libltdl.la within @TOINST@
directory
(noinst_LTLIBRARIES): even if installation is enabled, build
convenience libltdl.la, otherwise builds of random packages may
fail if the user happens to enable installation
(distclean-hook): wipe out $(TOINST)
* libltdl/configure.in: set TOINST and LIBLIBS as appropriate;
don't set NOINSTLIBS any more
* mdemo/Makefile.am: use libltdl.la
* libltdl/ltdl.c (find_file): oops, filenamesize was miscomputed
* libltdl/ltdl.c (find_file): allocate filename dynamically
* libltdl/configure.in (AC_PROG_LIBTOOL): automake does not
recognize it and fail, better keep using AM_PROG_LIBTOOL until the
next release of automake
* demo/configure.in, cdemo/configure.in: ditto
* depdemo/configure.in, mdemo/configure.in: ditto
* libltdl/ltdl.c: make all global strings char[], not char*; check
that all calls to malloc() are properly cast
(strdup, strchr, strrchr, trim, free_vars): declare as inline
(find_module): allocate filename dynamically; support null dir
(free_vars): free dir and name only if non-null
(lt_dlopen): keep dir as NULL if not given; fix expression that
calculated the size of name; only free and name if non-null
(lt_dlopenext): allocate tmp dynamically
* configure.in (pkgdatadir): expand ${PACKAGE} at configure-time,
just like automake does
* configure.in (pkgdatadir): define pkgdatadir explicitly, and
comment that automake does not need it, but libtoolize does
* Makefile.am (aclocaldir): do not set it explicitly, automake
does already
* configure.in (TIMESTAMP): use mkstamp here too
1999-01-27 Thomas Tanner <tanner@gmx.de>
* cdemo/configure.in: renamed AM_PROG_LIBTOOL to AC_PROG_LIBTOOL
* demo/configure.in: likewise
* depdemo/configure.in: likewise
* libltdl/configure.in: likewise
* mdemo/configure.in: likewise
* libltdl/ltdl.c: in find_module() check whether libdir is defined,
tryall_dlopen(): move deallocation of an already opened handle
to lt_dlopen(), allocate the directory in lt_dlopen() dynamically,
minor cleanups, fixed memory leak (name)
* libtool.m4: renamed all AM_ macros to AC_ and added aliases for
compatibilty, updated AC_SYS_NM_PARSE (no undefined symbols,
don't count the symbols)
* ltconfig.in: added thread_safe_flag_spec (not used yet),
added generic variable for linker options "linkopts" in
all archive_cmds
* ltmain.in: added -thread-safe flag (unused)
1999-01-26 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (LTCONFIG_VERSION): damn!, adding TIMESTAMP doesn't
always work, because then different ChangeLog timestamps fail to
pass the version test. Instead of forcing both ltconfig and
ltmain.sh to be updated every time ChangeLog changes, better
revert it
* ltconfig.in (LTCONFIG_VERSION): add TIMESTAMP, remove
explicit quotes and add it to the list of variables to quote
* ltmain.in: reworded `dropped inter-library dependencies'
message, and added a warning about inter-library dependencies even
for non-module builds
1999-01-26 Gary V. Vaughan <gary@gnu.org>
* Makefile.am (install-data-hook): Don't show the if expression
that tests for gzip with a conditional error message; just do it
quietly and show the error if it fails, or the next action if it
succeeds.
* configure.in: It seems Alexandre accidentally removed the
AC_SUBST(pkgdatadir) line recently which breaks libtoolize.
Reverted that small change.
1999-01-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c (find_module): test old_name and dlname for NULL,
not len==0
* libltdl/configure.in (libltdl_cv_objdir): yes, appending the "/"
in configure.in was much simpler
* libltdl/ltdl.c (objdir): ditto
* libltdl/ltdl.c (objdir): string collation isn't portable; strcat
"/" explicitly. Or should this be moved to configure.in?
1999-01-25 Thomas Tanner <tanner@gmx.de>
* libltdl/ltdl.c: allocate the variables in lt_dlopen() dynamically
1999-01-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (file_magic): use egrep instead of expr to support
more general regular expressions
(file_regex): remove it; the name is misleading, it's not used
anywhere, and probably will never be
* ltconfig.in, doc/libtool.texi: ditto
* ltconfig.in (linux-gnu*, deplibs_check_method): extend regex to
support `LSB dynamic lib' in the output of `file'
Reported by Scott D. Heavner <sdh@po.cwru.edu>
* ltmain.in (dependency_libs, xrpath): add -R switches to
dependency_libs only just before creating the .la file; they
should not be passed to the C compiler or linker at
library-creation time, since we don't know whether it is supported
* ltconfig.in (freebsd2.2*, hardcode_minus_L): for FreeBSD 2.2.6,
this must be `no'
* mkstamp: move the sed script to extract revision and date
information into a separate shell-script, so that we can break
lines between commands; FreeBSD's sed doesn't like `;' after `t'
Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
* Makefile.am: use mkstamp
* THANKS: added Axel Thimm
* ltmain.in: don't try to use .o instead of .lo just because
there's no PIC flag. It loses if --disable-static, and there's
not much point if we're referring to the same file anyway...
* ltmain.in (pass_all=none, droppeddeps): set only if deplibs was
non-empty
1999-01-24 Thomas Tanner <tanner@gmx.de>
* libltdl/ltdl.c: minor bugfixes, append a "/" the search
directory only if necessary
* ltconfig.in: added support for FreeBSD >= 3.0
(patch from Kurt D. Zeilenga)
* THANKS: added Kurt D. Zeilenga
1999-01-24 Thomas Tanner <tanner@gmx.de>
* doc/libtool.texi (libltdl): list supported dlopen mechanisms,
added function lt_dlopenext(), removed reference to
LTDL_PRELOADED_SYMBOLS in LTDL_SET_PRELOADED_SYMBOLS
* libltdl/ltdl.c: partially reverted Alexandre's dynamic string
allocation change (it was not necessary and the code was unreadable),
cleanups, removed usr_search_path_size, renamed usr_search_path
to user_search_path, in find_module() also check for moved
modules, merged find_file() and find_library(),
added lt_dlopenext(), in lt_dladdsearchdir() no longer reset
the search path if 'search_dir' == NULL and don't use realloc()
(might not be available on all platforms),
removed __P((void)) in the declaration of lt_dlgetsearchpath()
* libltdl/ltdl.h: added lt_dlopenext()
* ltconfig.in: AIX archive commands were broken,
fixed a MAJOR bug in global_symbol_pipe which caused
"demo-shared.test;demo-make.test" to fail (libtool must not extract
undefined symbols of libraries, i.e. symcode must not contain 'U')
* tests/Makefile.am (clean-local): "make distclean" in cdemo, too
1999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br>
* Makefile.am (ltconfig, ltmain.sh): add ChangeLog Revision to
TIMESTAMP
* configure.in: get values of PACKAGE and VERSION set by
AM_INIT_AUTOMAKE, and extract only TIMESTAMP from the ChangeLog
* libltdl/ltdl.c (lt_dlopen): if we're reusing a previously opened
handle, don't reset its name nor add it to the list, and free the
name we have allocated
Reported by Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
* Makefile.am (ltconfig, ltmain.sh, TIMESTAMP): let's not assume
anything about the format of the date, just that it does not
contain `$'
1999-01-22 Gary V. Vaughan <gary@gnu.org>
* configure.in (date): echo the version number during
configuration, and show $date for cvs versions.
* Makefile.am ($(srcdir)/ltconfig): Oops. cvs co keyword
expansion ate the sed expression! Changed sed separator to '%'
because there are '/' in the date. Added missing '\(' to search
expression. Inserted a null string to stop cvs from expanding it
next time =)O|
($(srcdir)/ltmain.sh): ditto.
1999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br>
* Makefile.am (TSDEPS_DIST): dist-time dependencies for timestamps
(timestamps, update-timestamps): check whether TSDEPS_DIST are
up-to-date and update ltconfig and ltmain.sh if needed
(ltconfig, ltmain.sh): depend on TSDEPS; replace @TIMESTAMP@ with
the Date tag in the ChangeLog
(TSDEPS): empty unless overridden by update-timestamps
* ltconfig.in, ltmain.in (TIMESTAMP): append timestamp to most
references to VERSION
1999-01-22 Gary V. Vaughan <gary@gnu.org>
* ltmain.in (ild): Revert the change which allowed libtool to
link libraries with dependencies on .la libs.
* NEWS: Removed reference to win32, incase 1.3 ships before
ild is ready.
* doc/PLATFORMS: Removed i686-pc-cygwin32, for the same reason.
* doc/libtool.texi: Removed win32 refs, for the same reason.
1999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (Xsed): add 1 to Xsed definition that goes into
temporary wrapper scripts
* libtool.m4: we don't have Xsed here, expand it manually
Reported by Pavel Roskin <pavel_roskin@geocities.com>
1999-01-22 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
* ltmain.in (finalize_hardcode_libdirs, finalize_rpath): in
platforms that use -rpath, programs must be finalized at
installation time, otherwise build-tree programs will
prefer installed libraries over build-tree ones
1999-01-22 Alexandre Oliva <oliva@dcc.unicamp.br>
* mdemo/Makefile.am (../libltdl/libtool): if it does not exist,
the sub-make for libltdlc.la will take care of it, but we must at
least provide an empty rule for it, otherwise the sub-make will
never run
* demo/configure.in, demo/Makefile.am (DLPREOPEN): reverted; it
didn't make any difference.
1999-01-21 Gary V. Vaughan <gary@gnu.org>
* THANKS: Added Chris Laas <golem@MIT.EDU>
From Chris Laas <golem@MIT.EDU>
* ltmain.in (compile): corrected a typo in compile mode which
caused "gcc: unrecognized option -c-fPIC" errors due to a missing
space.
1999-01-21 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/configure.in: reintroduce code to detect native library
extension
* libltdl/ltdl.c (lt_dlopen): if a .la file name is given, that's
all. Otherwise, lt_dlopen now tries to append .la first. If this
fails, it tries the given filename, and, at last, tries to append
the native library extension to the given filename.
* doc/libtool.texi (lt_dlopen): explain new lookup strategy
* libltdl/ltdl.c: major rewrite to avoid almost all fixed-size
buffers; only `tmp' in lt_dlopen remained. But the code got ugly
:-(
* ltconfig.in (linux-gnu*, finish_cmds): remove erroneous backslash
* demo/configure.in: set DLPREOPEN to -dlopen if we don't have
shared libraries
* demo/Makefile.am (DLPREOPEN): use instead of -dlpreopen
(STATIC): use $(STATIC), not @STATIC@
* mdemo/Makefile.am (STATIC): ditto
* tests/demo-shared.test, tests/demo-static.test: new tests
* tests/mdemo-shared.test, tests/mdemo-static.test: ditto
* tests/Makefile.am: ditto
* doc/libtool.texi: document them
* demo/Makefile.am, mdemo/Makefile.am (STATIC): do not use
-static unconditionally, it can't work with --disable-static
* demo/configure.in, mdemo/configure.in: check whether libtool was
configured to build static libraries and, if not, set STATIC to an
empty string
1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (module, droppeddeps): if libtool could not satisfy
all dependencies of a module, it will only build a static version
of it, and display a warning message
1999-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
* ltconfig.in (aix4*, with_gcc, archive_cmds): fix typo in Andrey
Slepuhin's last patch
1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* Makefile.am (@DIST_MAKEFILE_LIST@): work around Ultrix /bin/sh bug
* tests/nomode.test (must specify a MODE): ditto
Reported by Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* THANKS: Added Rainer Orth
1999-01-20 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
* ltconfig.in: No known version of Solaris 2 hardcoded -L paths.
1999-01-20 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
* ltmain.in: s/n\'t/ not/
* doc/PLATFORMS: updates for sunos4/m68k and aix
1999-01-20 Andrey Slepuhin <pooh@msu.ru>
* ltconfig.in (aix4*): check for reworked collect2, always pass
-bnoentry option to linker when building a shared library
1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (file_magic): follow soft-links before running `file'
on the candidate library; try to avoid entering endless loop
Suggested by Nix <nix@esperi.demon.co.uk>
* ltconfig.in (linux*, solaris*, bsdi4*, sys_lib_search_path):
remove expansion of $LD_LIBRARY_PATH
* ltmain.in (lib_search_path): append the expansion of $shlibpath_var
* doc/libtool.texi: document it
* THANKS: Added Steven Schultz
1999-01-20 Steven M. Schultz <sms@wlv.iipo.gtegsc.com>
* ltconfig.in (bsdi4*, check_shared_deplibs_method): file_magic
(bsdi4*, sys_lib_search_path): add /shlib and other dirs
1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* cdemo/main.c (main): use K&R definition syntax
* mdemo/main.c (test_dl, main): ditto
(test_dl): casts return value of lt_dlsym to appropriate types
* ltmain.in (dlsyms): #define const to nothing if not __STDC__
* ltconfig.in (global_symbol_pipe): #define const to nothing if
not __STDC__
* demo/dlmain.c (main): cast s->address to the appropriate pointer
types, otherwise StunOS4's cc refuses to compile it
* ltconfig.in (sunos4*, without_gnu_ld, with_gcc, archive_cmds):
add -fPIC, because libgcc is multilibbed, and we want the PIC
version of it for shared libraries, otherwise ld complains
* demo/dlmain.c (main): add missing const to declaration of name
* libltdl/ltdl.c (find_module): remove the libdir argument, and
try to open library only as old_name and dir/dlname
(lt_dlopen): use `installed' variable in .la file to decide
whether to use libdir or objdir
* demo/configure.in (AC_C_CONST): added, for portability
* mdemo/configure.in (AC_C_CONST): ditto
* libltdl/configure.in (AC_C_CONST, AC_C_INLINE): ditto
* libltdl/ltdl.c (LTDL_FILENAME_MAX): use FILENAME_MAX if defined
(FILENAME_MAX): replace all explicit uses with LTDL_FILENAME_MAX
(presym_free_symlists, trim): don't return void, for portability
(lt_dlgetsearchpath): replace (void) with __P((void))
* ltmain.in (compile): when compiling both PIC and non-PIC, write
the PIC object to .libs/.lo and only rename it to .lo after
compiling the .o, to avoid fooling make dependencies
* mdemo/main.c (LTDL_PREOPENED_SYMBOLS): remove
1999-01-20 Gary V. Vaughan <gary@gnu.org>
* TODO: Added inter-library deps for ltlibs.
* THANKS: Added Vladimir Kushnir.
1999-01-20 Vladimir Kushnir <kushn@mail.kar.net>
* ltconfig.in (freebsd3*): Define `deplibs_check_method' and
`file_magic_command' for freebsd-elf.
1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* TODO: should we also build a `static' copy of a convenience
library out of .o files?
* ltconfig.in (bsdi4*, netbsd*, uts4*, library_names_spec,
soname_spec): removed duplicate dot before $major
Reported by Steven M. Schultz <sms@wlv.iipo.gtegsc.com> (bsdi4*)
* THANKS: added Manfred Weichel
1999-01-20 Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
* ltconfig.in (sysv5*): same as sysv4.3*
1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c (lt_dlopen): properly detect error condition when
full pathname of non-libtool library is provided
* libltdl/configure.in (libltdl_cv_preloaded_symbols,
HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open
* libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols):
define it to an empty list if libtool won't generate it, so as to
avoid link errors. This will cause silent dlopening failures, but
maybe this is better than failing to link the program...
* libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
declare lt_preloaded_symbols
* doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
* ltmain.in (dlpredeps): removed, reverting 1999-01-17's change
1999-01-19 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/Makefile.am (Makefile): depend on libtool
* ltmain.in (lt_preloaded_setup): function added to symbol list
source file to work around FreeBSD problem
* Makefile.am (check-local): depend on libltdl/Makefile
* mdemo/Makefile.am (mdemo_LDFLAGS, mdemo_LDADD): moved -dlopen
flags to LDADD
* doc/libtool.texi (Using Automake): how to add -dlopen to LDADD
1999-01-19 Gary V. Vaughan <gary@gnu.org>
From Andrey Slepuhin <pooh@msu.ru>
* ltmain.in (hardcode_action) Oops, misapplied the patch!
* ltconfig.in (compile_dependencylbs): removed this
variable and pick up the library dependencies from $deplibs.
* ltmain.in (compile_dependencylibs): removed this
variable, use deplibs to hold these dependencies.
From Andrey Slepuhin <pooh@msu.ru>
* ltmain.in (hardcode_action) make sure deplibs is set to include
all the extra libs added to compile_command.
1999-01-18 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (LIBTOOL_DEPS): set it
* libltdl/configure.in (LIBTOOL_DEPS): AC_SUBST it
* libltdl/Makefile.am (libtool): use it
* doc/libtool.texi (AM_PROG_LIBTOOL): document it
* Makefile.am (libltdl.tar.gz): don't create it as part of the
build, since it is likely to become stale if we do
(install-data-hook): create and install libltdl.tar.gz, without
depending on GNU tar
Reported by Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
1999-01-17 Thomas Tanner <tanner@gmx.de>
* Makefile.am: added libltdl.tar.gz to CLEANFILES
* ChangeLog: some reformatting
* TODO: documentation updates
* doc/libtool.texi: added preliminary libltdl documentation,
updated dlopen and -module documentation,
renamed -avoid-versioning to -avoid-version
documented the libtool script variables compiler_c_o,
compiler_o_lo, need_locks, old_postuninstall_cmds,
postuninstall_cmds, sys_lib_search_path_spec,
fix_srcfile_path, objdir, objext, libext,
documented the two new flags (--ltdl[-tar]) of libtoolize
* libltdl/Makefile.am: incremented the version, removed
libtool dependency so that it can be build independently
* libltdl/configure.in: removed LTDL_SHLIB_EXT hack,
set version to 1.0, use AM_MAINTAINER_MODE,
DLPREOPEN is always supported, check for libtool's objdir variable
(LTDL_OBJDIR)
* libltdl/ltdl.c: some cleanups (moved constants to the beginning
of the file and prefixed all of them with LTDL_, minor optimizations
in find_file() and find_module()), renamed lt_dlpreopen* to
lt_dlpreload* for consistency, removed LTDL_SHLIB_EXT hack,
we don't need unistd.h, DLPREOPEN is _always_ supported,
reverted Alexandre's lt_dlpreopen_default_ change,
try to open the not-installed module before the installed one,
replaced lt_dlsearchpath() with lt_dladdsearchdir(),
lt_dlsetsearchpath() and lt_dlgetsearchpath()
* libltdl/ltdl.h: renamed lt_dlpreopen* to lt_dlpreload*
for consistency, removed the declaration of lt_preloaded_symbols
(should be imported by programs),
reverted Alexandre's lt_dlpreopen_default_ change and added
two new macros LTDL_PRELOADED_SYMBOLS and
LTDL_SET_PRELOADED_SYMBOLS(),
added lt_dladdsearchdir(), lt_dlsetsearchpath() and
lt_dlgetsearchpath()
* libtool.m4: some reformatting
* libtoolize.in: implemented --ltdl, bugfix when checking for
the libtool package directory
* ltconfig.in: removed $thread_safe_flags from Andrey Slepuhin's
AIX patch, renamed sys_lib_search_path to sys_lib_search_path_spec,
some reformatting, fixed typo in deplibs_check_method (unkwnon)
* ltmain.in: documented -o for compile mode, some reformatting,
renamed -avoid-versioning to -avoid-version
renamed sys_lib_search_path to sys_lib_search_path_spec
* mdemo/Makefile.am: use -avoid-version
* mdemo/main.c: use LTDL_PRELOADED_SYMBOLS and
LTDL_SET_PRELOADED_SYMBOLS()
1999-01-17 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (wlarc): set to either '${wl}' or an empty string,
depending on whether archive_cmds runs CC or LD
(gnu_ld=yes, whole_archive_flag_spec): "$wlarc" instead of '${wl}'
* mdemo/Makefile.am (../libltdl/libltdlc.la): depend on
../libtool, because ../libltdl/libtool depends on it
(mdemo_debug_*): copy from mdemo_*, adding -static to LDFLAGS
* ltmain.in (dlpredeps): append dependencies from dlopened modules
(but not dlpreopened ones) after all explicitly linked libraries
* ltconfig.in (need_lib_prefix, need_version,
deplibs_check_method): default to unknown, so that we're
remembered that this needs porting; unknown is interpreted as yes,
yes and none, respectively
(freebsd2*, freebsd3*, sunos4*, need_version): set to yes
(freebsd2*, freebsd3*, library_names_spec): libraries without a
version number are not used by `ld'; add $versuffix;
Reported by Ben Jackson <ben@ben.com>
* ltmain.in (deplibs_check_method): alias unknown to none
(need_version): if vinfo was not provided and release info was,
zero out versuffix only if we don't need_version.
* doc/libtool.texi: document what `unknown' means
* libltdl/ltdl.h (lt_dlpreopen_default): reverted to a macro
without arguments, that calls lt_dlpreopen_default_ with
lt_dlpreloaded_symbols
* libltdl/ltdl.c (lt_dlpreopen_default_): renamed from
lt_dlpreopen_default
(find_module) tryall_dlopen old_name first, so that we don't
override statically linked symbols with dlopened ones
1999-01-15 Gary V. Vaughan <gary@gnu.org>
From Andrey Slepuhin <pooh@msu.ru>
* libtoolize.in (cd $pkgdatadir): Make sure we return the the
working directory when this is done.
From Andrey Slepuhin <pooh@msu.ru>
* ltconfig.in (aix): Use shared library support correctly on
aix4*, and tweak the config for aix3.
* NEWS: added aix3 and aix4 to list of hosts with improved
support.
* THANKS: added Andrey Slepuhin <pooh@msu.ru>.
1999-01-15 Thomas Tanner <tanner@gmx.de>
* Makefile.am (@DIST_MAKEFILE_LIST@): added a second '$'
before abs_scrdir, removed ltconfig and ltmain.sh from
EXTRA_DIST (automake distributes them by default)
1999-01-14 Thomas Tanner <tanner@gmx.de>
* autogen: moved faking of the libtool scripts before
the call of automake, so that ltconfig and ltmain.sh
are included in the distribution
* ltconfig.in: when checking whether PIC is supported assume
only on HP/UX that warnings during compilation mean that
PIC is not supported (Thanks to Ron O'Hara)
* THANKS: added Ron O'Hara
1999-01-14 Alexandre Oliva <oliva@dcc.unicamp.br>
* Makefile.am: Moved ltconfig and ltmain.sh back into srcdir, and
add them to the distribution. Added work-around if `mv -f' fails.
fix @AINCLUDE_M4_LIST@ and @DIST_MAKEFILE_LIST@ for relative and
absolute specifications of srcdir
1999-01-14 Thomas Tanner <tanner@gmx.de>
* libltdl/ltdl.c: added variable symbol prefix, added user-defined
library search path (can be set using lt_dlsearchpath()),
added default_preloaded_symbols which are independent of
lt_dlinit/exit
* libltdl/ltdl.h: added lt_dlsearchpath() and
lt_dlpreopen_default()
* mdemo/Makefile.am: use -export-dynamic until libtool
and libltdl are able to handle module dependencies
1999-01-14 Gary V. Vaughan <gary@gnu.org>
* THANKS: added Mark Elbrecht.
* ltconfig.in (PATH_SEPARATOR): new variable to hold valid $PATH
separator characters for the build host, to support DJGPP
environment.
* ltconfig.in: Use PATH_SEPARATOR instead of hardcoded `:'.
Reported by Mark Elbrecht <snowball3@usa.net>
* cdemo/README: typo: mdemo->cdemo
1999-01-14 Thomas Tanner <tanner@gmx.de>
* autogen: fake the libtool scripts to help fixing
the bootstrapping problem
* Makefile.am: always configure libltdl, however after building
the libtool scripts,
build the libtool scripts in builddir, not srcdir
(unfortunately this breaks building when srcdir!=objdir,
but it was just plain wrong - needs to be fixed),
build and install libltdl.tar.gz,
copy acinclude.m4 instead of linking them, so that we
can 'make dist' in libltdl,
fixed configuring of subdirectories
* configure.in: removed --enable-ltdl-install - libltdl is supposed
to be installed by packages, not by libtool itself
* libtoolize.in: new flags --ltdl and --ltdl-tar to install libltdl
in packages (--ltdl doesn't work yet),
install only the necessary libtool scripts, not just all
files in pkgdatadir
* mdemo/Makefile.am: removed the rule for libltdl configuration
1999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br>
* mdemo/Makefile.am (../libltdl/libtool): mkdir and configure
../libltdl
1999-01-13 Thomas Tanner <tanner@gmx.de>
* demo/dlmain.c, libltdl/ltdl.c, ltconfig.in, ltmain.in,
doc/libtool.texi: renamed dld_preloaded_symbols to
lt_preloaded_symbols, symbol lists are 'const'
* cdemo/configure.in: don't check for string.h
* demo/dlmain.c: renamed dld_symlist to lt_symlist,
preloaded symbols are 'const', use lt_ptr_t instead of void*
* demo/foo.h: define lt_ptr_t
* doc/libtool.texi: document lt_preloaded_symbols correctly
* libltdl/Makefile.am, mdemo/Makefile.am: renamed libtest to libltdlc
* libltdl/ltdl.c: fixed some minor typos, renamed dldpre to presym,
bugfix: search in search_path only if we have no directory
and a search_path, in lt_dlsym() check whether symbol != 0
* libltdl/ltdl.h: removed lt_dlpreopen_default()
* ltconfig.in (dlpreopen): removed dld_preloaded_symbol_count
* ltmain.in: added help for -avoid-versioning, -export-symbols,
-module, add @SYMFILE@ if one of -export-dynamic, -dlopen or
-dlpreopen is used
* mail/deplibs.html: added Gordon Matzigkeit's inter-library
dependencies article
* mdemo/Makefile.am: removed -export-dynamic from LDFLAGS
(no longer necessary, since libtool defines lt_preloaded_symbols
when -dlopen is used), initialize with lt_preloaded_symbols
1999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br>
* doc/libtool.texi (Test descriptions): cdemo-static works, thanks
to Edouard Parmelan!
* THANKS: added Sebastian Wilhelmi
* ltconfig.in (solaris): define `need_version' to no
1999-01-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* ltconfig.in (solaris): Define `deplibs_check_method',
`file_magic_command', `need_lib_prefix' and `sys_lib_search_path'
* ltmain.in (file_magic_regex): Add space before matching pattern,
such that it works on solaris (solaris has a tab between the
library name (including the colon) and the `ELF' and such the
`ELF' will never be matched).
1999-01-13 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
* ltconfig.in (NM): PATH search was not updated like in
libtool.m4, in last Alexandre Oliva's change to it
(sysv4*, ncr): pass all library dependencies
* ltmain.in (dependency_libs, -R): use `deplib' instead of `arg' to
iterate, otherwise we'd overwrite `arg'
(convenience, old_libs): if --disable-shared, convenience
libraries are just old archives, as .lo's are of no use
* tests/cdemo-static.test: print --disable-shared here
1999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/configure.in (libltdl_cv_shlibext, LTDL_SHLIB_EXT):
system-dependent extension of shared libraries
(libltdl_cv_shlibpath_var, LTDL_SHLIBPATH_VAR): system-dependent
run-time shared library search path
* libltdl/ltdl.c (dldpre_init, dldpre_exit): unrelate init/exit
from add/remove symlists, so one may add dld_preloaded_symbols
from main(), when only a library will call dldpre_init
(lt_dlopen): use LTDL_SHLIBPATH_VAR, if defined, as secondary
search path. Also, if a requested .la file cannot be found, try
with the LTDL_SHLIB_EXTension instead.
* ltmain.in (old_archives, oldobjs): use find to SYMDEF here too
* Makefile.am (@DIST_MAKEFILE_LIST@): `$' must be doubled
* configure.in (AC_CONFIG_DIRS): configure only libltdl, and then,
only if --enable-ltdl-install
(CONF_SUBDIRS): list directories that are configured on demand,
but that must be included in the distribution
(ACINCLUDE_M4_LIST, DIST_MAKEFILE_LIST): generated from CONF_SUBDIRS
* Makefile.am (AUTOMAKE_OPTIONS): added version 1.3e and
readme-alpha, to handle README-alpha automatically
(EXTRA_DIST): removed README-alpha
(BUILD_SUBDIRS): subdirectories that are always built
(SUBDIRS): BUILD_SUBDIRS plus BUILD_LTDL
(DIST_SUBDIRS): BUILD_SUBDIRS plus CONF_SUBDIRS, from configure
(all-local, check-local): depend on $(ACINCLUDE_M4_LIST), from
configure, and libtool, so that it is built before subdirs
(configure-subdirs): new target
(configure-subdirs, distdir): depend on $(DIST_MAKEFILE_LIST),
from configure
(@DIST_MAKEFILE_LIST@): create subdir if needed, then run
configure.
On-demand configuration of subdirs at distribution time was
suggested by Gary V. Vaughan <gary@gnu.org>
* libtool.m4, ltconfig.in (NM): search for NM in PATH before
/usr/ccs/bin, /usr/ucb and /bin. However, if the found one isn't
BSD-compat keep searching. If no BSD-compat is found, use the
first we found.
* THANKS: added Raffaele Sena
1999-01-13 Raffaele Sena <raff@aromatic.com>
* libltdl/ltdl.c: replaced RTDL with RTLD
1999-01-13 Manish Singh <yosh@gimp.org>
* ltconfig.in (osf3*, osf4*, irix6*): include
${libname}{release}.so for library_names_spec
1999-01-13 Alexandre Oliva <oliva@dcc.unicamp.br>
* configure.in (AC_CONFIG_SUBDIRS): added cdemo
* Makefile.am (DIST_SUBDIRS): ditto
(ACINCLUDE_M4_LIST): ditto
* tests/Makefile.am (TESTS): added cdemo-shared.test
* tests/cdemo-static.test: disable shared libraries here
* tests/cdemo-shared.test: disable static libraries here
* doc/libtool.texi (Test descriptions): added cdemo tests
* THANKS: added Edouard G. Parmelan
1999-01-13 Edouard G. Parmelan <Edouard.Parmelan@France.NCR.COM>
* ltmain.in: fix convenience libraries when static libraries
are disables.
* cdemo/README, cdemo/Makefile.am, cdemo/configure.in, cdemo/foo.h,
cdemo/foo1.c, cdemo/main.c, cdemo/.cvsignore, test/cdemo-conf.test,
test/cdemo-make.test, test/cdemo-exec.test, test/cdemo-static.test:
new tests for convenience libraries.
* autogen, Makefile.am, test/Makefile.am: ditto.
* ltconfig.in, doc/PLATFORMS: Added support for NCR MP-RAS
(i586-ncr-sysv4.3*) with native compiler.
* README, doc/libtool.texi: Added note for NCR MP-RAS compiler.
1999-01-12 Thomas Tanner <tanner@gmx.de>
* ltmain.in: before using LN_S remove the symlink
* libltdl/ltdl.c: support multiple symbol lists, moved library-
and file searching to separate functions, renamed "preload_libs"
to "dl_dependency_libs", set the LT_SYMBOL_OVERHEAD to the correct
value (7), fix to support lt_dlsym() for not-libtool modules again,
check for invalid handles, when using strdup() check whether
it fails
* libltdl/ltdl.h: declare the lt_dlsymlist type for lt_dlpreopen()
* mdemo/README: rewritten
* mdemo/configure.in: check only for math.h (string.h is no longer
necessary)
1999-01-12 Gary V. Vaughan <gary@gnu.org>
* configure.in (ltdl-install): Fixed up the indentation so that
`configure --help' is pretty again.
1999-01-11 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in, NEWS, doc/libtool.texi: Added support for -R flag
* ltmain.in, doc/libtool.texi: documented that -rpath is the same
as -R for programs
* ltmain.in: softened the instructions for linking with installed
libraries, and noted that libtool can be used to link with them;
documented that -rpath is not required for convenience libraries
* ltconfig.in (symxfrm): don't print $pipe_works twice, once for
each $ac_symprfx
Reported by Godmar Back <gback@cs.utah.edu>
* ltmain.in (convenience, libobjs): get only .o and .lo files from
the files extract from the convenience library. Some systems,
such as FreeBSD2, will add a SYMDEF file, that is not an object
file, and therefore should not be fed to the linker
* libtool.m4 (AM_SYS_NM_PARSE): while we are at it, we may well
cache the value of ac_cv_sys_symbol_underscore
* libtool.m4 (AM_SYS_NM_PARSE): need for underscore prefix is now
auto-detected, by trying first without, then with it.
* ltconfig.in: ditto
1999-01-10 Alexandre Oliva <oliva@dcc.unicamp.br>
* configure.in (AC_CONFIG_SUBDIRS): add libltdl, demo, mdemo and
depdemo commented out, so that `dist' works before `check'
(BUILD_LTDL): will contain libltdl if --enable-ltdl-install
* Makefile.am (DIST_SUBDIRS): expand SUBDIRS and add depdemo,
commented out
(SUBDIRS): add $(BUILT_LTDL)
* libltdl/Makefile.am (EXTRA_LTLIBRARIES): add libtest.la, the
same as libltdl but always a convenience library. Not built by
default. Both libraries now depend on the libtool script, that
depends on ../libtool and is rebuilt when needed
* mdemo/Makefile.am (mdemo, mdemo.debug): depend on and link with
../libltdl/libtest.la, that is rebuilt if needed
(mdemo_LDADD): removed $(LIBADD_M), to avoid silent failures
(foo1.la): renamed from libfoo1.la; test removing the lib prefix
* mdemo/foo1.c: renamed libfoo1_LTX symbols to foo1_LTX
* mdemo/main.c: don't include string.h nor math.h, nor refer to
sin nor cos
* tests/mdemo-exec.test: renamed libfoo1.la to foo1.la
* tests/mdemo-inst.test: ditto
* libltdl/ltdl.c (FILENAME_MAX): use it instead of MAX_FILENAME,
and don't redefine it if already defined; default to 1024, as on
most systems
(LT_SYMBOL_LENGTH): renamed from MAX_SYMBOL_LENGTH
(LT_SYMBOL_OVERHEAD): new macro, that accounts for the size of
the _LTX_ separator and the initial underscore
(lt_dlsym): sym now points to a stack buffer (lsym) if possible,
or is dynamically allocated. If allocation fails, a
buffer_overflow_error is returned.
1999-01-10 Thomas Tanner <tanner@gmx.de>
* ltmain.in: define dld_preloaded_symbols if at least one of
-export-dynamic, -dlopen or -dlpreopen was specified,
do not include program objects in the symbol list
if -export-dynamic was not enabled
* libltdl/ltdl.c: limit symbols to max. 256 bytes
* mdemo/Makefile.am: build libltdl in a subdirectory,
do not use -export-dynamic for mdemo and mdemo.debug
* tests/mdemo-conf.test,tests/mdemo-make.test,tests/mdemo-inst.test:
do not check for libltdl
1999-01-09 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c (lt_dlopen): missing strlen in bound test
1999-01-09 Thomas Tanner <tanner@gmx.de>
* NEWS: support for BSD/OS 4.x was not documented
* demo/Makefile.am: link against libm only if available
* mdemo/Makefile.am: likewise, use -avoid-versioning flag
instead of -avoid-version (typo)
* demo/configure.in: check for libm, string.h and math.h
* mdemo/configure.in: likewise
* depdemo/configure.in: check for libm and math.h
* libltdl/configure.in: check for dlerror
* libltdl/ltdl.c: check for buffer overflows, implemented
dlerror, fixed a severe bug which occured when opening
non-libtool modules, dlopen with the flags GLOBAL and NOW
* mdemo/main.c: report the error using lt_dlerror()
1999-01-08 Gary V. Vaughan <gary@gnu.org>
* doc/libtool.texi (old_archive_from_new_commands): Documented
this ltcofig variable.
1999-01-07 Gary V. Vaughan <gary@gnu.org>
* ltmain.sh (cygwin, allow_undefined): Unfortunately, there are
problems with this variable when trying to make a dll which has
undefined symbols, in which case not even a static library is
built. For now, we need to specify -no-undefined on the libtool
link line when we can be certain that all symbols are satisfied,
otherwise we get a static library.
1999-01-06 Thomas Tanner <tanner@gmx.de>
* ChangeLog: merged in tests/ChangeLog
* tests/ChangeLog: deleted
* libltdl/ltdl.c: assigned copyright to the FSF
* libltdl/ltdl.h, mdemo/foo*,main.c: likewise
1999-01-06 Gary V. Vaughan <gary@gnu.org>
* ltmain.in (dllsearchpath): add absolute directory paths to
dllsearchpath so that the wrapper scripts can be called from any
directory (e.g. tests) on cygwin.
* ltconfig.in (cygwin, library_names_spec): revert Alexandre's
change from yesterday to use `-dll.a' suffix. That change caused
$libname-dll.a to be a symlink to $soname, which isn't even an
`ar' archive. Before the import library suffix can be changed, we
need to figure out how to handle building objects differently for
linking with an import library versus an equivalent static library.
* TODO: Added details of a Linux wrapper script bug.
Reported by Jeff Garzik <jgarzik@pobox.com>.
1999-01-05 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (libobjs_save, oldobjs): when building an
old-fashioned archive, use a copy of libobjs saved before
convenience libraries are appended
* libltdl/ltdl.h (_LTDLL_EXPORT, _LTDLL_IMPORT): use cygwin or
unix library import/export primitives; this may be convenient for
people willing to create DLLs
(_LTDLL_EXTERN): select _LTDLL_EXPORT or _LTDLL_IMPORT depending
on _LTDL_COMPILE_
* libltdl/ltdl.h, libltdl/ltdl.c (lt_dlpreopen): new function,
that replaces the current preloaded_symbols list with its
argument, and returns the old value, initially NULL
(dldpre_init): don't refer to dld_preloaded_symbols any more
(dldpre_open, dldpre_sym): search preloaded_symbols
(lt_dlpreopen_default): call lt_dlpreopen with
dld_preloaded_symbols, that is declared as extern; it should be
called from the main program or from some static library without
-no-undefined
(lt_dlerror): new function, that returns the error message for the
last error occurred; the error message is kept in the static
variable last_error
* libltdl/configure.in (enable-ltdl-install): moved back from
enable-install; other packages might use enable-install already,
better have fine grained control over this.
* libltdl/Makefile.am (libltdls.la): discarded
1999-01-05 Thomas Tanner <tanner@gmx.de>
* configure.in: do not configure libltdl by default
* Makefile.am: do not build libltdl by default
* libltdl/Makefile.am: ltdls.lo depends on libtool
* tests/Makefile.am: before starting the tests
make sure that libtool was build
* tests/mdemo-conf.test: configure libltdl
* tests/mdemo-make.test: build libltdl
1999-01-05 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (SP2NL, NL2SP): Don't delete empty lines, as this
would lose for files with embedded blanks.
* ltconfig.in (cygwin, archive_cmds, archive_sym_cmds): Moved
ltdll.c into ltmain.in, to avoid its duplication, and added a sed
script to extract it. Also, create def and base files in $objdir,
and don't remove them after the compilation.
(cygwin, library_names_spec): Create static part of the dll with
suffix -dll.a, to avoid conflicts with actual static libraries.
* ltmain.in: Added ltdll.c, as commented out text
1999-01-01 Thomas Tanner <tanner@gmx.de>
* NEWS: new BeOS support
* THANKS: added Joseph Beckenbach
* libltdl/ltdl.h: use dllimport/export on Win32
1998-12-31 Joseph Beckenbach III <jrb3@best.com>
* ltconfig.in: added support for BeOS
* ltmain.in (shlibpath_var): added a workaround for
an odd bug in the BeOS R4 sed
1998-12-31 Thomas Tanner <tanner@gmx.de>
* verified all copyright notices
and updated them to 1999
* TODO: added some things that need to documented
* doc/libtool.texi: -export-symbols is not
supported on all platforms
* doc/PLATFORMS: added a few new platforms
1998-12-30 Thomas Tanner <tanner@gmx.de>
* NEWS: updated
* THANKS: added Todd Vierling <tv@pobox.com>
1998-12-30 Todd Vierling <tv@pobox.com>
* ltconfig.in: improved shared object handling on both
a.out and ELF platforms for NetBSD
1998-12-29 Thomas Tanner <tanner@gmx.de>
* ltconfig.in: do not rely on a leading space when concatenating
variables as suggested by Erez Zadok
* ltmain.in: likewise
* doc/PLATFORMS: updated and reformatted
(thanks to Erez Zadok for the testing)
1998-12-27 Thomas Tanner <tanner@gmx.de>
* THANKS: added Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
1998-12-26 Erez Zadok <ezk@shekel.mcl.cs.columbia.edu>
* ltconfig.in: support i486-ncr-sysv4.3.03
shared libraries.
* ltmain.in: before every ln -s, remove the link name
1998-12-25 Thomas Tanner <tanner@gmx.de>
* depdemo/configure.in: removed last relics of demo
* depdemo/sysdep.h: ditto
* mdemo/Makefile.am: ditto
* libltdl/Makefile.am: fixed the version number, build libltdls if
-enable-install and -enable-dlpreopen are enabled
* libltdl/configure.in: libltdl is version 0.1, not 1.0,
renamed -enable-ltdl-install to -enable-install,
conditionals for libltdls, check for strchr and index,
replaced NULL with 0
* libltdl/ltdl.c: replaced NULL with 0, dlpreopen only if
USE_DLPREOPEN was defined, integrated shl_load code from GModule
(still untested)
1998-12-24 Gary V. Vaughan <gary@gnu.org>
* libltdl/configure.in: fixup spacing in --enable-ltdl-install
help string so that it lines up nicely for configure --help.
* ltmain.in (dllsearchpath): keep track of what the dll search path
will need to be in the wrapper scripts as deplibs are calculated.
Make sure the wrapper script doesn't end in `.exr', which makes
win32 try to execute it as a binary!
Add the contents of dllsearchpath to $PATH in the wrapper script.
Use the relative path to the wrapped program so that the dll
search path is calculated properly by win32 OSes.
* TODO: removed the item for making wrapper scripts work on win32.
* TODO: removed the reference to making libltdl and demo work on
win32. They *do* work now that wrapper scripts are functioning.
* ltmain.in (file_magic_command): It turns out that if the
file_magic_command generates huge output (e.g. running `objdump
-f' over a large import lib [say libX11.a]) the expr to check it
against the file_magic_regex blows up. There is now an optimistic
heuristic, to save only the first 10 lines of running
file_magic_command which (at risk of sounding like Bill) should be
enough for anyone =)O|.
* ltmain.in: Set the compile_dependencylibs and dllsearchpath for
non-libtool libs, or else libdeps only works between ltlibs for
cygwin32.
1998-12-23 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (SP2NL, NL2SP): use `tr' magic to avoid passing very
long lines to sed
* doc/libtool.texi (sed): very long lines are no longer a problem
* libltdl/Makefile.am: install libltdl conditionally...
* libltdl/configure.in: ... if --enable-ltdl-install is issued
* libltdl/ltdl.c: removed #ifdef DEBUG
* mdemo/Makefile.am (mdemo_debug_LDADD, mdemo_debug_DEPENDENCIES):
use libltdl.la
1998-12-23 Gary V. Vaughan <gary@gnu.org>
* doc/PLATFORMS: added my cygwin32 box (i686-pc-cygwin32).
* TODO: remind myself of the win32 tasks remaining.
* ltconfig.in (archive_cmds, archive_sym_cmds,
old_archive_from_new_cmds): Fixed a bug which left an a.exe in the
build directory. Fixed a bug where $soname-def was never deleted.
* ltconfig.in (file_magic_command): new variable holds the command
(including any args) to run to generate the string to match
against the regex in $file_magic. Use the variable where
necessary. Added to libtool header output.
(deplibs_check_method): use file_magic for win32, but compare the
output of `objdump -f' with the regex (see below).
(archive_cmds, archive_sym_cmds): use compile_dependencylibs for
each $CC invokation (see below).
* ltmain.in: Set allow_undefined to `no' for win32 variants by
default, otherwise it is impossible to link a dll without forcing
the makefile maintainer to figure out whether to pass
--no-undefined at every libtool invokation.
(compile_dependencylibs): save the list of dependency library
flags needed for a deplib build on win32.
(link_against_libtool_libs): commented out the check for this; if
it is left in, then ltlibs (i.e. *.la files) cannot be deplibs for
subsequent links.
Don't add -lc to the deplibs line for win32 platforms (which don't
have a libc as such).
(file_magic_command): use this to get some output to compare with
the file_magic regex (instead of hardcoding `file' which doesn't
exist on win32.
* doc/libtool.texi (Porting inter-library dependencies): Updated
to document the changes above.
* ltconfig.in (deplibs_check_method): Changed the file_magic regex
to match more linux variants. This is less lenient than Thomas
Tanner's commit to fix the same problem below.
Reported by Joel Klecker <espy@debian.org>
* THANKS: added Joel Klecker <espy@debian.org>
1998-12-23 Thomas Tanner <tanner@gmx.de>
* ltconfig.in: fixed file-magic for Linux shared libraries
* ltmain.in: removed the unused -force-static flag
* libltdl/ltdl.c: added strchr, search modules in LTDL_LIBRARY_PATH,
check whether actual module was already dlopened,
read in preload_libs rather than dependency_libs
1998-12-23 Thomas Tanner <tanner@gmx.de>
* libltdl/Makefile.am: build two versions of libltdl:
libltdl (support native dlopen if available, otherwise dlpreopen),
libltdls (like libltdl, but always support for dlpreopen)
* libltdl/ltdl.c: ditto
* libltdl/configure.in: warn if dlopen is not supported
* mdemo/Makefile.am (mdemo.debug): use libltdls
1998-12-22 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in: revert Thomas Tanners change to create all
libraries without the `lib' prefix on win32, otherwise `gcc foo.c
-lbar' can't find libbar.a.
1998-12-22 Alexandre Oliva <oliva@dcc.unicamp.br>
* Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
dependency hack
1998-12-21 Thomas Tanner <tanner@gmx.de>
* ltconfig.in: indentation is now 8 character wide tabs
* ltmain.in: ditto
* ChangeLog: ditto
* ltmain.in: renamed check_shared_deplibs_method to
deplibs_check_method (we_dont_want_too_long_variable_names :)
* doc/libtool.texi (Porting inter-library dependencies): ditto
* depdemo/.cvsignore: renamed hell* to depdemo*, added *.lo,*.la
* mdemo/.cvsignore: ditto
1998-12-21 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AM_SYS_NM_PARSE): apparently __ptr_t is predefined
on some systems - use lt_ptr_t instead.
* ltconfig.in: ditto.
* ltmain.in: ditto.
* libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): use an AC_SUBST to pass
the result of this into the compile rather than AC_DEFINE which
breaks when building with older versions of autoconf.
* ltconfig.in (symxfrm): Don't put the leading underscore back
with the global_symbol_pipe.
* demo/dlmain.c (main): No need to specialcase underscores in
dld_preloaded_symbols - it is fixed by symxfrm above!
* libltdl/configure.in: use AM_SYS_SYMBOL_UNDERSCORE from
libtool.m4 rather than reinvent the wheel here =)O|
* ltmain.in: Fix deplibs methods to not rely on a.out (cygwin
uses a.exe!).
* libltdl/configure.in: Cleanups - fix header comment and emacs
local-vars.
* demo/dlmain.c (win32_force_data_import_address): a nasty hack
to force the address of imported data symbols into
dld_preloaded_symbols on win32, which does data imports
differently to function imports (sheesh!). This functionality
needs to be moved into the dld_preloaded_symbols generation code.
demo/helldl with static linking is broken on win32 by this change,
probably until after libtool-1.3 =(O|
* demo/foo.h: make sure __CYGWIN32__ is always defined on cygwin32
systems. Use the correct __declspec macro for lib exports/imports
on cygwin32.
* demo/foo.c, demo/hello.c: Make sure we tell foo.h that these
sources are inside libfoo, and want to export symbols.
1998-12-20 Thomas Tanner <tanner@gmx.de>
* autogen: configure demo, depdemo, libltdl and mdemo
* tests/mdemo-exec.test: renamed hell* to mdemo*
* tests/mdemo-inst.test: ditto
1998-12-19 Thomas Tanner <tanner@gmx.de>
* libltdl/Makefile.am: build a normal libtool library
* libltdl/ltdl.c: get LTDL_LIBRARY_PATH but don't make use of it yet,
some reformatting
* ltmain.in: fixed a bug which listed symbols in
dld_preloaded_symbols twice
* TODO: removed symbol export lists and deplibs
1998-12-18 Thomas Tanner <tanner@gmx.de>
* ltconfig.in: added need_lib_prefix and need_version,
which determine whether we must prefix modules with 'lib'
and whether versioning is required for libraries.
* ltmain.in: allow modules names without 'lib' prefix,
new -avoid-versioning option
* doc/libtool.texi (link flags): updated documentation for -module,
added -avoid-versioning
* doc/libtool.texi (libtool script contents):
documented the two new flags and archive_sym_cmds
* doc/libtool.texi (tests):
added (partially very short) documentation for assign.test,
nomode.test, quote.test, sh.test
* libltdl/ltdl.c: canonicalize module names,
some cleanups and bugfixes, __ptr_t is predefined on
some systems - use lt_ptr_t instead
* mdemo/: renamed hell* to mdemo* (hell is already used in
demo), updated the documentation, import sin and cos in main
program rather than linking libfoo1 statically
1998-12-17 Gary V. Vaughan <gary@gnu.org>
* libtool.m4 (AM_PROG_LIBTOOL): Added AC_PREREQ(2.12) to prevent
people using libtool with old autoconfs that don't provide the
features we need.
1998-12-16 Alexandre Oliva <oliva@dcc.unicamp.br>
* NEWS, configure.in, libtool.spec: Bumped to 1.2e for CVS
* NEWS, configure.in, libtool.spec: Bumped to 1.2d for release
* Makefile.am (cvs-dist): our release tags are in lower case
(cvs-diff): ditto
(EXTRA_DIST): added README-alpha
* README-alpha: minor adaptations
* demo/Makefile.am, mdemo/Makefile.am, depdemo/Makefile.am:
removed comment about special needs for distribution
* depdemo/Makefile.am: don't generate dependencies
* depdemo/configure.in: modified version number
* ltmain.in (-force-static, force_static): removed
* libltdl/Makefile.am (CFLAGS): ditto
* libltdl/configure.in: check for memory.h, rindex() and
dlpreopening. Fixed NEED_USCORE caching policy.
* libltdl/ltdl.h (lt_dlsym): make the name argument const
* libltdl/ltdl.c (types): new variable: head of list of available
dlopening mechanisms
(lt_dltype_t): interface of a dlopening mechanism, with pointers
to functions for init, exit, open, close and sym
(lt_dlhandle_t): added pointer to interface type
(strdup): don't name it strdup; it can be troublesome
(strrchr): ditto; use rindex if available
(LIBTOOL_STATIC): check HAVE_DLPREOPEN instead, and move to the
end of the file, so that it becomes the header of the list
(all): renamed all interface-implementation functions, to avoid
name clashes, and created lt_dltype_t nodes for all of them
(lt_dlinit): initialize all available interfaces; remove those
that fail from the list. Return failure only if no interfaces
could be initialized.
(lt_dlexit): return number of failures
(tryall_dlopen): try to open the library with all available
interfaces
(lt_dlopen): use tryall_dlopen; increased size of fixed buffers.
We should probably make these bound-checked or dynamically
allocated for the final release! Fix bug when filename did not
contain slashes; should we check for `\\' too? Try old_library if
everything else fails.
(lt_dlclose): use the interface type for closing
(lt_dlsym): make `symbol' const, use interface type for looking up
* mdemo/Makefile.am: moved mdemo/modules/* back into mdemo
(SUBDIRS): removed
(libfoo2_la_LDFLAGS): added -static; nice test. However, since it
causes -lm to linked into hell*, it causes tests that should fail
to pass
(noinst_HEADERS): no need to install foo.h
* mdemo/configure.in: remove modules/Makefile
tests/mdemo-exec.test: updated accordingly
* NEWS: Added Thomas Tanner and Gary V. Vaughan to the list of new
maintainers. Detailed expected failures of libltdl+mdemo. Listed
recent ports. Added full URL for the home page. Note that
libtool C program is unusable.
1998-12-16 Bruno Haible <haible@ilog.fr>
* doc/libtool.texi (Tested platforms): broken `sed' programs
1998-12-16 Alexandre Oliva <oliva@dcc.unicamp.br>
* THANKS: added Stephan Kulow; removed Gary V. Vaughan and Thomas
Tanner, now that they're AUTHORS
1998-12-16 Stephan Kulow <coolo@kde.org>
* ltmain.in (freebsd-aout, freebsd-elf): added missing dot to
versuffix
1998-12-16 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/Makefile.am (EXTRA_DIST): removed, nothing needed
(libtool): automatically update
* libltdl/configure.in (stdlib.h, unistd.h, stdio.h): check
* libltdl/ltdl.c: include them
* demo/configure.in (BINARY_HELLDL): test whether dlopen is
supported at configure time
* demo/Makefile.am (helldl): use automake conditionals to build
helldl as a script or as a binary program
* tests/Makefile.am (EXTRA_DIST): remove ltdl-*.test
(clean-local): don't clean libltdl any more
* tests/ltdl-conf.test: removed
* tests/ltdl-inst.test: ditto
* tests/ltdl-make.test: ditto
* tests/ltdl-unst.test: ditto
* tests/mdemo-make.test: updated accordingly
* tests/mdemo-inst.test: ditto
* tests/mdemo-unst.test: ditto
* doc/libtool.texi: ditto
* ltmain.in (-DSTATIC): changed to -DLIBTOOL_STATIC, and defined
only for -force-static; it should be removed soon, before people
start to use it
* configure.in (AC_CONFIG_SUBDIRS): added libltdl
* Makefile.am (SUBDIRS): build libltdl by default
(DIST_SUBDIRS): simplify distribution of demo and mdemo
(libtool, clibtool, libtoolize, ltconfig, ltmain.sh): add
srcdir where appropriate
(ACINCLUDE_M4_LIST): new rule for maintaining links from
acinclude.m4 to libtool.m4
(*demo/Makefile.in): don't update autoconf/automake files any
more; make check is needed
1998-12-14 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in (archive_cmds): tweaked for cygwin b18->b20.1
compatibility and fixed a bug with generating the export
definitions file. This is only tested on b20.1, but should
work back to b18 at least.
1998-12-11 Thomas Tanner <tanner@gmx.de>
* ltmain.in: -module implies now -export-dynamic,
dlpreopen files if we're linking statically
* doc/libtool.texi (link flags): added documentation for -module
and the tests for mdemo and libltdl
* mdemo/Makefile.am: replaced -dlpreopen with -dlopen
1998-12-09 Alexandre Oliva <oliva@dcc.unicamp.br>
* PORTING: removed the text Akim Demaille converted to .texi
1998-12-09 Akim Demaille <demaille@inf.enst.fr>
* doc/libtool.texi: converted inter-library dependencies
instructions from PORTING
1998-12-09 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (convenience, deplibs): propagate dependencies
* libltdl/Makefile.am (noinst_HEADERS): don't install ltdl.h yet
(noinst_LTLIBRARIES): ditto for libltdl.la
1998-12-08 Gary V. Vaughan <gary@gnu.org>
* README-alpha: adapted the release procedure from
automake/HACKING.
* Makefile.am: adapted the cvs-dist and cvs-diff rules from
automake/Makefile.am. I guess this is probably safe to use
already, but I didn't test it as it tags the CVS tree. If
it needs tweaking, we'll find out come 1.2d.
1998-12-08 Thomas Tanner <tanner@gmx.de>
* ltconfig.in: fixed some typos in archive_sym_cmds
* ltmain.in: replaced basename with a sed expression
1998-12-07 Alexandre Oliva <oliva@dcc.unicamp.br>
* configure.in: we no longer use PRCS
* doc/libtool.texi (author): listed all the AUTHORS
(Dlopen issues): added reference to libltdl, still undocumented
(C++ libraries): it's not *that* simple, after all :-(
(Inter-library dependencies): they're back!
1998-12-04 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (ac_cv_sys_symbol_underscore): `test a == b' doesn't
work, use `test a = b' instead
* Makefile.am (mdemo_distfiles): libfoo[12].sym no longer exist
* ltconfig.in (solaris): do not use $CC for linking if GNU ld is
not available
1998-12-04 Manfred Weichel <Manfred.Weichel@pdb.siemens.de>
* ltconfig.in: Port to SCO UnixWare 7.x.
1998-12-03 Thomas Tanner <tanner@gmx.de>
* ChangeLog: converted CR/LF back to CR format
* ltconfig.in: new variable sys_lib_search_path for searching
of installed libraries, export archive_sym_cmds and
sys_lib_search_path
* ltmain.in: use sys_lib_search_path, removed extradeplibs
(they're not portable)
1998-12-02 Gary V. Vaughan <gary@gnu.org>
* libltdl/configure.in: look for string.h or else strings.h, and
also check for ANSI strrchr() function. Fix `undescore before
symbols' macro to not rely on a.out (cygwin uses a.exe!). Fix
`underscore for dlsym' to set cache variable properly, not just in
environment of AC_DEFINE(NEED_USCORE).
* libltdl/ltdl.h (__ptr_t): for K&R compatibility using char*.
* libltdl/ltdl.c (strrchr): fallback function incase none is
defined in libc.
(trim, ltdlopen): replace rindex with ANSI strrchr.
Add static function declarations so that we get type checking with
ANSI compilers. Use __ptr_t instead of void*.
1998-12-01 Thomas Tanner <tanner@gmx.de>
* ltconfig.in: added -export-symbols support for GNU ld and
Solaris (untested), archive_sym_cmds for -export-symbols
* doc/libtool.texi, ltmain.in: -export-symbols is now
independent from -export-dynamic and does not work for modules
anymore
* ltmain.in: added some checks for -export-symbols
* mdemo/modules/Makefile.am: replaced -export-symbols with
-export-dynamic since it doesn't work for modules
1998-12-01 Gary V. Vaughan <gary@gnu.org>
* README: Updated homepage pointer to gnu libtool page.
* ltconfig.in (ltdll.c): update the ltdll.c file for cygwinb20.
Based on code from Mumit Khan <khan@xraylith.wisc.edu>.
(archive_cmds): correct typo libtool.c->ltdll.c. Update shell
commands for cygwin32.
* libtool.m4 (AM_SYS_SYMBOL_UNDERSCORE): New macro; find out
whether compiled symbols have an extra leading underscore.
(AM_SYS_NM_PARSE): New macro (converted to m4 from ltconfig.in);
find a sed expression to parse global symbols from the output of
$NM.
(AM_PROG_LIBTOOL): require AM_SYS_NM_PARSE and
AM_SYS_SYMBOL_UNDERSCORE.
* demo/dlmain.c (main): Remove a single leading underscore from
compiled symbol names if necessary.
1998-12-01 Alexandre Oliva <oliva@dcc.unicamp.br>
* config.guess, config.sub: imported from autoconf pre-2.13
1998-11-27 Gary V. Vaughan <gary@gnu.org>
* libtool (AM_PROG_LD): Oops... we need to know the host_os for
the changes below. I'm not sure whether mingw32 and os2 support
UNC paths, if they did we wouldn't need the check, we could use
UNC paths on all three; or if the bug with $LD not being
shell-meta escaped was fixed, we could use '\\' separators on all
three. AC_REQUIRE'ed AC_CANONICAL_HOST.
* libtool.m4 (AM_PROG_LD): Cannonicalize the absolute path for the
ld program; The order is funny to provide canonicalization to
paths with '\\' separators as well as '/'.
* ltconfig.in: ditto.
* AUTHORS: Added myself as a co-maintainer.
* ltconfig.in (archive_cmds): The `;\' in a compound statement is
expanded wrongly for cygwin32, mingw32, aix3 and aix4. Changed to
`;'.
1998-11-25 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.spec (URL): point to www.gnu.org
(Source): point to ftp.gnu.org
* Makefile.am (EXTRA_DIST): removed libtool.prj
Reported by Akim Demaille <demaille@inf.enst.fr>
1998-11-24 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (echo): avoid shell error messages when we're
testing for large command line support
Reported by Axel Thimm <Axel.Thimm@physik.fu-berlin.de>
* doc/PLATFORMS: updated last-tested release for platforms I've
got access to
* THANKS: added Chris P. Ross
1998-11-24 Chris P. Ross <cross@eng.us.uu.net>
* ltconfig.in: added recognition of the dynamic linker on BSD/OS 4.x
* README: added BSD/OS 4.x to the list of supported platforms
* doc/PLATFORMS: added BSD/OS 4.x support for various host id's
1998-11-24 David Heine <dlheine@truffle.Stanford.EDU>
* ltmain.in (pass_all): actively pass the flags
1998-11-24 Thomas Tanner <tanner@gmx.de>
* depdemo: added inter-library dependencies demo (doesn't work yet!)
* AUTHORS: added myself to the list of maintainers
1998-11-22 Thomas Tanner <tanner@gmx.de>
* libltdl: added support for .la files, LGPL license,
K&R compatibility, some API changes and bugfixes
* ltmain.in: renamed -module flag (for compiling) to -force-static,
define -DSTATIC when compiling static .o files,
do not include directories in dld_preloaded_symbols
* mdemo: modified mdemo to work with the new libltdl
* tests/mdemo-exec.test, tests/mdemo-inst.test: use .la files
1998-11-21 Alexandre Oliva <oliva@dcc.unicamp.br>
* libltdl/ltdl.c: replace NULL with 0, so that we don't depend on
header files defining it.
* ltconfig.in (archive_cmds, osf3, osf4, solaris, sunos4): create
libraries with gcc -shared if using gcc without GNU ld.
* ltconfig.in: replaced occurrences of solaris2 with solaris, to
prepare for Solaris 7
1998-11-19 Alexandre Oliva <oliva@dcc.unicamp.br>
* mdemo/Makefile.am (hell_debug_LDFLAGS): -dlpreopen -> -dlopen
(hell_LDFLAGS): added -export-dynamic and -dlopen
(SUBDIRS, INCLUDES): added modules directory
(foo1.c, foo2.c, foo.h, libfoo1.sym, libfoo2.sym): moved to modules
* Makefile.am: ditto
* tests/mdemo-exec.test, tests/mdemo-inst.test: libraries moved
* mdemo/modules/Makefile.am: new file
* */Makefile.am (AUTOMAKE_OPTIONS): added no-dependencies
* ltmain.in: missing `test' between `&&' and `"$module"'
* ltconfig.in (echo_test_string): the whole ltconfig script was
too much for DU4.0's ksh, but the first 50 lines will be enough.
* ltmain.in (installed): new variable defined within a .la file,
so that libtool can now link already-installed libraries into a
program.
* NEWS: ditto
* doc/libtool.texi (Linking executables): document it
* ltmain.in (output_objdir): compute it from $output, not $arg
* tests/mdemo-inst.test (libltdl): install it
* tests/mdemo-unst.test (libltdl): uninstall it
* tests/Makefile.am (TESTS): list ltdl-unst.test before mdemo-conf.test
1998-11-18 Alexandre Oliva <oliva@dcc.unicamp.br>
* NEWS: -module and libltdl
* mdemo/Makefile.am: ../libltdl is within $(srcdir)
1998-11-18 Thomas Tanner <tanner@gmx.de>
* libltdl, Makefile.am: added libltdl (a system independent
dlopen wrapper library extracted from mdemo)
* ltmain.in: added -module flag for compiling and linking of
modules. If enabled it compiles always both .o (with -DLT_RENAME)
and .lo files
* mdemo: modified mdemo to work with libltdl
* tests/ltdl*: added tests for libltdl
1998-11-16 Steve Price <sprice@hiwaay.net>
* ltconfig.in: when $host_os is freebsd[23]* determine whether
the current linker format is a.out or ELF
* ltmain.in: add two new $version_type's, freebsd-aout and
freebsd-elf, to support above change
1998-11-16 Stephan Kulow <coolo@kde.org>
* ltconfig.in: extent no_builtin_flag to contain -fno-rtti and
-fno-exceptions in case we compile with a gcc, that supports
this options (egcs and gcc >= 2.8)
1998-11-16 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (C_compiler): copy $CC before it is overwritten with
command-line compiler, so that we can use it to compile C sources
generated during the build. This fixes the problem that showed up
with -export-dynamic of C++ programs in egcs 1.1.
* NEWS: ditto
1998-11-12 Alexandre Oliva <oliva@dcc.unicamp.br>
* PORTING: Porting instructions are in the libtool manual already
* NEWS: Mention -export-symbols and new dlpreopen
1998-11-11 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (IFS): revert Gary's patch when parsing version
information; we still use `:' here :-)
* NEWS: updated
* PORTING: new file, with general instructions and inter-library
dependencies tips
1998-11-11 Gary V. Vaughan <gary@gnu.org>
* ltconfig.in: make use of '~' field separator in reload_cmds,
old_archive_from_new_cmds, old_archive_cmds, archive_cmds,
old_postinstall_cmds, postinstall_cmds, old_postuninstall_cmds,
postuninstall_cmds and finish_cmds, so that the semi-colons inside
if/then/else/fi and for/do/done etc. do not break the eval loop in
ltmain.in (below).
* ltmain.in: changed all of the eval loops to use an IFS of `~',
to allow differentiation between the end-of-statement-;
(now `~' is used) and end-of-substatement-; (still `;'). This
fixes AIX and win32 at least.
1998-11-11 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (sunos*, sympat, symxfrm): remove underscore
prepended by the compiler
1998-11-10 Toshio Kuratomi <badger@prtr-13.ucsc.edu>
* ltconfig.in: re-enable deplibs
* ltmain.in: support deplibs, at least for GNU/Linux/x86
Updated to current libtool by Thomas Tanner <tanner@gmx.de>
1998-11-10 Gordon Matzigkeit <gord@trick.fig.org>
* ltmain.in (link): Make the relink warning less harsh.
1998-11-07 William M. Perry <wmperry@aventail.com>
* ltconfig.in (aix3, aix4): uniquify symbol names in archive_cmds
1998-11-07 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in: add --falback-echo, to be used if everything else
fails. The tests now check the behavior of $echo for very large
strings, because some echo commands would just core dump (e.g.,
Solaris' printf). If too large strings fail, smaller ones are
tested.
(ltecho): arrange that, if the --fallback-echo method is selected,
echo will be defined in the libtool script so as to re-run itself,
not ltconfig
* ltmain.in: add --fallback-echo
(qecho) ensure that, if --falback-echo is being used, qecho is
defined with the full pathname of the libtool script
* tests/sh.test (test X): ensure that the double-quote supposed to be
reported is really reported
1998-11-07 Thomas Tanner <tanner@gmx.de>
* mdemo/main.c: removed hardcoded library names; link against -lm
* tests/mdemo-exec, tests/mdemo-inst: pass the library names
to the program
1998-11-07 Marc J. Fraioli <fraioli@dg-rtp.dg.com>
* README: Added DG/UX
* doc/PLATFORMS: ditto
1998-11-04 Michael Tiemann <tiemann@cygnus.com>
* ltconfig.in (irix6): it's a little bit different from irix5
1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
* THANKS: Added Thomas Tanner and Gary V. Vaughan
* ltconfig.in, ltmain.in: updated and fixed the patches below
1998-11-04 Thomas Tanner <tanner@gmx.de>
* mdemo/*: added new demo to demonstrate building of dlopenend
modules
* tests/Makefile.am, tests/mdemo*: added some tests for mdemo
1998-11-04 Gary V. Vaughan <gary@gnu.org>
* demo/configure.in: added AC_EXEEXT macro so that the tests can
work on cywin32/mingw32 hosts. This requires the current CVS
autoconf
1998-11-04 Thomas Tanner <tanner@gmx.de>
* ltmain.in: New flag -export-symbols; new dlpreopen system
* demo/dlmain.c: removed dld_preloaded_symbol_count
1998-11-04 Ian Lance Taylor <ian@cygnus.com>
* ltmain.in: On installation, don't get confused if the same name
appears more than once in the list of library names.
1998-11-04 Ian Lance Taylor <ian@cygnus.com>
* ltconfig.in: Add objext and libext variables. Check for object
suffix. Check for mingw32* as well as cygwin32*. Use objext when
testing compiler. Add support for Visual C++ on cygwin32 when not
using gcc. Add objext, libext, and fix_srcfile_path to generated
libtool script.
* ltmain.in: Use .${objext} rather than .o. Use fix_srcfile_path
if it is set. Check for .obj as well as for .o, and for .lib as
well as for .a. Use .${libext} rather than .a when creating old
libraries.
* libtoolize.in: Change initial /bin/sh to @SHELL@.
* libtool.m4 (AM_PROG_LIBTOOL): Add AC_REQUIRE for
AC_CANONICAL_BUILD, so that autoconf doesn't get mixed up by the
AC_REQUIRE in AC_CHECK_TOOL.
1998-11-04 Ian Lance Taylor <ian@cygnus.com>
* ltconfig.in: Look in the right directory for libtool.c in
archive_cmds for cygwin32.
1998-11-04 Ian Lance Taylor <ian@cygnus.com>
* ltconfig.in: Fix cygwin32 support to avoid using a double
extension, to delete the def file, to set version_type to windows,
and to include versuffix in the DLL name.
* ltmain.in: Add support for a version_type of windows.
1998-11-04 Ian Lance Taylor <ian@cygnus.com>
* ltconfig.in: Add cygwin32 support.
* libtool.m4 (AM_PROG_LIBTOOL): Call AM_SYS_LIBTOOL_CYGWIN32 on a
cygwin32 host. Pass DLLTOOL and AS to ltconfig.
(AM_SYS_LIBTOOL_CYGWIN32): New macro.
1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
* libtool.m4 (sco): fix typo
1998-11-04 Ian Lance Taylor <ian@cygnus.com>
* ltconfig.in: On AIX, don't treat GNU ld specially.
1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (hardcode_minus_L): Revert Ian's patch for
ltconfig.in. Although -L hardcoding is not used with GNU ld, it
does happen, so hardcode_minus_L must be set to yes.
* ltconfig.in (compiler_o_lo): check whether we can write directly
to a .lo
* ltmain.in (compiler_o_lo): if not, write to .o and rename it
1998-11-04 Ian Lance Taylor <ian@cygnus.com>
* ltconfig.in: For sunos4 using GNU ld, set hardcode_minus_L to
no.
* ltmain.in: Add some hacks to make SunOS --enable-shared work
when using GNU ld.
1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
* THANKS: Added Marc J. Fraioli
1998-11-04 Marc J. Fraioli <fraioli@dg-rtp.dg.com>
* ltconfig.in (dgux): new supported platforms
1998-11-04 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltconfig.in (need_locks): if neither `-c -o' nor hard links are
available, fallback to not so safe mechanism, by setting
need_locks to warn
* ltmain.in (need_locks): when need_locks is set to warn, use the
lockfile to try to fail in case of incorrect concurrent builds
* THANKS: Added Eric Estievenart
1998-11-04 Eric Estievenart <eric@via.ecp.fr>
* doc/libtool.texi (Compile mode): Document that -o is fully
supported.
* libtool.m4 (libtool-lock): new ARG_ENABLE; sets (need_locks)
* ltconfig.in (disable-lock): control need_locks
(hard_links): check whether hard-links can be used for locking
* ltmain.in (need_locks): use $output_obj.lock for locking
1998-11-03 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in: correctly create libraries and programs with
directory components in their names
1998-11-03 Eric Estievenart <eric@via.ecp.fr>
* ltmain.in (output_obj): typo
1998-11-02 Ian Lance Taylor <ian@cygnus.com>
* ltconfig.in: For sunos4, add ${libname}.so$versuffix to
library_names_spec.
* ltmain.in: For version_type of sunos, set versuffix even if
-version-info was not used.
1998-11-02 Alexandre Oliva <oliva@dcc.unicamp.br>
* ltmain.in (libobj): default value must not contain directory
components
1998-11-02 Eric Estievenart <eric@via.ecp.fr>
* ltconfig.in (compiler): detect if the compiler supports
-c and -o flags, create a variable compiler_c_o. Also issue
a big warning if it is not supported
* ltmain.in (compile): enable the -o option as input for libtool.
The objects are not moved if the compiler supports -o with -c.
Sources and objects can contain relative directories.
(link): enable the linking of executables into relative directories
1998-11-02 Alexandre Oliva <oliva@dcc.unicamp.br>
* AUTHORS: added myself as a co-maintainer
* THANKS: and removed my name from here
* autogen: new script; run it to bootstrap libtool after checking
it out from CVS
* libtool.m4 (CFLAGS): check whether -belf is needed on SCO, as
suggested by Robert Lipe <robertl@dgii.com>
1998-10-31 Gordon Matzigkeit <gord@trick.fig.org>
* demo/Makefile.am (hc-libpath): Use parameters from the libtool
in the top build directory, since the one in the demo directory is
not guaranteed to exist.
1998-10-27 Alexandre Oliva <oliva@dcc.unicamp.br>
* demo/Makefile.am (objdir): there are no longer quotes around
objdir in the libtool script
1998-10-27 Gordon Matzigkeit <gord@trick.fig.org>
* ltconfig.in (dynamic_linker): Echo the result to fd 6, so that
--silent works correctly. From William M. Perry.
1998-09-24 Gordon Matzigkeit <gord@trick.fig.org>
* ltmain.in (link): Fix problems when building only static
libraries. From Owen Taylor.
1998-08-20 Gordon Matzigkeit <gord@trick.fig.org>
* ltmain.in (install): When library_names_spec has redundancies,
avoid deleting the main library when installing symlinks. From
Jeff Dairiki.
(link): Get rid of backticks in a here doc comment.
This causes segfaults on Solaris 2. From Aleksandar Bakic.
(finish): Don't display messages
* ltconfig.in (archive_cmds): On HP-UX 9, make sure we don't try
to move a file to itself. From Jeff Dairiki.
1998-08-19 Gordon Matzigkeit <gord@trick.fig.org>
* ltconfig.in: Make changes to accomodate ltmain.c.
* Makefile.am (clibtool): New target for the C version of libtool.
* ltmain.c: Experimental C version of libtool.
1998-07-10 Ian Lance Taylor <ian@cygnus.com>
* ltmain.in (install): Test against both $SHELL and /bin/sh.
1998-06-30 Gordon Matzigkeit <gord@trick.fig.org>
* ltmain.in: Convenience archive support. From Ulrich Drepper.
* ltconfig.in (postinstall_commands): Change libraries to be
executable on Solaris in order to prevent ldd from moaning. From
Julian Gosnell.
(whole_archive_flag_spec): New variable to shortcut convenience
archive expansion. From Ulrich Drepper.
1998-06-11 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in, ltmain.in: Change globs to accept forward slashes
in absolute directory names used on DOS-like systems. From Robert
S. Maier.
Thu May 28 18:59:08 1998 Ian Lance Taylor <ian@cygnus.com>
* ltconfig.in: Use $SHELL when invoking shell scripts.
1998-05-21 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in (compile): Don't have `-static' turn off libtool
libraries, so that people can use it just to guarantee that `.o'
files exist. Suggested by David Mosberger-Tang.
1998-05-18 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in (link): Possibly reexec the shell from within the
wrapper script.
Allow `-version-info' and `-release' to coexist again. If people
want to shoot themselves in the foot, I'd better let them do so,
so that people who are smart enough not to can squeeze out another
ounce of functionality. From Tim Janik.
(version_vars): Delete dead variable.
* ltconfig.in (hardcode_minus_L): FreeBSD 3.0 doesn't hardcode, at
last. Reported by Jason Nordwick.
* libtoolize.in, ltconfig.in, ltmain.in: Change a bunch of `if
test ...; then : ; else ...' constructs to `if test ! ...; then
...', for clarity.
1998-05-17 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in (LC_ALL, LANG): Save these values and restore them
during execute mode. From Pavel Kankovsky.
(mode): Accept strace and truss as programs that throw us into
execute mode. From Pavel Kankovsky.
1998-05-07 Ian Lance Taylor <ian@cygnus.com>
* ltconfig.in: Don't use .$versuffix or .$major. Instead, assume
the variable will include any required prefix.
* ltmain.in: If no -version-info option was used, produce empty
version strings rather than 0.0.0. When making library symlinks,
avoid making a symlink if the name would be the same.
1998-04-27 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in (link): Support `unsupported' as a hardcode_action.
Reported by Lars Hecking.
(lib_linked): Do some sanity checking to make sure that we
actually do link libtool libraries into the program to prevent the
above problem from happening again.
1998-04-20 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in: Maybe reexec under $SHELL, if $echo doesn't work.
Reported by Lars Hecking.
1998-04-19 Gordon Matzigkeit <gord@profitpress.com>
* Makefile.am (maintainer-rekey): New rule to force us to change
Project-Version after we make a release. This keeps all version
numbers in sync, rather than branching just before the release.
(maintainer-release, maintainer-checkin): Use maintainer-rekey.
* ltmain.in (finish): Notice when a finish command fails, so that
we can add it to the list of recommendations.
1998-04-17 Gordon Matzigkeit <gord@profitpress.com>
* libtool.m4 (AM_PROG_LIBTOOL): Append file descriptor 5 to
config.log, so that configure doesn't clobber the messages that
ltconfig put there. From David Taylor.
1998-04-15 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in (archive_cmds): Try using `$CC -shared' when
configuring for GCC under irix5 and irix6. From Wolfram Gloger.
(ofile): Add `--output' flag to change the name of the generated
libtool. Suggested by Wolfram Gloger.
1998-04-14 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in: Remove all hardcoded references to ltmain.in in
favour of $PACKAGE and $PROGRAM.
(install): Compute the installation name for programs, in case we
install a relinked file which has a different name. Reported by
Pieter Schoenmakers.
* ltconfig.in (echo): Try using the ksh(1) `print -r' builtin
command, before reverting to printf(1).
* Makefile.am (libtool): Use $(SHELL) when invoking ltconfig.
* ltconfig.in (echo): Rewrite the test for a working echo so that
we win on Solaris by avoiding printf(1), if possible.
* tests/quote.test (echo): Update the echo test from ../ltconfig.in.
1998-04-13 Ian Lance Taylor <ian@cygnus.com>
* libtool.m4 (AM_PROG_NM): Don't override NM in the environment.
1998-04-13 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in: New `--config' flag to print out all configured
variables.
* libtool.m4: Pass ltconfig the undocumented --no-reexec flag,
since we call it explicitly using CONFIG_SHELL.
* ltconfig.in: Restart the script under a different shell if
CONFIG_SHELL is not /bin/sh. This way, people can use Bash if
they don't have a working echo program.
* ltmain.in, ltconfig.in: Use $SHELL instead of /bin/sh when
generating executable scripts.
* libtoolize.in, ltconfig.in, ltmain.in: Implement the `--debug'
flag to begin shell tracing.
* ltconfig.in (archive_cmds): Don't use `gcc -shared', even if we
have GNU ld. Reported by Robert S. Maier.
1998-04-06 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in (pic_flag): Create more than just a null C file, so
that the SunPRO 4.2 cc doesn't complain. From Bob Friesenhahn.
(gnu_ld_acts_native): Delete this variable. There is just too
much version skew to try to pretend GNU ld is the same as the
system ld. Reported by Ian Lance Taylor.
(hardcode_action): Don't bother relinking or aborting on systems
that are too dynamic to have a consistent hardcode method.
Reported by Doug Winterburn.
1998-03-24 Gordon Matzigkeit <gord@profitpress.com>
* doc/libtool.texi: A little proofreading. From Albert
Chin-A-Young.
1998-03-23 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in: Treat HP-UX 11 just like HP-UX 10. From Jeff Law.
1998-03-21 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in (reload_flag): Correct a tiny bug where `--silent'
would still print out the reload flag. From Stephan Kulow.
1998-03-20 Ian Lance Taylor <ian@cygnus.com>
* libtool.m4: Use changequote to avoid problems with square
bracket patterns.
1998-03-20 Gordon Matzigkeit <gord@profitpress.com>
* Release 1.2.
1998-03-18 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in: Rearrange some of the echos to make them more
consistent.
1998-03-14 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in: Break up an echo command that causes Solaris printf
to dump core. Apparently the Solaris people hardcoded a 2110-byte
buffer into their printf(1). Feh. From John Judge.
1998-03-11 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in: Change the test for the PIC compiler flag so that
we assume it doesn't work if there are any warning messages. This
fixes a bug using old GCC's on HP-UX. Reported by Akim Demaille.
1998-03-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile.am ($(srcdir)/ltconfig): Remove bogus command to create
a file ltconfig in the build directory.
1998-03-09 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* ltmain.in: Avoid unnecessary use of command substitution,
replacing foo=`eval \\$echo \"$mumble\"` by eval foo=\"$mumble\".
(link): Use ${1+"$@"} in wrapper scripts in order to pass
arguments safely to a program.
* ltconfig.in: Use -fpic instead of -fPIC if $host_cpu matches
m68*.
1998-03-08 Gordon Matzigkeit <gord@profitpress.com>
* Release 1.1.
* ltmain.in: <sigh> I like `here documents' a lot, but apparently
they are so badly handled by old and buggy /bin/sh's, that
replacing `cat <<EOF ... EOF' by `$echo "..."' improves libtool's
speed by a factor of 5. So, I've eliminated here docs from the
all-important ltmain.in. From Tom Lane.
* tests/tlibtool: Eliminate from distribution.
* tests/defs (libtool): Don't use tlibtool anymore, since we can now use
the generated libtool directly.
1998-03-07 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in: Copy the contents of ltmain.sh into the generated
libtool. This should more than halve the execution times on old
or buggy /bin/sh systems, such as HP-UX 9 and SunOS 4.1.4. From
Tom Lane.
1998-03-05 Gordon Matzigkeit <gord@profitpress.com>
* libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): Add support for
the `default' package, so that people can control unnamed
packages.
(LD): Only add an ABI flag under IRIX 6.x, since IRIX 5.x doesn't
support them. From Alexandre Oliva.
1998-03-01 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in: Port to UnixWare 2.x. From Christopher Olsen.
1998-02-25 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in (compile): For consistency, honour the `-static' flag
during compilation.
1998-02-23 Brendan Kehoe <brendan@cygnus.com>
* libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): For
--enable-shared, heed the value of $PACKAGE from AM_INIT_AUTOMAKE
if given as the argument for the library to be built shared.
1998-02-20 Gordon Matzigkeit <gord@profitpress.com>
* libtool.m4, ltconfig.in (NM): Fix up a typo confusion between
$ac_dir and $dir. Reported by Akim Demaille.
* ltmain.in (link): Don't allow both `-version-info' and
`-release'. Reported by Danny Backx.
1998-02-18 Gordon Matzigkeit <gord@profitpress.com>
* Makefile.am (noinst_SCRIPTS): Remove lineno from distribution.
* lineno: Remove from distribution, as it is no longer needed.
* Makefile.am ($(srcdir)/ltconfig.in, $(srcdir)/ltmain.sh):
Rewrite these rules not to use config.status or lineno. This
makes things simpler, and reduces dependencies, so that the
scripts are rebuilt and installed in srcdir only when necessary.
Reported by Stephan Kulow.
* tests/sh.test (scripts): Remove the lineno script, since it is no
longer distributed.
* tests/assign.test, if.test, test-e.test: Even though 15 tests looks
impressive, these are now redundant. Remove them from the
distribution.
* tests/sh.test: Do what assign.test, if.test, and test-e.test used to
do.
1998-02-16 Gordon Matzigkeit <gord@profitpress.com>
* libtool.m4, ltmain.in, ltconfig.in: Correctly identify absolute
directory names on MS-DOS. Suggested by Bob Friesenhahn.
* ltconfig.in, ltmain.in, libtool.m4: Change a bunch of `sed N!d'
commands to `sed Nq', for efficiency.
* ltmain.in: Only egrep the first few lines of files in order to
determine if they were libtool-generated. This prevents egrep(1)
from taking forever to look at a 10MB binary on Solaris. From
Stephan Kulow.
* tests/defs: Correctly identify absolute directory names on MS-DOS.
Suggested by Bob Friesenhahn.
1998-02-11 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in (no_undefined_flag): Add a flag to declare under
Solaris that the library should not have any undefined
references. Suggested by Bob Friesenhahn.
* ltmain.in (mkdir): Fix one more mkdir race. From H.J. Lu.
1998-02-08 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in, ltmain.in (striplib, old_striplib): Ditto.
* ltconfig.in (profile_flag_pattern): Get rid of dead code.
1998-02-07 Gordon Matzigkeit <gord@profitpress.com>
* libtool.m4 (AM_ENABLE_SHARED, AM_ENABLE_STATIC): New macros to
modify the `--enable-shared' and `--enable-static' defaults in the
configure script. This works a lot better than the old
`enable_shared' and `enable_static' variables did. Reported by
Bob Friesenhahn.
* tests/suffix.test (extensions): Added GNAT (GNU Ada Translator)
suffices, `.ada', `.ads', `.adb'. From Samuel Tardieu.
1998-02-07 Samuel Tardieu <sam@inf.enst.fr>
* ltmain.in: Recognize .ada, .ads and .adb as known suffixes (they
are used by GNAT, the GNU Ada compiler).
1998-02-06 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in: Turn on IRIX shared libraries again!
* libtool.m4 (LD): Use file(1) to discover which ABI we're using
on IRIX, and propagate the correct linker flag. From Jim Wilson.
* ltconfig.in, ltmain.in (Xsed): `arg=-n; echo "$arg" | sed ...'
gives problems, because the `-n' is interpreted as an option to
echo(1). So, use `echo "X$arg" | sed -e 's/^X//' ...' everywhere,
via the $Xsed convenience variable. Suggested by H.J. Lu.
1998-02-02 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in: Turn off IRIX shared library support until 32-bit
and 64-bit ABI differences can be resolved.
1998-01-28 Gordon Matzigkeit <gord@profitpress.com>
* libtool.m4 (LD): Reverse yesterday's change because `-old_ld'
isn't accepted by GCC.
1998-01-27 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in (soname_spec): Add in user-specified release numbers
for every host system that supports an soname that differs from
the linkname.
* libtool.m4 (LD): Add `-old_ld' to the list of flags that need to
be passed through on SGI. Reported by Chris Lee.
* ltmain.in (release): Prepend a hyphen to the release number, and
fix a typo because `-version-info' takes only 3 args. From
H.J. Lu.
1998-01-25 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in (library_names_spec): On Linux, use the
user-specified release.
* ltmain.in (link): Allow the user to specify a release number for
the library using the `-release' flag. Suggested by H.J. Lu and
Ian Lance Taylor.
1998-01-23 Gordon Matzigkeit <gord@profitpress.com>
* tests/Makefile.am (TESTS_ENVIRONMENT): Export some important
environment variables. Reported by Ian Haggard.
1998-01-19 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in (old_postuninstall_cmds): Reorder so that chmod
happens after ranlib. From Markus F.X.J. Oberhumer.
* ltmain.in (mode): Added `gcc*' and `*-gcc*' to the patterns that
recognize compilers. From Pieter Schoenmakers.
(link): Recognize `.a' files again. Suggested by Pieter
Schoenmakers.
1998-01-18 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in (compile): Recognize `.asm' extension, for use with
the nasm assembler. From Markus F.X.J. Oberhumer.
* tests/suffix.test (extensions): Recognize `.asm'. From Markus
F.X.J. Oberhumer.
1998-01-12 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in (runpath_var): Use instead of
`hardcode_runpath_var'.
1998-01-11 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in (finish): Add a better --finish message. Suggested by
Kenneth Albanowski.
* ltconfig.in, ltmain.in: Fix a few typos.
1998-01-03 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in (link): Quote the definition of $echo in the wrapper
script.
* ltconfig.in (export_dynamic_flag_spec): Use `--export-dynamic'
instead of `-export-dynamic', which is not accepted by all GNU
ld's. From Eiichi Takamori.
* ltmain.in (install): Don't print silly `library stripping'
warnings. Reported by Fran�ois Pinard.
1997-12-19 Gordon Matzigkeit <gord@profitpress.com>
* ltmain.in: Don't forget to quote the CDPATH substitution. From
Tor Lillqvist.
1997-12-18 Gordon Matzigkeit <gord@profitpress.com>
* ltconfig.in, ltmain.in (CDPATH): Unset this environment variable
so that HP-UX shells, at least, don't print out the directory name
after a `cd' command. From Tor Lillqvist.
1997-12-10 Gordon Matzigkeit <gord@gnu.org>
* demo/Makefile.am (hardcode): Change a bunch of references to
`$(LIBS)' to `-lm', since we no longer put -lm in LIBS.
* demo/configure.in: Delete the test for libm, since it is
standard on every system.
* demo/Makefile.am (libhello_la_LDFLAGS): Change to include -lm,
in accordance with new inter-library dependency code.
* ltmain.in (dependency_libs): Added to help people link programs
without having to explicitly specify inter-library dependencies.
* ltconfig.in (COLLECT_NAMES): Oops... I forgot to apply the AIX 3
restriction to the generated libtool script. Reported by Stefan
Westerfeld.
1997-12-05 Gordon Matzigkeit <gord@gnu.org>
* ltconfig.in (thisdir): Quote $echo in the generated libtool
script for HP-UX. From Markus F.X.J. Oberhumer.
* ltmain.in (link): Recognize the `.s' suffix. From Markus
F.X.J. Oberhumer.
* ltconfig.in (link_static_flag): Don't quote ${wl} on HP-UX
because link_static_flag is never evaled. From Eric Backus.
* tests/suffix.test (extensions): Recognize `.s'. From Markus
F.X.J. Oberhumer.
1997-12-01 Gordon Matzigkeit <gord@gnu.org>
* demo/Makefile.am (helldl_DEPENDENCIES): Add `libhello.la' to our
dependencies so that parallel builds work correctly. From Jim
Meyering.
* Makefile.am ($(srcdir)/ltconfig, $(srcdir)/ltmain.sh): Rewrite
these rules so that they are parallelizable. Reported by Jim
Meyering.
* ltconfig.in (ltecho): We need special handling to quote the
`echo' variable itself. From Alexandre Oliva.
1997-11-29 Gordon Matzigkeit <gord@gnu.org>
* ltconfig.in (COLLECT_NAMES): Enable this workaround for a broken
collect2 only on AIX 3. This avoids problems on other AIX
versions. Reported by Stefan Westerfeld.
* ltmain.in, ltconfig.in (finish_eval): Variable like finish_cmds,
except it is a single command which is evaled, and not shown.
* ltconfig.in: Port to AmigaOS. From Joop van de Wege.
* ltmain.in (echo): Delete preamble to check for a working echo,
since we just use the one included in the generated libtool.
* ltconfig.in (echo): Include this definition in the generated
libtool script.
1997-11-28 Gordon Matzigkeit <gord@gnu.org>
* ltconfig.in, libtool.m4 (NM): Add /usr/ccs/bin to the PATH
before checking. From Kaveh R. Ghazi.
(NM): Delete an extraneous egrep from ltconfig.
* ltconfig.in (finish_cmds): Change back to using `ldconfig -n'.
This makes Linux behave like other systems, which is more in line
with what libtool needs.
1997-11-27 Gordon Matzigkeit <gord@gnu.org>
* ltmain.in: Change a whole bunch of `progname' variables to
`modename'. This is for clarity, and to fix a tiny typo in finish
mode.
* libtool.spec (Name, Version): Ditto.
* configure.in (AM_INIT_AUTOMAKE): Use PRCS to automatically generate
the proper package name and version number.
* ltconfig.in (gnu_ld_acts_native): Treat GNU ld like the native
linker on SunOS 4.x. Suggested by Alexandre Oliva.
(deplibs): Change the defaults all over, since most systems cannot
handle inter-library dependencies.
* libtool.m4, ltconfig.in (NM): Only look at the first line of the
output from NM when determining whether it supports a command line
option. This prevents false positives on OSes which ignore
invalid flags, like HP-UX, which prints `nm: unknown option "B"
ignored'. Reported by Kaveh R. Ghazi.
* ltconfig.in (finish_cmds): On Linux, update ld.so.cache by
removing the `-n' flag from ldconfig. Suggested by Kenneth
Albanowski.
* Makefile.am (maintainer-checkin, maintainer-release): New
commands to reap the full benefit of using PRCS to maintain
libtool version numbers.
* ltconfig.in, ltmain.in (global_symbol_pipe): Explicitly cast all
addresses to __ptr_t. This fixes a bug due to a strict IRIX
compiler. Suggested by Kaveh R. Ghazi.
1997-11-23 Gordon Matzigkeit <gord@gnu.org>
* ltmain.in (echo): For aesthetics, avoid using `$echo' when
`echo' will do *exactly* the same thing. This prevents ugly
`printf %s\n timestamp > some.lo' commands from appearing in the
libtool output.
(link): Delete the `-allow-undefined' flag because it is now the
default. Make `-no-undefined' in order for people to declare that
a library is entirely self-contained. This prevents maintainers
from accidentally creating shared libraries that won't work on
AIX. Reported by Stefan Westerfeld and Danny Backx.
* ltconfig.in (echo): Use an echo variable, just as in ltmain.in,
because we need it for quoting substitutions. For most of the
script, though, use the default echo, just like Autoconf does.
Without this patch, character \001 ends up in global_symbol_pipe.
Reported by Lars Hecking and J�rgen Fluk.
* ltmain.in (echo): Set default to `echo=echo'. Ooops. That's
what you get for testing obscure code paths and forgetting to
revert to the original version. Reported by Danny Backx.
1997-11-14 Gordon Matzigkeit <gord@gnu.org>
* ltconfig.in (hardcode_libdir_flag_spec): Set to `-R' for FreeBSD
2.2. From Sean Kelly.
(postuninstall_cmds, old_postuninstall_cmds): Commands to run
after uninstall mode deletes the libraries. Suggested by Joop van
de Wege.
(export_dynamic_flag_spec): On HP-UX, add the `${wl}-E'
export_dynamic_flag_spec. Reported by Matthias Hoelzer.
1997-11-11 Gordon Matzigkeit <gord@gnu.org>
* ltconfig.in, ltmain.in (sed_quote_subst): Oops. We forgot to
quote backticks. Reported by Joop van de Wege.
* tests/quote.test: Add backticks to the backslashify test.
1997-11-09 Gordon Matzigkeit <gord@gnu.org>
* ltconfig.in (symcode): On IRIX, don't extract undefined
symbols. When a function is inlined by G++, references to it are
still marked as undefined in the object file. This means that our
symbol file causes undefined references, because there are
actually no matching global symbols. Reported by Paul Kendall.
1997-11-08 Gordon Matzigkeit <gord@gnu.org>
* ltconfig.in: Don't forget to redirect the COLLECT_NAMES libtool
script fragment to the generated libtool, rather than to stdout.
1997-11-07 Gordon Matzigkeit <gord@gnu.org>
* libtool.m4 (LD): Add a more sophisticated test to determine the
ABI flag on IRIX 6. Suggested by Lars Hecking and Ian Lance
Taylor.
* ltconfig.in, ltmain.in (COLLECT_NAMES): Only export this
variable if we are running under AIX. Otherwise, we tickle a g++
bug under IRIX. From Paul Kendall.
* Change bug reporting address to <bug-libtool@gnu.org>.
* ltconfig.in (allow_undefined_flag): OSF/1 3.x also requires a
wildcard argument to `-expect_unresolved'. From Stephan Kulow.
1997-11-06 Gordon Matzigkeit <gord@gnu.org>
* ltmain.in (link): Use libname_spec.
* ltconfig.in (pic_flag): Somehow, the HP-UX pic_flag (`+Z') was
dropped between libtool-1.0 and now. Add it back in. Reported by
Akim Demaille.
Integrated more patches for OS/2. From Jeff Freedman.
(libname_spec): New variable for OSes that don't require their
libraries to look like `libNAME.a'.
* ltmain.in (link): Only use global_symbol_pipe if it has been
defined. From Stephan Kulow.
* ltconfig.in (global_symbol_pipe): Protect C fragment under C++
compilers. From Stephan Kulow.
* Makefile.am ($(srcdir)/acinclude.m4,
$(srcdir)/demo/acinclude.m4): Change rules to use LN_S so that
they can be run on any system.
* ltconfig.in (archive_cmds): For NetBSD, don't include deplibs.
From Dieter Baron.
* ltmain.in (mkdir): Check that the directory doesn't exist before
we exit with error, so that we don't get races during parallel
builds. From H.J. Lu.
(fbsd_hideous_sh_bug): Apparently, some FreeBSD /bin/sh's have a
bug that will empty base_compile unless we do this dummy
assignment. From Marc van Kempen.
1997-10-22 Gordon Matzigkeit <gord@gnu.org>
* libtool.m4 (libtool_shared, libtool_static): Fixed logic error
to reenable override of libtool's defaults by setting
enable_shared or enable_static in configure.in. Reported by Tom
Tromey and Stephan Kulow.
* ltmain.in (link): Add explicit support for compiler options that
begin with `+'. Reported by Aubert Pierre.
1997-10-20 Gordon Matzigkeit <gord@gnu.org>
* ltmain.in: Silly me. Change a bunch of occurances of "* $dir *"
into *" $dir "*.
* ltconfig.in (pic_flag): PIC is the default for AIX. From Mark
Kettenis. It is also the default for OSF/1.
* demo/Makefile.am (objdir): Quote double-quotes. From Mark
Kettenis.
* ltconfig.in (global_symbol_pipe): This variable is not
double-evaled, so it should not be double quoted. From Mark
Kettenis.
1997-10-19 Gordon Matzigkeit <gord@gnu.org>
* ltconfig.in (LD): Same as below.
* libtool.m4 (LD): Set LD if we discover an absolute path to GNU
ld. This prevents breakage when `$CC -print-prog-name=ld' returns
an absolute directory name. Reported by Ulrich Drepper.
* ltconfig.in: Port to OS/2 using EMX. From Jeff Freedman.
* ltmain.in (link): Use old_archive_from_new_cmds.
* ltconfig.in (old_archive_from_new_cmds): New variable to
support DLL libraries.
* ltmain.in (link): Only `eval' export_dynamic_flag_spec if it is
not empty. Reported by Stephan Kulow.
1997-10-18 Gordon Matzigkeit <gord@gnu.org>
* ltconfig.in (objdir): Use the .libs directory on all systems for
which that name is valid, and _libs on the others (like MS-DOS).
Suggested by Juergen Erhard.
1997-10-14 Gordon Matzigkeit <gord@gnu.org>
* ltmain.in (link): Added a bit more inter-language support to the
symbol file generation process.
Instead of complaining about unrecognized argument suffices, pass
them to the linker. This prevents libtool from barfing on
mandatory arguments to linker flags. Reported by Michael
Tiemann.
1997-10-09 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.in (link): Change the wrapper script to follow symlinks
in order to find thisdir. This should put the final nail in the
coffin for problems with wrapper scripts. From Ian Lance Taylor.
1997-10-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.in: Change a few `$echo' commands into `$show' to make
--silent mode behave as advertised.
* ltconfig.in (allow_undefined_flag): On OSF/1 4.x, use
`-expect_unresolved \*'. From Christian Mondrup.
* ltmain.in (install): Change install mode to allow a specified
/bin/sh argument at the beginning of the install_prog. Also,
specify the shell to run when invoking libtool recursively for
finish mode. From Chris Provenzano.
* libtool.m4 (LIBTOOL): Change definition to include $(SHELL).
From Chris Provenzano.
* ltconfig.in: Port to UTS 4.x. From Alistair Crooks.
* demo/Makefile.am (hc-libflag): Add rules to make this binary for
hardcode.test.
* tests/hardcode.test (hardcode_libdir_flag_spec): Check the hardcoding
properties of the flag_spec, too.
1997-09-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in (LD): As with libtool.m4, don't override LD.
Do a whole bunch of ac_t quoting.
1997-09-24 Ian Lance Taylor <ian@cygnus.com>
* libtool.m4 (AM_PROG_LD): Don't override LD in the environment.
1997-09-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* libtool.m4, ltconfig.in (NM): Arguments to the for loop must be
whitespace separated. This fixes a bug under FreeBSD's /bin/sh.
From George Scott.
* tests/defs, tests/Makefile.am (clean-local): Change =inst to
_inst to fix portability on MS-DOS. From Robert Hoehne.
1997-09-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.in (deplibs): When building shared libraries, always add
-lc to deplibs. Reported by Andreas Jellinghaus.
1997-09-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in, ltmain.in (COLLECT_NAMES): If the COLLECT_NAMES
environment variable has not been set, set it to empty. This
apparently fixes the AIX bug with GCC's collect2. Reported by
Mark Kettenis.
* demo/Makefile.am, ltmain.in, tests/hardcode.test (objdir):
Changed objdir variable .libs to _libs. This is another MS-DOS
portability fix. Suggested by Robert Hoehne.
* tests/hardcode.test (objdir): New variable to simplify change from
.libs to _libs (MS-DOS portability fix).
1997-09-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in, ltmain.in (hardcode_minusL): Fix typo by renaming
hardcode_minusL to hardcode_minus_L. Also add FreeBSD
hardcode_libdir_flag_spec. From Paul Traina.
* ltmain.in (link): Honour multiple `-rpath' flags when linking
programs. Suggested by Bengt Martensson.
Quote appearances of $echo in the wrapper script. From Alexandre
Oliva.
* Makefile.am, configure.in, tests/tlibtool: Use ltmain.in instead
of ltmain.sh.in.
* ltmain.in: Rename ltmain.sh.in to ltmain.in. This fixes a
portability problem (on MS-DOS, of all places!). From Robert
Hoehne.
1997-09-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Do not transform libtool objects to regular
objects if we did not build old libs. Reported by Tomas Hiller.
1997-09-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* demo/Makefile.am (hell_debug_LDFLAGS): Change hell.static to
hell.debug in order to reflect the new static linking semantics.
* ltmain.sh.in (link): Add new `-all-static' flag to prevent all
dynamic linking. The old `-static' flag just prevents dynamic
linking against libtool libraries. Suggested by Bengt
Martensson.
* ltconfig.in (with_gnu_ld): Add a test to make sure that we are
actually using GNU ld. This fixes an inconsistency when running
ltconfig without using libtool.m4. Reported by Ulrich Drepper.
(global_symbol_pipe): Delete symbols that are not valid C
identifiers. Reported by Johan Danielsson and Bengt Martensson.
* tests/demo-exec.test, tests/demo-inst.test: Change references from
hell.static to hell.debug.
* tests/quote.test (echo): Add the same Digital Unix echo test fixes as
the ones to ltmain.sh.in from Todd Kover.
* tests/if.test, tests/test-e.test (scripts): Add ../lineno to
the scripts we check.
* tests/if.test: Check for accidental use of test X$something rather
than test "X$something".
1997-09-04 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (echo): Quote all the uses of `echo' in all eval
statements. Reported by Bengt Martensson and Alexandre Oliva.
(echo): Need to surround test args with double quotes, or the echo
test fails on Digital Unix 4.0. From Todd Kover.
1997-08-28 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (echo): Change test to one that uses printf.
This works on AIX, which has the same problems that Solaris does,
but no working echo program.
* tests/quote.test (echo): Change test to version that uses printf.
Be less strict about return results.
1997-08-27 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Make sure that compile_command and
finalize_command are always evaled. Quote any unknown linker
flags we need to pass through.
(compile): Use quoting for flags we pass.
(echo): I hate Sun! The /usr/bin/echo on Solaris handles
backslash sequences, which makes it impossible to do backslash
quoting using echo and sed. So, we search for an echo that obeys
the `echo '\t'` = '\t' equality. Then we use `$echo' everywhere
in ltmain.sh.
Put tabs back into the ${IFS= } sequences. Emacs untabify is
libtool bane.
* ltconfig.in: Quote all variable values that may contain
metacharacters creating the libtool script. This provides
complete protection, so that even single-quotes may appear inside
a libtool variable value.
* ltmain.sh.in (link): Quote finalize_command before putting it in
the wrapper script.
* tests/quote.test (echo): Add the test for a non-backslash-mangling
echo.
1997-08-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (sed_quote_subst): Change the quoting procedure
again. I think that the new one is robust for *all* characters,
including whitespace and metacharacters.
* tests/quote.test: New torture test for libtool metacharacter quoting.
1997-08-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Change quoting procedure because some shells
cannot handle `]' in scan sets. From Ian Dall.
1997-08-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (execute): Added -dlopen flag handling. Suggested
by Alexandre Oliva.
1997-08-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Change executable wrapper to fix up value
of thisdir, as well as progdir, if the $0 path doesn't work. This
guarantees that shlibpath_var is set correctly. Add support for
execute mode.
* ltmain.sh.in (execute): New mode to automatically set
shlibpath_var, which allows easy debugging of uninstalled
executables and libraries. Suggested by Kenneth Albanowski.
1997-08-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Makefile.am ($(srcdir)/ltconfig): Use lineno.
* configure.in: Add AM_PROG_AWK for lineno.
* lineno: New program to automatically put line numbers in
ltconfig.
* libtool.m4, ltconfig.in (AM_PROG_LD): Yet Another Rewrite, which
incorporates the results of `gcc -print-program-name=ld'.
Suggested by Alexandre Oliva.
1997-08-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Accept `--quiet' and `--silent' flags to turn off
command echoing. From Juergen A. Erhard.
(compile): Recognize the Objective C `.m' extension. From Juergen
A. Erhard.
(compile): Suppress error output from the second compilation (if
any) so that we don't get those frustrating duplicate error
messages.
* tests/suffix.test (extensions): Added Objective C extension, `.m'.
1997-08-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Added messages to config.log to describe what sort
of test we are running.
(pic_flag): Added a sanity check for pic_flag. This should fix
bugs reported using the cc bundled with HP-UX 10. Suggested by
Bruno Haible and Akim Demaille.
1997-08-01 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Add -dlopen and -dlpreopen support for
libtool objects. This means that dlopened modules no longer need
to be shared libraries.
* ltconfig.in (pic_flag): GCC on IRIX 6 always builds PIC.
Reported by Ian Lance Taylor.
* libtool.m4 (LD): Always add `-n32' to the linker if we are using
GCC on IRIX 6. Reported by Ian Lance Taylor.
1997-07-30 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* libtool.m4 (AM_PROG_LIBTOOL): Explicitly check enable_shared and
enable_static rather than just enableval. This allows
configure.in scripts to set their own defaults. Suggested by
Tommy Reilly.
1997-07-29 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Add NLS environment variable handling copied from
ltconfig.in. Reported by Akim Demaille.
(link): If allow_undefined_flag is not supported, then turn on old
libraries. Reported by Akim Demaille.
* demo/dlmain.c (main): Use dld_preloaded_symbol_count to display
a message about the sortedness of the symbol table.
* ltconfig.in (nlist): Use an nlist convenience variable, so that
code can be shared directly with ltmain.sh.in.
* ltconfig.in, ltmain.sh.in (dld_preloaded_symbol_count): Count up
the number of symbols in the dld_preloaded_symbols. Set to `-1'
if the list wasn't both sorted and counted. This allows
applications to do a quick binary search, if they are so inclined.
1997-07-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Remove code for `-version-file', since it
has been long-deprecated.
Disable static linking if hardcode_direct is unsupported and there
is no working link_static_flag. This provides correct behaviour
for all cases on AIX 3, regardless of whether collect2 is broken
or not. Reported by Mark Kettenis.
* ltconfig.in: Fix typo in test polarity. From Mark Kettenis.
1997-07-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in (hardcode_direct): Set to `unsupported' if aix3 uses
a broken collect2. Adapted out of test results from Mark
Kettenis.
(link_static_flag): Make sure the link_static_flag actually works
with a trivial binary.
* ltmain.sh.in, ltconfig.in (export_dynamic_flag_spec): Renamed
from export_dynamic_flag because we eval it in ltmain.sh.
* ltmain.sh.in (link_static): Don't eval link_static_flag.
* demo/dlmain.c (main): Change function prototype to be KNR
compatible. From Kaveh R. Ghazi.
* ltmain.sh.in (link): Use no_builtin_flag. This works around
conflicting definitions of builtin functions with at least GCC.
Reported by Kazuhiro Sasayama.
* ltconfig.in (no_builtin_flag): New flag to turn off builtin
functions when compiling an object file.
(pipe_works): Use it.
* tests/demo-exec.test (status): Use status variables so that we try to
execute all the programs.
1997-07-23 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in (pic_flag): According to the libg++ 2.7.2 configure
script, DEC alpha CPUs are PIC-only, as well. Reported by Kevin
Jacobs.
1997-07-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in, ltmain.sh.in: Replace all occurances of "sed 'X;
Y'" with "sed -e 'X' -e 'Y'".
* ltmain.sh.in (link): Finish full integration for `-dlopen' and
`-dlpreopen'.
Fix two silly typos where I used a compile_command in place of a
finalize_command, and vice versa.
Change the wrapper script to check a hardcoded path only if the
argv[0] method fails. This is a compromise for the previous two
patches, and should solve the majority of problems with wrapper
scripts. From Kenneth Albanowski.
(link): Change a reference to hardcode_libdir_colon_separated to
use the new hardcode_libdir_separator variable.
* demo/Makefile.am (helldl_LDFLAGS): Add `-export-dynamic' and
`-dlpreopen' for building helldl.
* demo/dlmain.c (main): Succeed, even if none of the libhello
symbols have been preloaded.
1997-07-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in (global_symbol_pipe): Add `U' to the accepted global
symbol types. This means that we will get duplicate symbols, but
we'll also be sure to get all global symbols used by the program.
* ltconfig.in (pipe_works), ltmain.sh.in (link): Sort and make
symbol output unique.
1997-07-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in (pipe_works): Check to make sure our guessed
global_symbol_pipe actually works.
* ltmain.sh.in (link): Revert change from Kenneth Albanowski. The
wrapper scripts are more reliable when they just use the argv[0]
value. Generally, when the argv[0] method doesn't work, the user
is trying to do something weird with an uninstalled binary, and
should try a different approach.
* ltconfig.in, ltmain.sh.in (CC): Always use `$CC' instead of
`$cc'. This fixes a FreeBSD bug. Reported by Chuck Robey, and
others.
1997-07-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): In wrapper scripts, hardcode the current
directory to prevent phony argv[0] values from screwing up our
program. From Kenneth Albanowski.
1997-07-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Makefile.am (demo_distfiles): Add demo/dlmain.c to the
distribution.
1997-07-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* demo/Makefile.am: Add helldl, made from dlmain.c, to demostrate
`-dlopen' usage.
* demo/dlmain.c: New file to demonstrate preloaded modules.
* ltmain.sh.in (link): Add `-dlopen' flag to preload dynamic
modules, even on static platforms. Use `$NM' and
`$global_symbol_cmd' to extract symbols from required files.
(dlname): Delete dlname mode entirely. It is rendered obsolete
because the `.la' file format is now a public interface.
* ltconfig.in (NM): New variable for BSD-compatible nm program.
(global_symbol_cmd): Pipeline to extract global symbols from the
nm output.
* ltmain.sh.in: The .la file header should depend on `ltmain.sh',
not `$PROGRAM'.
(link): Make sure $export_dynamic_flag is eval'ed before it is
used.
* tests/demo-exec.test, tests/demo-inst.test: Check the new
helldl program, too.
1997-07-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* libtool.spec: New Red Hat Package Manager specification file in
order to help people prepare distributions of libtool for Linux.
* ltmain.sh.in: Eliminate two accidental uses of the NONE magic
value. These were breaking libtool's behaviour when no mode is
specified.
* tests/nomode.test: New test to make sure there is correct behaviour
when we don't specify a mode.
1997-07-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Release 1.0.
* ltconfig.in: On SunOS, append /usr/etc to the PATH before
running ldconfig; on *BSD, append /sbin. This was done in line
with the Linux change suggested by Kenneth Albanowski.
* demo/Makefile.am (hardcode_tests): Aesthetic change to
alphabetize order of compiling the hardcode tests.
* Makefile.am (EXTRA_DIST): Delete README-automake.
* README-automake: Remove from distribution.
1997-07-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): In the executable wrapper, strip trailing
colons from the shlibpath_var because some ld.so's, notably
OpenBSD 2.0's (!), don't parse colon-terminated values correctly.
From Tim Pierce.
1997-07-01 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in, ltconfig.in: Eliminate uses of the NONE magic
variable value. Use an empty variable instead.
* ltconfig.in (with_gcc, with_gnu_ld): Do the tests for the C
compiler and linker if the variables are unset, or if they are not
GNU C and ld.
(RANLIB): Eliminate redundant `if' statement.
* configure.in: Use AM_PROG_LD.
* libtool.m4 (AM_PROG_LD_GNU): New macro to determine if LD is GNU
ld.
(AM_PROG_LD): Rename AM_PATH_PROG_LD to AM_PROG_LD. Parameterize
so that the user can specify `--with-gnu-ld' or `--without-gnu-ld'
to indicate his preference.
(AM_PROG_LIBTOOL): Use it.
1997-06-30 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Append /sbin to the path before running ldconfig on
Linux. This helps superusers who haven't set their PATH
correctly. Suggested by Kenneth Albanowski.
* tests/if.test: New test to make sure that we haven't forgotten to
follow an `if' statement with a `test' command. This should avoid
the majority of hard-to-track bugs.
1997-06-29 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Change all the `eval "$run ..."' sequences to
`$run "eval ..."'.
Change all `$ln_s ...' sequences to use `(cd /dir && $LN_S ...)'.
This is the sequence recommended by the Autoconf manual, and
should avoid any problems on older machines. Eliminate all uses
of `cp -p'. Reported by Akim Demaille.
(install): Use `test $# -gt 0' instead of `test -n "$1"'.
* ltconfig.in (LN_S): Add test to see if `ln -s' works.
* libtool.m4: Increment serial number, and require AC_PROG_LN_S.
1997-06-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Add missing `test' statement. Reported by
Akim Demaille.
1997-06-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* libtool.m4 (LD): Consistently use ac_cv_path_ld instead of
am_cv_path_ld. From Tim Pierce.
1997-06-20 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Redo two robustness fixes. Alexandre had the
correct approach, but I botched them.
* ltconfig.in (dynamic_linker): Disable shared libraries on
MkLinux unless GNU libc is in use. Reported by Akim Demaille.
1997-06-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (install): Add a missing `test' command. Reported
by Joel Weber.
Miscellaneous fixes to improve robustness. From Alexandre Oliva.
* tests/demo-conf.test (CONFIG_SITE): Set to /dev/null, so that the
config.site file doesn't mess up our prefix. Reported by Joel
Weber.
* tests/demo-inst.test: Always run both hell.static and hell.
* tests/demo-conf.test: Always remove the local config.cache, but run
`make distclean' only if the Makefile exists. Otherwise, the demo
directory is not cleaned up if a user uses their own config.cache.
Reported by Joel Weber.
1997-06-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Create invalid libtool objects when partial
linking if we don't have PIC. From Jeff Dairiki.
(install): Fix bug if libtool object is installed to a file name
without directory components. From Jeff Dairiki.
1997-06-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Makefile.am (demo/configure): Fix up rules to run autoconf.
(aclocal.m4): Now we depend on our own libtool.m4.
* configure.in (AM_PATH_PROG_LD): Use it.
* libtool.m4 (AM_PATH_PROG_LD): New macro to find the linker used
by the C compiler.
(AM_PROG_LIBTOOL): Use it.
* ltmain.sh.in (install, uninstall): Support installing and
uninstalling `.lo' files. From Jeff Dairiki.
1997-06-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Makefile.am (ltconfig, ltmain.sh): Only move if $(srcdir) is not
the current directory. Don't regenerate every time the package is
reconfigured. Reported by Tom Tromey.
(MAINTAINERCLEANFILES): Added ltconfig, ltmain.sh, so that
$(srcdir) is not messed with during a regular clean.
1997-06-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Makefile.am (ltconfig, ltmain.sh): Be sure to move these files
into $(srcdir) once they are created.
* ltmain.sh.in (link): Disable building static libraries.
People should use their favourite AR and RANLIB commands.
Disable building old-style objects if `--disable-static' is
given. Suggested by Tom Lees and Stephan Kulow.
1997-06-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in (host_cpu, host_vendor, host_os): Patch up
definitions, to allow for the fact that the host_os may contain
hyphens (as in linux-gnu). From Scott Goehring.
* ltmain.sh.in (link): Move the `dlname' setting closer to the top
of the file. Suggested by David Mosberger-Tang.
Symlink the libtool archive into the `.libs' directory so that it
can be found by programs that want to find a library's dlname by
searching LD_LIBRARY_PATH. Reported by David Mosberger-Tang.
1997-06-06 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Tell people to report bugs to the new libtool mailing list,
<bug-libtool@gnu.ai.mit.edu>.
1997-06-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in (allow_undefined_flag): New variable that implements
`-allow-undefined'.
(archive_cmds): Enable C++ constructors for FreeBSD 2.2. From
David Nugent.
* ltmain.sh.in (link): Accept new `-allow-undefined' flag when
building libtool libraries. This tells libtool to allow
unresolved symbols to exist in shared libraries. Basically, this
turns off shared libraries on AIX. Suggested by Ian Lance Taylor.
1997-05-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* libtool.m4 (LD): On at least IRIX, many different flags need to
be propagated to the linker if they are part of the compiler
command line. Reported by Anthony Green.
1997-05-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Trivial port to FreeBSD 3. From David Nugent.
1997-04-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Remove all traces of `-whole-archive',
`-no-whole-archive', and libtool convenience libraries. They were
more trouble than they're worth. If these are ever reimplemented,
they need more careful attention to make portable.
* libtool.m4, ltconfig.in: Added a `--disable-static' flag to turn
off static library creation. From Tom Lees (who finally convinced
me that it was the Right Thing to do).
1997-04-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (hardcode_runpath_var, runpath_var): Use them, if
the linker has no -rpath flag.
Quote the values we use to set runpath_var and shlibpath_var.
(link): Use libobjlibs for libtool convenience libraries.
* ltconfig.in (hardcode_runpath_var, runpath_var): Add new
variables to describe linkers that honour `LD_RUN_PATH'.
(host_cpu, host_os): Use these more specific variables, rather
than the full canonical host system name.
* ltmain.sh.in (dlname): Distinguish between missing
`-export-dynamic' and when the library is only statically linked.
1997-04-21 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Trivial port to OpenBSD by making it an alias for
NetBSD. From Tim Pierce.
1997-04-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Temporary measures to check for a broken collect2
program. Right now, we just see if we're using GCC on AIX 3.
* tests/hardcode.test: AIX also has arbitrary limits on the line length
of input to fgrep(1), so we need to translate NUL characters to
newlines in order to properly detect embedded `.libs'. From Bruno
Haible.
Also redirect stderr to /dev/null, so that AIX users don't get
worried by `fgrep: Maximum line length of 2048 exceeded.'.
1997-04-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (mode): Use `egrep -e' when inferring the operation
mode.
1997-04-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in (linker): Some GNU ld's don't accept `--version',
but do accept `-v'. From Jukka Honkela.
(ld_shlibs): AIX lossage may be settling down. AIX 3.2.5 ld does
*not* hardcode direct libraries, but AIX 4.1.[45] ld does.
1997-04-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in (hardcode_action): Fix silly logic error. From
Bruno Haible.
1997-04-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (install): Relink if hardcode_action is `relink',
rather than using complex conditionals based on the other
hardcode variables.
* ltconfig.in (hardcode_action): Set to `relink', not `immediate',
if we can only hardcode existing directories. Rearrange
conditionals to make the intent clearer, otherwise this can be one
hellish piece of code for the already-dizzy libtool maintainer.
1997-04-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* replfunc.m4: Delete from the distribution. Documentation now
describes how to set LTALLOCA and LTLIBOBJS in your own
configure.in.
* ltmain.sh.in (link): Make sure a libtool library only counts as
a shared library if its library_names are non-null.
Use timestamps for .lo's when PIC is turned off, rather than
symlinking to the real object. This helps invalid mixtures of PIC
and non-PIC to fail.
1997-04-01 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Makefile.am (EXTRA_DIST): Distribute libtool.prj.
* Shameless plug: Changed source code management system from CVS
to PRCS.
* libtool.scm: Initial Guile implementation of libtool.
* ltmain.sh.in: An unexpected inconsistency in my whole approach
to shared libraries has proven that libtool needs to be completely
rewritten if I'm going to give full shared library support for
platforms that don't use the GNU C library version 2 (which to my
knowledge currently only works on GNU Hurd and Linux/GNU systems).
Porting the GNU C library should not be difficult, though.
Platforms that don't have the dlopen(3) family of functions will
need to install GNU DLD version 4 in order to build any kind of
libraries at all. Unfortunately, DLD 4 won't be released for a
while, because I maintain it, and I'm too busy working on libtool.
I'll keep the old ltconfig/ltmain.sh implementation around for as
long as I can, and continue applying bug fixes, so that I'll have
a reasonable starting point for this new libtool implementation.
It looks like this implementation will be even more complex than
the original (pre-0.7) libtool. Initial estimates show that it
may be up to 3 times slower, and 5 times larger than libtool-0.9.
I'll probably have to rewrite it in Guile to get reasonable
performance, which will severely limit its portability for a
while.
That will also introduce a bootstrapping issue, since the next
release of Guile will use libtool to build shared libraries. So,
if users want to have shared Guile libraries, they will have to
configure Guile with `--disable-shared', compile it, install it,
then reconfigure Guile with `--enable-shared' and repeat.
I was hoping to get libtool 1.0 out the door by early April, but
now it looks like it will take at least another year before it'll
be usable by the public at large. April fools. libtool.scm
doesn't exist yet, either.
* ltconfig.in (verify_host): Remove redundant `Transform *-*-linux*
to *-*-linux-gnu*'. From Bruno Haible.
* tests/hardcode.test: AIX 3 doesn't have strings(1) so we need to do a
funny tr and pipe the output to fgrep. From Bruno Haible.
1997-03-31 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Makefile.am: Use the new AUTOMAKE and ACLOCAL variables.
* ltmain.sh.in (link): Only fail if a convenience library doesn't
exist, and the user specified -whole-archive.
Fix shell quoting that was breaking @OUTPUT@ substitution.
1997-03-28 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Use the hardcode_libdir_separator.
Convenience libraries are libtool objects if we're not building
libtool libs.
* ltconfig.in (hardcode_libdir_separator): Added in case the
linker only honours the last of the -rpath flags (but it can
contain multiple colon-separated directories), such as on OSF/1.
Reported by Carl D. Roth.
* ltmain.sh.in (link): Set the dlname if -export-dynamic is given.
(install, uninstall): Handle the dlname file separately.
* ltconfig.in (export_dynamic_flag): Added to allow programs to
use reflexive dlopens.
* ltmain.sh.in: Include the mode name in any help messages.
(dlname): New mode to give the name to be used with dlopen(3).
* ltconfig.in (AR): Allow AR to be set by the user, and export it
to ltmain.sh.
* ltmain.sh.in: Remove broken profiled library support.
Added `-whole-archive' and `-no-whole-archive' to manipulate
convenience libraries.
1997-03-27 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Allow the creation of static convenience
libraries made of libtool objects. Suggested by David
Mosberger-Tang.
1997-03-25 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: On AIX, libtool also needs to look for `B' symbols
in nm output. These are global variable definitions.
* ltmain.sh.in: Linking with -static should link against the
linklib if old_library is empty (like it is on AIX).
* ltconfig.in: Change the order of OS detection, so that
linux-gnu* is detected before gnu*.
* Makefile.am (libtool): Use the correct CC, RANLIB, LD, when
generating libtool. From Carl D. Roth.
* configure.in: Find out the user-supplied CC, LD, RANLIB. From
Carl D. Roth.
1997-03-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Linking with -static should link against the old
library, not linklib.
* README-automake: Updated to point to Automake 1.1m.
1997-03-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* demo/main.c: Use it.
* demo/foo.h: Declare it.
* demo/foo.c: Added definition of `nothing' so that we have an
global variable definition, as well as functions.
1997-03-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Make sure either enable_shared or enable_static is
configured. Reported by Tom Tromey.
* ltmain.sh.in: Bomb out if no library types are configured.
1997-02-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in, ltmain.sh.in (hardcode_libdir_flag_spec): Renamed
from `hardcode_libdir_flag'.
(library_names_spec): Renamed from `lib_names'.
* ltconfig.in, ltmain.sh.in (hardcode_action): Change value from
`rpath' to `immediate'.
* replfunc.m4: Add AM_FUNC_ALLOCA, AM_FUNC_MEMCMP, and
AM_STRUCT_ST_BLOCKS.
1997-02-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Transform *-*-linux* to *-*-linux-gnu* to support
old-style config.guess scripts.
1997-02-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Create objdir *before* linking a program into it.
1997-02-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Any ld --version that returns GNU is probably a GNU
ld. From Marcus Daniels.
* libtool.m4: Added AM_REPLACE_FUNCS.
1997-02-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Trivial port to *-*-osf4. From Bruno Haible.
1997-02-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: AIX 3 and 4 ld only hardcodes LIBPATH if -L is not
specified. This behaviour is the same with both xlc and gcc.
1997-02-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* doc/platforms.texi: Yaay! We found a workaround for HP-UX
/bin/sh buffer overflows. From Eric Backus.
1997-02-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Release 0.9.
* PLATFORMS, doc/platforms.texi, Makefile.am, doc/Makefile.am:
Move PLATFORMS to doc/platforms.texi.
* ltmain.sh.in (link): Use hardcode_libdir_flag to get a library
directory into the resulting binary.
Use hardcode_action, and make many simplifying changes to have
compilation and finalization be consistent with each other.
* ltconfig.in: Not so amazing! It's AIX cc that hardcodes direct
libraries... gcc doesn't, though.
(link_rpath_flag): Change link_rpath_flag to be
hardcode_libdir_flag.
(hardcode_action): New variable to simplify ltmain.sh.
* tests/Makefile.am (TESTS): Do the full make sequence with
--disable-shared, then without.
* tests/demo-sttc.test: Configure the demo directory with
--disable-shared.
1997-01-29 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Change to take advantage of linkers that don't
hardcode direct libraries.
* ltconfig.in: Amazing! AIX 3 linker doesn't hardcode direct
libraries, which makes it less buggy than AIX 4. Reported by Mark
Kettenis.
* demo/configure.in: Check for the math library.
* demo/foo.c (foo): Change to use the `cos' function, so that we
need to link against another library.
* tests/hardcode.test: Rewrite to use fgrep on output from ``strings
-a'' if using fgrep directly on the binary files fails. From Mark
Kettenis.
1997-01-28 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Export the PATH variable in order to find
the program, rather than giving a full path. This helps give the
program a less confusing value for argv[0].
* tests/hardcode.test: Make sure that ../demo/libhello.la really is a
shared library before running hardcoding tests.
1997-01-26 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Release 0.8.
1997-01-24 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Makefile.am (demo_distfiles): Add demo/acinclude.m4 to the
distribution.
1997-01-22 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* libtool.m4: For IRIX 6, ld needs -n32 if cc uses it. Reported
by Bruno Haible.
* ltconfig.in: IRIX ld does not hardcode direct libraries.
Reported by Bruno Haible.
1997-01-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in, ltmain.sh.in (hardcode_shlibpath_var): Allow new
value, `unsupported', since most linkers do not allow you to use
shlibpath_var for initial linking.
* ltconfig.in: Lots of bug fixes from Bruno Haible. Set wl on
OSF/1, fix definitions of hardcode_* variables.
(archive_cmds): Fix not to use +h on HP-UX 9.x. Reported by Bruno
Haible.
* tests/demo-conf.test: Use the CONFIG_SHELL environment variable when
running configure in the demo directory. From Bruno Haible.
* tests/Makefile.am (clean-local): Make distclean in the demo directory,
so that ``make clean; env CC=cc make check'' works as one would
expect.
* tests/demo-make.test: Fix typo (use $make instead of make). Reported
by Akim Demaille.
1997-01-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* libtoolize.in: Handle explicit AC_CONFIG_AUX_DIR settings.
Suggested by Akim Demaille.
* libtool.m4: Change ltconfig line to use $CONFIG_SHELL when it is
specified. Reported by Bruno Haible.
1997-01-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* demo/Makefile.am (hc-direct): Do better searching for the proper
name to do a direct link.
(hc-libpath): Make allowances if shlibpath_var cannot be used
to find libraries at link time, such as on AIX.
* Makefile.am (demo_distfiles): Remove ansi2knr.1 and ansi2knr.c.
* demo/foo.c, demo/hello.c, demo/main.c: Change ANSI prototypes to
KNR form, for better portability, and less ansi2knr hair.
* demo/configure.in: Remove AM_FUNC_PROTOTYPES.
* demo/Makefile.am: Remove ansi2knr from the AUTOMAKE_OPTIONS.
* demo/ansi2knr.1, demo/ansi2knr.c: Removed these files.
* ltmain.sh.in: Use 1>&2 consistently to direct errors and
warnings to stderr.
(compile): Fix missing single quote.
* ltconfig.in (hardcode_direct): On Solaris at least, using
DIR/libNAME.so does not hardcode DIR, so introduce a new hardcode
variable to reflect that.
* ltmain.sh.in (link): If linking with $link_static_flag fails,
then retry without it, but still use the .a versions of
uninstalled libtool archives.
* tests/tlibtool: Rewrote to grab all the settings from the generated
libtool script.
* tests/hardcode.test: Make allowances if shlibpath_var cannot be used
to find libraries at link time, such as on AIX.
1997-01-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Eval $link_static_flag. Reported by Bruno
Haible.
* PLATFORMS: Add to distribution. Suggested by Bruno Haible.
1997-01-14 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* tests/demo-conf.test, tests/demo-inst.test, tests/demo-unst.test,
tests/hardcode.test:
Use $make instead of make.
* tests/defs (make): Add definition of $make that uses the $MAKE
environment variable, if set. Suggested by Bruno Haible.
* tests/demo-unst.test (leftovers): Change the find command to ignore
files beginning with a dot, as egrep -v doesn't seem to do the
trick. Reported by Bruno Haible.
1997-01-13 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Add support for SCO OpenServer 5.x. From
Christopher Olsen.
(can_build_shared): Initialize at the top of the file, so that
shared libraries aren't built on platforms that don't support
them.
* tests/hardcode.test: Added a test to make sure that libtool's idea of
hardcoding system linkers is correct.
1997-01-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in, ltconfig.in, libtoolize.in, doc/libtool.texi:
Update the copyright completion years.
1997-01-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Port to IRIX 5.3, 6.2.
1997-01-06 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: HP-UX 9 support is the same as HP-UX 10, so the
port is trivial.
* libtoolize.in: Add --dry-run option, -n for short.
1997-01-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): On at least SunOS, /bin/sh doesn't
understand "export something=val". From Bruno Haible.
* tests/Makefile.am (distclean-local): Remove all files that the tests
may have created. Reported by Bruno Haible.
* For all tests, discover srcdir when running from the command
line.
* tests/demo-unst.test: Don't fail if make uninstall doesn't delete
files beginning with a dot, since spurious .nfsXXX files may be
present when running NFS. Reported by Bruno Haible.
1997-01-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (compile): Recognize valid source file suffixes for
Fortran and C++.
* tests/suffix.test: New test to guarantee that libtool compile
recognizes valid source file suffices.
1996-12-17 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Don't allow *._o and *.l_o to be valid
object type suffixes, in spite of Automake's current ansi2knr
implementation. Not all compilers allow non-`.o' suffixes.
1996-12-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Delete the `libtool' version type.
1996-12-12 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Use the full autoconf syntax when checking for GNU
C. Delete library stripping program, until we have a correct
test.
1996-12-11 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: On AIX 3, use /usr/ucb/nm, not /ucb/nm. From Mark
Kettenis.
1996-12-09 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
Reported by Charles Kerr:
* doc/libtool.texi (Creating Object Files): Doc fix independant ->
independent.
* ltconfig.in (ld_shlibs): SunOS 4 doesn't support shared library
dependencies.
1996-12-08 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* Release 0.7.
* Makefile.am (EXTRA_DIST): Add README-automake to the
distribution.
* ltmain.sh.in (link): When linking libtool libraries, use
standard objects if they are PIC. This prevents spurious warnings
about invalid suffixes on AIX.
* demo/Makefile.am: Rename libhell to libhello, so that we're not
quite as offensive.
* ltconfig.in: Remove unnecessary host validity checking.
* ltmain.sh.in: Don't force people to use libNAME.la: SOMETHING.la
is good enough (for consistency with *.a handling).
* tests/demo.test: Break up into demo-conf.test, demo-make.test,
demo-exec.test, demo-inst.test, and demo-unst.test, so that passes
and failures are reported more quickly.
* tests/link-2.test: Test to make sure that .lo files don't get built
directly into programs.
1996-12-07 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Accept files ending in .a as standard
object files. Reported by Ulrich Drepper.
Remove support for creating profiled libraries (for now).
Transform all library objects into standard objects when linking a
program.
* ltconfig.in (thisdir): How embarrassing! An error in the regexp
for finding the directory component of the script path.
* tests/tlibtool: A typically-configured libtool script, that uses
../ltmain.sh.in for its backend.
* tests/link.test: Make sure that it is legal to link against .a files.
1996-12-05 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (compile): Support `.S' (preprocessed assembler)
files. Reported by Anthony Green.
* libtoolize.in: Give clearer instrutions for how to update
aclocal.m4.
* ltconfig.in, ltmain.sh.in (link): Add support for creating
reloadable objects.
1996-12-04 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (install): Fix passing -n flag to `libtool
--finish'.
(compile): Compile `.lo' and `.o' objects at the same time so that
non-PIC objects (if they are available) can be used for linking
into programs and creating static archives. Suggested by Ulrich
Drepper.
1996-12-03 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (link): Give the full path to the libtool library
when sourcing it.
* ltconfig.in (old_striplib): Do a configuration test to determine
if old-style libraries actually can be stripped or not.
1996-12-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* tests/demo.test: Try compiling the ../demo subdirectory, with no
special options.
* test-e.test: Check that we haven't used `test -e' anywhere in
our portable shell scripts.
1996-12-02 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Delete reference to ABOUT-LIBS.
* tests: Added new subdirectory.
* doc/libtool.texi: Doc fixes, and finished up the Configuring
chapter.
* ltmain.sh.in (link): Allow *._o and *.l_o to be valid object
file suffixes, for Automake's ansi2knr implementation.
New option -version-info replaces -version-file.
[help]: Give a pointer to mode-specific help when appropriate.
* ltconfig.in: Changed messages to correspond to AM_PROG_CC_STDC.
* demo: Also test Automake's ansi2knr support.
1996-11-19 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Bug fixes for AIX 4, and for static platforms.
* ltmain.sh.in (install): Fix for loops over arguments.
Need to quote ${IFS= } -> "${IFS= }".
(link): Fix soname_spec bug. Create objdir whether or not we have
shared libraries.
* ltconfig.in: Check for library stripping program.
Use test -f instead of test -e.
1996-11-18 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltconfig.in: Don't run the RANLIB test unless RANLIB wasn't
set.
Be verbose about the environment variables we were configured
with.
* ltmain.sh.in (objdir): change to .libs.
1996-11-16 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in (install): Just plunge ahead with the
installation... don't try to enforce dependencies.
1996-11-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh.in: Fix up $libdir to be $dest in install mode.
1996-11-10 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* ltmain.sh: Finished rewrite of compile, link, and install
modes.
* New ChangeLog file for libtool-0.7, since I've totally rewritten
libtool.
1996-03-15 Gordon Matzigkeit <gord@gnu.ai.mit.edu>
* For historical reasons: this is when I started writing libtool.
--
Copyright (C) 1996-2010 Free Software Foundation, Inc.
This file is part of GNU Libtool.
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved. This file is offered as-is,
without warranty of any kind.
Zerion Mini Shell 1.0