diff options
author | Dan Albert <danalbert@google.com> | 2017-05-31 00:41:59 -0700 |
---|---|---|
committer | Dan Albert <danalbert@google.com> | 2017-05-31 00:46:04 -0700 |
commit | 65ac4573e6468b7e7fe660114a4459ff3d32204c (patch) | |
tree | 4a7872b1c1b164be4a8c17b94d6341d39077d256 /build/ndk-build | |
parent | 90ec78ffd96b87cd75d82575587ead14d6494df1 (diff) | |
download | ndk-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-x | build/ndk-build | 14 |
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 |