[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 2/2] make: load only required dependency file
From: |
Michael S. Tsirkin |
Subject: |
Re: [Qemu-devel] [PATCH v2 2/2] make: load only required dependency files. |
Date: |
Wed, 5 Aug 2015 21:32:18 +0300 |
On Wed, Aug 05, 2015 at 08:29:33PM +0300, Victor Kaplansky wrote:
> The old rules.mak loads dependency .d files using include directive
> with file glob pattern "*.d". This breaks the build when build tree has
> remanent *.d files from another build.
>
> This patch fixes this by
> - loading precise list of .d files made from *.o and *.mo.
> - specifying explicit list of required dependency info files for
> *.hex autogenerated sources.
>
> Note that Makefile still includes some .d in rood directory by including
> "*.d".
>
> Signed-off-by: Victor Kaplansky <address@hidden>
> ---
> hw/i386/Makefile.objs | 2 ++
> rules.mak | 2 +-
> 2 files changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/hw/i386/Makefile.objs b/hw/i386/Makefile.objs
> index bd4f147..311d364 100644
> --- a/hw/i386/Makefile.objs
> +++ b/hw/i386/Makefile.objs
> @@ -10,6 +10,8 @@ obj-y += acpi-build.o
> hw/i386/acpi-build.o: hw/i386/acpi-build.c \
> hw/i386/acpi-dsdt.hex hw/i386/q35-acpi-dsdt.hex
>
> +-include hw/i386/acpi-dsdt.d hw/i386/q35-acpi-dsdt.d
> +
> iasl-option=$(shell if test -z "`$(1) $(2) 2>&1 > /dev/null`" \
> ; then echo "$(2)"; else echo "$(3)"; fi ;)
>
> diff --git a/rules.mak b/rules.mak
> index 6e35c36..4551b9e 100644
> --- a/rules.mak
> +++ b/rules.mak
> @@ -368,6 +368,6 @@ define unnest-vars
> $(error $o added in $v but $o-objs is not set)))
> $(shell mkdir -p ./ $(sort $(dir $($v))))
> # Include all the .d files
> - $(eval -include $(addsuffix *.d, $(sort $(dir $($v)))))
> + $(eval -include $(patsubst %.o,%.d,$(patsubst %.mo,%.d,$($v))))
Pls add space after comma, like it was in the original.
> $(eval $v := $(filter-out %/,$($v))))
> endef
> --
> --Victor