aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/kconfig/streamline_config.pl
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-11-06 18:52:52 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2011-11-06 18:52:52 -0800
commita84f6aa68e35a911c28e5871c87356dce3607b40 (patch)
tree4093b13e359d68ba99c39b0f156124265adb6349 /scripts/kconfig/streamline_config.pl
parentdede6faac448db4251f8996d7dec6afb5a43726a (diff)
parent93072c3ecafcf188390750cc755185f3150736b9 (diff)
downloadkernel_samsung_smdk4412-a84f6aa68e35a911c28e5871c87356dce3607b40.zip
kernel_samsung_smdk4412-a84f6aa68e35a911c28e5871c87356dce3607b40.tar.gz
kernel_samsung_smdk4412-a84f6aa68e35a911c28e5871c87356dce3607b40.tar.bz2
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.pl22
1 files changed, 19 insertions, 3 deletions
diff --git a/scripts/kconfig/streamline_config.pl b/scripts/kconfig/streamline_config.pl
index a4fe923..ec7afce 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;