public inbox for linux-kbuild@vger.kernel.org
 help / color / mirror / Atom feed
From: Sam Ravnborg <sam@ravnborg.org>
To: linux-kbuild <linux-kbuild@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>
Cc: Markus Heidelberg <markus.heidelberg@web.de>,
	Sam Ravnborg <sam@ravnborg.org>
Subject: [PATCH 32/39] kconfig: do not hardcode "include/config/auto.conf" filename
Date: Sat,  6 Jun 2009 01:42:50 +0200	[thread overview]
Message-ID: <1244245377-17441-32-git-send-email-sam@ravnborg.org> (raw)
In-Reply-To: <20090605233720.GA13588@uranus.ravnborg.org>

From: Markus Heidelberg <markus.heidelberg@web.de>

Regardless of KCONFIG_AUTOCONFIG, the filename written as a Make target
into "include/config/auto.conf.cmd" was always the default one.

Of course this doesn't make it work for the Kernel kbuild system, since
there the filename is hardcoded at several places in the Makefiles.

Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
---
 scripts/kconfig/confdata.c |   20 ++++++++++++--------
 scripts/kconfig/lkc.h      |    1 +
 scripts/kconfig/util.c     |    6 +++---
 3 files changed, 16 insertions(+), 11 deletions(-)

diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c
index 273d738..a04da34 100644
--- a/scripts/kconfig/confdata.c
+++ b/scripts/kconfig/confdata.c
@@ -41,6 +41,13 @@ const char *conf_get_configname(void)
 	return name ? name : ".config";
 }
 
