diff options
author | Tom de Vries <tdevries@suse.de> | 2022-10-21 08:36:18 +0200 |
---|---|---|
committer | Tom de Vries <tdevries@suse.de> | 2022-10-21 08:36:18 +0200 |
commit | b4d6b738075e2d4be9b4a8d2080bcf94e6b7e229 (patch) | |
tree | 00f906647956fef6ad2e2fba14885898b806236b /gdb | |
parent | 68830fbae98867f63720d250a18ce64f9f2f51fc (diff) | |
download | gdb-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.exp | 8 |
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 |