about summary refs log tree commit diff
path: root/elf/Makefile
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@myware66.akkadia.org>2009-05-15 08:01:09 -0700
committerUlrich Drepper <drepper@redhat.com>2009-05-15 08:48:00 -0700
commit774f5a3082b9b55a7668e3a92dc847de577c4946 (patch)
tree1d3ee2c0284923bd69b4db4f9eab2c433efa2af0 /elf/Makefile
parentdeb84c43b1bb0958d942e6739f136d4c11189b3b (diff)
downloadglibc-774f5a3082b9b55a7668e3a92dc847de577c4946.tar.gz
glibc-774f5a3082b9b55a7668e3a92dc847de577c4946.tar.xz
glibc-774f5a3082b9b55a7668e3a92dc847de577c4946.zip
Test DSOs for executable stack.
Add a text program, built to run on the host, to check all newly
built DSOs for executable stacks and fail if the stack information
is missing or indicates executable stacks.
Diffstat (limited to 'elf/Makefile')
-rw-r--r--elf/Makefile14
1 files changed, 12 insertions, 2 deletions
diff --git a/elf/Makefile b/elf/Makefile
index e44ff1d382..94b9d069bf 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -93,7 +93,7 @@ distribute	:= rtld-Rules \
 		   order2mod1.c order2mod2.c order2mod3.c order2mod4.c \
 		   tst-stackguard1.c tst-stackguard1-static.c \
 		   tst-array5.c tst-array5-static.c tst-array5dep.c \
-		   tst-array5.exp tst-leaks1.c
+		   tst-array5.exp tst-leaks1.c check-execstack.c
 
 CFLAGS-dl-runtime.c = -fexceptions -fasynchronous-unwind-tables
 CFLAGS-dl-lookup.c = -fexceptions -fasynchronous-unwind-tables
@@ -842,12 +842,16 @@ check-textrel-CFLAGS = -O -Wall -D_XOPEN_SOURCE=600 -D_BSD_SOURCE
 $(objpfx)check-textrel: check-textrel.c
 	$(native-compile)
 
+check-execstack-CFLAGS = -O -Wall -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -std=gnu99
+$(objpfx)check-execstack: check-execstack.c
+	$(native-compile)
+
 check-localplt-CFLAGS = -O -Wall -D_GNU_SOURCE -std=gnu99
 $(objpfx)check-localplt: check-localplt.c
 	$(native-compile)
 
 ifeq (yes,$(build-shared))
-tests: $(objpfx)check-textrel.out
+tests: $(objpfx)check-textrel.out $(objpfx)check-execstack.out
 
 $(objpfx)check-textrel.out: $(objpfx)check-textrel
 	$(dir $<)$(notdir $<) $(common-objpfx)libc.so \
@@ -855,6 +859,12 @@ $(objpfx)check-textrel.out: $(objpfx)check-textrel
 			    $(common-objpfx)iconvdata/*.so)) > $@
 generated += check-textrel check-textrel.out
 
+$(objpfx)check-execstack.out: $(objpfx)check-execstack
+	$(dir $<)$(notdir $<) $(common-objpfx)libc.so \
+	  $(sort $(wildcard $(common-objpfx)*/lib*.so \
+			    $(common-objpfx)iconvdata/*.so)) > $@
+generated += check-execstack check-execstack.out
+
 $(objpfx)tst-dlmodcount: $(libdl)
 $(objpfx)tst-dlmodcount.out: $(test-modules)