From 81bf57ecb8fbc2508b89223d875e7dcf734d5a57 Mon Sep 17 00:00:00 2001 From: Tom de Vries Date: Fri, 8 Aug 2025 13:23:51 +0200 Subject: [PATCH] [gdb/testsuite] Fix gdb.tui/tui-layout-asm-short-prog.S compilation The test-case gdb.tui/tui-layout-asm-short-prog.exp uses an assembly file gdb.tui/tui-layout-asm-short-prog.S that it compiles using -nostdlib and -nostartfiles. However, on x86_64-linux the resulting executable still has dependencies on libm and libc: ... $ ldd outputs/gdb.tui/tui-layout-asm-short-prog/tui-layout-asm-short-prog linux-vdso.so.1 (0x00007ffddf3ec000) libm.so.6 => /lib64/libm.so.6 (0x00007f8b13406000) libc.so.6 => /lib64/libc.so.6 (0x00007f8b13000000) /lib64/ld-linux-x86-64.so.2 (0x00007f8b1350f000) ... due -lm being added by default_target_compile. On x86_64-freebsd, using -nostdlib and -nostartfiles in combination with -lm causes the compilation to fail. Fix this by using -static as well. Tested on x86_64-linux and x86_64-freebsd. --- gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp b/gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp index 51623e86ce9..47482a2e35f 100644 --- a/gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp +++ b/gdb/testsuite/gdb.tui/tui-layout-asm-short-prog.exp @@ -20,9 +20,13 @@ tuiterm_env standard_testfile tui-layout-asm-short-prog.S -if {[build_executable "failed to prepare" ${testfile} ${srcfile} \ - {debug additional_flags=-nostdlib \ - additional_flags=-nostartfiles}] == -1} { +set opts {} +lappend opts debug +lappend opts additional_flags=-static +lappend opts additional_flags=-nostdlib +lappend opts additional_flags=-nostartfiles + +if { [build_executable "failed to prepare" $testfile $srcfile $opts] == -1 } { return -1 } -- 2.47.3