[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] GNU Libtool branch, master, updated. v2.2.6-89-gaf91ea1
From: |
Ralf Wildenhues |
Subject: |
[SCM] GNU Libtool branch, master, updated. v2.2.6-89-gaf91ea1 |
Date: |
Sat, 31 Jan 2009 15:10:19 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Libtool".
The branch, master has been updated
via af91ea10b4af5fbf5ed5b2010295fef61cfdcf97 (commit)
from 92a785fd7eadea8db2f1b81ed0425fb93cf62874 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit af91ea10b4af5fbf5ed5b2010295fef61cfdcf97
Author: Jeff Squyres <address@hidden>
Date: Sat Jan 31 16:04:07 2009 +0100
New test for bogus lt_dlopen error message.
* tests/lt_dlopen.at (lt_dlopen error messages): New file, new
test, marked as XFAIL for now.
* Makefile.am: Adjust.
Report and reproducible test case by Jeff Squyres.
Signed-off-by: Ralf Wildenhues <address@hidden>
-----------------------------------------------------------------------
Summary of changes:
ChangeLog | 9 +++++
Makefile.am | 1 +
tests/lt_dlopen.at | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 113 insertions(+), 0 deletions(-)
create mode 100644 tests/lt_dlopen.at
diff --git a/ChangeLog b/ChangeLog
index 53917f4..7fb1de3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2009-01-31 Jeff Squyres <address@hidden>
+ Ralf Wildenhues <address@hidden>
+
+ New test for bogus lt_dlopen error message.
+ * tests/lt_dlopen.at (lt_dlopen error messages): New file, new
+ test, marked as XFAIL for now.
+ * Makefile.am: Adjust.
+ Report and reproducible test case by Jeff Squyres.
+
2009-01-31 Ralf Wildenhues <address@hidden>
execute mode: do not transform *.lo or *.la arguments.
diff --git a/Makefile.am b/Makefile.am
index b6b1bfa..0a3e69d 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -477,6 +477,7 @@ TESTSUITE_AT = tests/testsuite.at \
tests/am-subdir.at \
tests/lt_dlexit.at \
tests/lt_dladvise.at \
+ tests/lt_dlopen.at \
tests/ltdl-api.at \
tests/need_lib_prefix.at \
tests/standalone.at \
diff --git a/tests/lt_dlopen.at b/tests/lt_dlopen.at
new file mode 100644
index 0000000..0aae2f8
--- /dev/null
+++ b/tests/lt_dlopen.at
@@ -0,0 +1,103 @@
+# lt_dlopen.at -- test libltdl functionality -*- Autotest -*-
+#
+# Copyright (C) 2009 Free Software Foundation, Inc.
+# This file is part of GNU Libtool.
+#
+# GNU Libtool is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2 of
+# the License, or (at your option) any later version.
+#
+# GNU Libtool is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with GNU Libtool; see the file COPYING. If not, a copy
+# can be downloaded from http://www.gnu.org/licenses/gpl.html,
+# or obtained by writing to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+####
+
+AT_SETUP([lt_dlopen error messages])
+AT_KEYWORDS([libltdl])
+
+# The bug is not fixed:
+AT_XFAIL_IF([:])
+
+# This test only works if the system allows undefined symbols.
+eval `$LIBTOOL --config | grep '^allow_undefined_flag='`
+AT_CHECK([test unsupported != "$allow_undefined_flag" || exit 77])
+
+AT_DATA([main.c],
+[[#include <ltdl.h>
+#include <stdio.h>
+
+int
+main (int argc, char* argv[])
+{
+ int err = 0;
+ lt_dlhandle plugin_handle;
+
+ if (argc < 2)
+ {
+ fprintf (stderr, "usage: %s plugin\n", argv[0]);
+ return 1;
+ }
+
+ lt_dlinit ();
+ plugin_handle = lt_dlopenext (argv[1]);
+ if (NULL != plugin_handle)
+ {
+ printf ("plugin opened successfully!\n");
+ lt_dlclose (plugin_handle);
+ }
+ else
+ {
+ printf ("plugin failed to open: %s\n", lt_dlerror());
+ err = 1;
+ }
+ lt_dlexit ();
+ return err;
+}
+]])
+
+AT_DATA([good-plugin.c],
+[[int foo;
+int *i = &foo;
+]])
+
+AT_DATA([missing-symbol-plugin.c],
+[[/* On systems that allow undefined symbols, this will compile,
+ but the symbol "foo" won't be found at runtime */
+extern int foo;
+int *i = &foo;
+]])
+
+: ${LTDLINCL="-I$abs_top_srcdir/libltdl"}
+: ${LIBLTDL="$abs_builddir/../libltdl/libltdlc.la"}
+
+CPPFLAGS="$LTDLINCL $CPPFLAGS"
+inst=`pwd`/inst
+libdir=$inst/lib
+
+AT_CHECK([$CC $CPPFLAGS $CFLAGS -c main.c], [], [ignore], [ignore])
+for file in good-plugin.c missing-symbol-plugin.c; do
+ AT_CHECK([$LIBTOOL --mode=compile $CC $CPPFLAGS $CFLAGS -c $file],
+ [], [ignore], [ignore])
+done
+AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o good-plugin.la -rpath
$libdir ]dnl
+ [-module -avoid-version good-plugin.lo], [], [ignore], [ignore])
+AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o
missing-symbol-plugin.la -rpath $libdir]dnl
+ [-module -avoid-version missing-symbol-plugin.lo], [], [ignore],
[ignore])
+
+AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main$EXEEXT
main.$OBJEXT ]dnl
+ [-dlopen good-plugin.la -dlopen missing-symbol-plugin.la $LIBLTDL],
+ [], [ignore], [ignore])
+
+LT_AT_EXEC_CHECK([./main], [], [ignore], [ignore], [./good-plugin.la])
+LT_AT_EXEC_CHECK([./main], [1], [ignore], [stderr],
[./missing-symbol-plugin.la])
+AT_CHECK([grep 'missing symbol' stderr], [], [ignore])
+
+AT_CLEANUP
hooks/post-receive
--
GNU Libtool
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] GNU Libtool branch, master, updated. v2.2.6-89-gaf91ea1,
Ralf Wildenhues <=