about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--dlfcn/Makefile5
-rw-r--r--elf/Makefile20
-rw-r--r--linuxthreads/Makefile7
-rw-r--r--nptl/Makefile3
5 files changed, 37 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index e9910fcd00..75e577f252 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2003-07-29  Roland McGrath  <roland@redhat.com>
+
+	* elf/Makefile (tests) [$(build-shared) = yes]:
+	Depend on $(test-modules).
+	* dlfcn/Makefile: Likewise.
+
 2003-07-28  Roland McGrath  <roland@redhat.com>
 
 	* sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
diff --git a/dlfcn/Makefile b/dlfcn/Makefile
index a5793cb731..f55d98b955 100644
--- a/dlfcn/Makefile
+++ b/dlfcn/Makefile
@@ -69,6 +69,11 @@ test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(modules-names)))
 $(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds
 	$(build-module)
 
+ifeq ($(build-shared),yes)
+# Build all the modules even when not actually running test programs.
+tests: $(test-modules)
+endif
+
 $(objpfx)glrefmain: $(libdl)
 $(objpfx)glrefmain.out: $(objpfx)glrefmain \
 			$(objpfx)glreflib1.so $(objpfx)glreflib2.so
diff --git a/elf/Makefile b/elf/Makefile
index bfecc360e2..63384f423a 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -29,7 +29,8 @@ routines	= $(dl-routines) dl-open dl-close dl-support dl-iteratephdr \
 # profiled libraries.
 dl-routines	= $(addprefix dl-,load cache lookup object reloc deps \
 			          runtime error init fini debug misc \
-				  version profile conflict tls origin)
+				  version profile conflict tls origin \
+				  execstack)
 all-dl-routines = $(dl-routines) $(sysdep-dl-routines)
 # But they are absent from the shared libc, because that code is in ld.so.
 elide-routines.os = $(all-dl-routines) dl-support enbl-secure \
@@ -80,6 +81,7 @@ distribute	:= rtld-Rules \
 		   reldep9.c reldep9mod1.c reldep9mod2.c reldep9mod3.c \
 		   tst-array1.exp tst-array2.exp tst-array4.exp \
 		   tst-array2dep.c \
+		   tst-execstack-mod.c \
 		   check-textrel.c dl-sysdep.h
 
 CFLAGS-dl-runtime.c = -fexceptions -fasynchronous-unwind-tables
@@ -148,7 +150,8 @@ tests += loadtest restest1 preloadtest loadfail multiload origtest resolvfail \
 	 neededtest3 neededtest4 unload2 lateglobal initfirst global \
 	 restest2 next dblload dblunload reldep5 reldep6 reldep7 reldep8 \
 	 circleload1 tst-tls3 tst-tls4 tst-tls5 tst-tls6 tst-tls7 tst-tls8 \
-	 tst-tls10 tst-tls11 tst-tls12 tst-tls13 tst-tls14
+	 tst-tls10 tst-tls11 tst-tls12 tst-tls13 tst-tls14 \
+	 tst-execstack
 #	 reldep9
 test-srcs = tst-pathopt
 tests-vis-yes = vismain
@@ -175,7 +178,8 @@ modules-names = testobj1 testobj2 testobj3 testobj4 testobj5 testobj6 \
 		circlemod1 circlemod1a circlemod2 circlemod2a \
 		circlemod3 circlemod3a \
 		reldep8mod1 reldep8mod2 reldep8mod3 \
-		reldep9mod1 reldep9mod2 reldep9mod3
+		reldep9mod1 reldep9mod2 reldep9mod3 \
+		tst-execstack-mod
 ifeq (yes,$(have-initfini-array))
 modules-names += tst-array2dep
 endif
@@ -440,6 +444,11 @@ reldep9mod1.so-no-z-defs = yes
 $(filter-out $(objpfx)filtmod1.so, $(test-modules)): $(objpfx)%.so: $(objpfx)%.os
 	$(build-module)
 
+ifeq ($(build-shared),yes)
+# Build all the modules even when not actually running test programs.
+tests: $(test-modules)
+endif
+
 $(objpfx)loadtest: $(libdl)
 LDFLAGS-loadtest = -rdynamic
 
@@ -643,6 +652,11 @@ $(objpfx)tst-tls9-static: $(common-objpfx)dlfcn/libdl.a
 $(objpfx)tst-tls9-static.out: $(objpfx)tst-tlsmod5.so $(objpfx)tst-tlsmod6.so
 endif
 
+$(objpfx)tst-execstack: $(libdl)
+$(objpfx)tst-execstack.out: $(objpfx)tst-execstack-mod.so
+LDFLAGS-tst-execstack = -Wl,-z,noexecstack
+LDFLAGS-tst-execstack-mod = -Wl,-z,execstack
+
 $(objpfx)tst-array1.out: $(objpfx)tst-array1
 	$(elf-objpfx)$(rtld-installed-name) \
 	  --library-path $(rpath-link)$(patsubst %,:%,$(sysdep-library-path)) \
diff --git a/linuxthreads/Makefile b/linuxthreads/Makefile
index 9bb38536fc..6c3c351df8 100644
--- a/linuxthreads/Makefile
+++ b/linuxthreads/Makefile
@@ -21,6 +21,8 @@
 #
 subdir	:= linuxthreads
 
+all: # Make this the default target; it will be defined in Rules.
+
 linuxthreads-version := $(shell sed -n 's/^.*$(subdir)-\([0-9.]*\).*$$/\1/p' \
 				    Banner)
 
@@ -130,7 +132,10 @@ test-modules = $(addprefix $(objpfx),$(addsuffix .so,$(modules-names)))
 $(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds
 	$(build-module)
 
-all: # Make this the default target; it will be defined in Rules.
+ifeq ($(build-shared),yes)
+# Build all the modules even when not actually running test programs.
+tests: $(test-modules)
+endif
 
 # What we install as libpthread.so for programs to link against is in fact a
 # link script.  It contains references for the various libraries we need.
diff --git a/nptl/Makefile b/nptl/Makefile
index f40ec8d554..6beacdc40b 100644
--- a/nptl/Makefile
+++ b/nptl/Makefile
@@ -266,6 +266,9 @@ $(test-modules): $(objpfx)%.so: $(objpfx)%.os $(common-objpfx)shlib.lds
 	$(build-module)
 
 ifeq ($(build-shared),yes)
+# Build all the modules even when not actually running test programs.
+tests: $(test-modules)
+
 others: $(objpfx)libpthread_nonshared.a
 endif