diff options
l--------- | tools/scan-build/c++-analyzer | 9 | ||||
-rwxr-xr-x | tools/scan-build/scan-build | 12 | ||||
-rw-r--r-- | tools/scan-build/scan-build.bat | 1 |
3 files changed, 19 insertions, 3 deletions
diff --git a/tools/scan-build/c++-analyzer b/tools/scan-build/c++-analyzer index ca10bf547d..dda5db9c7d 120000 --- a/tools/scan-build/c++-analyzer +++ b/tools/scan-build/c++-analyzer @@ -1 +1,8 @@ -ccc-analyzer
\ No newline at end of file +#!/usr/bin/env perl + +use Cwd qw/ abs_path /; +use File::Basename qw/ dirname /; +# Add scan-build dir to the list of places where perl looks for modules. +use lib dirname(abs_path($0)); + +do 'ccc-analyzer'; diff --git a/tools/scan-build/scan-build b/tools/scan-build/scan-build index 2b07d6b6bc..35f852e70b 100755 --- a/tools/scan-build/scan-build +++ b/tools/scan-build/scan-build @@ -1562,8 +1562,16 @@ if ($ForceDisplayHelp || $RequestDisplayHelp) { } $ClangCXX = $Clang; -$ClangCXX =~ s/\-\d+\.\d+$//; -$ClangCXX .= "++"; +# Determine operating system under which this copy of Perl was built. +my $IsWinBuild = ($^O =~/msys|cygwin|MSWin32/); +if($IsWinBuild) { + $ClangCXX =~ s/.exe$/++.exe/; +} +else { + $ClangCXX =~ s/\-\d+\.\d+$//; + $ClangCXX .= "++"; +} + # Make sure to use "" to handle paths with spaces. $ClangVersion = HtmlEscape(`"$Clang" --version`); diff --git a/tools/scan-build/scan-build.bat b/tools/scan-build/scan-build.bat new file mode 100644 index 0000000000..77be674631 --- /dev/null +++ b/tools/scan-build/scan-build.bat @@ -0,0 +1 @@ +perl -S scan-build %*
|