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>
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.
* 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>
* 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>
* 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>
* 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>
* 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.
* 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.
* 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>
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.
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.
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.
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.
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.
* 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.
(_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.