[PATCH v2 4/6] Makefile: Do not install the container testroot if not running tests

Adhemerval Zanella adhemerval.zanella@linaro.org
Mon Jun 15 19:32:40 GMT 2026


Every subdirectory tests target depends on
$(objpfx)testroot.pristine/install.stamp, whose recipe performs a full
DESTDIR installation (about 12s and 154MB on x86_64).  The testroot is
only consumed by the container tests, which do not run when
run-built-tests is no, so skip it entirely in that case.

This saves about 10s on x86_64 [1] and 30s on aarch64 [2].

[1] Ryzen 5900x, 12c/24t, gcc 16.1.1, binutils 2.26, and GNU make 4.3
[2] N1, 80c, gcc 15.1.1, binutils 2.25, GNU make 4.3
---
 Makefile | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Makefile b/Makefile
index a6e5317de7b..79dbe0f40d3 100644
--- a/Makefile
+++ b/Makefile
@@ -792,8 +792,13 @@ else
 LINKS_DSO_PROGRAM = links-dso-program
 endif
 
+# The testroot is only used by the container tests, which are not run
+# when run-built-tests is no; skip the installation entirely in that
+# case.
+ifeq ($(run-built-tests),yes)
 $(tests-container) $(addsuffix /tests,$(subdirs)) : \
 		$(objpfx)testroot.pristine/install.stamp
+endif
 $(objpfx)testroot.pristine/install.stamp :
 	test -d $(objpfx)testroot.pristine || \
 	  mkdir $(objpfx)testroot.pristine
-- 
2.43.0



More information about the Libc-alpha mailing list