[analyzer] Add --override-compiler option to scan-build.

The new advanced option ensures ccc-analyze is used even when better
interposition methods are available.

llvm-svn: 182981
This commit is contained in:
Anna Zaks 2013-05-31 02:31:07 +00:00
parent 7eb1d49a58
commit 9f53c950df
1 changed files with 19 additions and 0 deletions

View File

@ -896,6 +896,9 @@ sub SetEnv {
}
}
# The flag corresponding to the --override-compiler command line option.
my $OverrideCompiler = 0;
sub RunXcodebuild {
my $Args = shift;
my $IgnoreErrors = shift;
@ -928,6 +931,12 @@ sub RunXcodebuild {
}
close(DETECT_XCODE);
# If --override-compiler is explicitely requested, resort to the old
# behavior regardless of Xcode version.
if ($OverrideCompiler) {
$oldBehavior = 1;
}
if ($oldBehavior == 0) {
my $OutputDir = $Options->{"OUTPUT_DIR"};
my $CLANG = $Options->{"CLANG"};
@ -1143,6 +1152,10 @@ ADVANCED OPTIONS:
Don't remove the build results directory even if no issues were reported.
--override-compiler
Always resort to the ccc-analyzer even when better interposition methods
are available.
CONTROLLING CHECKERS:
A default group of checkers are always run unless explicitly disabled.
@ -1506,6 +1519,12 @@ while (@ARGV) {
$KeepEmpty = 1;
next;
}
if ($arg eq "--override-compiler") {
shift @ARGV;
$OverrideCompiler = 1;
next;
}
DieDiag("unrecognized option '$arg'\n") if ($arg =~ /^-/);