summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2008-04-18 22:00:56 +0000
committerTed Kremenek <kremenek@apple.com>2008-04-18 22:00:56 +0000
commitcf9e9c5554b960f4513d321d6c8042d2c65785c4 (patch)
tree6e35856afee0ac5f4dcc3d6bfd8556a308e58b93
parent24840f67480b302cb54cbeba76f9d7cc02776549 (diff)
downloadbcm5719-llvm-cf9e9c5554b960f4513d321d6c8042d2c65785c4.tar.gz
bcm5719-llvm-cf9e9c5554b960f4513d321d6c8042d2c65785c4.zip
Use 'clang' binary in the same dir as scan-build; if it isn't there use the one in the path
llvm-svn: 49933
-rwxr-xr-xclang/utils/ccc-analyzer17
-rwxr-xr-xclang/utils/scan-build8
2 files changed, 18 insertions, 7 deletions
diff --git a/clang/utils/ccc-analyzer b/clang/utils/ccc-analyzer
index 4442c18e56a..f4b4861db46 100755
--- a/clang/utils/ccc-analyzer
+++ b/clang/utils/ccc-analyzer
@@ -37,10 +37,6 @@ def run(args):
if code:
sys.exit(code)
-def preprocess(args):
- command = 'clang -E'.split()
- run(command + args)
-
def compile(args):
# We MUST print to stderr. Some clients use the stdout output of
# gcc for various purposes.
@@ -54,7 +50,7 @@ def remove_pch_extension(path):
return path
return path[:i]
-def analyze(args,language,output,files,verbose,htmldir):
+def analyze(clang, args,language,output,files,verbose,htmldir):
if language.find("c++") > 0:
return
@@ -74,7 +70,7 @@ def analyze(args,language,output,files,verbose,htmldir):
command = 'cp'.split()
args = command + files + target.split()
else:
- command = 'clang -checker-cfref'.split()
+ command = clang.split() + '-checker-cfref'.split()
args = command + args;
if htmldir is not None:
@@ -133,9 +129,16 @@ def main(args):
language = ''
verbose = 0
+ clang = "clang"
+
if os.environ.get('CCC_ANALYZER_VERBOSE') is not None:
verbose =1
+
+ clang_env = os.environ.get('CLANG')
+
+ if clang_env is not None:
+ clang = clang_env
htmldir = os.environ.get('CCC_ANALYZER_HTML')
@@ -236,7 +239,7 @@ def main(args):
if language != 'unknown':
analyze_args = analyze_args + [ '-x', language ]
analyze_args = analyze_args + compile_opts
- analyze(analyze_args, language, output, files, verbose, htmldir)
+ analyze(clang, analyze_args, language, output, files, verbose, htmldir)
compile(args)
diff --git a/clang/utils/scan-build b/clang/utils/scan-build
index 362cad2e266..99262e4e1ea 100755
--- a/clang/utils/scan-build
+++ b/clang/utils/scan-build
@@ -537,8 +537,16 @@ my $Cmd = "$RealBin/ccc-analyzer";
die "$Prog: Executable 'ccc-analyzer' does not exist at '$Cmd'\n"
if (! -x $Cmd);
+
+my $Clang = "$RealBin/clang";
+
+if (! -x $Clang) {
+ print "$Prog: 'clang' executable not found in '$RealBin'. Using 'clang' from path.\n";
+ $Clang = "clang";
+}
$ENV{'CC'} = $Cmd;
+$ENV{'CLANG'} = $Clang;
if ($Verbose >= 2) {
$ENV{'CCC_ANALYZER_VERBOSE'} = 1;
OpenPOWER on IntegriCloud