diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-11-07 06:52:52 +0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-11-07 06:52:52 +0400 |
commit | a84f6aa68e35a911c28e5871c87356dce3607b40 (patch) | |
tree | 4093b13e359d68ba99c39b0f156124265adb6349 /scripts/kconfig/streamline_config.pl | |
parent | dede6faac448db4251f8996d7dec6afb5a43726a (diff) | |
parent | 93072c3ecafcf188390750cc755185f3150736b9 (diff) | |
download | linux-a84f6aa68e35a911c28e5871c87356dce3607b40.tar.xz |
Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
* 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
scripts/kconfig/nconf: add KEY_HOME / KEY_END for dialog_inputbox
scripts/kconfig/nconf: fix editing long strings
scripts/kconfig/nconf: dynamically alloc dialog_input_result
scripts/kconfig/nconf: fix memmove's length arg
scripts/kconfig/nconf: fix typo: unknow => unknown
kconfig: fix set but not used variables
kconfig: handle SIGINT in menuconfig
kconfig: fix __enabled_ macros definition for invisible and un-selected symbols
kconfig: factor code in menu_get_ext_help()
kbuild: Fix help text not displayed in choice option.
kconfig/nconf: nuke unreferenced `nohelp_text'
kconfig/streamline_config.pl: merge local{mod,yes}config
kconfig/streamline_config.pl: use options to determine operating mode
kconfig/streamline_config.pl: directly access LSMOD from the environment
Diffstat (limited to 'scripts/kconfig/streamline_config.pl')
-rw-r--r-- | scripts/kconfig/streamline_config.pl | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/scripts/kconfig/streamline_config.pl b/scripts/kconfig/streamline_config.pl index a4fe923c0131..ec7afce4c88d 100644 --- a/scripts/kconfig/streamline_config.pl +++ b/scripts/kconfig/streamline_config.pl @@ -43,6 +43,7 @@ # make oldconfig # use strict; +use Getopt::Long; my $config = ".config"; @@ -112,10 +113,17 @@ sub find_config { find_config; +# Parse options +my $localmodconfig = 0; +my $localyesconfig = 0; + +GetOptions("localmodconfig" => \$localmodconfig, + "localyesconfig" => \$localyesconfig); + # Get the build source and top level Kconfig file (passed in) my $ksource = $ARGV[0]; my $kconfig = $ARGV[1]; -my $lsmod_file = $ARGV[2]; +my $lsmod_file = $ENV{'LSMOD'}; my @makefiles = `find $ksource -name Makefile 2>/dev/null`; chomp @makefiles; @@ -296,7 +304,11 @@ my %modules; if (defined($lsmod_file)) { if ( ! -f $lsmod_file) { - die "$lsmod_file not found"; + if ( -f $ENV{'objtree'}."/".$lsmod_file) { + $lsmod_file = $ENV{'objtree'}."/".$lsmod_file; + } else { + die "$lsmod_file not found"; + } } if ( -x $lsmod_file) { # the file is executable, run it @@ -421,7 +433,11 @@ while(<CIN>) { if (/^(CONFIG.*)=(m|y)/) { if (defined($configs{$1})) { - $setconfigs{$1} = $2; + if ($localyesconfig) { + $setconfigs{$1} = 'y'; + } else { + $setconfigs{$1} = $2; + } } elsif ($2 eq "m") { print "# $1 is not set\n"; next; |