Commit Graph

226 Commits

Author SHA1 Message Date
Paolo Bonzini
3796d1fe58 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_GENERATED_FILE_INIT): 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-11 10:08:38 +01:00
Ralf Wildenhues
8ae796bacd 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-10-15 23:54:45 +02:00
Ralf Wildenhues
3531d11d42 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-10-05 12:40:54 +02:00
Gary V. Vaughan
c2b8636304 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.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2008-09-07 05:12:18 +08:00
Peter O'Gorman
c7e6bd3060 Revert 75142db4f8 (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.
2008-09-02 00:10:42 -05:00
Peter O'Gorman
a05d258b4c 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 12:42:53 -05:00
Ralf Wildenhues
6c491fda98 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-22 00:48:11 +02:00
Ralf Wildenhues
4eca607f69 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-11 22:36:42 +02:00
DJ Delorie
7a0ab75b49 Fix typo in tpf library_names_spec setting.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) [tpf]
<library_names_spec>: Fix typo in variable name.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-07 07:26:53 +02:00
Steve Ellcey
355091804c 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-06 20:35:50 +02:00
Gary V. Vaughan
2c769d10a2 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 13:12:29 +07:00
Vincent Torri
84430a7251 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-01 00:54:03 +02:00
Ralf Wildenhues
2133b11083 Newer Intel compilers do not grok -KPIC any more.
* 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-06-19 19:35:52 +02:00
Peter O'Gorman
a33319273b Support ifort on darwin.
* libltdl/m4/libtool.m4 (_LT_DARWIN_LINKER_FEATURES): Build
shared libraries with ifort.
Reported by Christopher Hulbert.
2008-06-13 10:53:34 -05:00
Ralf Wildenhues
ad01db1911 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-05-25 10:40:26 +02:00
Eric Blake
d53ca5f67d Resynchronize argz whitespace changes from gnulib.
* libltdl/m4/argz.m4: Kill trailing whitespace.
* libltdl/argz.c: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-20 06:27:28 -06:00
Eric Blake
d4aec62a7e Fix regression from two days ago.
* libltdl/m4/ltdl.m4 (_LT_LIBOBJ): Don't refer to deleted macro.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-19 08:18:33 -06:00
Eric Blake
c44c8b3350 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.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-17 09:44:52 -06:00
Eric Blake
d6744bdb26 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.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-05-17 09:00:30 -06:00
Charles Wilson
a50bd8f5bf 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-06 22:02:32 -04:00
Gary V. Vaughan
11c6afb5e5 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.
2008-05-04 12:37:02 -04:00
Peter O'Gorman
92e15986a4 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-05-01 12:40:24 -05:00
Eric Blake
c35a08e87e 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.

Signed-off-by: Eric Blake <ebb9@byu.net>
2008-04-30 11:27:44 -06:00
Andreas Schwab
9b00a3a6e7 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-04-22 21:32:32 +02:00
Gary V. Vaughan
6a30ffc8e4 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>
2008-04-22 02:39:06 -04:00
Peter O'Gorman
39903a5836 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-21 10:21:27 -05:00
Ralf Wildenhues
da1e14c91c 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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-04-19 18:24:48 +02:00
Andreas Schwab
1006ccc48c Properly emulate AC_ENABLE_SHARED([no]) and others.
* libltdl/m4/ltoptions.m4 (AC_ENABLE_SHARED): Check optional
argument.
(AC_ENABLE_STATIC): Likewise.
(AC_ENABLE_FAST_INSTALL): Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-04-18 23:45:43 +02:00
Ralf Wildenhues
85953e3b87 Add .gitignore files.
* .gitignore, doc/.gitignore, libltdl/.gitignore,
libltdl/config/.gitignore, libltdl/m4/.gitignore,
tests/.gitignore, tests/cdemo/.gitignore,
tests/demo/.gitignore, tests/depdemo/.gitignore,
tests/f77demo/.gitignore, tests/fcdemo/.gitignore,
tests/mdemo/.gitignore, tests/mdemo2/.gitignore,
tests/pdemo/.gitignore, tests/tagdemo/.gitignore:
New files.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-04-16 21:31:03 +02:00
Ralf Wildenhues
f470f5557b * 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.
2008-04-10 21:18:02 +00:00
Ralf Wildenhues
3a417017ce * 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 21:01:54 +00:00
Gary V. Vaughan
904479faae * libltdl/m4/libtool.m4, libltdl/m4/ltdl.m4,
libltdl/m4/ltoptions.m4: Bump serial numbers to account for
changes since 2.2 release.
2008-04-01 18:23:20 +00:00
Peter O'Gorman
911b787e22 * 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-27 17:53:46 +00:00
Ralf Wildenhues
516b0da855 * 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-17 22:39:05 +00:00
Ralf Wildenhues
c0d963ceec * libltdl/m4/ltoptions.m4 (AC_LIBTOOL_WIN32_DLL): Require
AC_CANONICAL_HOST.
* THANKS: Update.
Report by Jakub Bogusz.
2008-03-15 22:01:31 +00:00
Henning Nielsen Lund
d09ae8ffdb * 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-12 19:48:25 +00:00
Ralf Wildenhues
197c2c14a1 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-08 12:14:15 +00:00
Peter O'Gorman
b04c7061f4 * libltdl/m4/libtool.m4 (_LT_LANG_GCJ_CONFIG): Need to set LD.
Reported by Nelson H. F. Beebe.
2008-03-07 06:42:36 +00:00
Peter O'Gorman
e9ebb750f5 * libltdl/m4/libtool.m4 (_LT_PROG_FC): Undo commit - bad idea. 2008-03-07 06:14:26 +00:00
Peter O'Gorman
3971a6b611 * 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-07 05:38:33 +00:00
Ralf Wildenhues
016806fe90 * 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.
2008-03-04 21:14:22 +00:00
Gary V. Vaughan
50abf984fb * 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-29 21:33:22 +00:00
Peter O'Gorman
82e6dd805b * 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-20 20:11:39 +00:00
Peter O'Gorman
21011b18f1 * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Fix typo.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): better handling
of predefined values for lt_cv_sys_lib_search_path_spec and
2008-02-16 03:46:06 +00:00
Peter Breitenlohner
66894adae8 * 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 23:48:39 +00:00
Ralf Wildenhues
319a767ce6 * libltdl/m4/libtool.m4 (_LT_COMPILER_PIC) [linux] <ifort>:
Treat like icc and ecc, for fixed `-Wl,' and `-KPIC' settings.
2008-02-09 07:14:35 +00:00
Peter O'Gorman
215212c9ce * 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-06 19:53:01 +00:00
Gary V. Vaughan
e032959c82 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-31 16:17:06 +00:00
Peter O'Gorman
71821b098f * libltdl/m4/libtool.m4 [darwin]: Changes to glob pattern matching
to be safer.
2008-01-29 22:07:18 +00:00
Peter O'Gorman
bfb67e8ca7 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 15:49:46 +00:00