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

Reply via email to