Commit Graph

365 Commits

Author SHA1 Message Date
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