This is an automated email from the git hooks/post-receive script.
ildumi pushed a commit to branch development
in repository libtool.
The following commit(s) were added to refs/heads/development by this push:
new e40ba04a libtool: Check if -no-canonical-prefixes supported
e40ba04a is described below
commit e40ba04af725eb49db6d61471a4804efe682e423
Author: Ileana Dumitrescu
AuthorDate: Fri Jun 7 20:02:55 2024 +0300
libtool: Check if -no-canonical-prefixes supported
The compiler fails with the -no-canonical-prefixes flag in certain
environments. Check if the flag is supported in the current environment
and skip the test if it is not supported.
* tests/bug_62343.at: Skip test if -no-canonical-prefixes is unsupported
in the current environment.
---
tests/bug_62343.at | 25 ++---
1 file changed, 22 insertions(+), 3 deletions(-)
diff --git a/tests/bug_62343.at b/tests/bug_62343.at
index 05839dc4..f6053dc6 100644
--- a/tests/bug_62343.at
+++ b/tests/bug_62343.at
@@ -29,13 +29,32 @@ AT_CHECK([$LIBTOOL --config | $EGREP
'^build_libtool_libs=no' && (exit 77)], 1)
AT_DATA([x.cpp],
[[
-void f(int *p) { *p = 21; }
+#include
+
+int main() {
+std::cout << "Hello, World!" << std::endl;
+return 0;
+}
]])
+# The -no-canonical-prefixes flag sometimes fails at the compiler level
+# depending on how the environment is set up, or which other flags have to be
passed.
+# So first try to compile without libtool first to test if the current
environment
+# supports the -no-canonical-prefixes flag. If it doesn't, skip the test.
+
+g++ -no-canonical-prefixes -c x.cpp
+
+result=$?
-AT_CHECK([$LIBTOOL --mode=compile --tag=CXX g++ -c x.cpp], [0], [stdout],
[stderr])
+if test 0 -ne "$result"; then
+AT_SKIP_IF([:])
+fi
+
+AT_CHECK([$LIBTOOL --mode=compile --tag=CXX g++ -no-canonical-prefixes -c
x.cpp], [0], [stdout], [stderr])
+
+AT_CHECK([$GREP -- '-no-canonical-prefixes' stdout], [0], [ignore])
-AT_CHECK([$LIBTOOL --mode=link --tag=CXX g++ -o libx.la -no-canonical-prefixes
-rpath /usr/lib64/ x.lo], [0], [stdout], [stderr])
+AT_CHECK([$LIBTOOL --mode=link --tag=CXX g++ -no-undefined
-no-canonical-prefixes -o libx.la -rpath /usr/lib64/ x.lo], [0], [stdout],
[stderr])
AT_CHECK([$GREP -- '-no-canonical-prefixes' stdout], [0], [ignore])