Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Unified Diff: tools/clang/scripts/update.sh

Issue 1263213002: Support Android x86 ASan build. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « build/config/compiler/BUILD.gn ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/clang/scripts/update.sh
diff --git a/tools/clang/scripts/update.sh b/tools/clang/scripts/update.sh
index 386493753c09de7f3beee2820799d67208db6727..72a17bd4345428537054a9189e2e99c76a5e6ade 100755
--- a/tools/clang/scripts/update.sh
+++ b/tools/clang/scripts/update.sh
@@ -680,35 +680,45 @@ if [[ -n "${with_android}" ]]; then
# Make a standalone Android toolchain.
${ANDROID_NDK_DIR}/build/tools/make-standalone-toolchain.sh \
--platform=android-19 \
- --install-dir="${LLVM_BUILD_DIR}/android-toolchain" \
+ --install-dir="${LLVM_BUILD_DIR}/android-toolchain-arm" \
--system=linux-x86_64 \
--stl=stlport \
--toolchain=arm-linux-androideabi-4.9
- # Android NDK r9d copies a broken unwind.h into the toolchain, see
- # http://crbug.com/357890
- rm -v "${LLVM_BUILD_DIR}"/android-toolchain/include/c++/*/unwind.h
-
- # Build ASan runtime for Android in a separate build tree.
- mkdir -p ${LLVM_BUILD_DIR}/android
- pushd ${LLVM_BUILD_DIR}/android
- rm -fv CMakeCache.txt
- MACOSX_DEPLOYMENT_TARGET=${deployment_target} cmake -GNinja \
- -DCMAKE_BUILD_TYPE=Release \
- -DLLVM_ENABLE_ASSERTIONS=ON \
- -DLLVM_ENABLE_THREADS=OFF \
- -DCMAKE_C_COMPILER=${PWD}/../bin/clang \
- -DCMAKE_CXX_COMPILER=${PWD}/../bin/clang++ \
- -DLLVM_CONFIG_PATH=${PWD}/../bin/llvm-config \
- -DCMAKE_C_FLAGS="--target=arm-linux-androideabi --sysroot=${PWD}/../android-toolchain/sysroot -B${PWD}/../android-toolchain" \
- -DCMAKE_CXX_FLAGS="--target=arm-linux-androideabi --sysroot=${PWD}/../android-toolchain/sysroot -B${PWD}/../android-toolchain" \
- -DANDROID=1 \
- "${ABS_COMPILER_RT_DIR}"
- ninja libclang_rt.asan-arm-android.so
-
- # And copy it into the main build tree.
- cp "$(find -name libclang_rt.asan-arm-android.so)" "${ABS_LLVM_CLANG_LIB_DIR}/lib/linux/"
- popd
+ # Do the same for x86.
+ ${ANDROID_NDK_DIR}/build/tools/make-standalone-toolchain.sh \
+ --platform=android-19 \
+ --install-dir="${LLVM_BUILD_DIR}/android-toolchain-i686" \
+ --system=linux-x86_64 \
+ --stl=stlport \
+ --toolchain=x86-4.9
+
+ for target_arch in "arm" "i686"; do
+ # Android NDK r9d copies a broken unwind.h into the toolchain, see
+ # http://crbug.com/357890
+ rm -v "${LLVM_BUILD_DIR}"/android-toolchain-${target_arch}/include/c++/*/unwind.h
+
+ # Build ASan runtime for Android in a separate build tree.
+ mkdir -p ${LLVM_BUILD_DIR}/android-${target_arch}
+ pushd ${LLVM_BUILD_DIR}/android-${target_arch}
+ rm -fv CMakeCache.txt
+ MACOSX_DEPLOYMENT_TARGET=${deployment_target} cmake -GNinja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DLLVM_ENABLE_ASSERTIONS=ON \
+ -DLLVM_ENABLE_THREADS=OFF \
+ -DCMAKE_C_COMPILER=${PWD}/../bin/clang \
+ -DCMAKE_CXX_COMPILER=${PWD}/../bin/clang++ \
+ -DLLVM_CONFIG_PATH=${PWD}/../bin/llvm-config \
+ -DCMAKE_C_FLAGS="--target=${target_arch}-linux-androideabi --sysroot=${PWD}/../android-toolchain-${target_arch}/sysroot -B${PWD}/../android-toolchain-${target_arch}" \
+ -DCMAKE_CXX_FLAGS="--target=${target_arch}-linux-androideabi --sysroot=${PWD}/../android-toolchain-${target_arch}/sysroot -B${PWD}/../android-toolchain-${target_arch}" \
+ -DANDROID=1 \
+ "${ABS_COMPILER_RT_DIR}"
+ ninja libclang_rt.asan-${target_arch}-android.so
+
+ # And copy it into the main build tree.
+ cp "$(find -name libclang_rt.asan-${target_arch}-android.so)" "${ABS_LLVM_CLANG_LIB_DIR}/lib/linux/"
+ popd
+ done
fi
if [[ -n "$run_tests" || -n "${LLVM_FORCE_HEAD_REVISION:-''}" ]]; then
« no previous file with comments | « build/config/compiler/BUILD.gn ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698