commit 2fca4b624bd3ceb8c756b4145c7e96aa032b2b98 Author: Florian Weimer Date: Wed Jun 4 17:44:19 2025 +0200 Makefile: Avoid $(objpfx)/ in makefiles If paths with both $(objpfx)/ and $(objpfx) (which already includes a trailing slash) appear during the build, this can trigger unexpected rebuilds, or incorrect concurrent rebuilds. Conflicts: elf/Makefile (additional generated files upstream) diff --git a/elf/Makefile b/elf/Makefile index 3af1ad44fb789c4c..0d34de3b2c99e5bd 100644 --- a/elf/Makefile +++ b/elf/Makefile @@ -1229,8 +1229,8 @@ $(objpfx)$(1).generated-makefile: $(1) endef endif -postclean-generated += $(objpfx)/dso-sort-tests-1.generated-makefile \ - $(objpfx)/dso-sort-tests-2.generated-makefile +postclean-generated += $(objpfx)dso-sort-tests-1.generated-makefile \ + $(objpfx)dso-sort-tests-2.generated-makefile # Generate from each testcase description file $(eval $(call include_dsosort_tests,dso-sort-tests-1.def)) @@ -2823,7 +2823,7 @@ $(objpfx)tst-rtld-list-diagnostics.out: tst-rtld-list-diagnostics.py \ > $@; \ $(evaluate-test) -$(objpfx)tst-rtld-run-static.out: $(objpfx)/ldconfig +$(objpfx)tst-rtld-run-static.out: $(objpfx)ldconfig $(objpfx)tst-dl_find_object.out: \ $(objpfx)tst-dl_find_object-mod1.so $(objpfx)tst-dl_find_object-mod2.so diff --git a/nss/Makefile b/nss/Makefile index 9331b3308c36c45b..37bec502fcff2f72 100644 --- a/nss/Makefile +++ b/nss/Makefile @@ -475,39 +475,39 @@ libof-nss_test1 = extramodules libof-nss_test2 = extramodules libof-nss_test_errno = extramodules libof-nss_test_gai_hv2_canonname = extramodules -$(objpfx)/libnss_test1.so: $(objpfx)nss_test1.os $(link-libc-deps) +$(objpfx)libnss_test1.so: $(objpfx)nss_test1.os $(link-libc-deps) $(build-module) -$(objpfx)/libnss_test2.so: $(objpfx)nss_test2.os $(link-libc-deps) +$(objpfx)libnss_test2.so: $(objpfx)nss_test2.os $(link-libc-deps) $(build-module) -$(objpfx)/libnss_test_errno.so: $(objpfx)nss_test_errno.os $(link-libc-deps) +$(objpfx)libnss_test_errno.so: $(objpfx)nss_test_errno.os $(link-libc-deps) $(build-module) -$(objpfx)/libnss_test_gai_hv2_canonname.so: \ +$(objpfx)libnss_test_gai_hv2_canonname.so: \ $(objpfx)nss_test_gai_hv2_canonname.os $(link-libc-deps) $(build-module) $(objpfx)nss_test2.os : nss_test1.c # Use the nss_files suffix for these objects as well. -$(objpfx)/libnss_test1.so$(libnss_files.so-version): $(objpfx)/libnss_test1.so +$(objpfx)libnss_test1.so$(libnss_files.so-version): $(objpfx)libnss_test1.so $(make-link) -$(objpfx)/libnss_test2.so$(libnss_files.so-version): $(objpfx)/libnss_test2.so +$(objpfx)libnss_test2.so$(libnss_files.so-version): $(objpfx)libnss_test2.so $(make-link) -$(objpfx)/libnss_test_errno.so$(libnss_files.so-version): \ - $(objpfx)/libnss_test_errno.so +$(objpfx)libnss_test_errno.so$(libnss_files.so-version): \ + $(objpfx)libnss_test_errno.so $(make-link) -$(objpfx)/libnss_test_gai_hv2_canonname.so$(libnss_files.so-version): \ - $(objpfx)/libnss_test_gai_hv2_canonname.so +$(objpfx)libnss_test_gai_hv2_canonname.so$(libnss_files.so-version): \ + $(objpfx)libnss_test_gai_hv2_canonname.so $(make-link) $(patsubst %,$(objpfx)%.out,$(tests) $(tests-container)) : \ - $(objpfx)/libnss_test1.so$(libnss_files.so-version) \ - $(objpfx)/libnss_test2.so$(libnss_files.so-version) \ - $(objpfx)/libnss_test_errno.so$(libnss_files.so-version) \ - $(objpfx)/libnss_test_gai_hv2_canonname.so$(libnss_files.so-version) + $(objpfx)libnss_test1.so$(libnss_files.so-version) \ + $(objpfx)libnss_test2.so$(libnss_files.so-version) \ + $(objpfx)libnss_test_errno.so$(libnss_files.so-version) \ + $(objpfx)libnss_test_gai_hv2_canonname.so$(libnss_files.so-version) ifeq (yes,$(have-thread-library)) $(objpfx)tst-cancel-getpwuid_r: $(shared-thread-library) endif -$(objpfx)tst-nss-files-alias-leak.out: $(objpfx)/libnss_files.so -$(objpfx)tst-nss-files-alias-truncated.out: $(objpfx)/libnss_files.so +$(objpfx)tst-nss-files-alias-leak.out: $(objpfx)libnss_files.so +$(objpfx)tst-nss-files-alias-truncated.out: $(objpfx)libnss_files.so tst-nss-gai-hv2-canonname-ENV = \ MALLOC_TRACE=$(objpfx)tst-nss-gai-hv2-canonname.mtrace \