public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] kbuild: fix interaction of CONFIG_IKCONFIG and KCONFIG_CONFIG
@ 2010-11-26 18:56 Ben Gardiner
  2010-12-14 15:29 ` Michal Marek
  0 siblings, 1 reply; 4+ messages in thread
From: Ben Gardiner @ 2010-11-26 18:56 UTC (permalink / raw)
  To: Michal Marek, Roman Zippel
  Cc: linux-kbuild, linux-kernel, Roman Zippel, Michal Marek

Change the use of .config in kernel/Makefile to $(KCONFIG_CONFIG).

Currently, if you try to build a kernel with KCONFIG_CONFIG set (to a value
not equal to .config) and the config file pointed to by KCONFIG_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.

I think this 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>

---
based on 698fd6a2c3ca05ec796072defb5c415289a86cdc of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

 kernel/Makefile |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

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   $@
-- 
1.7.0.4


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] kbuild: fix interaction of CONFIG_IKCONFIG and KCONFIG_CONFIG
  2010-11-26 18:56 [PATCH] kbuild: fix interaction of CONFIG_IKCONFIG and KCONFIG_CONFIG Ben Gardiner
@ 2010-12-14 15:29 ` Michal Marek
  2010-12-14 16:39   ` [PATCH v2] " Ben Gardiner
  0 siblings, 1 reply; 4+ messages in thread
From: Michal Marek @ 2010-12-14 15:29 UTC (permalink / raw)
  To: Ben Gardiner; +Cc: Roman Zippel, linux-kbuild, linux-kernel

On 26.11.2010 19:56, Ben Gardiner wrote:
> Change the use of .config in kernel/Makefile to $(KCONFIG_CONFIG).
>
> Currently, if you try to build a kernel with KCONFIG_CONFIG set (to a value
> not equal to .config) and the config file pointed to by KCONFIG_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.
>
> I think this 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>
>
> ---
> based on 698fd6a2c3ca05ec796072defb5c415289a86cdc of
> git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
>
>   kernel/Makefile |    2 +-
>   1 files changed, 1 insertions(+), 1 deletions(-)
>
> 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   $@

The problem is that KCONFIG_CONFIG is not exported in the top-level 
Makefile. If you want to use it in other Makefiles, you need to add the 
export.

Michal

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v2] kbuild: fix interaction of CONFIG_IKCONFIG and KCONFIG_CONFIG
  2010-12-14 15:29 ` Michal Marek
@ 2010-12-14 16:39   ` Ben Gardiner
  2010-12-14 22:18     ` Michal Marek
  0 siblings, 1 reply; 4+ messages in thread
From: Ben Gardiner @ 2010-12-14 16:39 UTC (permalink / raw)
  To: Michal Marek, Roman Zippel
  Cc: linux-kbuild, linux-kernel, Roman Zippel, Michal Marek

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>

---

changes since v1:
 * rebased to 6313e3c21743cc88bb5bd8aa72948ee1e83937b6 of
   git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
 * export KCONFIG_CONFIG from top-level Makefile (Michal Marek)

---
 Makefile        |    1 +
 kernel/Makefile |    2 +-
 2 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/Makefile b/Makefile
index 3d94974..e0973cc 100644
--- a/Makefile
+++ b/Makefile
@@ -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   $@
-- 
1.7.0.4


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] kbuild: fix interaction of CONFIG_IKCONFIG and KCONFIG_CONFIG
  2010-12-14 16:39   ` [PATCH v2] " Ben Gardiner
@ 2010-12-14 22:18     ` Michal Marek
  0 siblings, 0 replies; 4+ messages in thread
From: Michal Marek @ 2010-12-14 22:18 UTC (permalink / raw)
  To: Ben Gardiner; +Cc: Roman Zippel, linux-kbuild, linux-kernel

On Tue, Dec 14, 2010 at 11:39:44AM -0500, Ben Gardiner wrote:
> 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>
> 
> ---
> 
> changes since v1:
>  * rebased to 6313e3c21743cc88bb5bd8aa72948ee1e83937b6 of
>    git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
>  * export KCONFIG_CONFIG from top-level Makefile (Michal Marek)

Thanks, applied to kbuild-2.6.git#kbuild.

Michal

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-12-14 22:18 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-11-26 18:56 [PATCH] kbuild: fix interaction of CONFIG_IKCONFIG and KCONFIG_CONFIG Ben Gardiner
2010-12-14 15:29 ` Michal Marek
2010-12-14 16:39   ` [PATCH v2] " Ben Gardiner
2010-12-14 22:18     ` Michal Marek

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox