diff options
author | Andrew Hsieh <andrewhsieh@google.com> | 2014-03-03 16:53:17 +0800 |
---|---|---|
committer | Andrew Hsieh <andrewhsieh@google.com> | 2014-03-03 18:47:02 +0800 |
commit | c4f7fbae020ef662de1ec6d037f9bb2b16b46d46 (patch) | |
tree | 7295d766fc3d6535de03e3a08c8e7f844de09d3e | |
parent | 26bcd6404031a491bfd5314d605a7dcc6b64727b (diff) | |
download | build-c4f7fbae020ef662de1ec6d037f9bb2b16b46d46.zip build-c4f7fbae020ef662de1ec6d037f9bb2b16b46d46.tar.gz build-c4f7fbae020ef662de1ec6d037f9bb2b16b46d46.tar.bz2 |
Use analyzer at new location: prebuilts/misc/{linux-x86,darwin-x86}/analyzer
Analyzer needed by WITH_STATIC_ANALYZER and WITH_SYNTAX_CHECK is
moved from prebuilts/clang/{linux-x86,darwin-x86}/host/3.3 to
prebuilts/misc/{linux-x86,darwin-x86}/analyzer
See https://android-review.googlesource.com/#/c/83852/
BUG=13243591
Usage:
"WITH_SYNTAX_CHECK=1 make ..." instructs build system to invoke "clang -fsyntax-only"
to utilize clang's better diagnostics before calling LOCAL_CC/LOCAL_CXX for code generation.
The compilation time is slightly longer, and the generated object file should be the same as
w/o WITH_SYNTAX_CHECK
"WITH_STATIC_ANALYZER=1 m/mm/mmm/mma/mmma ..." instructs build system to run static
analyzer via "clang --analyze" on a successful build. If analyzer finds any issue, instruction
to open report is displayed. See http://clang-analyzer.llvm.org/scan-build.html for details.
WITH_STATIC_ANALYZER trumps WITH_SYNTAX_CHECK if both exist. Project use lots of GCC extensions
(eg. nested function) not supported by clang may opt out by adding LOCAL_NO_STATIC_ANALYZER:=true
Change-Id: Ib3dda3ffb0fd3aaf2eadec867a966d1dd2868fb1
-rw-r--r-- | core/config.mk | 2 | ||||
-rw-r--r-- | envsetup.sh | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/core/config.mk b/core/config.mk index 5621778..141fc78 100644 --- a/core/config.mk +++ b/core/config.mk @@ -248,7 +248,7 @@ ifeq ($(strip $(WITH_SYNTAX_CHECK)),0) endif # Disable WITH_STATIC_ANALYZER and WITH_SYNTAX_CHECK if tool can't be found -SYNTAX_TOOLS_PREFIX := prebuilts/clang/$(HOST_PREBUILT_TAG)/host/3.3/bin +SYNTAX_TOOLS_PREFIX := prebuilts/misc/$(HOST_PREBUILT_TAG)/analyzer/bin ifneq ($(strip $(WITH_STATIC_ANALYZER)),) ifeq ($(wildcard $(SYNTAX_TOOLS_PREFIX)/ccc-analyzer),) $(warning *** Disable WITH_STATIC_ANALYZER because $(SYNTAX_TOOLS_PREFIX)/ccc-analyzer does not exist) diff --git a/envsetup.sh b/envsetup.sh index f8a13a1..dfd1617 100644 --- a/envsetup.sh +++ b/envsetup.sh @@ -625,8 +625,8 @@ function getdriver() test "$WITH_STATIC_ANALYZER" = "0" && unset WITH_STATIC_ANALYZER if [ -n "$WITH_STATIC_ANALYZER" ]; then echo "\ -$T/prebuilts/clang/linux-x86/host/3.3/tools/scan-build/scan-build \ ---use-analyzer $T/prebuilts/clang/linux-x86/host/3.3/bin/analyzer \ +$T/prebuilts/misc/linux-x86/analyzer/tools/scan-build/scan-build \ +--use-analyzer $T/prebuilts/misc/linux-x86/analyzer/bin/analyzer \ --status-bugs \ --top=$T" fi |