[v3,3/4] elf: Add tst-execstack-prog-static

Message ID 20240618194102.2059389-4-adhemerval.zanella@linaro.org
State Under Review
Delegated to: Arjun Shankar
Headers
Series Improve executable stack handling |

Checks

Context Check Description
redhat-pt-bot/TryBot-apply_patch success Patch applied to master at the time it was sent
linaro-tcwg-bot/tcwg_glibc_build--master-arm success Build passed
linaro-tcwg-bot/tcwg_glibc_build--master-aarch64 success Build passed
linaro-tcwg-bot/tcwg_glibc_check--master-arm success Test passed
linaro-tcwg-bot/tcwg_glibc_check--master-aarch64 success Test passed

Commit Message

Adhemerval Zanella Netto June 18, 2024, 7:40 p.m. UTC
  Similar to tst-execstack-prog, check if executable stacks works for
statically linked programs.
---
 elf/Makefile                    | 7 +++++++
 elf/tst-execstack-prog-static.c | 1 +
 2 files changed, 8 insertions(+)
 create mode 100644 elf/tst-execstack-prog-static.c
  

Patch

diff --git a/elf/Makefile b/elf/Makefile
index bb6cd06dec..604b7df1cc 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -543,6 +543,9 @@  tests-execstack-yes = \
   tst-execstack-needed \
   tst-execstack-prog \
   # tests-execstack-yes
+tests-execstack-static-yes = \
+  tst-execstack-prog-static
+  # tests-execstack-static-yes
 endif
 ifeq ($(have-depaudit),yes)
 tests += \
@@ -630,6 +633,7 @@  $(objpfx)tst-rtld-does-not-exist.out: tst-rtld-does-not-exist.sh $(objpfx)ld.so
 	$(evaluate-test)
 
 tests += $(tests-execstack-$(have-z-execstack))
+tests-static+= $(tests-execstack-static-$(have-z-execstack))
 ifeq ($(run-built-tests),yes)
 tests-special += \
   $(objpfx)noload-mem.out \
@@ -1856,6 +1860,9 @@  LDFLAGS-tst-execstack-needed = -Wl,-z,noexecstack
 LDFLAGS-tst-execstack-prog = -Wl,-z,execstack
 CFLAGS-tst-execstack-prog.c += -Wno-trampolines
 CFLAGS-tst-execstack-mod.c += -Wno-trampolines
+
+LDFLAGS-tst-execstack-prog-static = -Wl,-z,execstack
+CFLAGS-tst-execstack-prog-static.c += -Wno-trampolines
 endif
 
 LDFLAGS-tst-array2 = -Wl,--no-as-needed
diff --git a/elf/tst-execstack-prog-static.c b/elf/tst-execstack-prog-static.c
new file mode 100644
index 0000000000..328065dd9c
--- /dev/null
+++ b/elf/tst-execstack-prog-static.c
@@ -0,0 +1 @@ 
+#include <tst-execstack-prog.c>