[klibc] [PATCH 1/1] Modify --param support to include additional option

maximilian attems max at stro.at
Fri Jul 29 01:38:42 PDT 2011


On Wed, 20 Jul 2011, Mike Pagano wrote:

> Later versions of gcc include an option in the form of --param=name=value. This patch adds support for this and continues to support the --param name=value 
> option.
> 
> Signed-off-by: Mike Pagano <mpagano at gentoo.org>
> ---
>  klcc/klcc.in |   15 +++++++++++----
>  1 files changed, 11 insertions(+), 4 deletions(-)
> 
> diff --git a/klcc/klcc.in b/klcc/klcc.in
> index 711a832..5d00bfd 100644
> --- a/klcc/klcc.in
> +++ b/klcc/klcc.in
> @@ -159,10 +159,17 @@ while ( defined($a = shift(@ARGV)) ) {
>  	# gcc options, that force preprocessing mode
>  	push(@ccopt, $a);
>  	$operation = 'E';
> -    } elsif ( $a eq '--param' ) {
> -	push(@ccopt, $a);
> -	push(@ccopt, shift(@ARGV));
> -    } elsif ( $a =~ /^-[gp]/ || $a eq '-p' ) {
> +	} elsif ( $a =~ /(--param)[=]?/ ) {
shouldn't the match start with /^

> +	# support --param name=value and --param=name=value
> +	push(@ccopt, $1);
> +	$a =~ /[=](.*)/;

as a rule of thumb I don't like this .* matching,
can you try it differently? maybe split helps?

> +	my $val = $1;
> +	if ( $a =~ /[=]/ ) {
> +		push(@ccopt, $val);
> +	}
> +	else {
> +		push(@ccopt, shift(@ARGV));
> +	} elsif ( $a =~ /^-[gp]/ || $a eq '-p' ) {
why is that last line changed?
was it whitespace damaged?
>  	# Debugging options to gcc
>  	push(@ccopt, $a);
>  	$debugging = 1;

thank you.

-- 
maks



More information about the klibc mailing list