aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorTom de Vries <tdevries@suse.de>2022-10-21 08:36:18 +0200
committerTom de Vries <tdevries@suse.de>2022-10-21 08:36:18 +0200
commitb4d6b738075e2d4be9b4a8d2080bcf94e6b7e229 (patch)
tree00f906647956fef6ad2e2fba14885898b806236b /gdb
parent68830fbae98867f63720d250a18ce64f9f2f51fc (diff)
downloadgdb-b4d6b738075e2d4be9b4a8d2080bcf94e6b7e229.zip
gdb-b4d6b738075e2d4be9b4a8d2080bcf94e6b7e229.tar.gz
gdb-b4d6b738075e2d4be9b4a8d2080bcf94e6b7e229.tar.bz2
[gdb/testsuite] Silence compilation fail in gdb.base/rtld-step.exp
With gcc 7.5.0 and test-case gdb.base/rtld-step.exp, I run into: ... gdb compile failed, gcc: error: unrecognized command line option \ '-static-pie'; did you mean '-static'? ... Silence this by checking in the test-case that -static-pie is supported, and emitting instead: ... UNTESTED: gdb.base/rtld-step.exp: \ failed to compile (-static-pie not supported or static libc missing) ... Tested on x86_64-linux, with: - gcc 7.5.0: UNTESTED - gcc 12.2.1 with static glibc not installed: UNTESTED - gcc 12.2.1 with static glibc installed: PASS
Diffstat (limited to 'gdb')
-rw-r--r--gdb/testsuite/gdb.base/rtld-step.exp8
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/rtld-step.exp b/gdb/testsuite/gdb.base/rtld-step.exp
index 4773fa8..0aa2ab0 100644
--- a/gdb/testsuite/gdb.base/rtld-step.exp
+++ b/gdb/testsuite/gdb.base/rtld-step.exp
@@ -87,6 +87,14 @@ set binfile_rtld [standard_output_file ${rtld_basename}]
set rtld_flags [list debug additional_flags=[list -static-pie -fPIE \
-nostdlib -static -lc]]
+if { ![gdb_can_simple_compile static-pie-static-libc \
+ "void _start (void) { _exit (0); }" \
+ executable $rtld_flags] } {
+ set reason "-static-pie not supported or static libc missing"
+ untested "failed to compile ($reason)"
+ return -1
+}
+
# Main program file names and flags:
set main_basename ${::gdb_test_file_name}-main
set srcfile_main ${srcdir}/${subdir}/${main_basename}.c