about summary refs log tree commit diff
diff options
context:
space:
mode:
authorNick Alcock <nick.alcock@oracle.com>2016-12-21 11:52:19 +0100
committerFlorian Weimer <fweimer@redhat.com>2016-12-21 11:52:19 +0100
commit2908885c822eb43ffa2cdd67e0464e6d35afaf53 (patch)
tree9b7cefaeb24a44f8ee87e39746d4307cc4701c1b
parent2fe82ca6dc5a2d2ffc91b7df9d136de7bf10bd9a (diff)
downloadglibc-2908885c822eb43ffa2cdd67e0464e6d35afaf53.tar.gz
glibc-2908885c822eb43ffa2cdd67e0464e6d35afaf53.tar.xz
glibc-2908885c822eb43ffa2cdd67e0464e6d35afaf53.zip
Move all tests out of the csu subdirectory
Stack-protection on .o files in csu/ must be suppressed for the sake of
library startup code.  This also suppresses stack-protection in tests
(which are also covered by CFLAGS-.o), though this is neither necessary
nor desirable.

So impose the rule that .o files in csu/ are necessarily C startup code,
and move the few tests in there into misc/ instead.
-rw-r--r--ChangeLog16
-rw-r--r--csu/Makefile5
-rw-r--r--misc/Makefile5
-rw-r--r--misc/tst-atomic-long.c (renamed from csu/tst-atomic-long.c)0
-rw-r--r--misc/tst-atomic.c (renamed from csu/tst-atomic.c)3
-rw-r--r--misc/tst-empty.c (renamed from csu/tst-empty.c)3
6 files changed, 25 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 48227ece44..bb4768518e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2016-12-21  Nick Alcock <nick.alcock@oracle.com>
+	    Florian Weimer  <fweimer@redhat.com>
+
+	[BZ #7065]
+	* csu/Makefile (tests): Empty assignment and document it.
+	(tests-static): Remove.
+	* csu/tst-empty.c: Move to...
+	* misc/tst-empty.c: ... here.  Switch to new test driver.
+	* csu/tst-atomic.c: Move to...
+	* misc/tst-atomic.c: ... here.  Switch to new test driver.
+	* csu/tst-atomic-long.c: Move to...
+	* misc/tst-atomic-long.c: ... here.
+	* misc/Makefile (tests): Add tst-empty, tst-atomic,
+	tst-atomic-long.
+	(tests-static): Add tst-empty.
+
 2016-12-21  Rical Jasan  <ricaljasan@pacific.net>
 
 	* manual/nss.texi: Change incorrect @vtable to @table.
diff --git a/csu/Makefile b/csu/Makefile
index 31e8bb98a0..3d23f13868 100644
--- a/csu/Makefile
+++ b/csu/Makefile
@@ -42,8 +42,9 @@ install-lib = $(start-installed-name) g$(start-installed-name) $(csu-dummies)
 generated += version-info.h
 before-compile += $(objpfx)version-info.h
 
-tests := tst-empty tst-atomic tst-atomic-long
-tests-static := tst-empty
+# No tests are allowed in the csu/ subdirectory because the startup
+# code is compiled with special flags.
+tests =
 
 ifeq (yes,$(build-shared))
 extra-objs += S$(start-installed-name) gmon-start.os
diff --git a/misc/Makefile b/misc/Makefile
index 3d2ebb8e45..d241daea47 100644
--- a/misc/Makefile
+++ b/misc/Makefile
@@ -79,7 +79,10 @@ gpl2lgpl := error.c error.h
 tests := tst-dirname tst-tsearch tst-fdset tst-efgcvt tst-mntent tst-hsearch \
 	 tst-error1 tst-pselect tst-insremque tst-mntent2 bug-hsearch1 \
 	 tst-mntent-blank-corrupt tst-mntent-blank-passno bug18240 \
-	 tst-preadvwritev tst-preadvwritev64 tst-makedev
+	 tst-preadvwritev tst-preadvwritev64 tst-makedev tst-empty \
+	 tst-atomic tst-atomic-long
+tests-static := tst-empty
+
 ifeq ($(run-built-tests),yes)
 tests-special += $(objpfx)tst-error1-mem.out
 endif
diff --git a/csu/tst-atomic-long.c b/misc/tst-atomic-long.c
index 6b62299d60..6b62299d60 100644
--- a/csu/tst-atomic-long.c
+++ b/misc/tst-atomic-long.c
diff --git a/csu/tst-atomic.c b/misc/tst-atomic.c
index f7dcac159d..720b865496 100644
--- a/csu/tst-atomic.c
+++ b/misc/tst-atomic.c
@@ -636,5 +636,4 @@ do_test (void)
   return ret;
 }
 
-#define TEST_FUNCTION do_test ()
-#include "../test-skeleton.c"
+#include <support/test-driver.c>
diff --git a/csu/tst-empty.c b/misc/tst-empty.c
index e99468eef9..31860b06b3 100644
--- a/csu/tst-empty.c
+++ b/misc/tst-empty.c
@@ -5,5 +5,4 @@ do_test (void)
   return 0;
 }
 
-#define TEST_FUNCTION do_test ()
-#include "../test-skeleton.c"
+#include <support/test-driver.c>