Commit Graph

2995 Commits

Author SHA1 Message Date
Ralf Wildenhues
786ef35a4e * libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [ linux ]
[k*bsd*-gnu ]: Fix brown paper bag: save and restore `libdir'.
2006-09-18 05:49:39 +00:00
Ralf Wildenhues
7eb81349b1 * tests/duplicate_deps.at: New file. Test circular depending
convenience archives (currently failing).
* Makefile.am: Update.
Report by Stefan Traby <stefan@hello-penguin.com>.
2006-09-17 20:02:15 +00:00
Ralf Wildenhues
8f951c011f * 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.
2006-09-17 19:30:15 +00:00
Ralf Wildenhues
a47ab0fc66 * 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.
2006-09-17 19:27:14 +00:00
Ralf Wildenhues
7105a8d04e * tests/shlibpath.at: New file, with...
(shlibpath_overrides_runpath): ...new test.
* Makefile.am: Update.
2006-09-17 19:26:28 +00:00
Ralf Wildenhues
0aa2626475 * tests/destdir.at: New file.
* Makefile.am: Adjust.
2006-09-12 18:02:32 +00:00
Ralf Wildenhues
6b9e072561 * tests/inherited_flags.at: Drop ${parameter}' for $parameter'
where appropriate, for improved `testsuite -x' output.
2006-09-11 21:35:25 +00:00
Ralf Wildenhues
6ae279553a * 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 17:43:37 +00:00
George Bosilca
8a17ccd68d 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'.
2006-09-04 17:27:27 +00:00
George Bosilca
c6b76b4385 * 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.
2006-09-04 17:25:15 +00:00
George Bosilca
c7a33e176b * libltdl/argz_.h: It's __cplusplus, not _cplusplus.
* libltdl/libltdl/slist.h: Likewise.
2006-09-04 17:23:30 +00:00
George Bosilca
4936fb4a91 * libltdl/libltdl/lt__glibc.h: Wrap included argz.h in
`extern "C"', for broken headers on Cygwin.
2006-09-04 17:21:35 +00:00
Ralf Wildenhues
eb5e2e11ce * tests/testsuite.at: Test `unset' on a set variable; older
bash versions return 1 if the variable was not set.
2006-09-03 15:19:38 +00:00
Ralf Wildenhues
8aabc32cac * 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-03 15:08:12 +00:00
Ralf Wildenhues
44383fc00f 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-09-01 16:19:56 +00:00
Ralf Wildenhues
8ff46a300a * tests/mdemo/main.c: Fix bogus line in last patch. 2006-08-31 06:20:15 +00:00
Ralf Wildenhues
833a91c5bf 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-31 05:34:01 +00:00
Ralf Wildenhues
673d0f40fe * 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.
2006-08-30 04:14:21 +00:00
Ralf Wildenhues
97a1358f43 * Makefile.am (check-local, installcheck-local): Use
`TESTSUITEFLAGS' rather than `TESTSUITE_FLAGS', like Autoconf.
* HACKING, README, README.alpha: All uses changed.
2006-08-30 03:18:15 +00:00
Ralf Wildenhues
2166e633ae * 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-28 16:02:14 +00:00
Ralf Wildenhues
05f26e584d * 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 15:08:14 +00:00
Kurt Roeckx
956f27f44c * 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 15:04:30 +00:00
Ralf Wildenhues
3f7724490d * 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-25 14:56:35 +00:00
Ralf Wildenhues
ad29b3b578 * 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-23 17:57:34 +00:00
Eric Blake
d8495dfccc * 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.
2006-08-22 17:51:03 +00:00
Eric Blake
4039ebf311 * libltdl/m4/libtool.m4: Avoid space-tab. 2006-08-22 17:30:42 +00:00
Ralf Wildenhues
c1f378e90c * 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-07 16:25:08 +00:00
Ralf Menzel
f89a71b681 * 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-03 14:06:36 +00:00
Albert Chin
67311504b6 * 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-08-02 13:35:30 +00:00
Eric Blake
5f5c7b9eb8 * libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD, LT_OUTPUT):
s/recognise/recognize/.
2006-07-28 17:01:05 +00:00
Eric Blake
4704053cac * libltdl/ltdl.c (loader_init_callback) [HAVE_LIBDLLOADER]:
Protect definition to avoid compiler warnings about unused
function.
2006-07-22 20:34:06 +00:00
Eric Blake
dad710f891 * libltdl/m4/ltdl.m4 (LT_LIB_DLLOAD): Search for dlopen without
depending on -ldl, required by cygwin 1.5.20.
2006-07-22 04:08:46 +00:00
Ralf Wildenhues
ccafe7f927 * 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-24 04:58:58 +00:00
Ralf Wildenhues
7986f9a971 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-13 19:08:33 +00:00
Ralf Wildenhues
7dd3afb52a * .cvsignore, doc/.cvsignore, libltdl/.cvsignore,
libltdl/loaders/.cvsignore, tests/.cvsignore: Update.
2006-06-13 18:36:56 +00:00
Ralf Wildenhues
8f7eb43a16 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-12 17:54:15 +00:00
Ralf Wildenhues
b785acfbef 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-10 07:36:25 +00:00
Ralf Wildenhues
c17fac0153 * 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-09 15:13:45 +00:00
Ralf Wildenhues
f38715832a * libltdl/config/ltmain.m4sh (func_mode_link): Honor `-threads',
similar to `-mt'.
Report by Eric Paire <eric.paire@st.com>.
2006-06-08 16:54:44 +00:00
Charles Wilson
e94e4f2249 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [ cygwin ]:
define DLL_EXPORT for PIC objects on cygwin.
2006-06-01 18:39:24 +00:00
Albert Chin
e4f54300ae * libltdl/m4/libtool.m4 (_LT_LANG_CXX_CONFIG)
[ aix4*, aix5*, hpux10*, hpux11* ]: Set hardcode_direct_absolute
for CXX tag too!
2006-05-24 11:54:59 +00:00
Ralf Wildenhues
a5220e7c70 * libltdl/config/ltmain.m4sh (func_mode_link, shell wrapper):
Do not put `"$@"' in argument to $ECHO.
2006-05-19 02:23:04 +00:00
Ralf Wildenhues
4ce74c3baf * libltdl/m4/libtool.m4: Bump serial, necessary because of
_LT_CHECK_SHELL_FEATURES changes.
2006-05-18 16:32:21 +00:00
Albert Chin-A-Young
b1475f65b0 Update copyright year. 2006-05-18 09:18:09 +00:00
Albert Chin-A-Young
67b959527d * 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 09:17:33 +00:00
Ralf Wildenhues
5809e5cd3a 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-18 05:43:01 +00:00
Gary V. Vaughan
33f72b2ff5 * 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.
2006-05-18 00:10:37 +00:00
Gary V. Vaughan
064b392296 * libltdl/ltdl.c (lt_dlhandle_fetch): Arguments to
lt_dlhandle_iterate were in the wrong order.
2006-05-17 23:12:07 +00:00
Ralf Wildenhues
4cd8dffdfe * 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 20:11:03 +00:00
Gary V. Vaughan
a7ae4fab9e * doc/libtool.texi (libtool script contents): Document new
hardcode_direct_static variable.
2006-05-17 17:59:47 +00:00