Commit cd05e6bdc6001ac6e8ab13720693b7e1302d9848
Committed by
Sam Ravnborg
1 parent
4e25d8bb95
Exists in
master
and in
20 other branches
[PATCH] kbuild: fix split-include dependency
Splitting of autoconf.h requires that split-include was built before, and needs to be-re-done when split-include changes. This dependency was previously missing. Additionally, since autoconf.h is (suppoosed to be) generated as a side effect of executing config targets, include/linux should be created prior to running the respective sub-make. Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Showing 1 changed file with 6 additions and 4 deletions Side-by-side Diff
Makefile
... | ... | @@ -382,6 +382,9 @@ |
382 | 382 | scripts_basic: |
383 | 383 | $(Q)$(MAKE) $(build)=scripts/basic |
384 | 384 | |
385 | +# To avoid any implicit rule to kick in, define an empty command. | |
386 | +scripts/basic/%: scripts_basic ; | |
387 | + | |
385 | 388 | .PHONY: outputmakefile |
386 | 389 | # outputmakefile generate a Makefile to be placed in output directory, if |
387 | 390 | # using a seperate output directory. This allows convinient use |
388 | 391 | |
... | ... | @@ -444,10 +447,9 @@ |
444 | 447 | include $(srctree)/arch/$(ARCH)/Makefile |
445 | 448 | export KBUILD_DEFCONFIG |
446 | 449 | |
447 | -config: scripts_basic outputmakefile FORCE | |
450 | +config %config: scripts_basic outputmakefile FORCE | |
451 | + $(Q)mkdir -p include/linux | |
448 | 452 | $(Q)$(MAKE) $(build)=scripts/kconfig $@ |
449 | -%config: scripts_basic outputmakefile FORCE | |
450 | - $(Q)$(MAKE) $(build)=scripts/kconfig $@ | |
451 | 453 | |
452 | 454 | else |
453 | 455 | # =========================================================================== |
... | ... | @@ -854,7 +856,7 @@ |
854 | 856 | |
855 | 857 | # Split autoconf.h into include/linux/config/* |
856 | 858 | |
857 | -include/config/MARKER: include/linux/autoconf.h | |
859 | +include/config/MARKER: scripts/basic/split-include include/linux/autoconf.h | |
858 | 860 | @echo ' SPLIT include/linux/autoconf.h -> include/config/*' |
859 | 861 | @scripts/basic/split-include include/linux/autoconf.h include/config |
860 | 862 | @touch $@ |