Commit Graph

2957 Commits

Author SHA1 Message Date
Ralf Wildenhues
75142db4f8 * 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.
2008-01-12 17:00:51 +00:00
Ralf Wildenhues
12108ff510 * 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.
2008-01-12 14:07:02 +00:00
Ralf Wildenhues
19b4628888 * tests/old-m4-iface.at (AM_PROG_LIBTOOL): Also copy needed
lt~obsolete.m4.
2008-01-12 14:00:57 +00:00
Ralf Wildenhues
75620b0cf7 * 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
2008-01-12 13:58:14 +00:00
Ralf Wildenhues
6773d15c4a Fix ChangeLog entry 2008-01-12 11:26:07 +00:00
Ralf Wildenhues
62b765b1c0 * 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.
Report by Bob Friesenhahn.
2008-01-12 11:25:03 +00:00
Ralf Wildenhues
68ee62b70e * 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 19:15:08 +00:00
Peter O'Gorman
5717ea2a92 * 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-11 07:08:28 +00:00
Ralf Wildenhues
2962e8d935 * 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.
2008-01-08 19:43:29 +00:00
Ralf Wildenhues
34ad201833 * libltdl/m4/ltdl.m4 (_LTDL_INSTALLABLE): Restore correct
_LT_BUILD_PREFIX-using code.
2008-01-08 19:39:19 +00:00
Gary V. Vaughan
24ca52570c * tests/recursive.at: Remove bogus --debug option.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-01-08 06:56:03 +00:00
Gary V. Vaughan
1b1af19929 * 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).
2008-01-08 06:48:49 +00:00
Gary V. Vaughan
943b1192ee * 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>
2008-01-08 05:21:49 +00:00
Gary V. Vaughan
22bffb97cf * libltdl/m4/ltdl.m4 (_LT_CONFIG_LTDL_DIR): Correct closing
comment.
Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-01-08 05:16:08 +00:00
Gary V. Vaughan
80f87ebe9c * NEWS: Grammar nit. 2008-01-08 05:11:14 +00:00
Gary V. Vaughan
8e67083cff * 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-08 05:07:41 +00:00
Ralf Wildenhues
8ffd4adbf1 * tests/runpath-in-lalib.at (Runpath in libtool library files):
Compile program file without libtool.
Report by Rainer Tammer.
2008-01-07 21:26:55 +00:00
Rainer Tammer
ce38b28f44 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 21:13:23 +00:00
Gary V. Vaughan
2ebff7eea0 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 LT_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-06 16:33:31 +00:00
Ralf Wildenhues
920b97072f * 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.
2008-01-02 19:35:56 +00:00
Ralf Wildenhues
2141db5954 * 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.
2008-01-02 18:52:08 +00:00
Stefan Sperling
76c6f64133 * doc/libtool.texi (Linking executables): Reorder paragraphs. 2007-11-30 04:18:40 +00:00
Ralf Wildenhues
93a9cf2f9a * 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-26 21:42:51 +00:00
Ralf Wildenhues
9072c71a92 * 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.
2007-11-24 08:02:21 +00:00
Ralf Wildenhues
33b873b4ec * libltdl/config/ltmain.m4sh (func_extract_an_archive)
(func_extract_archives): Add some quoting.
2007-11-24 08:00:21 +00:00
Ralf Wildenhues
7c9e236905 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-16 07:08:34 +00:00
Ralf Wildenhues
f4695bde76 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-12 19:44:05 +00:00
Ralf Wildenhues
b575a0a3f9 * 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-09 06:47:15 +00:00
Ralf Wildenhues
f664fead41 * tests/runpath-in-lalib.at: New test.
* Makefile.am: Update.
Report by Benoit SIGOURE <tsuna@lrde.epita.fr>.
2007-11-08 21:38:27 +00:00
Eric Blake
e0c01e9892 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-16 22:45:49 +00:00
Eric Blake
f766edbeb9 Whitespace cleanup.
* libltdl/m4/ltsugar.m4: Avoid space-tab in indents.
* libltdl/m4/libtool.m4: Avoid trailing space.
2007-10-12 20:54:44 +00:00
Eric Blake
5b560bdf3f 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 20:41:35 +00:00
Ralf Wildenhues
e886f1e796 * libltdl/config/ltmain.m4sh: Also sanitize `LANGUAGE'.
(func_mode_execute): Also restore `LANGUAGE', for old glibc.
Report by Paul Eggert against Autoconf.
2007-10-12 16:35:15 +00:00
Eric Blake
0189c20e44 * libltdl/.cvsignore: Ignore argz.h. 2007-10-12 02:48:56 +00:00
Ralf Wildenhues
34700eacf5 * 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-11 17:23:33 +00:00
Ralf Wildenhues
257d1210cb * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
extension `.sx'.
* tests/suffix.test: Test it.
2007-10-09 19:32:45 +00:00
Ralf Wildenhues
f5bb5e0e7a * 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-07 02:44:57 +00:00
Eric Blake
22204a9ff8 * libltdl/ltdl.c (lt_dlcaller_get_data): Work even when no caller
has set data.
2007-09-05 14:48:54 +00:00
Ralf Wildenhues
6621aa6b9b * 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-04 18:01:33 +00:00
Ralf Wildenhues
e14f5d12ae * NEWS: Update. 2007-09-01 10:55:42 +00:00
Ralf Wildenhues
4fd2348691 * libltdl/ltdl.c (trim): Fix possible write beyond array bound. 2007-09-01 10:49:19 +00:00
Ralf Wildenhues
361ec0ead5 * libltdl/ltdl.c (lt_dlopenadvise): Instead of asserting, return
FILE_NOT_FOUND if the filename is "".
2007-09-01 10:43:28 +00:00
Ralf Wildenhues
86a2c620c8 * libltdl/ltdl.c (try_dlopen): Fix computation of extension,
avoids subtracting pointer from NULL pointer.
2007-09-01 10:42:34 +00:00
Ralf Wildenhues
8dbd989470 * 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.
2007-09-01 08:13:20 +00:00
Ralf Wildenhues
fbbe0e88e4 * libltdl/ltdl.c (tryall_dlopen_module): Fix string length
computation: do not allocate more than needed.
2007-09-01 08:10:02 +00:00
Ralf Wildenhues
9b115eaaa6 * libltdl/loaders/preopen.c (vm_close): `module' is unused.
Coverity report CID 158 via Jeff Squyres.
2007-08-30 18:39:10 +00:00
Ralf Wildenhues
f7b428d2d9 * 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.
2007-08-30 18:23:24 +00:00
Ralf Wildenhues
56e12a2db6 * libltdl/ltdl.c (has_library_ext): Remove dead code.
Coverity report CID 561 against Open MPI via Jeff Squyres.
2007-08-30 18:18:31 +00:00
Ralf Wildenhues
208dd66070 * 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.
2007-08-29 21:01:20 +00:00
Ralf Wildenhues
1e63751c04 * 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-29 20:54:53 +00:00