[3/7] kconfig: enable CONFIG_IKCONFIG from streamline_config.pl
diff mbox

Message ID 20090430185219.656122641@goodmis.org
State New, archived
Headers show

Commit Message

Steven Rostedt April 30, 2009, 6:50 p.m. UTC
From: Steven Rostedt <srostedt@redhat.com>

Ingo Molnar suggested that the streamline_config.pl should enable
CONFIG_IKCONFIG to keep the current config in the kernel.
Then we can use scripts/extract-ikconfig to find the current
modules.

This patch changes streamline_config.pl to check if CONFIG_IKCONFIG
is not set, and if it is not, it enables it to be a module.

[ Impact: make current config options easier to find ]

Reported-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
---
 scripts/kconfig/streamline_config.pl |   33 +++++++++++++++++++++++----------
 1 files changed, 23 insertions(+), 10 deletions(-)

Comments

Alan Jenkins April 30, 2009, 9:51 p.m. UTC | #1
On 4/30/09, Steven Rostedt <rostedt@goodmis.org> wrote:
> From: Steven Rostedt <srostedt@redhat.com>
>
> Ingo Molnar suggested that the streamline_config.pl should enable
> CONFIG_IKCONFIG to keep the current config in the kernel.
> Then we can use scripts/extract-ikconfig to find the current
> modules.
>
> This patch changes streamline_config.pl to check if CONFIG_IKCONFIG
> is not set, and if it is not, it enables it to be a module.
>
> [ Impact: make current config options easier to find ]
>
> Reported-by: Ingo Molnar <mingo@elte.hu>
> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
> ---
>  scripts/kconfig/streamline_config.pl |   33
> +++++++++++++++++++++++----------
>  1 files changed, 23 insertions(+), 10 deletions(-)
>
> diff --git a/scripts/kconfig/streamline_config.pl
> b/scripts/kconfig/streamline_config.pl
> index caac952..2334641 100644
> --- a/scripts/kconfig/streamline_config.pl
> +++ b/scripts/kconfig/streamline_config.pl
> @@ -256,18 +256,31 @@ my %setconfigs;
>  # Finally, read the .config file and turn off any module enabled that
>  # we could not find a reason to keep enabled.
>  while(<CIN>) {
> -	if (/^(CONFIG.*)=(m|y)/) {
> -		if (defined($configs{$1})) {
> -		    $setconfigs{$1} = $2;
> -		    print;
> -		} elsif ($2 eq "m") {
> -		    print "# $1 is not set\n";
> -		} else {
> -		    print;
> -		}
> +
> +    if (/CONFIG_IKCONFIG/) {
> +	if (/# CONFIG_IKCONFIG is not set/) {
> +	    # enable IKCONFIG at least as a module
> +	    print "CONFIG_IKCONFIG=m\n";
> +	    # don't ask about PROC
> +	    print "# CONFIG_IKCONFIG is not set\n";

I assume the second one should be CONFIG_IKCONFIG_PROC :-).

> +	} else {
> +	    print;
> +	}
> +	next;
> +    }
> +
> +    if (/^(CONFIG.*)=(m|y)/) {
> +	if (defined($configs{$1})) {
> +	    $setconfigs{$1} = $2;
> +	    print;
> +	} elsif ($2 eq "m") {
> +	    print "# $1 is not set\n";
>  	} else {
> -		print;
> +	    print;
>  	}

> +    } else {
> +	print;
> +    }


Maybe it would be cleaner make the two "if" blocks the same; i.e. do
this instead:

+	next;
+    }
+
+	print;


>  }
>  close(CIN);
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Steven Rostedt April 30, 2009, 10:53 p.m. UTC | #2
On Thu, 30 Apr 2009, Alan Jenkins wrote:
> > +
> > +    if (/CONFIG_IKCONFIG/) {
> > +	if (/# CONFIG_IKCONFIG is not set/) {
> > +	    # enable IKCONFIG at least as a module
> > +	    print "CONFIG_IKCONFIG=m\n";
> > +	    # don't ask about PROC
> > +	    print "# CONFIG_IKCONFIG is not set\n";
> 
> I assume the second one should be CONFIG_IKCONFIG_PROC :-).

Ag! Thanks!

> 
> > +	} else {
> > +	    print;
> > +	}
> > +	next;
> > +    }
> > +
> > +    if (/^(CONFIG.*)=(m|y)/) {
> > +	if (defined($configs{$1})) {
> > +	    $setconfigs{$1} = $2;
> > +	    print;
> > +	} elsif ($2 eq "m") {
> > +	    print "# $1 is not set\n";
> >  	} else {
> > -		print;
> > +	    print;
> >  	}
> 
> > +    } else {
> > +	print;
> > +    }
> 
> 
> Maybe it would be cleaner make the two "if" blocks the same; i.e. do
> this instead:

Yeah, that does look cleaner.

-- Steve

> 
> +	next;
> +    }
> +
> +	print;
> 
> 
> >  }
> >  close(CIN);
> >
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch
diff mbox

diff --git a/scripts/kconfig/streamline_config.pl b/scripts/kconfig/streamline_config.pl
index caac952..2334641 100644
--- a/scripts/kconfig/streamline_config.pl
+++ b/scripts/kconfig/streamline_config.pl
@@ -256,18 +256,31 @@  my %setconfigs;
 # Finally, read the .config file and turn off any module enabled that
 # we could not find a reason to keep enabled.
 while(<CIN>) {
-	if (/^(CONFIG.*)=(m|y)/) {
-		if (defined($configs{$1})) {
-		    $setconfigs{$1} = $2;
-		    print;
-		} elsif ($2 eq "m") {
-		    print "# $1 is not set\n";
-		} else {
-		    print;
-		}
+
+    if (/CONFIG_IKCONFIG/) {
+	if (/# CONFIG_IKCONFIG is not set/) {
+	    # enable IKCONFIG at least as a module
+	    print "CONFIG_IKCONFIG=m\n";
+	    # don't ask about PROC
+	    print "# CONFIG_IKCONFIG is not set\n";
+	} else {
+	    print;
+	}
+	next;
+    }
+
+    if (/^(CONFIG.*)=(m|y)/) {
+	if (defined($configs{$1})) {
+	    $setconfigs{$1} = $2;
+	    print;
+	} elsif ($2 eq "m") {
+	    print "# $1 is not set\n";
 	} else {
-		print;
+	    print;
 	}
+    } else {
+	print;
+    }
 }
 close(CIN);