From 845ff0b76837a630eb54d23eb66912339b589a65 Mon Sep 17 00:00:00 2001 From: Michael Haubenwallner Date: Fri, 21 Nov 2014 19:03:26 +0000 Subject: 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 --- tests/template.at | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'tests') 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]) -- cgit v1.2.1