+const char *conf_get_autoconfig_name(void)
+{
+	char *name = getenv("KCONFIG_AUTOCONFIG");
+
+	return name ? name : "include/config/auto.conf";
+}
+
 static char *conf_expand_value(const char *in)
 {
 	struct symbol *sym;
@@ -555,15 +562,14 @@ int conf_write(const char *name)
 
 int conf_split_config(void)
 {
-	char *name, path[128];
+	const char *name;
+	char path[128];
 	char *s, *d, c;
 	struct symbol *sym;
 	struct stat sb;
 	int res, i, fd;
 
-	name = getenv("KCONFIG_AUTOCONFIG");
-	if (!name)
-		name = "include/config/auto.conf";
+	name = conf_get_autoconfig_name();
 	conf_read_simple(name, S_DEF_AUTO);
 
 	if (chdir("include/config"))
@@ -670,7 +676,7 @@ int conf_write_autoconf(void)
 {
 	struct symbol *sym;
 	const char *str;
-	char *name;
+	const char *name;
 	FILE *out, *out_h;
 	time_t now;
 	int i, l;
@@ -773,9 +779,7 @@ int conf_write_autoconf(void)
 		name = "include/linux/autoconf.h";
 	if (rename(".tmpconfig.h", name))
 		return 1;
-	name = getenv("KCONFIG_AUTOCONFIG");
-	if (!name)
-		name = "include/config/auto.conf";
+	name = conf_get_autoconfig_name();
 	/*
 	 * This must be the last step, kbuild has a dependency on auto.conf
 	 * and this marks the successful completion of the previous steps.
diff --git a/scripts/kconfig/lkc.h b/scripts/kconfig/lkc.h
index 4a9af6f..f379b0b 100644
--- a/scripts/kconfig/lkc.h
+++ b/scripts/kconfig/lkc.h
@@ -74,6 +74,7 @@ char *zconf_curname(void);
 
 /* confdata.c */
 const char *conf_get_configname(void);
+const char *conf_get_autoconfig_name(void);
 char *conf_get_default_confname(void);
 void sym_set_change_count(int count);
 void sym_add_change_count(int count);
diff --git a/scripts/kconfig/util.c b/scripts/kconfig/util.c
index 3cc9f93..b6b2a46 100644
--- a/scripts/kconfig/util.c
+++ b/scripts/kconfig/util.c
@@ -46,8 +46,8 @@ int file_write_dep(const char *name)
 		else
 			fprintf(out, "\t%s\n", file->name);
 	}
-	fprintf(out, "\ninclude/config/auto.conf: \\\n"
-		     "\t$(deps_config)\n\n");
+	fprintf(out, "\n%s: \\\n"
+		     "\t$(deps_config)\n\n", conf_get_autoconfig_name());
 
 	expr_list_for_each_sym(sym_env_list, e, sym) {
 		struct property *prop;
@@ -61,7 +61,7 @@ int file_write_dep(const char *name)
 		if (!value)
 			value = "";
 		fprintf(out, "ifneq \"$(%s)\" \"%s\"\n", env_sym->name, value);
-		fprintf(out, "include/config/auto.conf: FORCE\n");
+		fprintf(out, "%s: FORCE\n", conf_get_autoconfig_name());
 		fprintf(out, "endif\n");
 	}
 
-- 
1.6.3.rc3.40.g75b44


  parent reply	other threads:[~2009-06-05 23:41 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-05 23:37 kbuild-next content Sam Ravnborg
2009-06-05 23:42 ` [PATCH 01/39] kconfig: handle comment entries within choice/endchoice Sam Ravnborg
2009-06-05 23:42 ` [PATCH 02/39] kbuild, deb-pkg: minor general improvements in builddeb script Sam Ravnborg
2009-06-05 23:42 ` [PATCH 03/39] kbuild, deb-pkg: refactor code to reduce duplication Sam Ravnborg
2009-06-05 23:42 ` [PATCH 04/39] kbuild, deb-pkg: fix 'file not found' error when building .deb package for arm Sam Ravnborg
2009-06-05 23:42 ` [PATCH 05/39] kbuild, deb-pkg: pass Debian maintainer script parameters to packaging hook scripts Sam Ravnborg
2009-06-05 23:42 ` [PATCH 06/39] kbuild, deb-pkg: allow to specify a custom revision for .deb packages Sam Ravnborg
2009-06-05 23:42 ` [PATCH 07/39] kbuild, deb-pkg: allow alternative hook scripts directory in " Sam Ravnborg
2009-06-05 23:42 ` [PATCH 08/39] kbuild, deb-pkg: improve changelog entry and package descriptions Sam Ravnborg
2009-06-05 23:42 ` [PATCH 09/39] kbuild, deb-pkg: generate debian/copyright file Sam Ravnborg
2009-06-05 23:42 ` [PATCH 10/39] kbuild, deb-pkg: improve maintainer identification Sam Ravnborg
2009-06-05 23:42 ` [PATCH 11/39] kbuild, deb-pkg: improve Source field Sam Ravnborg
2009-06-05 23:42 ` [PATCH 12/39] kbuild, deb-pkg: fix generated package name Sam Ravnborg
2009-06-05 23:42 ` [PATCH 13/39] kbuild, deb-pkg: fix Provides field Sam Ravnborg
2009-06-05 23:42 ` [PATCH 14/39] kbuild, deb-pkg: fix Section field Sam Ravnborg
2009-06-05 23:42 ` [PATCH 15/39] kbuild, deb-pkg: bump standards version Sam Ravnborg
2009-06-05 23:42 ` [PATCH 16/39] initconst adjustments Sam Ravnborg
2009-06-05 23:42 ` [PATCH 17/39] kbuild: fix header export when __ASSEMBLY__ is used Sam Ravnborg
2009-06-06  0:41   ` Arnd Bergmann
2009-06-06  5:45     ` Jaswinder Singh Rajput
2009-06-06  6:05     ` Sam Ravnborg
2009-06-06  8:14       ` Russell King
2009-06-05 23:42 ` [PATCH 18/39] kbuild/headers_check: refine extern check Sam Ravnborg
2009-06-06  0:46   ` Arnd Bergmann
2009-06-06  8:38     ` Sam Ravnborg
2009-06-06 15:25       ` Arnd Bergmann
2009-06-08  1:31       ` Amerigo Wang
2009-06-05 23:42 ` [PATCH 19/39] kbuild: clean up scripts/headers.sh Sam Ravnborg
2009-06-05 23:42 ` [PATCH 20/39] kbuild: allow docproc invocation from external Sam Ravnborg
2009-06-05 23:42 ` [PATCH 21/39] kbuild/Documentation: Incorrect makefile syntax in example Sam Ravnborg
2009-06-05 23:42 ` [PATCH 22/39] kbuild: remove extra ifdef/endif of top Makefile Sam Ravnborg
2009-06-05 23:42 ` [PATCH 23/39] kconfig: fix typo "mconfig" to "menuconfig" in a comment Sam Ravnborg
2009-06-05 23:42 ` [PATCH 24/39] kconfig: add a note about the deps to the 'silentoldconfig' help Sam Ravnborg
2009-06-05 23:42 ` [PATCH 25/39] kconfig: resort the documentation of the environment variables Sam Ravnborg
2009-06-05 23:42 ` [PATCH 26/39] gitignore: ignore Kconfig i18n files Sam Ravnborg
2009-06-05 23:42 ` [PATCH 27/39] kconfig qconf: fix -Wall compiler warnings Sam Ravnborg
2009-06-05 23:42 ` [PATCH 28/39] kconfig qconf: fix namespace for Horizontal and Vertical enum values Sam Ravnborg
2009-06-05 23:42 ` [PATCH 29/39] kconfig qconf: add namespace for use of Key_ " Sam Ravnborg
2009-06-05 23:42 ` [PATCH 30/39] kconfig qconf: fix the type of the desktop widget Sam Ravnborg
2009-06-05 23:42 ` [PATCH 31/39] kconfig: do not hardcode ".config" filename Sam Ravnborg
2009-06-05 23:42 ` Sam Ravnborg [this message]
2009-06-05 23:42 ` [PATCH 33/39] kernel/kallsyms.c: replace deprecated __initcall with device_initcall and fix whitespace Sam Ravnborg
2009-06-05 23:42 ` [PATCH 34/39] scripts/headers_check.pl: correct RE in header CONFIG leak check Sam Ravnborg
2009-06-05 23:42 ` [PATCH 35/39] kbuild: add hint about __refdata to modpost Sam Ravnborg
2009-06-05 23:42 ` [PATCH 36/39] menu: fix embedded menu presentation Sam Ravnborg
2009-06-05 23:42 ` [PATCH 37/39] Remove bashisms from scripts Sam Ravnborg
2009-06-05 23:42 ` [PATCH 38/39] ignore *.patch files Sam Ravnborg
2009-06-05 23:42 ` [PATCH 39/39] kbuild: fix "Argument list too long" error for "make headers_check", Sam Ravnborg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1244245377-17441-32-git-send-email-sam@ravnborg.org \
    --to=sam@ravnborg.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=markus.heidelberg@web.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox