aboutsummaryrefslogtreecommitdiff
path: root/build/ndk-build
diff options
context:
space:
mode:
authorDan Albert <danalbert@google.com>2017-05-31 00:41:59 -0700
committerDan Albert <danalbert@google.com>2017-05-31 00:46:04 -0700
commit65ac4573e6468b7e7fe660114a4459ff3d32204c (patch)
tree4a7872b1c1b164be4a8c17b94d6341d39077d256 /build/ndk-build
parent90ec78ffd96b87cd75d82575587ead14d6494df1 (diff)
downloadndk-65ac4573e6468b7e7fe660114a4459ff3d32204c.tar.gz
Make NDK_ANALYZE work with both GCC and Clang.
Not sure why this was ever hard wired to GCC. We can support both easily enough. Test: ndk-build NDK_ANALYZE=1 V=1 Test: ndk-build NDK_ANALYZE=1 V=1 NDK_TOOLCHAIN_VERSION=4.9 Bug: https://github.com/android-ndk/ndk/issues/362 Change-Id: I378b95f76225ac09d0e0abe89d4d6022e74c8bd7
Diffstat (limited to 'build/ndk-build')
-rwxr-xr-xbuild/ndk-build14
1 files changed, 12 insertions, 2 deletions
diff --git a/build/ndk-build b/build/ndk-build
index 166d00226..8465b0861 100755
--- a/build/ndk-build
+++ b/build/ndk-build
@@ -260,13 +260,23 @@ if [ "$NDK_ANALYZE" = 1 ]; then
}
APP_ABIS=`get_build_var APP_ABI`
+ TOOLCHAIN=`get_build_var NDK_TOOLCHAIN_VERSION`
for ABI in $APP_ABIS; do
TOOLCHAIN_PREFIX=`get_build_var_for_abi TOOLCHAIN_PREFIX $ABI`
LLVM_PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/$HOST_TAG
+
+ if [ "$TOOLCHAIN" = "clang" ]; then
+ ANALYZER_CC=$LLVM_PATH/bin/clang
+ ANALYZER_CXX=$LLVM_PATH/bin/clang++
+ else
+ ANALYZER_CC=${TOOLCHAIN_PREFIX}gcc
+ ANALYZER_CXX=${TOOLCHAIN_PREFIX}g++
+ fi
+
perl $LLVM_PATH/tools/scan-build/bin/scan-build \
--use-analyzer $LLVM_PATH/bin/${ABI}/analyzer \
- --use-cc ${TOOLCHAIN_PREFIX}gcc \
- --use-c++ ${TOOLCHAIN_PREFIX}g++ \
+ --use-cc $ANALYZER_CC \
+ --use-c++ $ANALYZER_CXX \
--status-bugs \
$GNUMAKE -f $PROGDIR/core/build-local.mk "$@" APP_ABI=$ABI
done