* Makefile.am (libtool_m4): Canonical location of libtool.m4 file.
(lt_aclocal_m4_deps): Use it.
(check_scripts): New variable for list of scripts to be checked
by `tests/sh.test'.
(legacy_tests_edit): New sed script to substitute `libtool_m4'
and `check_scripts' into `tests/defs'.
(tests/defs.in): Use it.
* tests/defs.m4sh (scripts): Calculate absolute paths of each
entry in `check_scripts' before changing directories.
(libtool_m4): Save location of `libtool.m4'.
(macro_dir, aux_dir): Removed. No longer required by any test.
* tests/sh.test: Remove loop around just `$macro_dir/libtool.m4'
in favour of a single reference to `$libtool_m4' from above.
* 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.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* 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.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* tests/lt_dlexit.at (lt_dlexit unloading libs): Added an
explicit int type to declaration of 'v1' to prevent compilation
failure with C++.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* 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.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* 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.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* 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.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* .cvsignore, doc/.cvsignore, libltdl/.cvsignore,
libltdl/config/.cvsignore, libltdl/loaders/.cvsignore,
libltdl/m4/.cvsignore, tests/.cvsignore,
tests/cdemo/.cvsignore, tests/demo/.cvsignore,
tests/depdemo/l1/.cvsignore, tests/depdemo/l2/.cvsignore,
tests/depdemo/l3/.cvsignore, tests/depdemo/l4/.cvsignore,
tests/f77demo/.cvsignore, tests/fcdemo/.cvsignore,
tests/mdemo/.cvsignore, tests/mdemo2/.cvsignore,
tests/pdemo/.cvsignore, tests/tagdemo/.cvsignore: Deleted. Even
when using savannah's CVS readonly mirror there's no way to commit
back to the real repo, so this files are not worth maintaining
or keeping around.
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* tests/help.at (debug tracing): Use $lt_INSTALL not cp for
install mode, the latter will not overwrite an existing library
with mode 555.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/pic_flag.at (override pic_flag at configure time):
Match HP-UX 10.20 cc warning about unknown options, to skip
the test.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
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.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* 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.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* tests/testsuite.at: Ensure to_host_file_cmd is passed as a
variable setting on the configure line for (new testsuite) tests.
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* libltdl/m4/libtool.m4 (_LT_WITH_SYSROOT): Fix typo.
* tests/sysroot.at: Search also for crt0.o to accommodate cygwin.
Signed-off-by: Charles Wilson <libtool@cwilson.fastmail.fm>
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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* sysroot:
Add ChangeLog entries for the sysroot branch.
fix AIX testsuite regression
fix --mode=finish
improve code for sysroot --mode=finish
add libtool --mode=finish mode for sysroot
reorganize parsing of --mode=finish arguments
fix sysroot handling for deplibs of preopened libtool libs
fix sysroot tests to pass on Fedora 13
initial version of the NEWS entry
add sysroot test
emit sysrooted paths when installing .la files
process postdeps to include sysrooted paths
handle sysrooted paths when reading dependencies to la files
teach libtool -L= and -R=
add --with-sysroot
handle sysroot flags
* 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.
Signed-off-by: Charles Wilson <libtool@cwilson.fastmail.fm>
* parallel-tests:
check-interactive and check-noninteractive for both testsuites.
Adjust docs for renaming and for parallel-tests.
Update VERBOSE handling for parallel-tests driver.
Enable parallel-tests test driver for the old testsuite.
New alias scripts for old tests run more than once.
Require Automake 1.11.1 for Libtool, enable color-tests.
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
* 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>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* 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.
Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>