lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <98706bc370fe92e090b16c7ad91dce1cd2203acf.1292344590.git.bengardiner@nanometrics.ca>
Date:	Tue, 14 Dec 2010 11:39:44 -0500
From:	Ben Gardiner <bengardiner@...ometrics.ca>
To:	Michal Marek <mmarek@...e.cz>, Roman Zippel <zippel@...ux-m68k.org>
Cc:	linux-kbuild@...r.kernel.org, linux-kernel@...r.kernel.org,
	Roman Zippel <zippel@...ux-m68k.org>,
	Michal Marek <mmarek@...e.cz>
Subject: [PATCH v2] 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@...ometrics.ca>
CC: Roman Zippel <zippel@...ux-m68k.org>
CC: Michal Marek <mmarek@...e.cz>
Reviewed-by: Michal Marek <mmarek@...e.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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