bug#70977: test suite failures on macOS 11

Bruno Haible <[email protected]> Thu, 16 May 2024 15:03:57 +0200
Newsgroups gmane.comp.gnu.libtool.bugs
Message-ID <3525651.L4jQFfv3LO@nimes>
Hi,

An automated test of the current libtool HEAD [1] exhibits
test failures on macOS 11, but not on macOS 12, 13, 14.

testsuite: 143 169 failed

The relevant test, AFAIU, is:

143: C++ exception handling                          FAILED (exceptions.at:385)

Find attached the tests/testsuite.dir/143/testsuite.log. Note the
"dlopen failed: file not found" error message near the end.

Bruno


[1] https://github.com/gnu-libtool/ci-check/actions
testsuite.log (text/x-log, 4.9 KB)
#                             -*- compilation -*-
143. exceptions.at:24: testing C++ exception handling ...
../../tests/exceptions.at:33: case $LIBLTDL in #(
 */_inst/lib/*) test -f "$LIBLTDL" || (exit 77) ;;
esac
stdout:
../../tests/exceptions.at:361: $CXX $CPPFLAGS $CXXFLAGS -DUSING_COMMON_DLL -DUSING_MODULE_DLL -DUSING_LIB_DLL -c main.cpp || exit 77
stderr:
stdout:
../../tests/exceptions.at:363: $LIBTOOL --mode=compile --tag=CXX $CXX $CPPFLAGS $CXXFLAGS -c common.cpp
stderr:
stdout:
libtool: compile:  g++ -I/Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/../libltdl -Wall -g -O2 -c common.cpp  -fno-common -DPIC -o .libs/common.o
libtool: compile:  g++ -I/Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/../libltdl -Wall -g -O2 -c common.cpp -o common.o >/dev/null 2>&1
../../tests/exceptions.at:365: $LIBTOOL --mode=compile --tag=CXX $CXX $CPPFLAGS $CXXFLAGS -c lib.cpp
stderr:
stdout:
libtool: compile:  g++ -I/Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/../libltdl -Wall -g -O2 -c lib.cpp  -fno-common -DPIC -o .libs/lib.o
libtool: compile:  g++ -I/Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/../libltdl -Wall -g -O2 -c lib.cpp -o lib.o >/dev/null 2>&1
../../tests/exceptions.at:367: $LIBTOOL --mode=compile --tag=CXX $CXX $CPPFLAGS $CXXFLAGS -DUSING_COMMON_DLL -c module.cpp
stderr:
stdout:
libtool: compile:  g++ -I/Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/../libltdl -Wall -g -O2 -DUSING_COMMON_DLL -c module.cpp  -fno-common -DPIC -o .libs/module.o
libtool: compile:  g++ -I/Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/../libltdl -Wall -g -O2 -DUSING_COMMON_DLL -c module.cpp -o module.o >/dev/null 2>&1
../../tests/exceptions.at:370: $LIBTOOL --mode=link --tag=CXX $CXX $CXXFLAGS $LDFLAGS -o l/libcommon.la 	 common.lo -no-undefined -version-info 1:0:0 -rpath $libdir
stderr:
stdout:
libtool: link: g++ -dynamiclib  -o l/.libs/libcommon.1.dylib  .libs/common.o    -g -O2   -install_name  /Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/tests/testsuite.dir/143/inst/lib/libcommon.1.dylib -compatibility_version 2 -current_version 2.0 -Wl,-single_module
libtool: link: (cd "l/.libs" && rm -f "libcommon.dylib" && ln -s "libcommon.1.dylib" "libcommon.dylib")
libtool: link: ar cr l/.libs/libcommon.a  common.o
libtool: link: ranlib l/.libs/libcommon.a
libtool: link: ( cd "l/.libs" && rm -f "libcommon.la" && ln -s "../libcommon.la" "libcommon.la" )
../../tests/exceptions.at:373: $LIBTOOL --mode=link --tag=CXX $CXX $CXXFLAGS $LDFLAGS -o l/liba.la 	 lib.lo -no-undefined -version-info 1:0:0 -rpath $libdir
stderr:
stdout:
libtool: link: g++ -dynamiclib  -o l/.libs/liba.1.dylib  .libs/lib.o    -g -O2   -install_name  /Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/tests/testsuite.dir/143/inst/lib/liba.1.dylib -compatibility_version 2 -current_version 2.0 -Wl,-single_module
libtool: link: (cd "l/.libs" && rm -f "liba.dylib" && ln -s "liba.1.dylib" "liba.dylib")
libtool: link: ar cr l/.libs/liba.a  lib.o
libtool: link: ranlib l/.libs/liba.a
libtool: link: ( cd "l/.libs" && rm -f "liba.la" && ln -s "../liba.la" "liba.la" )
../../tests/exceptions.at:376: $LIBTOOL --mode=link --tag=CXX $CXX $CXXFLAGS $LDFLAGS -o m/module.la 	 module.lo l/libcommon.la -module -avoid-version -no-undefined -rpath $moddir
stderr:
stdout:
libtool: link: g++  -o m/.libs/module.so -bundle  .libs/module.o   l/.libs/libcommon.dylib  -g -O2  
libtool: link: ar cr m/.libs/module.a  module.o
libtool: link: ranlib m/.libs/module.a
libtool: link: ( cd "m/.libs" && rm -f "module.la" && ln -s "../module.la" "module.la" )
../../tests/exceptions.at:381: $LIBTOOL --mode=link --tag=CXX $CXX $CXXFLAGS $LDFLAGS -o main$EXEEXT 	 main.$OBJEXT l/liba.la l/libcommon.la -dlopen m/module.la $LIBLTDL -export-dynamic
stderr:
stdout:
libtool: link: rm -f .libs/main.nm .libs/main.nmS .libs/main.nmT
libtool: link: rm -f ".libs/main.nmI"
libtool: link: (cd .libs && gcc -g -O2 -c -fno-builtin "mainS.c")
libtool: link: rm -f ".libs/mainS.c" ".libs/main.nm" ".libs/main.nmS" ".libs/main.nmT" ".libs/main.nmI"
libtool: link: g++ -g -O2 -o .libs/main main.o .libs/mainS.o -Wl,-bind_at_load  /Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/libltdl/.libs/dlopen.a l/.libs/liba.dylib l/.libs/libcommon.dylib /Users/runner/work/ci-check/ci-check/libtool-2024-05-16/build/tests/../libltdl/.libs/libltdlc.a
../../tests/exceptions.at:385: if $LIBTOOL --mode=execute -dlopen m/module.la "$lt_exe" ; then :; else lt_status=$?; 	   	   test "X$host" != "X$build" && test -x "$lt_exe" && exit 77; 	   exit $lt_status; fi
stderr:
exceptions_in_prog
caught: exception in program
exceptions_in_lib
caught inside lib: exception in library
caught: exception from library
exceptions_in_module
dlopen failed: file not found
stdout:
../../tests/exceptions.at:385: exit code was 1, expected 0
143. exceptions.at:24: 143. C++ exception handling (exceptions.at:24): FAILED (exceptions.at:385)