kbuild: all{no,yes,mod,def,rand}config only read files when instructed to.
authorEric W. Biederman <ebiederm@xmission.com>
Mon, 7 May 2012 12:37:45 +0000 (05:37 -0700)
committerMichal Marek <mmarek@suse.cz>
Mon, 7 May 2012 18:51:06 +0000 (20:51 +0200)
Prevent subtle surprises to both people working on the kconfig code
and people using make allnoconfig allyesconfig allmoconfig and
randconfig by only attempting to read a config file if
KCONFIG_ALLCONFIG is set.

Common sense suggests attempting to read the extra config files does
not make sense unless requested.  The documentation says the code
won't attempt to read the extra config files unless requested.
Current usage does not appear to include people depending on the code
reading the config files without the variable being set So do the
simple thing and stop reading config files when passed
all{no,yes,mod,def,rand}config unless KCONFIG_ALLCONFIG environment
variable is set.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Michal Marek <mmarek@suse.cz>
scripts/kconfig/conf.c

index 0fdda91..0dc4a2c 100644 (file)
@@ -574,7 +574,9 @@ int main(int ac, char **av)
        case alldefconfig:
        case randconfig:
                name = getenv("KCONFIG_ALLCONFIG");
-               if (name && (strcmp(name, "") != 0) && (strcmp(name, "1") != 0)) {
+               if (!name)
+                       break;
+               if ((strcmp(name, "") != 0) && (strcmp(name, "1") != 0)) {
                        if (conf_read_simple(name, S_DEF_USER)) {
                                fprintf(stderr,
                                        _("*** Can't read seed configuration \"%s\"!\n"),