Commit Graph

686 Commits

Author SHA1 Message Date
Ralf Wildenhues
5e4f908446 Another LT_AT_EXEC_CHECK fixup.
* tests/shlibpath.at (shlibpath_overrides_runpath): Use
LT_AT_EXEC_CHECK instead of AT_CHECK.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2009-01-19 21:54:52 +01:00
Roumen Petrov
0c0c502b96 Add missing $EXEEXT to java test.
* tests/convenience.at (Java convenience archives): Add $EXEEXT.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2009-01-19 21:50:39 +01:00
Peter Rosin
a2939b133b Fix flakey mdemo-dryrun test on MSYS (again!)
* tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
not time, for really fresh files. Add sleep 1 call at yet another
strategic position. Makes the test pass reliably for MSYS/MinGW.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2009-01-14 09:04:40 +01:00
Ralf Wildenhues
b7dbec6b9d Add cache variables to link tests.
* libltdl/m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER)
(_LT_LINKER_SHLIBS): Add cache variables to tests that
require the linker to work.  For shlibpath_overrides_runpath,
this also changes the semantics to let the result from the C
compiler take precedence.
* tests/no-executables.at (AC_NO_EXECUTABLES): New file.
* Makefile.am: Update.
* NEWS: Update.
Report of shlibpath_overrides_runpath issue by Mike Frysinger,
report of GCC issue by Andreas Schwab.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-12-17 20:42:45 +01:00
Ralf Wildenhues
aa68328616 Fix func_infer_tag $ECHO usage; some testsuite exposure.
* libltdl/config/ltmain.m4sh (func_infer_tag): Use func_echo_all
rather than $ECHO for possibly multiple arguments.
* tests/infer-tag.at (inferred tag, CXX inferred tag)
(F77 inferred tag, FC inferred tag, GCJ inferred tag): New file,
new tests.
* Makefile.am: Adjust.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-24 21:49:23 +01:00
Ralf Wildenhues
3c4d63b15c Another missing $EXEEXT in the new testsuite.
* tests/runpath-in-lalib.at (Runpath in libtool library files):
Add $EXEEXT overlooked in patch yesterday.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-24 07:36:29 +01:00
Ralf Wildenhues
535175c0c8 Fix expout and experr line ending issues.
* tests/testsuite.at (LT_AT_HOST_DATA): Renamed from..
(_LT_AT_TRANSLATE_TEXT_OUTPUT): ..this.
(LT_AT_EXEC_CHECK, LT_AT_NOINST_EXEC_CHECK): Do not use
_LT_AT_TRANSLATE_TEXT_OUTPUT any more.
* tests/configure-iface.at: Use LT_AT_HOST_DATA instead of
AT_DATA for `expout' files.
* tests/lt_dladvise.at (lt_dlopenadvise library loading):
Likewise.
* tests/need_lib_prefix.at (enforced lib prefix): Likewise.
Report by Roumen Petrov.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-23 22:58:06 +01:00
Ralf Wildenhues
9abc9628e0 Relax link-order2 test for systems with partial wrong order.
* tests/link-order2.at (Link order of deplibs.): On w32 (and
others, e.g., AIX), the wrongly linked executable picks up only
one instance of the bad function instead of two; relax the test
to accept this; we still require the right link order with the
correctly linked executable.
Reported by Roumen Petrov and others.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-23 22:54:59 +01:00
Roumen Petrov
df2960ac0b Add $EXEEXT to all linked programs in the new testsuite.
* tests/convenience.at, tests/ctor.at, tests/darwin.at,
tests/deplibs-ident.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/export.at, tests/fail.at, tests/indirect_deps.at,
tests/inherited_flags.at, tests/link-order.at,
tests/link-order2.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
tests/need_lib_prefix.at, tests/runpath-in-lalib.at,
tests/search-path.at, tests/shlibpath.at, tests/static.at,
tests/stresstest.at, tests/template.at, tests/testsuite.at:
Use $EXEEXT throughout, except in Makefile.am snippets where
automake takes care of it, and in testsuite macros that take
care of the extension.
Reports by Roumen Petrov and Alon Bar-Lev.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-23 22:42:59 +01:00
Ralf Wildenhues
2258787e02 Adjust executable run tests to cwrapper changes.
* tests/testsuite.at (LT_AT_EXEC_CHECK): Accept fifth argument
ARGS-OR-STATUS-ADJUST, for command-line arguments and/or exit
status flattening.  Rewrite to prefer the executable with the
`.exe' prefix over one without.  Test exit status against
expected exit status, not against zero, when determining whether
this may be a cross-compilation-induced result.
(LT_AT_NOINST_EXEC_CHECK): Likewise.
* tests/static.at (static linking flags for programs): Adjust
calls.
Report by Roumen Petrov.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-23 22:35:58 +01:00
Ralf Wildenhues
c6d628415d No trailing period in Autotest test group names.
* tests/link-order.at (Link order test): Drop trailing period
from test name.
* tests/link-order2.at (Link order of deplibs): Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-23 21:10:23 +01:00
Ralf Wildenhues
90dff3e4da Avoid newlines in some AT_CHECK commands.
* tests/standalone.at (linking libltdl without autotools): Wrap
lines with dnl, to avoid turning off tracing of AT_CHECK.
* tests/subproject.at (linking libltdl without autotools):
Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-23 15:17:34 +01:00
Ralf Wildenhues
1c6333b7bf Replace uses of $SED $basename.
* libltdl/config/ltmain.m4sh (func_mode_link): Replace instances
of `$ECHO ... | $SED' with calls to func_basename.
* libtoolize.m4sh (func_copy, func_serial)
(func_massage_aclocal_DATA): Likewise, replace with
func_dirname_and_basename.
* tests/defs.m4sh (func_configure_nofail, func_make, func_exec):
Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-23 14:52:32 +01:00
Ralf Wildenhues
9c3d4d8f91 Revenge of the $ECHO. Kill most uses of Xsed.
* libltdl/config/general.m4sh: Replace all uses of `$ECHO "X..."
| $Xsed' with `$ECHO "..." | $SED', and employ further trivial
simplifications.  Replace $ECHO with echo where appropriate.
(func_echo_all): New function.
* libltdl/config/getopt.m4sh: Likewise simplifications.
* libltdl/config/ltmain.m4sh: Likewise.
* libltdl/m4/libtool.m4: Likewise.
(LT_CMD_MAX_LEN): Use func_fallback_echo, to ensure that the
command line is passed through an exec* function.
* libtoolize.m4sh: Likewise simplifications.  Use func_echo_all
to implement --dry-run.
* tests/defs.m4sh: Likewise simplifications.
* tests/quote.test: Likewise simplifications.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-23 14:42:06 +01:00
Ralf Wildenhues
4e7334c7c2 Fix match patterns for cegcc*.
* libltdl/config/ltmain.m4sh (func_mode_link): Match '*cegcc*'
instead of '*cegcc' for $host_os.
* libltdl/m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD): Likewise.
* tests/lt_dladvise.at (lt_dlopenadvise library loading):
Likewise.
* libltdl/m4/ltoptions.m4 (AC_LIBTOOL_DLOPEN): Match
'*-*-cegcc*' for $host.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-20 07:23:45 +01:00
Ralf Wildenhues
1ae7ff35f2 Ensure $ac_aux_dir is initialized for LIBTOOL_DEPS.
* libltdl/m4/libtool.m4 (LT_INIT): Require
AC_CONFIG_AUX_DIR_DEFAULT.
* tests/old-m4-iface.at (AM_PROG_LIBTOOL): Amend test to
expose this.
Report, analysis, and test example by Jakub Bogusz.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-20 07:18:38 +01:00
Ralf Wildenhues
44ee284ba2 Skip sys_lib_search_path on systems without libz.
* tests/search-path.at (sys_lib_search_path): Autotest needs at
least one AT_CHECK executed in a test group.  So if we haven't
found -lz anywhere, as may happen with cross-compilers, skip the
test.
* THANKS: Update.
Report by Alon Bar-Lev.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-16 23:32:57 +01:00
Ralf Wildenhues
b7109dab72 Fix execute mode test to actually expose cwrapper failures.
* tests/execute-mode.at (execute mode): Actually also test the
cwrapper on the arguments.
Report by Bruno Haible.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-16 18:29:34 +01:00
Paolo Bonzini
a0283899e7 Implement $ECHO with print -r, printf or cat in a shell function.
* configure.ac: Bump Autoconf requirement.
* libltdl/config/general.m4sh: Use $as_echo as default $ECHO.
* tests/testsuite.at: Use $as_echo as default $ECHO.

* libltdl/m4/libtool.m4 (LT_INIT): Add _LT_SHELL_INIT to
work around Autoconf <2.64 bug.
(_LT_OUTPUT_LIBTOOL_COMMANDS_INIT): Add func_fallback_echo.
Eliminate lt_ECHO requoting.
(_LT_SHELL_INIT): Use a public M4sh diversion.
(_LT_PROG_ECHO_BACKSLASH): Rewrite.
(LT_CMD_MAX_LEN): Do not use --fallback-echo.
* libltdl/config/ltmain.m4sh: Remove --no-reexec and --fallback-echo
handling.
(func_fallback_echo): New.
(func_emit_wrapper_part1): Quote ECHO.  Remove --no-reexec and
--fallback-echo handling.
(Execute mode): Do not set qecho.
2008-11-12 08:42:42 +01:00
Ralf Wildenhues
f7cccd3120 Use -no-undefined in install tests.
* tests/install.at (Install tests): Use `-no-undefined'.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-12 07:21:20 +01:00
Roumen Petrov
800959471b Fix destdir tests in cross compile mode.
* tests/destdir.at (Simple DESTDIR install)
(DESTDIR with in-package deplibs): Use $EXEEXT throughout.
* THANKS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-11 22:25:45 +01:00
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
Paolo Bonzini
621e2d7cb3 Run sh.test on the M4sh source.
* tests/defs.m4sh (scripts): Point to pre-m4 sources.
2008-11-11 10:08:38 +01:00
Bruno Haible
101ad44541 Fix cwrapper argument mangling on w32.
* libltdl/config/ltmain.m4sh (func_emit_cwrapperexe_src): On
mingw, preprocess the argument vector through prepare_spawn.
* tests/execute-mode.at (execute mode): Output args
newline-separated.  Extend tests by more argument pairs that
contain special characters, where the w32 cwrapper fails.
Also test a real compiled program, linked against an uninstalled
library, to expose cwrapper issues.
* NEWS: Update.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-11-11 06:53:39 +01:00
Michael Haubenwallner
b59009b28f Fix checks for unsupported allow_undefined_flag.
* tests/tagdemo-undef.test: Match allow_undefined_flag
correctly, for SKIPping.
* tests/cdemo-undef.test: Likewise.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-10-28 20:47:44 +01:00
Ralf Wildenhues
c2350e5382 Parallel make fix in testsuite.
* tests/testsuite.at (_LTDL_PROJECT_FILES): Fix dependencies for
parallel make.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-10-26 11:05:07 +01: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
d62f88f159 Fix 'DISTCHECK_CONFIGURE_FLAGS=--program-prefix=g' bug.
* tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Fix test failures
with --program-prefix, where the test case output contains the
transformed name somewhere other than the beginning of a line.
* libtoolize.m4sh (func_check_macros): Be sure to always use
the transformed name in output messages.
2008-09-06 22:50:15 +08:00
Peter O'Gorman
300fa580c4 Remove unnecessary global argz functions.
* libltdl/argz.c (argz_add,argz_count): Remove.
* libltdl/argz_.h (argz_add,argz_count): Remove.
* NEWS: Announce it.
* tests/ltdl-api.at: Test so we don't repeat it.
* Makefile.am: Add new test.
2008-08-26 12:41:25 -05:00
Ralf Wildenhues
739b7e4349 Disallow `-L path', do not misparse it silently.
* libltdl/config/ltmain.m4sh (func_mode_link): Diagnose `-L'
without argument, and `-L path', i.e., with a space.
* tests/fail.at (Failure tests): Test for these failures.
* THANKS: Update.
Report by Olaf Lenz.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-21 21:07:16 +02:00
Ralf Wildenhues
649567ed49 Avoid test failure due to broken dlpreloading of shared library.
* tests/lt_dladvise.at (lt_dlopenadvise library loading): Drop
some newlines in AT_CHECK commands, for better 'testsuite -x'
output.  Only create a static installable libpreload.la, to
avoid exposing the bug libtool currently has with preloading of
shared libraries.  Add a note to revisit this later.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-16 17:28:30 +02:00
Ralf Wildenhues
c766e70ca3 Parallel make testsuite fixes.
* tests/configure-iface.at (installable libltdl)
(--with-ltdl-include/lib, --with-included-ltdl): Add dlopened
libmodule.la to main_DEPENDENCIES.
* tests/old-m4-iface.at (AC_WITH_LTDL): Likewise, let ltdldemo
depend upon module.la and libltdl/libltdlc.la.
* tests/testsuite.at (LT_AT_MAKE): Invoke each target in turn,
default to 'all'.
* tests/early-libtool.at (config.lt): Define 'all' target.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-12 22:20:43 +02:00
Ralf Wildenhues
bda06a53b0 Fix configure-iface.at for 'make -j'.
* tests/configure-iface.at (convenience libltdl): Ignore warning
from parallel make.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-08-11 22:13:32 +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
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
be6f90aa33 Skip darwin test if fat link fails.
* tests/darwin.at: Skip if we can not link a fat program.
Reported by Daniel Macks <dmacks@netspace.org>
2008-05-31 12:12:31 -05:00
Gary V. Vaughan
fc6191fe1f Fix libtoolize test failure with aclocal < 1.10.1
* tests/libtoolize.at
(verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Older aclocal
requires a space between -I and the directory argument.
Reported by Daniel Macks <dmacks@netspace.org>
2008-05-05 01:07:14 -04:00
Gary V. Vaughan
851f873412 Make libtoolize tests work with distcheck.
* tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): When $tst_aclocal
is set, transform paths that use it to generic
/usr/local/share/aclocal in time for AT_CHECK comparisons.
2008-05-04 12:31:22 -04:00
Gary V. Vaughan
505274fd58 Don't trip over outdated acinclude.m4.
* libtoolize.m4sh (all_pkgconfig_files, all_pkgmacro_files)
(all_pkgltdl_files): New variables listing all files ever
maintained by any release of libtoolize.
(func_install_pkgconfig_parent, func_install_pkgltdl_files)
(func_install_pkgconfig_subproject, func_install_pkgmacro_parent)
(func_install_pkgmacro_subproject): Carefully clean up any files
that may have been installed by previous libtoolize releases.
* tests/libtoolize.at: New test for libltdl/acinclude.m4 removal.
Reported by Andreas Schwab <schwab@suse.de>.
2008-05-02 16:12:38 -04:00
Gary V. Vaughan
a53fd09bed New libtoolize --no-warn option and LIBTOOLIZE_OPTIONS parsing.
* libltdl/config/general.m4sh (opt_warning): New option.
(func_warning): Only display a warning message if $opt_warning
is true.
* libtoolize.m4sh: Accept options in LIBTOOLIZE_OPTIONS
environment variable.
(--no-warn): Parse new option.
(func_serial_update_check, func_keyword_update): Use func_warning.
(func_check_macros): Bail out before style issues nags when
$opt_warning is false.
* doc/libtool.texi (Invoking Libtoolize): Document it.
* tests/libtoolize.at: Test it.
* NEWS: Updated.
2008-04-29 20:35:21 -04:00
Gary V. Vaughan
2826832999 Fix libtoolize test failure with aclocal-1.10.1.
* tests/libtoolize.at
(verbatim aclocal.m4 w/o AC_CONFIG_MACRO_DIR): Force aclocal to
search the source tree for latest libtool macros.
2008-04-29 14:35:51 -04:00
Michael Haubenwallner
4f2021de12 Use /nonexistent as destination for files not to be installed.
* tests/darwin.at (darwin fat compile): Fix typo.
* tests/inherited_flags.at (inherited_linker_flags): Change
-rpath to /nonexistent.  This helps to avoid accidentally
picking up libraries below /usr/local.
* tests/template.at (simple template test): Likewise.  Fixes
test failure for additional incompatible libstdc++ in
/usr/local.
* tests/testsuite.at (configure_options): Add
--prefix=/nonexistent.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-04-23 23:48:46 +02:00
Ralf Wildenhues
cbd4eca591 * tests/static.at (ccache -all-static): Ignore link warnings.
Report by Gary V. Vaughan.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-04-23 07:48:45 +02:00
Gary V. Vaughan
4d777f8223 Libtoolize now advises AC_CONFIG_MACRO_DIR use where appropriate.
* libtoolize.at (func_check_macros): Always advise use of
AC_CONFIG_MACRO_DIR when not able to copy libtool macros into
the project tree.
* tests/libtoolize.at: New test for correct diagnosis of mismatch
between AC_CONFIG_MACRO_DIR and ACLOCAL_AMFLAGS.
Update expected output of other tests.
* NEWS: Updated.
2008-04-22 23:18:56 -04:00
Gary V. Vaughan
8e72f358d8 Only complain that files are up-to-date with --force.
As a side effect, this also means that when `aclocal' copies the
libtool macros into `aclocal.m4' libtoolize complains only about
the macro files that are missing or not up-to-date.
* libtoolize.m4sh (func_echo_once): New function that prints
the contents of a named variable only on the first call.
(func_aclocal_update_check): New function that compares serial
numbers of libtool macros in aclocal.m4 and only diagnoses the
missing files.
(func_copy, func_copy_cb, func_copy_some_files, func_serial_update)
(func_keyword_update, func_ltmain_update, func_config_update)
(func_install_update): Accept a new argument naming a variable
containing a header string to print with func_echo_once iff any
body text is output by this function.
(func_install_pkgmacro_subproject, func_install_pkgmacro_parent)
(func_install_pkgltdl_files, func_install_pkgconfig_subproject)
(func_install_pkgconfig_parent: Set and pass a suitable
header string variable for the above functions.
(func_serial_update_check): Don't advise rerunning `libtoolize
--force' when aclocal.m4 is not m4_including libtoolize installed
macro files.
* tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): Transform generic
/usr/local/share/aclocal paths to point into the uninstalled
libtool macro directory.
* tests/libtoolize.at: Update tests that were checking for old
behaviour of outputing `file is already up to date' even when
--force was not passed.
* tests/libtoolize.at: New tests to prevent regressions of these
smarter messages.
* NEWS: Updated.
Reported by Olly Betts <olly@survex.com>
2008-04-22 18:55:20 -04:00
Ralf Wildenhues
9c3ae35db6 Fix regression over 1.5.26 with ccache $CC -all-static.
* libltdl/config/ltmain.m4sh (func_mode_link): Add
$link_static_flag to compile_command and link_command only
later, instead of right after a possible compiler wrapper.
* tests/static.at (ccache -all-static): New test.
* THANKS: Update.
Report by Richard Purdie.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-04-22 21:43:06 +02: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
Peter O'Gorman
d9a4d8f71a basename does not take a list of strings.
* libltdl/config/ltmain.m4sh(func_extract_archives): Use sed
$basename.
* tests/darwin.at: New. Check that we can built fat program,
shared library and convenience library.
* Makefile.am: Add test.
Reported by LiKai Liu <liulk@cs.bu.edu>
2008-04-21 15:18:41 -05:00
Ralf Wildenhues
c8487807a6 Fix testsuite cleanup warnings on AIX with NFS.
* tests/testsuite.at [ aix ]: Set file mode creation so that
'others' have no permissions.  Shared libraries are kept in
memory on AIX after use if they are world-readable, which means
on NFS mounts cleanup of test group directories will fail later.
* THANKS: Update.
Report and analysis by Michael Haubenwallner.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2008-04-19 18:36:26 +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
Peter O'Gorman
56a656a857 * libltdl/config/ltmain.m4sh (func_win32_libid,
func_generate_dlsyms, func_extract_an_archive,
func_extract_archives, func_mode_help): move these so they
appear after func_mode_compile.
* tests/nomode.test: Check that --mode=link --help works.
Reported by Josh Triplett <josh@freedesktop.org>
2008-04-10 17:43:39 +00:00
Ralf Wildenhues
0f0145ee08 Document that disable-static plus -all-static is not portable.
* doc/libtool.texi (Link mode): -all-static does not go well
with disable-static on most systems.
* tests/static.at (static linking flags for programs) [!aix]:
With --disable-static but nonempty link_static_flag, skip the
m-all-static link.  Do not skip it on AIX, as there the
enable_static is self-inflicted, and thus expected to work.
* THANKS: Update.
Report by Nix.
2008-03-24 14:28:43 +00:00
Ralf Wildenhues
0bb5ecc8d7 * libltdl/config/ltmain.m4sh (NLS nuisances): Fix quoting of
localization variables for shell-active characters.
* tests/localization.at (localized compiler messages): Extend
test.
* THANKS: Update.
Report by Mike Frysinger.
2008-03-16 08:34:25 +00:00
Ralf Wildenhues
401c24caab * tests/defs.m4sh (func_get_config): Build egrep regex to speed
up extracting several variables at once.  Use it to extract all
default variables at once.  Also extract build_alias and
host_alias from the libtool script.
(func_configure_nofail): Use build_alias and host_alias for
--build and --host, respectively.  Pass each if nonempty.
* tests/testsuite.at: Pass --build if build_alias is nonemtpy.
* tests/quote.test: Extract ECHO and wl at once.
2008-03-15 22:06:56 +00:00
Bruno Haible
294465722d Fix compiler output to be in the user locale.
* libltdl/config/general.m4sh (func_show_eval_locale): New
function, for running commands in the user locale.
* libltdl/config/ltmain.m4sh (func_mode_compile): Use it for
compiling.
* tests/localization.at (localized compiler messages): New test.
* Makefile.am: Adjust.
Report by Bruno Haible.
2008-03-09 14:12:10 +00:00
Ralf Wildenhues
1b8b9e3e5e Fix several test failures on Cygwin and MinGW.
* tests/nonrecursive.at: Use -no-undefined for foo.la.
* tests/recursive.at: Likewise.
* tests/subproject.at: Likewise.
* tests/lt_dladvise.at: For systems where undefined symbols are
not allowed, to not try to load the module libdepend.
[ mingw ]: Add to list of such systems.
* tests/testsuite.at (_LT_AT_TRANSLATE_TEXT_OUTPUT): New macro,
to translate line ending of expout and experr files suitable for
host executables.
(LT_AT_CHECK, LT_AT_NOINST_EXEC_CHECK): Use it.
Report by Bob Friesenhahn.
2008-03-08 18:02:39 +00:00
Ralf Wildenhues
d84baeaee5 Fix installcheck dependencies, fix for --program-transform-name.
* Makefile.am (installcheck-local): Depend upon tests/atconfig
and $(srcdir)/$(TESTSUITE).
* tests/testsuite.at (_LIBTOOLIZE_TRANSFORM): New macro.
(LT_AT_CHECK_LIBTOOLIZE): Use it to transform expout and experr
files suitably.
* HACKING: Update.
2008-03-08 17:41:44 +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
8314993c63 * tests/convenience.at (Java convenience archives): Skip test if
gcj cannot compile a working executable from .java files.
Report by Nelson H. F. Beebe.
2008-03-07 08:07:50 +00:00
Ralf Wildenhues
b92b13b9c5 * tests/convenience.at (Java convenience archives): Skip test if
gcj cannot compile a .java file.
Report by Nelson H. F. Beebe.
2008-03-06 19:59:25 +00:00
Ralf Wildenhues
54c180945e * libltdl/config/ltmain.m4sh (func_lalib_unsafe_p): redirect
and restore from stdin, not stdout.
* tests/execute-mode.at (execute mode): Adjust test to catch
this.
Report by Roberto Bagnara.
2008-03-05 20:14:43 +00:00
Ralf Wildenhues
8c7644ca3a * libltdl/config/ltmain.m4sh (func_mode_execute): Replace only
arguments we have identified as shell or C wrappers.
(func_emit_wrapper): Output error message on stderr.
* tests/execute-mode.at: New file, with --mode=execute tests.
* Makefile.am: Adjust.
* NEWS: Update.
Fixes 2.2 regression.  Report by Roberto Bagnara.
2008-03-04 21:25:48 +00:00
Ralf Wildenhues
216d6cb930 * libltdl/loaders/dld_link.c (vl_exit): New function, zero out ...
(vtable): ... this new file static variable split out from ...
(get_vtable): ... here.  Initialize vtable, register vl_exit as
dlloader_exit function.
* libltdl/loaders/dlopen.c: Likewise.
* libltdl/loaders/dyld.c: Likewise.
* libltdl/loaders/load_add_on.c: Likewise.
* libltdl/loaders/loadlibrary.c: Likewise.
* libltdl/loaders/shl_load.c: Likewise.
* libltdl/loaders/preopen.c: Likewise; vl_exit existed here
already.
* tests/lt_dlexit.at (lt_dlexit unloading libs): Update test.
* NEWS: Update.
Report by Andreas Schwab.
2008-03-04 21:00:19 +00:00
Gary V. Vaughan
ec47998b3c * tests/lt_dladvise.at, tests/lt_dlexit.at,
tests/need_lib_prefix.at: Skip these tests when called from
`make distcheck DISTCHECK_CONFIGURE_FLAGS=--disable-ltdl-install'.
The tests try to link against the dummy installed libltdl.la
from .../_inst/lib/libltdl.la, which does not exist when
configured with --disable-ltdl-install.
2008-03-01 22:43:04 +00:00
Ralf Wildenhues
6637bfe8bb * libtoolize.m4sh (func_install_pkgconfig_files): Only call
func_install_pkgconfig_parent if $seen_autoconf.
* tests/standalone.at (compiling softlinked libltdl)
(compiling copied libltdl, installable libltdl)
(linking libltdl without autotools): Use checked libtoolize
calls to catch warnings.
2008-02-14 04:36:37 +00:00
Ralf Wildenhues
01829399a3 * tests/mdemo/Makefile.am (@LIBLTDL@): Update outdated
dependencies.
($(top_distdir)/libltdl/libtool): Remove.
Fixes spurious mdemo-dryrun failure with OpenBSD make.
2008-02-11 21:51:43 +00:00
Ralf Wildenhues
5080eda548 * tests/archive-in-archive.at
(static library contains static library): Test also the actual
broken link command, and the following install command, as
UnixWare ar rightly refuses to put an archive into an archive.
Report by Tim Rice.
2008-02-08 06:55:07 +00:00
Ralf Wildenhues
de171d7b83 * tests/testsuite.at (LT_AT_TAG): For the CXX tag, if $CXX is
g++, check that `g++ -v' works; AC_PROG_CXX may have set that
as default value even if it found no C++ compiler.
Report by Andreas Schwab.
2008-02-01 19:06:42 +00:00
Gary V. Vaughan
7c319e20f4 * tests/cdemo, tests/depdemo, tests/fcdemo, tests/pdemo,
tests/demo, tests/f77demo, tests/mdemo, tests/tagdemo
(distclean-local): Remove compiler file droppings left by
Autoconf tests that prevent make dist from finishing on
several machines including Mac OS 10.5.
2008-01-31 16:19:18 +00:00
Gary V. Vaughan
d6570c64e5 There are 5 distinct batches of files that libtoolize might
install into a project, depending on whether libltdl is
being installed in subproject mode, and in that case whether
the parent project shares the config and macro directories
with the subproject ltdl.  Make a separate function for each
of those 5 batches (4 new functions below, plus the recently
factored func_install_pkgltdl_files), and make a clearer
distinction between when each of them is needed:

* libtoolize.m4sh (func_install_pkgmacro_subproject):
New function for installing and reporting on m4 files copied
to a subproject ltdl directory.
(func_install_pkgmacro_parent): Similar new function for m4
files copied solely for the use of the parent project,
including serial checking.
(func_install_pkgconfig_subproject): New function for
installing and reporting on config helper files copied to a
subproject ltdl directory.
(func_install_pkgconfig_parent): Similar new function for
config helper files copied solely for the use of the parent
project, including serial checking.
(func_install_pkgmacro_files, func_install_pkgconfig_files):
Rewritten in terms of the above functions.
* tests/libtoolize.at: Adjust test expout's to match newly
regularized libtoolize output.
Move parent project pkgconfig files to build-aux directory
so that progress messages show an obvious difference to
pkgconfig files installed to subproject `config' directory.
(nonrecursive ltdl with AC_CONFIG_MACRO_DIR): New test.
(diagnose missing LT_CONFIG_LTDL_DIR): New test.
(subproject ltdl with non-shared directories): New test.
Reported by Eric Blake <ebb9@byu.net>
2008-01-31 16:14:09 +00:00
Gary V. Vaughan
57e5b9b815 * libtoolize.m4sh (Main): Copy (or link) libltdl sources
into project tree when LTDL_INIT was seen, whether or not
`--ltdl' is passed.
(func_check_macros): Recommend LTDL_INIT instead of
LT_WITH_LTDL when `--ltdl' is used before configure.ac is
upgraded.
* tests/libtoolize.at: Test that it works.
(_LT_AT_LTDL_SETUP): Factor out some common test setup.
Reported by Eric Blake <ebb9@byu.net>
2008-01-26 06:23:10 +00:00
Ralf Wildenhues
2e9a9f29e6 * libtoolize.m4sh (func_scan_files): Avoid matching our own
macro code when scanning configure.ac and aclocal.m4.
Don't produce spurious output if AC_PROG_RANLIB is found.
* tests/old-m4-iface.at (AM_PROG_LIBTOOL): Add a (weak) check
that we don't match our own macro code when searching for user
code calling us.
* TODO: Updated.
2008-01-17 05:36:21 +00:00
Ralf Wildenhues
8652ce1ff3 New variable LTDLDEPS for use in output_DEPENDENCIES.
* libltdl/m4/ltdl.m4 (_LTDL_CONVENIENCE, _LTDL_INSTALLABLE)
(LTDL_INIT): Set and substitute LTDLDEPS according to chosen
method.
* tests/configure-iface.at (installable libltdl)
(--with-ltdl-include/lib, --with-included-ltdl): Test it.
* doc/libtool.texi (Distributing libltdl): Document LTDLDEPS.
* NEWS: Updated.
Dependency bug exposed by Eric Blake in M4, found by Bob Proulx
build daemon.
2008-01-17 05:32:42 +00:00
Ralf Wildenhues
b74786b252 * doc/libtool.texi (Distributing libltdl): Clarify that
LTDL_INIT goes after LT_INIT; also show the latter in the
respective examples.
* tests/subproject.at: Adjust order.
2008-01-17 04:47:41 +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
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
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
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
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
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
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
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
28be809ea3 * tests/mdemo-exec.test: Also try absolute library names.
* tests/mdemo/main.c (test_dl, main): Try lt_dlopenext as well.
* THANKS: Update.
Report by Brian Barrett.
2007-07-24 05:10:03 +00:00
Charles Wilson
3c72a3a00d * tests/cdemo-exec.test: use $EXEEXT where appropriate
to correct mingw cross-compile issues.
* demo-deplibs.test: Ditto.
* demo-exec.test: Ditto.
* demo-inst.test: Ditto.
* demo-relink.test: Ditto.
* depdemo-exec.test: Ditto.
* depdemo-inst.test: Ditto.
* depdemo-relink.test: Ditto.
* f77demo-exec.test: Ditto.
* fcdemo-exec.test: Ditto.
* mdemo-exec.test: Ditto.
* mdemo-inst.test: Ditto.
* mdemo2-exec.test: Ditto.
* pdemo-exec.test: Ditto.
* pdemo-inst.test: Ditto.
* tagdemo-exec.test: Ditto.
2007-07-16 22:53:06 +00:00
Ralf Wildenhues
35526d6c64 * libltdl/m4/lt~obsolete.m4 (LTOBSOLETE_VERSION): New macro, to
force-pull in this file by aclocal.
* libltdl/m4/libtool.m4 (LT_INIT): Require LTOBSOLETE_VERSION.
* tests/libtoolize.at (upgrading verbatim style aclocal.m4):
Adjust.
Report by H. J. Lu <hjl@lucon.org>.
2007-07-01 20:55:13 +00:00
Gary V. Vaughan
a894e3baee Add a test to simulate a failure visible on systems which
need a library prefix like 'lib', such as BeOS.  Fix a number
of bugs exposed by this test in order for it to pass.
Currently the prefix is hardcoded as 'lib', as I am not aware
of systems that require a different prefix:

* libltdl/loaders/preopen.c (lt_dlpreload_open):  Move error
condition out of test loop to be sure that each originator is
tried, instead of erroring out if the first doesn't match.
Support passing NULL as the originator to load all preloaded
modules originating in the program itself.
* libltdl/lt_dlloader.c (lt_dlloader_dump): New debug function.
* libltdl/libltdl/lt_dlloader.h (lt_dlloader_dump): Declare it
when LT_DEBUG_LOADERS is defined at compile time.
* libltdl/ltdl.c (lt_dlinit): Dump loader list after successful
initialisation.
(tryall_dlopen): Add a new VTABLE parameter to force use of a
specific loader in preference to trying every loader in turn.
Adjust all callers.
(try_dlopen): Always see whether a module was preloaded for
module names with no directory component before searching the
filesystem for a match.
* libltdl/m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Declare
a new global_symbol_to_c_name_address_lib_prefix variable.
(global_symbol_to_c_name_address_lib_prefix): The sed
expressions to use when a lib prefix is enforced need to be
slightly different to work with preloaded modules.
* libltdl/config/ltmain.m4sh (func_generate_dlsyms): In order
to name preloaded symbols correctly for the lookup algorithm
to work when the loaded module file must be prefixed with lib.
Use global_symbol_to_c_name_address_lib_prefix when
need_lib_prefix is other than no.
* tests/need_lib_prefix.at: New test to check for breakage on
hosts where need_lib_prefix is unknown.
* Makefile.am (TESTSUITE_AT): Add new test.
* tests/TODO: Note missing tests that would have caught some
of the latent bugs fixed by this patch.
* HACKING: Document libltdl keyword.
* NEWS: Updated.
2007-06-24 20:46:47 +00:00
Noah Misch
27c76a8994 * tests/f77demo/configure.ac [--with-dist]: New option. Skip most
Fortran checks when given.
* tests/fcdemo/configure.ac [--with-dist]: Likewise.
* Makefile.am (@DIST_MAKEFILE_LIST@): Pass --with-dist.
Reported by Benoit Sigoure <tsuna@lrde.epita.fr>.
2007-06-21 19:02:36 +00:00
Charles Wilson
f9137c1440 * libltdl/config/ltmain.m4sh: Add new magic variable
for use with cwrapper.
(func_ltwrapper_script_p): New function.
(func_ltwrapper_executable_p): New function.
(func_ltwrapper_scriptname): New function.
(func_ltwrapper_p): Accomodate both wrapper scripts and
wrapper executables.
(func_mode_execute): Handle $file that is a wrapper
script and $file that is a wrapper executable differently.
(func_mode_install) [cygwin|mingw]: If $file is a wrapper
executable, use func_ltwrapper_scriptname to determine
wrapper script name. Afterwards, always use
func_ltwrapper_script_p instead of func_ltwrapper_p.
(func_emit_libtool_wrapper_script): Rename to...
(func_emit_wrapper): ...this. All callers changed.
(func_emit_libtool_cwrapperexe_source): Rename to...
(func_emit_cwrapperexe_src): ...this. All callers changed.
Embed new magic_exe variable into source. Private transient
wrapper script now called foo_ltshwrapperTMP, not
foo_ltshwrapper.
(func_emit_cwrapperexe_src) [main, mingw]: Use _spawnv
and return child's exit code manually rather than rely on
broken execv.
(func_mode_link) [cygwin|mingw]: Don't call dirname and
basename directly; use func_dirname and func_basename
when computing cwrapper names.  Use cwrapper to generate
wrapper script, and use pathname returned by
func_ltwrapper_scriptname instead of $output.
(func_mode_link) [NOT cygwin|mingw]: move wrapper script
generation for non-win32 inside case statement, as default
case.
(func_mode_uninstall) [$name's extension != .lo|.la]:
'clean' mode must handle $file differently if it is a libtool
wrapper script, or if it is a libtool wrapper executable.
* tests/destdir.at [Simple DESTDIR install]: $EXEEXT fixups.
* tests/destdir.at [DESTDIR with in-package deplibs]: Ditto.
2007-06-19 05:43:16 +00:00
Peter O'Gorman
85b6058c22 * libltdl/m4/libtool.m4 (old_archive_cmds): Remove
old_deplibs.
* tests/dmacks.at: Check for archives as members of static
archives. Currently XFAILS, above only eliminates one of the
two static archives.
* Makefile.am: Add test.
Reported by Daniel Macks <dmacks@netspace.org>
2007-06-04 03:01:11 +00:00
Gary V. Vaughan
3790e88b96 * tests/lt_dladvise.at: Use the lib prefix throughout for
better portability - testing whether modules build and load
without that prefix is not the domain of this test.
Also, only run the test of the global hint with the depend
module on hosts that can compile a module without passing
-no-undefined in link mode.
2007-05-22 12:07:06 +00:00
Noah Misch
1a1b757d1e * tests/duplicate_deps.at: Make the XFAIL unconditional, but
skip the test if the test link would succeed even without
--preserve-dup-deps.
2007-05-10 17:30:29 +00:00
Gary V. Vaughan
710a4012a1 * tests/lt_dladvise.at: Commit missing file from below. 2007-05-09 08:10:19 +00:00
Ralf Wildenhues
3175b66b64 * libltdl/config/ltmain.m4sh (func_mode_link): When adding
new_inherited_linker_flags to compiler_flags, remember to
translate .ltframework back.  Fixes bug introduced 2007-04-23.
* THANKS: Update.
* tests/inherited_flags.at: Amend test.
Report by Christoph Egger.
2007-05-03 18:07:28 +00:00
Noah Misch
e56ae3e8a2 * tests/ctor.at: New file.
* Makefile.am (TESTSUITE_AT): Add tests/ctor.at.
2007-04-26 22:34:05 +00:00
Ralf Wildenhues
fa4b8efdea * tests/cmdline_wrap.at: Avoid `AT_CAPTURE_FILE' if it not
defined (Autoconf < 2.60).
* tests/shlibpath.at: Add `libtool' keyword.
2007-04-24 20:50:07 +00:00
Ralf Wildenhues
844ad0a8de * tests/indirect_deps.at: New file, with tests to ensure
`link_all_deplibs=no' does not break functionality.
* Makefile.am: Adjust.
2007-04-24 20:46:17 +00:00
Ralf Wildenhues
06470c3a43 * libltdl/config/ltmain.m4sh (func_mode_link): Fix accumulation
of `inherited_linker_flags' entries from multiple deplibs, by
adding $new_inherited_linker_flags only once, only in link pass.
* tests/inherited_flags: Amend test to expose this.
* NEWS: Adjust: kill one regression, but add note about the
feature new in 1.9b.
Report by Jeff Squyres and others.
2007-04-23 17:10:17 +00:00
Ralf Wildenhues
5d9eaf09a4 * doc/libtool.texi (Link mode) <-no-install>: Mention that this
still generates a wrapper script on systems without hardcoding.
* tests/stresstest.at: Test `-no-install'.
* THANKS: Update.
Report by Simon Josefsson.
2007-04-03 19:09:39 +00:00
Gary V. Vaughan
56c08a521e * HACKING (Licensing Rules): Explain the various license texts
used for files distributed with Libtool, and update license text
to match.
* Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
libltdl/README, libltdl/argz.c, libltdl/argz_.h,
libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
libltdl/config/mkstamp, libltdl/configure.ac,
libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.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,
libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
Jlibltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/cdemo-undef.test,
tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
tests/demo-conf.test, tests/demo-deplibs.test,
tests/demo-exec.test, tests/demo-hardcode.test,
tests/demo-inst.test, tests/demo-make.test,
tests/demo-nofast.test, tests/demo-noinst-link.test,
tests/demo-nopic.test, tests/demo-pic.test,
tests/demo-relink.test, tests/demo-shared.test,
tests/demo-static.test, tests/demo-unst.test,
tests/demo/Makefile.am, tests/demo/configure.ac,
tests/demo/dlmain.c, tests/demo/foo.c,
tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
tests/demo/hello.c, tests/demo/main.c,
tests/depdemo-conf.test, tests/depdemo-exec.test,
tests/depdemo-inst.test, tests/depdemo-make.test,
tests/depdemo-nofast.test, tests/depdemo-relink.test,
tests/depdemo-shared.test, tests/depdemo-static.test,
tests/depdemo-unst.test, tests/depdemo/Makefile.am,
tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
tests/depdemo/l4/l4.h, tests/depdemo/main.c,
tests/depdemo/sysdep.h, tests/deplibs-ident.at,
tests/destdir.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/export.at,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/f77demo/Makefile.am,
tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
tests/f77demo/foo.h, tests/f77demo/fooc.c,
tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
tests/fcdemo-make.test, tests/fcdemo-shared.test,
tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
tests/inherited_flags.at, tests/libtoolize.at,
tests/link-2.test, tests/link-order.at, tests/link-order2.at,
tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
tests/mdemo-dryrun.test, tests/mdemo-exec.test,
tests/mdemo-inst.test, tests/mdemo-make.test,
tests/mdemo-shared.test, tests/mdemo-static.test,
tests/mdemo-unst.test, tests/mdemo/Makefile.am,
tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
tests/mdemo/sub.c, tests/mdemo2-conf.test,
tests/mdemo2-exec.test, tests/mdemo2-make.test,
tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
tests/objectlist.test, tests/old-m4-iface.at,
tests/pdemo-conf.test, tests/pdemo-exec.test,
tests/pdemo-inst.test, tests/pdemo-make.test,
tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
tests/pdemo/longer_file_name_foo.c,
tests/pdemo/longer_file_name_foo2.c,
tests/pdemo/longer_file_name_hell1.c,
tests/pdemo/longer_file_name_hell2.c,
tests/pdemo/longer_file_name_hello.c,
tests/pdemo/longer_file_name_main.c, tests/quote.test,
tests/recursive.at, tests/search-path.at, tests/sh.test,
tests/shlibpath.at, tests/standalone.at, tests/static.at,
tests/stresstest.at, tests/subproject.at, tests/suffix.test,
tests/tagdemo-conf.test, tests/tagdemo-exec.test,
tests/tagdemo-make.test, tests/tagdemo-shared.test,
tests/tagdemo-static.test, tests/tagdemo-undef.test,
tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
tests/tagdemo/main.cpp, tests/tagtrace.test,
tests/template.at, tests/testsuite.at: Apply correct license
text according to the new rules set out in HACKING.
2007-03-25 12:12:44 +00:00
Gary V. Vaughan
65f31eb854 * libtoolize.m4sh: Handle argz.m4 specially like ltdl.m4, so
that it isn't copied unless libltdl is being used.  Copy other
macro files according to their tagged serial numbers.
* tests/libtoolize.at: Adjust.
2007-03-19 13:21:37 +00:00
Ralf Wildenhues
2b8a91382d * tests/mdemo/Makefile.am (libmlib_la_LDFLAGS): Add
`-export-symbols-regex ".*"' because the convenience libltdl
uses export markers and thus turns off autoexport on w32.  Fixes
test failures for Cygwin and MinGW.
Bug analysis by Charles Wilson.
2007-03-18 18:44:42 +00:00
Ralf Wildenhues
e92a00f7c0 * tests/stresstest.at: For const data object imported from
shared library, define appropriate macros to expand
__declspec(dllimport) on w32.  Use two different main objects
and pick the right one for the link flags we are about to test.
Fixes test failure on MinGW.
2007-03-06 22:30:15 +00:00
Ralf Wildenhues
5745354dca * tests/export.at: For const data object imported from shared
library, define appropriate macros to expand
__declspec(dllimport) on w32.  Fixes test failure on MinGW.
2007-03-06 22:28:00 +00:00
Gary V. Vaughan
5771b49373 * libltdl/config/general.m4sh (M4SH_VERBATIM): New macro to
simplify m4sh quote quoting in blocks of raw shell code.
* clcommit.m4sh, libtoolize.m4sh, libltdl/config/getopt.m4sh,
libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
tests/defs.m4sh: Use it.
* HACKING (Editing `.m4sh' Files): Mention M4SH_VERBATIM Macro.
2007-03-06 00:46:56 +00:00
Ralf Wildenhues
0dfcbc7343 * tests/lt_dlexit.at: Allow test to pass on static-only systems
and with disable-shared.
2007-02-27 22:32:17 +00:00
Gary V. Vaughan
7367171ad0 * HACKING, Makefile.am, Makefile.maint, bootstrap,
libltdl/Makefile.am, libltdl/Makefile.inc, libltdl/m4/libtool.m4,
ltmain.c, tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/depdemo/l1/Makefile.am,
tests/depdemo/l2/Makefile.am, tests/depdemo/l3/Makefile.am,
tests/depdemo/l4/Makefile.am, tests/f77demo/Makefile.am,
tests/fcdemo/Makefile.am, tests/libtoolize.at,
tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am,
tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Update
Copyright notice text to include URL for canonical GPL document.
2007-02-26 07:44:25 +00:00
Ralf Wildenhues
e4a33a7ab5 * tests/static.at: Forgot to fix PATH for the first
func_test_exec invocation.  So factor out into new functions
func_fix_path and func_restore_path and use those.
2007-02-25 19:18:35 +00:00
Ralf Wildenhues
341bfc2624 * tests/static.at: Larger rewrite to make work on w32: Use three
different prefixes instead of three libdirs, so the moving of
the DLLs works as expected.  Adjust all code.  Since now
$libdirI/../bin is distinct from the directory of the installed
program, take care than on w32 PATH contains the needed bindirs,
in appropriate order.
Report by Charles Wilson.
2007-02-25 14:50:08 +00:00
Ralf Wildenhues
e34d7507d6 * doc/libtool.texi (Install mode, libtool script contents):
Describe current and system-specific DESTDIR limitations.
* tests/destdir.at: XFAIL if `fast_install' is no.
2007-02-24 16:11:21 +00:00
Ralf Wildenhues
dc746dbea4 * doc/libtool.texi (Libtool test suite): Mention the new
testsuite.  Point to README rather than INSTALL for testing
instructions.
(Test descriptions): Fix more file names.  Also mention
cdemo-undef.test, mdemo2-conf.test, mdemo2-exec.test,
mdemo2-make.test, objectlist.test, pdemo-conf.test,
pdemo-exec.test, pdemo-inst.test, pdemo-make.test,
tagdemo-conf.test, tagdemo-exec.test, tagdemo-make.test,
tagdemo-static.test, tagdemo-shared.test, tagdemo-undef.test,
f77demo-conf.test, f77demo-exec.test, f77demo-make.test,
f77demo-static.test, f77demo-shared.test, fcdemo-conf.test,
fcdemo-exec.test, fcdemo-make.test, fcdemo-static.test,
fcdemo-shared.test.  Describe what they do.
(When tests fail, Troubleshooting): Mention how to pass options
to the new test suite.
* tests/tagdemo/README: Fix description.
2007-02-24 16:06:50 +00:00
Ralf Wildenhues
bb04acdad8 * doc/libtool.texi (Test descriptions): Track the grand test
suite renaming from 2003-10-14 in the tests documentation.
assign.test is merged into sh.test.  Fix description of sh.test.
* tests/sh.test: Likewise.
2007-02-24 14:49:53 +00:00
Ralf Wildenhues
a4957af572 * tests/link-order2.at: Rewrite completely. Do not use `sin'
from the math library, there are too many problems with this.
Instead, use a self-written library, install it without the
Libtool library file, to emulate a native library in a system
directory, and adjust $shlibpat_var.  Try overriding its symbol.
Further, also try an installed `wrong' binary.
Avoid failing test bits on AIX without runtimelinking and on
Darwin in some cases, SKIP at the end in this case.
Analysis by Peter O'Gorman.
2007-02-24 08:49:24 +00:00
Ralf Wildenhues
40c41e79e6 * doc/notes.texi: Mention MACOSX_DEPLOYMENT_TARGET issue.
* tests/template.at: Only skip those tests failing on Darwin
if `-flat_namespace' is used by libtool.  In that case, SKIP
at the end.  Analysis by Peter O'Gorman.
2007-02-24 08:46:19 +00:00
Ralf Wildenhues
4cda6b5b78 * tests/template.at: Reformat, add M4 quoting. Use $LDFLAGS
consistently for link mode.
2007-02-19 08:57:07 +00:00
Ralf Wildenhues
8cebf63060 * tests/static.at: Use the right names for the broken libs. 2007-02-18 15:07:41 +00:00
Ralf Wildenhues
42850eea47 * tests/deplibs-ident.at [aix, hppa*-*-hpux*, interix, openbsd]:
Do not XFAIL, on these systems we happen to pass.
* tests/duplicate_deps.at [aix]: Likewise.
2007-02-17 15:21:36 +00:00
Ralf Wildenhues
206427dd26 Fix spurious testsuite failures on AIX due on NFS mounts due to
shared library images that cannot be removed without `slibclean'
which needs superuser privileges.

* tests/testsuite.at (PREPARE_TESTS): Define $mkdir_p globally.
(LT_AT_MVDIR): New macro to emulate `mv dir dest'.
* tests/destdir.at: Use LT_AT_MVDIR.
* tests/shlibpath.at: Likewise.
* tests/static.at: Likewise.
2007-02-12 22:29:05 +00:00
Ralf Wildenhues
d09625f73a * tests/export.at: Exporting is not fully functional with
-retain-symbols-file.  Do not test for failure to link `broken'
in this case.  At the end of the test, SKIP if we are not fully
functional.
2007-02-12 20:50:36 +00:00
Ralf Wildenhues
604750237c * tests/lt_dlexit.at: Add casts and `extern "C"' to let the test
pass with a C++ compiler.
2007-02-12 20:10:00 +00:00
Ralf Wildenhues
e3aa680f19 * tests/testsuite.at (LT_AT_NOINST_EXEC_CHECK): New macro, like
LT_AT_EXEC_CHECK but uses `$LIBTOOL --mode=execute' and allows
to pass `-dlopen MODULE' arguments.
* tests/lt_dlexit.at: Use it.  Also, do not test `-dlpreopen',
that currently needs library names to begin with `lib'.
2007-02-12 19:55:02 +00:00
Ralf Wildenhues
90b9e52da6 * tests/export.at: New test: expose -export-symbols failure
when the input consists solely of convenience archives, and
failure to not export all symbols when the command line length
is exceeded.
* Makefile.am: Adjust.
2007-02-11 16:47:53 +00:00
Ralf Wildenhues
2139117724 * tests/testsuite.at (LT_AT_TAG): Skip also if the compiler
variable is set to `no', not only if it is empty.
2007-02-08 18:58:16 +00:00
Ralf Wildenhues
921ef22f1a * tests/lt_dlexit.at: Do not compile main object with libtool. 2007-02-06 23:27:09 +00:00
Ralf Wildenhues
2a05c52174 * tests/cmdline_wrap.at: Pass $abs_top_srcdir and $abs_builddir
to inner testsuite.
2007-02-06 19:21:29 +00:00
Ralf Wildenhues
b9c8379cf9 * tests/convenience.at: Use $CPPFLAGS for compilation.
* tests/deplibs-ident.at: Likewise.
* tests/duplicate_members.at: Likewise.
* tests/inherited_flags.at: Likewise.
* tests/link-order.at: Likewise.
* tests/stresstest.at: Likewise.
* tests/early-libtool.at: Likewise.  Do not quote $CC.
2007-02-06 19:02:27 +00:00
Ralf Wildenhues
dd744836ce * tests/destdir.at: Add `libtool' keyword to tests. 2007-02-06 18:56:57 +00:00
Ralf Wildenhues
663842ed39 * tests/lt_dlexit.at: Use $abs_top_srcdir, not $top_srcdir,
in the new testsuite.
2007-01-29 21:59:58 +00:00
Dave Brolley
afa7deb340 * libltdl/ltdl.c (lt_dlexit): Make sure that 'cur' is not NULL
before checking that it is still in the list.
* tests/lt_dlexit.at: New test.
* Makefile.am (TESTSUITE_AT): Adjust.
(check-local): Also depend on libltdl/libltdlc.la.
(check-recursive): Removed, unnecessary use of Automake
internals.
2007-01-28 14:55:01 +00:00
Ralf Wildenhues
d1d4262854 Introduce a new test keyword `recursive' for tests that create a
modified `libtool' script and run the suite on this script.  All
tests with the keyword `libtool' are (by definition) suitable to
be used here.

* tests/cmdline_wrap.at: New test.
* Makefile.am: Adjust.
* tests/testsuite.at (LT_ESCAPE): New macro: clone of Autoconf
AS_ESCAPE that does not escape `$'.
(LT_AT_CHECK): New macro: print a command-to-be-run while
expanding parameters but nothing else.
* tests/stresstest.at: Use LT_AT_CHECK.  Create some files to
expose erroneous globbing errors with `-export-symbols-regex',
similar to those reported by Charles Wilson.  Use `eval' and
adjusted quoting so the expansion doesn't already happen in the
testsuite commands.
* HACKING: Update.
2007-01-28 12:43:37 +00:00
Ralf Wildenhues
baf8599e6f Assume C89 for included headers, and throughout the testsuite.
* NEWS: Update.
* libltdl/argz.c: Do not include strings.h nor memory.h, include
string.h unconditionally.
Patch by Simon Josefsson <jas@extundo.com>.
* libltdl/libltdl/lt__private.h: Likewise.
* libltdl/m4/ltdl.m4 (LTDL_INIT): Do not check for string.h,
strings.h, memory.h.
* tests/cdemo/configure.ac: Assume presence of math.h.
* tests/cdemo/foo.c: Likewise.
* tests/demo/configure.ac: Likewise for math.h, string.h.
Assume 'const'.  Drop obsolete AC_EXEEXT.
* tests/demo/dlmain.c: Likewise.
* tests/demo/foo.c: Likewise.
* tests/depdemo/configure.ac: Likewise.
* tests/depdemo/l4/l4.c: Likewise.
* tests/f77demo/configure.ac: Likewise.  Also drop obsolete
AC_OBJEXT.
* tests/fcdemo/configure.ac: Likewise.
* tests/mdemo/configure.ac: Likewise.
* tests/mdemo/foo1.c: Likewise.
* tests/mdemo/foo2.c: Likewise.
* tests/mdemo2/configure.ac: Likewise.
* tests/pdemo/configure.ac: Likewise.
* tests/pdemo/longer_file_name_dlmain.c:
* tests/pdemo/longer_file_name_foo.c: Likewise.
* tests/pdemo/longer_file_name_foo2.c: Likewise.
* tests/tagdemo/configure.ac: Likewise.
* tests/tagdemo/foo.cpp: Likewise.
2007-01-27 16:45:40 +00:00
Ralf Wildenhues
4d8e7a3784 * libltdl/config/ltmain.m4sh (func_mode_compile): Accept
suffixes matching `[fF][09].', for Fortran.
* tests/suffix.test: Also test F90, F95, f03, F03.
2007-01-21 14:57:58 +00:00
Ralf Wildenhues
490d8a6e4f * tests/link-order2.at: Define our override `sin' function with
C binding even if $CC is a C++ compiler.  Skip the test with g++
as its command line driver reorders `-lm'.
* tests/search-path.at: Declare `inflate' with C binding.
* tests/stresstest.at: Avoid unused variable warnings.
2006-12-14 20:59:26 +00:00
Ralf Wildenhues
a22d0bd7ff * tests/link-order2.at: Simplify logic to be a bit more self
documenting.  Suggested by Gary V. Vaughan.
2006-11-07 17:53:22 +00:00
Ralf Wildenhues
84748dd914 * tests/link-order2.at: Add missing $bindir setting. Prevent
compiler optimization of sqrt call.  Fix logic inversion and
add some comments about this stunt.  Add a test with reversed
library link order that should fail if the system has a libm.
Report by Patrick Welche.
2006-10-27 22:57:00 +00:00
Ralf Wildenhues
8b77562fee Assume presence of a config header in all files, to provoke
test failures on all systems.
* libltdl/lt__alloc.c: Likewise.
* libltdl/libltdl/lt__dirent.h: Likewise.
* libltdl/libltdl/lt__glibc.h: Likewise.
* libltdl/libltdl/lt__private.h: Likewise.
* libltdl/libltdl/lt__strl.h: Likewise.
* tests/recursive.at: Use AC_CONFIG_HEADERS.
* tests/nonrecursive.at: Likewise.  Invoke autoheader.
* HACKING: Adjust.
Report by Patrick Welche.
2006-10-26 20:39:04 +00:00
Ralf Wildenhues
aa546b46c0 * tests/link-order2.at: New test to show one case where ordering
of depdepls on the command line matters.
* Makefile.am: Adjust.
2006-10-24 20:30:05 +00:00
Ralf Wildenhues
33755ffbf5 * tests/tagtrace.test: SKIP if `autoconf --trace' exits 63 or 1,
for various possible (valid) error cases.  Also output stderr,
to help with analysis.
2006-10-24 20:25:36 +00:00
Ralf Wildenhues
148027b94c * NEWS: Account for recent multilib fix.
* tests/search-path.at: New test, to provide at least a weak
test.
* Makefile.am: Update.
2006-10-24 20:17:38 +00:00
Ralf Wildenhues
997601f675 * libltdl/m4/libtool.m4 (func_mode_compile): Accept files with
extension `.f9?'.
* tests/suffix.test: Test `f95'.
2006-09-20 19:08:22 +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
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
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
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
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
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
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
a2289de66c * tests/link-order.at: Be careful about usage of shrext_cmds. 2006-05-17 17:50:05 +00:00
Albert Chin-A-Young
e73b15356c * libltdl/config/ltmain.m4sh, libltdl/m4/libtool.m4
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG, _LT_LANG_F77_CONFIG,
_LT_LANG_FC_CONFIG) [ aix4*, aix5*, hpux10*, hpux11* ]:
Introduce a new variable, hardcode_direct_static, which
would ignore hardcode_direct=yes if the result would create a
static library dependency. Static library dependencies are
immune to $shlibpath_var.
* tests/link-order.at: Take hardcode_direct and
hardcode_direct_static into consideration when testing
link order.
2006-05-17 14:28:40 +00:00
Ralf Wildenhues
3c31380f6f * Makefile.am (check-local): Move `$(TESTS_ENVIRONMENT)' and
`$(BUILDCHECK_ENVIRONMENT)' to be arguments of `testsuite', so
that reruns will remember it; set enviroment variable
`CONFIG_SHELL' so the suite will know which shell it was started
with.
(installcheck-local): Likewise, for `$(TESTS_ENVIRONMENT)' and
`$(INSTALLCHECK_ENVIRONMENT)'.
* tests/testsuite.at (LT_AT_TAG): Do not set the compiler
variable here.
2006-05-15 16:14:24 +00:00
Ralf Wildenhues
d129c269b0 * tests/fail.at: Use "test -x" if available, for testing of
executables; code modified from Autoconf's AS_EXECUTABLE_P.
Reported by Albert Chin <china@thewrittenword.com>.
2006-05-13 18:14:36 +00:00
Ralf Wildenhues
193cfe320b * tests/static.at: New tests for comprehensive test exposure of
all current and proposed static linking flags for programs.
* Makefile.am: Updated.
2006-03-20 20:46:30 +00:00
Ralf Wildenhues
2aa72e57d2 * tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp [ hpux ] <aCC>:
The HPPA C++ compiler has namespace support but provides no
`std' namespace; just provide it with a dummy.
2006-03-17 17:20:11 +00:00
Ralf Wildenhues
bc06662db8 * tests/testsuite.at: Add new keyword `libtoolize' for tests
that exercise the `libtoolize' script that is generated at build
time.
* HACKING: Update testsuite mention, explain keywords.
2006-02-05 17:06:39 +00:00
Ralf Wildenhues
b4b9f408c0 * libltdl/config/ltmain.m4sh (extracted_archives)
(extracted_serial): New globals.
(func_extract_archives): Use them to rename extraction archives
for linking against multiple convenience libraries with the same
name.
* tests/duplicate_conv.at: New tests.
* Makefile.am: Adjusted.
Reported by Carlo Contavalli <ccontavalli@commedia.it>.
2006-02-05 11:06:31 +00:00
Ralf Wildenhues
3dde37cdcf * tests/convenience.at, tests/deplibs-ident.at: Add new keyword
`libtool' for tests that exercise the unmodified `libtool'
script that is generated at build time.
* tests/duplicate_members.at, tests/fail.at: Likewise.
* tests/inherited_flags.at, tests/link-order.at: Likewise.
* tests/stresstest.at, tests/template.at: Likewise.
2006-02-05 09:56:44 +00:00
Ralf Wildenhues
2608336df7 * tests/fail.at: Also pass a bogus object file to the linker so
it fails more reliably; AIX and IRIX linkers ignore duplicate
symbol definitions.
2006-02-03 20:43:24 +00:00
Ralf Wildenhues
d6b4fbf5dd * tests/cdemo/Makefile.am: Remove broken use of undocumented
Automake variable `$(OBJECTS)'.
* tests/demo/Makefile.am, tests/depdemo/Makefile.am: Likewise.
* tests/f77demo/Makefile.am, tests/fcdemo/Makefile.am: Likewise.
* tests/mdemo/Makefile.am, tests/mdemo2/Makefile.am: Likewise.
* tests/pdemo/Makefile.am, tests/tagdemo/Makefile.am: Likewise.
2006-02-03 09:37:04 +00:00
Ralf Wildenhues
3bdc3192c9 * Makefile.am (TESTSUITE_AT): List testsuite files in the order
in which they are to be expanded in the suite.
(tests/TESTSUITE): Rebuild by passing all $(TESTSUITE_AT) files,
with their path suitably adjusted.  This enables us to..
* tests/testsuite.at: ..get rid of their redundant mention here.
2006-02-01 19:54:34 +00:00
Ralf Wildenhues
08a7e53a0d * tests/testsuite.at (PREPARE_TESTS): Escape `^' for some older
shells.
2006-01-30 20:14:04 +00:00
Ralf Wildenhues
b794bc707a * Makefile.am, bootstrap, clcommit.m4sh,
libltdl/config/getopt.m4sh, libltdl/config/mailnotify.m4sh,
tests/sh.test, tests/testsuite.at: Bump copyright years.
2006-01-23 18:33:57 +00:00
Ralf Wildenhues
1d9ab46f1e * bootstrap: Don't use semicolons inside { } in sed scripts, as
Posix says it's not portable.
* Makefile.am (libltdl/Makefile.am): Likewise.
* libtoolize.m4sh (all over the map): Likewise.
* libltdl/config/getopt.m4sh (func_version, func_usage)
(func_help): Likewise.
* libltdl/config/ltmain.m4sh (func_win32_libid): Likewise.
* libltdl/m4/libtool.m4 (_LT_SYS_MODULE_PATH_AIX): Likewise.
* clcommit.m4sh, libltdl/config/mailnotify.m4sh: Likewise.
* tests/sh.test, tests/testsuite.at (LT_AT_TAG): Likewise.
Noted by Paul Eggert <eggert@cs.ucla.edu>.
2006-01-21 16:44:41 +00:00
Gary V. Vaughan
b85731007e * .cvsignore, libltdl/.cvsignore, tests/.cvsignore: Ignore
+build, +dest, +inst, .cvslog-tlasync, .gdb_history, .pc,
libltdl/INSTALL, libltdl/stamp-mk and tests/testsuite.log.
2005-12-21 11:40:47 +00:00
Ralf Wildenhues
07ca8d2bb8 * tests/old-m4-iface.at: Require Autoconf-2.50, so that
Debian's autoconf wrapper will not cause 2.13 to barf over
`--force'.
Reported by Kurt Roeckx <kurt@roeckx.be>.
2005-12-16 17:57:34 +00:00
Ralf Wildenhues
a33d6a8916 * tests/testsuite.at (PREPARE_TESTS): New variable `tst_dist',
default to empty.
* tests/nonrecursive.at, tests/recursive.at,
tests/standalone.at, tests/subproject.at: Use it in
LT_AT_BOOTSTRAP or LT_AT_MAKE, so that you can optionally test
redistribution within the tests.
2005-12-16 16:15:32 +00:00
Ralf Wildenhues
4a8cf0e75a * tests/am-subdir.at (Makefile.am): Put automake options here,
in AUTOMAKE_OPTIONS.  Require 1.6 because of the newer
`AC_INIT(pkgname,version) AM_INIT_AUTOMAKE' scheme.
* tests/nonrecursive.at, tests/recursive.at: Require 1.7,
because libltdl rules use `+=' in conditionals.
* tests/testsuite.at (LT_AT_AUTOMAKE): Fix indenting.
(LT_AT_AUTORECONF): also detect too old Automake.
2005-12-16 15:57:22 +00:00
Ralf Wildenhues
666de04f3b * Makefile.am (install-data-local): No continuation here.
(dist-hook): Fix copying of README.alpha to README.
* tests/early-libtool.at (configure.ac): Remove
`AM_INIT_AUTOMAKE', we do not use automake in these tests.
2005-12-04 14:48:09 +00:00
Ralf Wildenhues
12ad69c1ea * README, README.alpha, libtoolize.m4sh: Typos.
* tests/am-subdir.at, tests/duplicate_members.at: Make all
banners end with a dot, for symmetry.
2005-12-04 14:40:44 +00:00
Ralf Wildenhues
a8b078ce15 * tests/convenience.at: Updated to expose more corner cases. 2005-12-03 11:52:36 +00:00
Ralf Wildenhues
8a48a49aa5 * libtoolize.m4sh (func_fixup_Makefile_inc): New function.
(main): Call it in nonrecursive mode to mangle Makefile.inc.
* tests/nonrecursive.at: adjusted to test this.
2005-12-03 08:49:48 +00:00
Ralf Wildenhues
1ef097dbf6 * libltdl/config/general.m4sh (func_show_eval):
Rewrite use the failure expression, because the exit status of
the previous command may not be preserved in the next `eval' by
some shells, such as pdksh.
* libltdl/config/ltmain.m4sh (func_extract_an_archive):
Use func_show_eval correctly.
(func_mode_link): Likewise.  Also, do not use `$status'.
* tests/fail.at: New set of tests to ensure libtool fails.
* Makefile.am, tests/testsuite.at: Adjusted.
2005-12-03 08:33:48 +00:00
Ralf Wildenhues
1ecf2190b7 * Makefile.am (aclocalfiles): Also install lt~obsolete.m4.
* libtoolize.m4sh (func_check_macros): Updated.
* tests/libtoolize.at: Adjusted.
2005-11-20 10:33:27 +00:00
Ralf Wildenhues
5b3175a401 * tests/link-order.at [ interix ]: Skip command line grep.
* tests/deplibs-ident.at [ interix ]: Not broken here.
Reported by Thorsten Glaser <tg@66h.42h.de>.
2005-11-20 08:17:22 +00:00
Ralf Wildenhues
bbfe62c669 Testsuite portability update round.
* tests/inherited_flags: skip when shared libs are disabled.
* tests/deplibs-ident.at [ aix ]: No unexpected failure here.
* tests/libtoolize.at: Fix for distcheck (readonly sources).
* tests/nonrecursive.at, tests/recursive.at, tests/subproject.at
(foo.c): Actually export a symbol, for AIX.
* tests/old-m4-iface.at: Use AC_LIBTOOL_DLOPEN, for AIX.
* tests/nonrecursive.at: Set foo_la_SOURCES, for automake-1.7.
* tests/subproject.at: Require automake-1.9, we use indirect
subdirs.
* tests/am-subdir.at: Move AT_KEYWORDS settings..
* tests/testsuite.at: ..here, in respective macros.
(LT_AT_AUTOMAKE): Skip if we detect failure due to old version.
(PREPARE_TESTS): Set autotool variables to `no' if not present.
(LT_AT_ACLOCAL, LT_AT_AUTOCONF, LT_AT_AUTOMAKE)
(LT_AT_AUTOHEADER, LT_AT_AUTORECONF): Use to XFAIL tests.
Reported by Tim Rice <tim@multitalents.net>.
(LT_AT_MAKE): Do not use `make -e'.
(_LTDL_PROJECT_FILES): Adjust sub-make call.  Work around `make'
which does not set `MAKE' or `SHELL'.  Fix for user-set
`CONFIG_SHELL'.
Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
2005-11-14 22:19:40 +00:00
Ralf Wildenhues
7ddbaa343a * Makefile.am, libltdl/Makefile.inc (INSTALL_LTDL):
For nonrecursive mode, add to include_HEADERS as well.
* doc/libtool.texi (Invoking libtoolize, Distributing libltdl),
tests/nonrecursive.at: Adjusted, and removed TABS from .texi.
2005-11-14 20:39:27 +00:00
Ralf Wildenhues
c0674ddfdd * tests/quote.test: Do not fail on harmless shell bug present
in some ksh88 versions.
Reported by Tim Rice <tim@multitalents.net> and others.
2005-11-13 15:15:50 +00:00
Ralf Wildenhues
cf0824decb * tests/defs.m4sh (func_configure_nofail): Actually pass
options (like --disable-shared) to func_configure.
2005-11-12 09:16:56 +00:00
Gary V. Vaughan
debe288c52 * tests/testsuite.ac (macrodir): Don't set it here...
* Makefile.am (BUILDCHECK_ENVIRONMENT, INSTALLCHECK_ENVIRONMENT):
...set it here to pick up files from the right place in context.
* tests/libtoolize.at, tests/old-m4-iface.at: Adjust.
* libtoolize.m4sh: Take tst_aclocaldir into account when running
inside the test harness.
2005-11-10 17:51:37 +00:00
Gary V. Vaughan
3a95c2eb57 * tests/am-subdir.at: Now that we don't run autoreconf, we have to
explicitly tell aclocal what flags to use.
2005-11-10 15:31:32 +00:00
Gary V. Vaughan
e6f1cb457f * tests/testsuite.at (LT_AT_BOOTSTRAP): Allow passing arguments to
configure.
* tests/old-m4-iface.at, tests/subproject.at: Use LT_AT_BOOTSTRAP.
2005-11-10 14:57:50 +00:00
Gary V. Vaughan
8e4c3b06e6 * tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
common code to build a basic libltdl using project.
* tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
Use it.
2005-11-07 15:37:11 +00:00
Gary V. Vaughan
a79954af84 * tests/recursive.at: New tests for libltdl as a subdirectory,
configured and compiled from the toplevel project using a
recursive make..
* tests/testsuite.at: Use it.
* Makefile.am (TESTSUITE_AT): Depend on it.
2005-11-07 14:16:15 +00:00
Gary V. Vaughan
1d7d709392 * libltdl/m4/ltdl.m4 (LTDL_INIT): Don't force running
AC_CONFIG_HEADERS for subproject ltdl.
* tests/old-m4-iface.at, tests/subproject.at: Remove workaround.
2005-11-07 12:42:40 +00:00
Gary V. Vaughan
3bbc1ae280 forgot cvs add 2005-11-02 17:45:59 +00:00
Gary V. Vaughan
0c25422a6c * tests/nonrecursive.at: New tests for libltdl as a subdirectory,
configured and compiled from the toplevel project.
* tests/testsuite.at: Use it.
(LT_AT_AUTOHEADER): New macro.
* Makefile.am (TESTSUITE_AT): Depend on nonrecursive.at.
2005-11-02 17:43:51 +00:00
Gary V. Vaughan
c215fede13 * libtoolize.m4sh: Use serial tags to locate the correct serial
numbers when deciding whether to update.
(func_serial): Allow for macro_regex argument to be originating
file name.
(func_serial_update): Use NL2SP to flatten list of extracted
m4_include files.
* tests/libtoolize.at: More tests for old-style verbatim copying
of macros into aclocal.m4.
2005-11-01 14:28:20 +00:00
Ralf Wildenhues
60f1724476 * tests/tagtrace.test: Allow `$AUTOCONF' to contain arguments.
Skip if the running `autoconf' version is older than the one
used to bootstrap Libtool.
2005-10-27 13:17:05 +00:00
Gary V. Vaughan
41ffa5624b * libtoolize.m4sh: Always copy pkgconfig_files for --ltdl, incase
ltdl needs additional things not found by automake when looking at
the parent project configury.
* tests/libtoolize.at: Adjust.
2005-10-26 09:20:45 +00:00
Gary V. Vaughan
13cbbc4fe9 * tests/subproject.at: Move 'touch config.h.in' invocation. 2005-10-14 13:23:01 +00:00
Gary V. Vaughan
89eddeb5cf * tests/subproject.at: Removed 'touch config.h.in' workaround for
bug now fixed.
2005-10-14 12:31:03 +00:00
Gary V. Vaughan
6a6b5a0884 * tests/subproject.at (_LTDL_SETUP): Use pushdef/popdef to
simulate file-local scope.  Empty source file compilation is not
portable, so add minimal code to generated foo.c file.
2005-10-14 10:43:45 +00:00
Ralf Wildenhues
bb32a2aa50 * tests/testsuite.at (LT_AT_AUTOMAKE): New macro.
* tests/subproject.at: Use it.  Do not call `autoreconf' in
tests, since it will try to reconfigure `sub/ltdl', which
breaks `make check' during `distcheck' because of a readonly
source tree.
2005-10-11 16:51:50 +00:00
Ralf Wildenhues
8b1c9b9190 * tests/stresstest.at: Use `allow_undefined_flag' instead of
host_os setting.
2005-10-11 06:23:29 +00:00
Ralf Wildenhues
e6f894bd1c * tests/stresstest.at [ aix3, beos, os2 ]: Always use
`-no-undefined'.
2005-10-10 16:25:09 +00:00
Ralf Wildenhues
cefa1b074c * configure.ac (abs_top_builddir, abs_top_srcdir): always
substitute.
* Makefile.am (BUILDCHECK_ENVIRONMENT)
(INSTALLCHECK_ENVIRONMENT): New macros.  Set _lt_pkgdatadir,
LIBTOOL, LIBTOOLIZE accordingly, by using above, and
program_transform_name.
* tests/testsuite.at (TESTS_PREPARE): Do not set them anymore.
Set $unset.
(LT_AT_MAKE): Use to unset LIBTOOL and LIBTOOLIZE.
2005-10-07 08:52:10 +00:00
Gary V. Vaughan
37bff2141f * tests/subproject.at: Commit the right file this time. 2005-10-05 16:45:09 +00:00
Gary V. Vaughan
1b04e31422 * tests/subproject.at: Forgot to cvs add. 2005-10-05 15:04:50 +00:00
Gary V. Vaughan
c1b31f316c * tests/subproject.at: New tests for libltdl as a subproject with
its own configuration.
* tests/testsuite.at: Use it.
* Makefile.am (TESTSUITE_AT): Depend on it.
2005-10-05 15:02:54 +00:00
Ralf Wildenhues
9086d5c9fa * Makefile.am (BUILDCHECK_ENVIRONMENT)
(INSTALLCHECK_ENVIRONMENT): New macros.
(check-local, installcheck-local): Use them.
* tests/testsuite.at (PREPARE_TESTS): Extract host_alias, ECHO.
Set configure_options appropriately.
(LT_AT_CONFIGURE, LT_AT_AUTORECONF, LT_AT_MAKE): New macros.
(LT_AT_BOOTSTRAP): Use them.
* tests/am-subdir.at, tests/early-libtool.at,
tests/old-m4-iface.at, tests/standalone.at: Likewise.
* tests/link-order.test: Do not extract ECHO any more.
2005-10-05 08:58:19 +00:00
Ralf Wildenhues
96fe8ab8da * tests/old-m4-iface.at (Makefile.in): Do not reconfigure
libltdl directory.
2005-10-02 08:54:03 +00:00
Ralf Wildenhues
4ca867a96c * tests/deplibs-ident.at: New file with XFAIL test to expose
wrong multiple listing of a deplib on the command line.
* Makefile.am, tests/testsuite.at: Updated.
Reported by Brian Barrett <brbarret@open-mpi.org>.
2005-09-30 16:00:23 +00:00
Ralf Wildenhues
28a654e1c2 * tests/old-m4-iface.at: Define top_srcdir, work around current
ltdl.m4 bug.
2005-09-30 10:09:58 +00:00
Ralf Wildenhues
35f5001e2c * tests/old-m4-iface.at: Forgot to 'cvs add' this file. 2005-09-30 09:56:50 +00:00
Gary V. Vaughan
4732e6e6b0 * tests/libtoolize.at: Add a new test to catch a regression I
almost introduced with respect to copying macro files when
AC_CONFIG_MACRO_DIR is shared with libltdl subproject.
2005-09-30 01:13:38 +00:00
Gary V. Vaughan
2f89a87c91 * tests/old-m4-iface.at: Start of a new test series for m4
interface backwards compatibility.
* tests/testsuite.at: Use it.
(macrodir): Declare the location of uninstalled libtool m4 macros.
* Makefile.am (TESTSUITE_AT): Depend on it.
2005-09-30 00:46:52 +00:00
Tim Rice
9cea697ba3 * tests/early-libtool.at (Makefile.in): Set $(SHELL). 2005-09-29 18:00:06 +00:00
Tim Rice
121d473ead * tests/defs.m4sh, tests/testsuite.at (PREPARE_TESTS)
<AUTORECONF>: Allow variable override.
2005-09-27 06:48:22 +00:00
Ralf Wildenhues
369dc0d1a9 * tests/link-order.at [ aix* ]: skip path syntax grep. 2005-09-23 16:48:14 +00:00
Peter Ekberg
0278b137e1 * tests/link-order.test: Clean up the uninstalled libraries
before linking the test executables so that they don't pick
up the dlls from the current dir on Cygwin and MinGW.
2005-09-22 06:44:24 +00:00
Peter Ekberg
38599480fc * tests/testsuite.at (LT_AT_EXEC_CHECK): Make sure
that the exit status of the tested program is
propagated as the exit status of the expression
fed to AT_CHECK.
2005-09-16 08:33:24 +00:00
Peter Ekberg
072341693e * libltdl/config/ltmain.m4sh (func_generate_dlsyms):
Fix escape expression to actually escape relevant
characters from the following grep. Fix Cygwin and
MinGW to use the filtered symbol list when exporting
from self, and not the symbol filter.
* tests/stresstest.at: Export w8, not w8$
2005-09-13 07:28:14 +00:00
Ralf Wildenhues
2055f11ca7 Make tagdemo work smoothly with both pre- and ISO C++ compilers,
and remove all use of libstdc from other tests.

* tests/tagdemo/configure.ac (HAVE_NAMESPACES, HAVE_IOSTREAM):
New tests for ISO C++ features.  Reimplementation of similar
macros from the autoconf archive.
* tests/tagdemo/foo.cpp, tests/tagdemo/main.cpp: Adjusted.
* tests/am-subdir.at, tests/template.at: Do not use iostream.
2005-09-12 16:24:38 +00:00
Peter Ekberg
ff60e2f202 * tests/testsuite.at (host_os): Pull from `libtool --config'.
* tests/stresstest.at [ cygwin, mingw, pw32 ]: Use it to fix
setting of `-no-undefined'.
2005-09-12 12:48:38 +00:00
Ralf Wildenhues
ea0ebd6da1 * tests/early-libtool.at (config.status): Use EXEEXT
consistently.
Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
2005-09-08 07:17:58 +00:00
Ralf Wildenhues
9c08dbfa0e * tests/early-libtool.at: Fix goofed up make rules in
previous commit.
2005-08-26 13:54:04 +00:00
Ralf Wildenhues
d485025de4 * tests/inherited_flags.at: Weaken for MSVC.
* tests/early-libtool.at, tests/template.at: Fix for compiler
that do not understand '-c -o'.
2005-08-26 13:48:27 +00:00
Ralf Wildenhues
a305c3d9f4 * tests/standalone.at, tests/template.at: Do not compare
output because of EOL issues.  Resolve warnings, make cross-
compilation aware.
Reported by Peter Ekberg <peda@axentia.se>.
2005-08-26 10:00:18 +00:00
Peter Ekberg
bde34b94a5 * tests/standalone.at: (without autotools): Add
$(CFLAGS) to LTCOMPILE and LTLINK. Separate compiling
and linking. Remove compiling flags from link. Add
--tag. Add -no-undefined flag.
2005-08-25 13:39:54 +00:00
Ralf Wildenhues
7e6797e65d * tests/defs.m4sh (m4dir, auxdir, scripts): Fix for source tree
reorganization.
* tests/sh.test: Adjust.  Also barf on sed diagnostics so this
test will not fail again silently.
2005-08-24 13:39:51 +00:00
Ralf Wildenhues
9918d1b09c * tests/fcdemo/Makefile.am (suffix rules): Explicitly add
$(FCFLAGS_f90) so the tests can pass on AIX.
2005-08-24 11:11:39 +00:00
Gary V. Vaughan
6892320962 * test/standalone.at: New file. Forgot to cvs add on previous commit. 2005-08-23 01:52:07 +00:00
Gary V. Vaughan
757d7dc478 Reorganise the libtool tree to create a bootstrapped libltdl for
installation to the libtoolize master tree, so that libltdl is
useable even in the extreme case of when automake and autoconf are
not installed on the developers machine.  Part of this change
requires some duplication of rules between Makefile.am (which
builds libltdl for this distribution) and libltdl/Makefile.am
(which is used by projects that libltoolize --ltdl --copy), so
libtool now really does use a single toplevel Makefile.am, and we
generate libltdl/Makefile.am from that:

* m4, config: Moved from here...
* libltdl/m4, libltdl/config: ...to here, to reduce the amount of
kludging needed in bootstrap for autoreconf to run.
* tests/cdemo/Makefile.am, tests/demo/Makefile.am,
tests/depdemo/Makefile.am, tests/f77demo/Makefile.am,
tests/fcdemo/Makefile.am, tests/mdemo/Makefile.am,
tests/mdemo2/Makefile.am, tests/pdemo/Makefile.am,
tests/tagdemo/Makefile.am (ACLOCAL_AMFLAGS): Adjust to
compensate.
* tests/cdemo/configure.ac, tests/demo/configure.ac,
tests/depdemo/configure.ac, tests/f77demo/configure.ac,
tests/fcdemo/configure.ac, tests/mdemo/configure.ac,
tests/mdemo2/configure.ac, tests/pdemo/configure.ac,
tests/tagdemo/configure.ac (AC_CONFIG_AUX_DIR): Ditto.
* libltdl/m4/ltdl.m4: Increment serial number.
(LTDL_INIT): Accept an optional directory argument to prefix each
of the LD_DLLOADERS locations.  Default to empty for backwards
compatibility.
* Makefile.maint: Adjust to compensate.
* configure.ac (AC_CONFIG_AUX_DIR, AC_CONFIG_MACRO_DIR): Adjust.
(AC_CONFIG_LIBOBJ_DIR): Set here so that we can build LTLIBOBJS
from in a subdirectory from the amalgamated Makefile.am.
(AM_PROG_CC_C_O, AM_INIT_AUTOMAKE): Use subdir-objects.
(AC_CONFIG_FILES): Remove libltdl/Makefile.am.
* libltdl/Makefile.am: Removed from repository, and merged into
Makefile.am as we now generate it...
* Makefile.am (libltdl/Makefile.am): ...from here, by extracting
the merged rules, and tweaking paths to accomodate the difference
in directory from Makefile.am to libltdl/Makefile.am.
(nobase_dist_pkgdata_DATA): Automake generated installation rules
change timestamps of installed files, so renamed this...
(configauxfiles): ...to this...
(libtoolize): ...substitute it...
(install-data-local): ...install manually, preserving
timestamps...
(install-data-hook): ...and set execute bit as appropriate.
(uninstall-hook): Not forgetting to remove them at uninstall.
(libltdl/Makefile.in): New rule.  Called from...
* bootstrap: ...here to avoid relying on config.status at
bootstrap time.
(auxdir, m4dir): Extract from configure.ac for ease of future
maintenance.  Adjust all references.
(reconfdirs): Call autoreconf for libltdl too -- even
though we don't use it for the build, libltdl/configure and
friends are installed with `libtoolize --ltdl --copy'.
* libtoolize.m4sh: Add files from the installed config master tree
to libtoolize --ltdl project subdirectory.
Diagnose duplicated files when --ltdl is used in an autotooled
project.
It's perfectly fine to run `libtoolize --ltdl --copy' in a tree
that has no configure.ac or configure.in; we want libltdl to be
useful even to projects that don't use autotools themselves.
(libtoolize_flags): Removed.  Changed all callers.
(func_massage_pkgconfig_files): New function.
* tests/standalone.at: New tests for using libltdl without
supporting configury in the parent project.
* tests/testsuite.at: Run them!
* NEWS: Updated.
2005-08-23 01:49:37 +00:00
Gary V. Vaughan
499773445e * tests/template.at [darwin]: Some of these tests result in
unresolved symbols on darwin, so don't run those test on that
host!
2005-08-21 18:47:08 +00:00
Ralf Wildenhues
2222a9d9aa * m4/libtool.m4 (LT_OUTPUT): New macro to generate
libtool before config.status.
(_LT_CONFIG_COMMANDS): If LT_OUTPUT has been invoked, then
generate code in config.status to call config.lt instead of
generating libtool directly.
* doc/libtool.texi (LT_INIT): Document LT_OUTPUT.
* tests/early-libtool.at: New test.
* Makefile.am (TESTSUITE_AT): Updated.
* tests/testsuite.at: Updated.  Define defaults for $ACLOCAL,
$AUTOCONF.
2005-08-18 17:07:17 +00:00
Ralf Wildenhues
d16f03d0fd * tests/inherited_flags.at: Store intermediate libtool output
for better debugging.
2005-08-13 07:26:52 +00:00
Ralf Wildenhues
1ef6cdef83 * tests/link-order.at: Add -no-undefined to LDFLAGS. 2005-08-13 06:57:39 +00:00
Ralf Wildenhues
7bd533a474 * tests/convenience.at, tests/template.at: Change suffix of C++
files to .cpp, for compatibility with MSVC.
Reported by Peter Ekberg <peda@axentia.se>.
2005-08-13 06:45:36 +00:00
Ralf Wildenhues
87f03ead79 * tests/defs.m4sh (func_configure): Rename to ..
(func_configure_nofail): this, call from old.
* tests/fcdemo-conf.test, tests/fcdemo-shared.test,
tests/fcdemo-static.test: Use.  Do not fail gratuitously but
SKIP on compilers that look like they could be Fortran 77-only.
Reported by Patrick Welche <prlw1@newn.cam.ac.uk>.
2005-08-12 20:19:40 +00:00
Ralf Wildenhues
a1b595f6ab * m4/libtool.m4 (_LT_PROG_FC, _LT_LANG_FC_CONFIG): New macros
for modern Fortran.
(LT_LANG, _LT_LANG_DEFAULT_CONFIG, _LT_SYS_DYNAMIC_LINKER,
_LT_SYS_HIDDEN_LIBDEPS): Adjusted.
* tests/fcdemo-conf.test, tests/fcdemo-exec.test,
tests/fcdemo-make.test, tests/fcdemo-shared.test,
tests/fcdemo-static.test, tests/fcdemo/Makefile.am, tests/fcdemo/README,
tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c, tests/fcdemo/foo.h,
tests/fcdemo/fooc.c, tests/fcdemo/foof.f90, tests/fcdemo/foof2.f90,
tests/fcdemo/foof3.f90, tests/fcdemo/fprogram.f90: New tests for Fortran.
* tests/convenience.at: Extended.
* Makefile.am, configure.ac: Adjusted.
* NEWS: Updated.
2005-08-08 09:23:57 +00:00
Peter Ekberg
26b55149ee * tests/mdemo-dryrun.test: ls -l in MSYS sometimes shows year,
not time, for really fresh files. Add sleep 1 calls at
strategic places. Makes the test pass for MinGW.
2005-07-28 10:55:35 +00:00
Peter Ekberg
764c665e7d * tests/demo-noinst-link.test: $make is empty on MSYS, replace
with $MAKE. Makes the test pass for MinGW.
2005-07-28 10:42:45 +00:00
Peter O'Gorman
14c1c16bee * tests/inherited_flags.at: Use -no-undefined.
Reported by Chris Oxenreider <oxenreid@state.net>
2005-07-02 14:44:20 +00:00
Ralf Wildenhues
5801b0f4df * tests/convenience.at <GCJ>: Fix java test.
Reported by Eric Blake <ericblake@comcast.net>.
2005-07-02 09:58:59 +00:00
Gary V. Vaughan
ef4442da9b Revert the parallel installation changes from November last year:
* libtoolize.m4sh (pkgdatadir, aclocaldir): Substituted from
configure.
(func_copy_all_from_path): Removed.  No longer used.
(func_copy_some_files): Simplify now that nothing is copied from a
list of possible directories now.
(func_scan_files): Remove directory readability check...
(func_nonemptydir_p): ...in favour of a dedicated sanity check
function called from the main body.
(_lt_pkgvdatadir): Set pkgdatadir and aclocaldir appropriately if
this is in the environment.
* configure.ac: Tests for `ln' removed.
(APIVERSION): Removed.
* Makefile.am (pkgvdatadir, nobase_dist_pkgvdata_DATA)
(nobase_pkgvdata_DATA): Renamed to...
(pkgdatadir, nobase_dist_pkgdata_DATA, aclocalfiles): ...these
respectively.
(edit): Adjust for new variable names.
(install-data-local): Don't bother to remove old macro files that
will be overwritten by the installation, and perform a manual
installation of $(aclocalfiles) to preserve timestamps.
(install-exec-hook): Removed.  No need to make versioned links.
(uninstall-hook): No need to remove versioned links, but now we
need to manually remove the manually installed $(aclocalfiles).
* doc/libtool.texi: Remove bogus notes about setting
ACLOCAL_AMFLAGS for versioned libtool installations.
* NEWS: Remove parallel installation item.
2005-04-30 09:30:14 +00:00
Ralf Wildenhues
892ec25015 * tests/convenience.at: Actually add. 2005-04-27 18:19:07 +00:00
Ralf Wildenhues
1e579accc0 * tests/convenience.at: New. Test convenience archives.
* Makefile.am, tests/testsuite.at: Adjust.
* tests/testsuite.at: Reorder tests.  Suspend AT_TESTED.
(PREPARE_TESTS): Define EGREP, host, build, LIBTOOL.
(LT_AT_BOOTSTRAP): Fail if autoreconf fails.
(LT_AT_EXEC_CHECK): New macro for execution of $build binaries.
(LT_AT_TAG): New macro to test tag availability or skip test.
* tests/am-subdir.at, tests/duplicate_members.at, tests/inherited_flags.at,
tests/link-order.at, tests/stresstest.at, tests/template.at:
Adjust.  Use LT_AT_TAG, LT_AT_EXEC_CHECK, AT_KEYWORDS.
Use compiler/linker flags consistently.
* tests/link-order.at: Fix use of AT_DATA, bogus redirection
inside AT_CHECK.
* tests/stresstest.at: Do not use wildcards/regex in symbol files,
they are not portable.  Use -no-undefined on win32.  Fix to ignore
compile/link warnings.
2005-04-27 18:18:10 +00:00
Ralf Wildenhues
a3be40ca46 * tests/f77demo/foo.h, tests/f77demo/fooc.c, tests/f77demo/cprogram.c,
tests/mdemo2/main.c, tests/pdemo/foo.h: Make declarations available.
2005-04-27 14:15:29 +00:00
Ralf Wildenhues
b0a5dfec5f * tests/defs.m4sh (func_configure): Don't run the whole configure
script with -x.
2005-04-27 11:37:29 +00:00