From: H.J. Lu Date: Tue, 16 Nov 2021 00:28:39 +0000 (-0800) Subject: elf: Use a temporary file to generate Makefile fragments [BZ #28550] X-Git-Tag: glibc-2.35~326 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1f67d8286b5da9266a138198ef1f15c27cbb0010;p=thirdparty%2Fglibc.git elf: Use a temporary file to generate Makefile fragments [BZ #28550] 1. Use a temporary file to generate Makefile fragments for DSO sorting tests and use -include on them. 2. Add Makefile fragments to postclean-generated so that a "make clean" removes the autogenerated fragments and a subsequent "make" regenerates them. This partially fixes BZ #28550. Reviewed-by: Adhemerval Zanella --- diff --git a/elf/Makefile b/elf/Makefile index a311c3e23ce..525f302d1ad 100644 --- a/elf/Makefile +++ b/elf/Makefile @@ -491,6 +491,7 @@ tests-special += $(objpfx)order-cmp.out $(objpfx)tst-array1-cmp.out \ $(objpfx)tst-unused-dep-cmp.out endif +ifndef avoid-generated # DSO sorting tests: # The dso-ordering-test.py script generates testcase source files in $(objpfx), # creating a $(objpfx)-dir for each testcase, and creates a @@ -498,9 +499,14 @@ endif define include_dsosort_tests $(objpfx)$(1).generated-makefile: $(1) $(PYTHON) $(..)scripts/dso-ordering-test.py \ - --description-file $$< --objpfx $(objpfx) --output-makefile $$@ -include $(objpfx)$(1).generated-makefile + --description-file $$< --objpfx $(objpfx) --output-makefile $$@T + mv $$@T $$@ +-include $(objpfx)$(1).generated-makefile endef +endif + +postclean-generated += $(objpfx)/dso-sort-tests-2.generated-makefile \ + $(objpfx)/dso-sort-tests-2.generated-makefile # Generate from each testcase description file ifeq (yes,$(have-tunables))