From 65ac4573e6468b7e7fe660114a4459ff3d32204c Mon Sep 17 00:00:00 2001 From: Dan Albert Date: Wed, 31 May 2017 00:41:59 -0700 Subject: [PATCH] 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 --- build/ndk-build | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/build/ndk-build b/build/ndk-build index 166d0022..8465b086 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