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.
This commit is contained in:
Florian Weimer 2025-06-04 17:44:19 +02:00
parent 140b20e971
commit 2fca4b624b
2 changed files with 22 additions and 22 deletions

View File

@ -1377,11 +1377,11 @@ $(objpfx)$(1).generated-makefile: $(objpfx)$(1)
endef
endif
postclean-generated += $(objpfx)/dso-sort-tests-1.generated-makefile \
$(objpfx)/dso-sort-tests-2.generated-makefile \
$(objpfx)/dso-sort-tests-all2.generated-makefile \
$(objpfx)/dso-sort-tests-all3.generated-makefile \
$(objpfx)/dso-sort-tests-all4.generated-makefile
postclean-generated += $(objpfx)dso-sort-tests-1.generated-makefile \
$(objpfx)dso-sort-tests-2.generated-makefile \
$(objpfx)dso-sort-tests-all2.generated-makefile \
$(objpfx)dso-sort-tests-all3.generated-makefile \
$(objpfx)dso-sort-tests-all4.generated-makefile
# Generate from each testcase description file
$(eval $(call include_dsosort_tests,dso-sort-tests-1.def))
@ -3049,7 +3049,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

View File

@ -476,39 +476,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 \