Hi all,
The patch is a refactoring: Options -> EnvVars, to better reflect the
variables contents.
It is also a preparation for the next round of refactoring - keep all
scan-build arguments in the hash.
Please review!
--
Anton
Index: scan-build
===================================================================
--- scan-build (revision 220907)
+++ scan-build (working copy)
@@ -912,21 +912,21 @@
}
sub SetEnv {
- my $Options = shift @_;
- foreach my $opt ('CC', 'CXX', 'CLANG', 'CLANG_CXX',
+ my $EnvVars = shift @_;
+ foreach my $var ('CC', 'CXX', 'CLANG', 'CLANG_CXX',
'CCC_ANALYZER_ANALYSIS', 'CCC_ANALYZER_PLUGINS',
'CCC_ANALYZER_CONFIG') {
- die "$opt is undefined\n" if (!defined $opt);
- $ENV{$opt} = $Options->{$opt};
+ die "$var is undefined\n" if (!defined $var);
+ $ENV{$var} = $EnvVars->{$var};
}
- foreach my $opt ('CCC_ANALYZER_STORE_MODEL',
+ foreach my $var ('CCC_ANALYZER_STORE_MODEL',
'CCC_ANALYZER_PLUGINS',
'CCC_ANALYZER_INTERNAL_STATS',
'CCC_ANALYZER_OUTPUT_FORMAT') {
- my $x = $Options->{$opt};
- if (defined $x) { $ENV{$opt} = $x }
+ my $x = $EnvVars->{$var};
+ if (defined $x) { $ENV{$var} = $x }
}
- my $Verbose = $Options->{'VERBOSE'};
+ my $Verbose = $EnvVars->{'VERBOSE'};
if ($Verbose >= 2) {
$ENV{'CCC_ANALYZER_VERBOSE'} = 1;
}
@@ -943,7 +943,7 @@
my $IgnoreErrors = shift;
my $CCAnalyzer = shift;
my $CXXAnalyzer = shift;
- my $Options = shift;
+ my $EnvVars = shift;
if ($IgnoreErrors) {
AddIfNotPresent($Args,"-PBXBuildsContinueAfterErrors=YES");
@@ -977,9 +977,9 @@
}
if ($oldBehavior == 0) {
- my $OutputDir = $Options->{"OUTPUT_DIR"};
- my $CLANG = $Options->{"CLANG"};
- my $OtherFlags = $Options->{"CCC_ANALYZER_ANALYSIS"};
+ my $OutputDir = $EnvVars->{"OUTPUT_DIR"};
+ my $CLANG = $EnvVars->{"CLANG"};
+ my $OtherFlags = $EnvVars->{"CCC_ANALYZER_ANALYSIS"};
push @$Args,
"RUN_CLANG_STATIC_ANALYZER=YES",
"CLANG_ANALYZER_OUTPUT=plist-html",
@@ -991,7 +991,7 @@
}
# Default to old behavior where we insert a bogus compiler.
- SetEnv($Options);
+ SetEnv($EnvVars);
# Check if using iPhone SDK 3.0 (simulator). If so the compiler being
# used should be gcc-4.2.
@@ -1023,14 +1023,14 @@
my $Cmd = $Args->[0];
my $CCAnalyzer = shift;
my $CXXAnalyzer = shift;
- my $Options = shift;
+ my $EnvVars = shift;
if ($Cmd =~ /\bxcodebuild$/) {
- return RunXcodebuild($Args, $IgnoreErrors, $CCAnalyzer, $CXXAnalyzer, $Options);
+ return RunXcodebuild($Args, $IgnoreErrors, $CCAnalyzer, $CXXAnalyzer, $EnvVars);
}
# Setup the environment.
- SetEnv($Options);
+ SetEnv($EnvVars);
if ($Cmd =~ /(.*\/?gcc[^\/]*$)/ or
$Cmd =~ /(.*\/?cc[^\/]*$)/ or
@@ -1685,7 +1685,7 @@
my $CCC_ANALYZER_ANALYSIS = join ' ',@AnalysesToRun;
my $CCC_ANALYZER_PLUGINS = join ' ',@PluginsToLoad;
my $CCC_ANALYZER_CONFIG = join ' ',@ConfigOptions;
-my %Options = (
+my %EnvVars = (
'CC' => $Cmd,
'CXX' => $CmdCXX,
'CLANG' => $Clang,
@@ -1698,21 +1698,21 @@
);
if (defined $StoreModel) {
- $Options{'CCC_ANALYZER_STORE_MODEL'} = $StoreModel;
+ $EnvVars{'CCC_ANALYZER_STORE_MODEL'} = $StoreModel;
}
if (defined $ConstraintsModel) {
- $Options{'CCC_ANALYZER_CONSTRAINTS_MODEL'} = $ConstraintsModel;
+ $EnvVars{'CCC_ANALYZER_CONSTRAINTS_MODEL'} = $ConstraintsModel;
}
if (defined $InternalStats) {
- $Options{'CCC_ANALYZER_INTERNAL_STATS'} = 1;
+ $EnvVars{'CCC_ANALYZER_INTERNAL_STATS'} = 1;
}
if (defined $OutputFormat) {
- $Options{'CCC_ANALYZER_OUTPUT_FORMAT'} = $OutputFormat;
+ $EnvVars{'CCC_ANALYZER_OUTPUT_FORMAT'} = $OutputFormat;
}
# Run the build.
my $ExitStatus = RunBuildCommand(\@ARGV, $IgnoreErrors, $Cmd, $CmdCXX,
- \%Options);
+ \%EnvVars);
if (defined $OutputFormat) {
if ($OutputFormat =~ /plist/) {
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits