On 15.02.2024 10:30, Roger Pau Monne wrote: > --- a/xen/Makefile > +++ b/xen/Makefile > @@ -358,10 +358,10 @@ config: tools_fixdep outputmakefile FORCE > else # !config-build > > ifeq ($(need-config),y) > --include include/config/auto.conf > # Read in dependencies to all Kconfig* files, make sure to run syncconfig if > # changes are detected. > -include include/config/auto.conf.cmd > +include include/config/auto.conf
With the - dropped, ... > @@ -375,6 +375,7 @@ $(KCONFIG_CONFIG): tools_fixdep > # This exploits the 'multi-target pattern rule' trick. > # The syncconfig should be executed only once to make all the targets. > include/config/%.conf include/config/%.conf.cmd: $(KCONFIG_CONFIG) > + rm -rf include/config/$*.conf > $(Q)$(MAKE) $(build)=tools/kconfig syncconfig ... is this really necessary? The error status from the sub-make is ignored only because of the -, isn't it? I also don't really follow the need to re-order the include-s above. Their ordering ought to be benign, as per make's doc stating "If an included makefile cannot be found in any of these directories it is not an immediately fatal error; processing of the makefile containing the include continues." While the description talks about this, I'm afraid I don't really understand "... the .cmd target is executed before including ...": What .cmd target are you talking about there? That's merely another include (and what is included doesn't provide any .cmd target afaics), so will be dealt with the same as the config/auto.conf one itself. Jan
