libtool-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] Do not test undef symbols across shlibs on AIX.


From: Michael Haubenwallner
Subject: [PATCH] Do not test undef symbols across shlibs on AIX.
Date: Fri, 21 Nov 2014 13:50:43 +0100

On AIX, undefined symbols across shared libraries can work only when
the main program explicitly exports those symbols. As this is bad
practice anyway and -no-undefined should be preferred, we skip this.
* tests/template.at: Skip test with undef syms across libraries on AIX.
---
 tests/template.at | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tests/template.at b/tests/template.at
index a5bfcef..da9ed0f 100644
--- a/tests/template.at
+++ b/tests/template.at
@@ -129,10 +129,12 @@ LT_AT_TAG([CXX])
 AT_KEYWORDS([libtool])
 
 noskip=:
+withundef=:
 # Mac OS X.
 # The linker has issues with this test.
 case $host in
 *-darwin*) noskip=false ;;
+*-aix*) withundef=false ;;
 esac
 
 
@@ -243,7 +245,7 @@ AT_CHECK([$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS 
$LDFLAGS -o sub/main$EXE
         [0], [ignore], [ignore])
 LT_AT_EXEC_CHECK([./sub/main], [ignore])
 # lib convenience
-if $noskip; then
+if $noskip && $withundef; then
   AT_CHECK([$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o 
lib2/libb.la lib2/b.lo -rpath /foo],
           [0], [ignore], [ignore])
   AT_CHECK([$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o 
sub/main$EXEEXT $main_o lib2/libb.la lib/liba.la],
@@ -254,11 +256,13 @@ fi
 # both installed
 AT_CHECK([$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o 
lib/liba.la lib/a.lo -rpath /foo],
         [0], [ignore], [ignore])
+if $withundef; then
 AT_CHECK([$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o 
lib2/libb.la lib2/b.lo -rpath /bar],
         [0], [ignore], [ignore])
 AT_CHECK([$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o 
sub/main$EXEEXT $main_o lib2/libb.la lib/liba.la],
         [0], [ignore], [ignore])
 LT_AT_EXEC_CHECK([./sub/main])
+fi
 # both convenience, libb depending on liba
 AT_CHECK([$LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS $LDFLAGS -o 
lib/liba.la lib/a.lo],
         [0], [ignore], [ignore])
-- 
1.8.5.5




reply via email to

[Prev in Thread] Current Thread [Next in Thread]