about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2021-09-17 19:24:14 +0000
committerJoseph Myers <joseph@codesourcery.com>2021-09-17 19:24:14 +0000
commit885762aa31d75de8b9fea4c0e2e372b582d4c548 (patch)
tree183f1aa52c8c1bca2297768a1750fa70e1126891
parentf3eef963902d0f54f68cffc74f79b97f4d6154b7 (diff)
downloadglibc-885762aa31d75de8b9fea4c0e2e372b582d4c548.tar.gz
glibc-885762aa31d75de8b9fea4c0e2e372b582d4c548.tar.xz
glibc-885762aa31d75de8b9fea4c0e2e372b582d4c548.zip
Use $(pie-default) with conformtest
My glibc bot showed that my conformtest changes fail the build of the
conformtest execution tests for x86_64-linux-gnu-static-pie, because
linking the newly built object with the newly built libc and the
associated options normally used for linking requires it to be built
as PIE.  Add $(pie-default) to the compiler command used so that PIE
options are used when required.

There's a case for using the whole of $(CFLAGS-.o) (which includes
$(pie-default)), but that raises questions of any impact from using
optimization flags from CFLAGS in these tests.  So for now just use
$(pie-default) as the key part of $(CFLAGS-.o) that's definitely
needed.

Tested with build-many-glibcs.py for x86_64-linux-gnu-static-pie.
-rw-r--r--conform/Makefile3
1 files changed, 2 insertions, 1 deletions
diff --git a/conform/Makefile b/conform/Makefile
index 296db818f0..27ad98caf8 100644
--- a/conform/Makefile
+++ b/conform/Makefile
@@ -175,7 +175,8 @@ $(conformtest-header-tests): $(objpfx)%/conform.out: \
 			     conformtest.py $(conformtest-headers-data)
 	(set -e; std_hdr=$*; std=$${std_hdr%%/*}; hdr=$${std_hdr#*/}; \
 	 mkdir -p $(@D); \
-	 $(PYTHON) $< --cc='$(CC)' --flags='$(conformtest-cc-flags)' \
+	 $(PYTHON) $< --cc='$(CC) $(pie-default)' \
+		   --flags='$(conformtest-cc-flags)' \
 		   --ldflags='$(+link-tests-before-inputs)' \
 		   --libs='$(+link-tests-after-inputs)' \
 		   --run-program-prefix='$(run-program-prefix)' \