diff options
author | Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> | 2014-11-21 19:03:26 +0000 |
---|---|---|
committer | Gary V. Vaughan <gary@gnu.org> | 2014-11-21 19:04:28 +0000 |
commit | 845ff0b76837a630eb54d23eb66912339b589a65 (patch) | |
tree | 19b451ae8e972703aaa5541c514abd097d8c701b /tests | |
parent | 8083d2b47b56808a65b1a2435f2c9801fcd4d312 (diff) | |
download | libtool-845ff0b76837a630eb54d23eb66912339b589a65.tar.gz |
tests: do not test undef symbols across shlibs on AIX.
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.
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/template.at | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/tests/template.at b/tests/template.at index a5bfcef4..f40852c4 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,14 @@ 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]) -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]) +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]) |