On 27 February 2015 at 18:40, Paolo Bonzini <pbonz...@redhat.com> wrote: > Squashing this to make the non-verbose messages clearer, ok? > > diff --git a/Makefile b/Makefile > index 5604209..d92d4cd 100644 > --- a/Makefile > +++ b/Makefile > @@ -109,7 +109,7 @@ endif > -include $(SUBDIR_DEVICES_MAK_DEP) > > %/config-devices.mak: default-configs/%.mak > - $(call quiet-command,$(SHELL) > $(SRC_PATH)/scripts/make_device_config.sh $@ $<, " GEN $@") > + $(call quiet-command,$(SHELL) > $(SRC_PATH)/scripts/make_device_config.sh $@.tmp $<, " GEN $@.tmp") > $(call quiet-command, if test -f $@; then \ > if cmp -s $@.old $@; then \ > mv $@.tmp $@; \ > @@ -126,7 +126,7 @@ endif > else \ > mv $@.tmp $@; \ > cp -p $@ $@.old; \ > - fi, " TEST $@"); > + fi, " GEN $@"); > > defconfig: > rm -f config-all-devices.mak $(SUBDIR_DEVICES_MAK) > diff --git a/scripts/make_device_config.sh b/scripts/make_device_config.sh > index 7242707..7958086 100644 > --- a/scripts/make_device_config.sh > +++ b/scripts/make_device_config.sh > @@ -2,7 +2,7 @@ > # Construct a target device config file from a default, pulling in any > # files from include directives. > > -dest=$1.tmp > +dest=$1 > dep=`dirname $1`-`basename $1`.d > src=$2 > src_dir=`dirname $src`
This squashed-in change breaks automatically rebuilding the config-devices.mak file when a default-configs file indirectly included from the architecture's top level config is changed. (This is most common for AArch64 because of the way it includes the arm-softmmu config file; so any change to the arm-softmmu device configs means the aarch64-softmmu qemu isn't rebuilt as it should be.) The problem is that we're now passing the script $@.tmp as its first argument, and so the 'dep' filename it constructs ends up as aarch64-softmmu-config-devices.mak.tmp.d. But the Makefile include line defining the dep file to pull in is: SUBDIR_DEVICES_MAK_DEP=$(patsubst %, %-config-devices.mak.d, $(TARGET_DIRS)) so we never include the .d file at all. The basic "%/config-devices.mak: default-configs/%.mak" rule means that this is only a problem for the indirectly included config files. -- PMM