diff options
author | Ben Gardiner <bengardiner@nanometrics.ca> | 2010-12-14 11:39:44 -0500 |
---|---|---|
committer | Michal Marek <mmarek@suse.cz> | 2010-12-14 23:05:02 +0100 |
commit | 41263fc6716dea402125c95f38ed83ebf59d5172 (patch) | |
tree | b38af603d534914187e396c989fc01a20894a2ff | |
parent | ba9effa2ecdc08325bd297d541b4207b2df38184 (diff) | |
download | op-kernel-dev-41263fc6716dea402125c95f38ed83ebf59d5172.zip op-kernel-dev-41263fc6716dea402125c95f38ed83ebf59d5172.tar.gz |
kbuild: fix interaction of CONFIG_IKCONFIG and KCONFIG_CONFIG
If you try to build a kernel with KCONFIG_CONFIG set (to a value
not equal to .config) and that config sets CONFIG_IKCONFIG then the
build will fail with:
make[1]: *** No rule to make target `.config', needed by \
`kernel/config_data.gz'. Stop.
because the kernel/Makefile contains a direct reference to .config.
This issue has been present since the introduction of KCONFIG_CONFIG
in 14cdd3c402bf7c66f0bcd76e290f0770a54a4b21.
Signed-off-by: Ben Gardiner <bengardiner@nanometrics.ca>
CC: Roman Zippel <zippel@linux-m68k.org>
CC: Michal Marek <mmarek@suse.cz>
Reviewed-by: Michal Marek <mmarek@suse.cz>
Signed-off-by: Michal Marek <mmarek@suse.cz>
-rw-r--r-- | Makefile | 1 | ||||
-rw-r--r-- | kernel/Makefile | 2 |
2 files changed, 2 insertions, 1 deletions
@@ -224,6 +224,7 @@ ifeq ($(ARCH),m68knommu) endif KCONFIG_CONFIG ?= .config +export KCONFIG_CONFIG # SHELL used by kbuild CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ diff --git a/kernel/Makefile b/kernel/Makefile index 0b5ff08..33e0a39 100644 --- a/kernel/Makefile +++ b/kernel/Makefile @@ -121,7 +121,7 @@ $(obj)/configs.o: $(obj)/config_data.h # config_data.h contains the same information as ikconfig.h but gzipped. # Info from config_data can be extracted from /proc/config* targets += config_data.gz -$(obj)/config_data.gz: .config FORCE +$(obj)/config_data.gz: $(KCONFIG_CONFIG) FORCE $(call if_changed,gzip) quiet_cmd_ikconfiggz = IKCFG $@ |