[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH-repost] Makefile: avoid defconfig annoyance
From: |
Stefan Weil |
Subject: |
Re: [Qemu-devel] [PATCH-repost] Makefile: avoid defconfig annoyance |
Date: |
Thu, 24 Dec 2009 13:46:49 +0100 |
User-agent: |
Mozilla-Thunderbird 2.0.0.22 (X11/20090707) |
Michael S. Tsirkin schrieb:
> This will be the last time you get
> 'config-devices.mak out of date' warning.
>
> We have a config-devices.mak feature, which
> makes it possile for distros to disable devices
> they do not want. However, this is annoyng
> for development where you just want
> to use the default most of the time.
>
> We want to distinguish between user overriding
> config manually and just updating from git.
> Do this, by sticking include directive in the generated files,
> and avoiding error if the generated file only has such include
> directives.
>
> This patch is also careful to:
> - not print warning while defconfig target is run
> - tell user what will happen if make defconfig is run
> instead of just telling her what to do
> Signed-off-by: Michael S. Tsirkin <address@hidden>
> ---
>
> Any comments? If no, please apply to master.
>
> Makefile | 11 +++++++----
> 1 files changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/Makefile b/Makefile
> index a662d96..469ce43 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -39,18 +39,21 @@ SUBDIR_MAKEFLAGS=$(if $(V),,--no-print-directory)
> SUBDIR_DEVICES_MAK=$(patsubst %, %/config-devices.mak, $(TARGET_DIRS))
>
> config-all-devices.mak: $(SUBDIR_DEVICES_MAK)
> - $(call quiet-command,cat $(SUBDIR_DEVICES_MAK) | grep =y | sort -u >
> $@," GEN $@")
> + $(call quiet-command,cat $(SUBDIR_DEVICES_MAK) | \
> + grep -e =y -e ^-include | sort -u > $@," GEN $@")
>
> %/config-devices.mak: default-configs/%.mak
> - $(call quiet-command,cat $< > address@hidden, " GEN $@")
> - @if test -f $@ ; then \
> + $(call quiet-command,echo '-include $<'> address@hidden, " GEN $@")
> + @if test -z "${QEMU_MAKE_DEFCONFIG}" -a -f $@ && \
> + grep -v '^-?include' $@ ; then \
> echo "WARNING: $@ out of date." ;\
> - echo "Run \"make defconfig\" to regenerate." ; \
> + echo "Update it or run \"make defconfig\" to remove it." ; \
> rm address@hidden ; \
> else \
> mv address@hidden $@ ; \
> fi
>
> +defconfig: QEMU_MAKE_DEFCONFIG=yes
> defconfig:
> rm -f config-all-devices.mak $(SUBDIR_DEVICES_MAK)
>
There is already a patch waiting for integration which fixes
the same problem: http://patchwork.ozlabs.org/patch/41507/
Stefan