blob: 2a6f5a5e45b78d753e7f90e2198381ce544153db [file] [log] [blame]
Evgeniy Stepanov68f23442012-09-11 11:54:27 +00001# Toolchain config for Android NDK.
2# This is expected to be used with a standalone Android toolchain (see
3# docs/STANDALONE-TOOLCHAIN.html in the NDK on how to get one).
4#
5# Usage:
6# mkdir build; cd build
7# cmake ..; make
8# mkdir android; cd android
9# cmake -DLLVM_ANDROID_TOOLCHAIN_DIR=/path/to/android/ndk \
10# -DCMAKE_TOOLCHAIN_FILE=../../cmake/platforms/Android.cmake ../..
11# make <target>
12
13SET(CMAKE_SYSTEM_NAME Linux)
Evgeniy Stepanov0209f292013-05-29 07:23:20 +000014
15IF(NOT CMAKE_C_COMPILER)
16 SET(CMAKE_C_COMPILER ${CMAKE_BINARY_DIR}/../bin/clang)
17ENDIF()
18
19IF(NOT CMAKE_CXX_COMPILER)
20 SET(CMAKE_CXX_COMPILER ${CMAKE_BINARY_DIR}/../bin/clang++)
21ENDIF()
22
Evgeniy Stepanov68f23442012-09-11 11:54:27 +000023SET(ANDROID "1" CACHE STRING "ANDROID" FORCE)
24
Evgeniy Stepanov98f4ecf2014-01-29 12:36:18 +000025SET(ANDROID_COMMON_FLAGS "-target arm-linux-androideabi --sysroot=${LLVM_ANDROID_TOOLCHAIN_DIR}/sysroot -B${LLVM_ANDROID_TOOLCHAIN_DIR}")
Evgeniy Stepanov68f23442012-09-11 11:54:27 +000026SET(CMAKE_C_FLAGS "${ANDROID_COMMON_FLAGS}" CACHE STRING "toolchain_cflags" FORCE)
27SET(CMAKE_CXX_FLAGS "${ANDROID_COMMON_FLAGS}" CACHE STRING "toolchain_cxxflags" FORCE)
Evgeniy Stepanovec931ec2014-02-19 09:51:22 +000028SET(CMAKE_EXE_LINKER_FLAGS "-pie" CACHE STRING "toolchain_exelinkflags" FORCE)
29