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. 2016-12-21 Nick Alcock Florian Weimer [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. diff --git a/csu/Makefile b/csu/Makefile index 31e8bb9..3d23f13 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 3d2ebb8..d241dae 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 similarity index 100% rename from csu/tst-atomic-long.c rename to misc/tst-atomic-long.c diff --git a/csu/tst-atomic.c b/misc/tst-atomic.c diff --git a/csu/tst-atomic.c b/misc/tst-atomic.c similarity index 99% rename from csu/tst-atomic.c rename to misc/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 diff --git a/csu/tst-empty.c b/misc/tst-empty.c similarity index 58% rename from csu/tst-empty.c rename to misc/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