diff options
author | Chris Robinson <[email protected]> | 2014-11-10 17:56:48 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2014-11-10 17:56:48 -0800 |
commit | 283c2b20d4602e098ee991f90209696696bd8163 (patch) | |
tree | 85127036c56d4ea0aa617b699d9518fc4b0dc068 /XCompile-Android.txt | |
parent | e036cca1c98e62477ea2f986414f71e2abc25cc4 (diff) |
Add a toolchain for Android cross-compiling
Diffstat (limited to 'XCompile-Android.txt')
-rw-r--r-- | XCompile-Android.txt | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/XCompile-Android.txt b/XCompile-Android.txt new file mode 100644 index 00000000..3dd88e80 --- /dev/null +++ b/XCompile-Android.txt @@ -0,0 +1,39 @@ +# Cross-compiling requires CMake 2.6 or newer. Example: +# cmake .. -DCMAKE_TOOLCHAIN_FILE=../XCompile-Android.txt -DHOST=arm-linux-androideabi +# Where 'arm-linux-androideabi' is the host prefix for the cross-compiler. If +# you already have a toolchain file setup, you may use that instead of this +# file. Make sure to set CMAKE_FIND_ROOT_PATH to where the NDK toolchain was +# installed (e.g. "$ENV{HOME}/toolchains/arm-linux-androideabi-r10c-21"). + +# the name of the target operating system +SET(CMAKE_SYSTEM_NAME Linux) + +# which compilers to use for C and C++ +SET(CMAKE_C_COMPILER "${HOST}-gcc") +SET(CMAKE_CXX_COMPILER "${HOST}-g++") +SET(CMAKE_RC_COMPILER "${HOST}-windres") + +# here is the target environment located +SET(CMAKE_FIND_ROOT_PATH "SET THIS TO THE NDK TOOLCHAIN'S INSTALL PATH") + +# here is where stuff gets installed to +SET(CMAKE_INSTALL_PREFIX "${CMAKE_FIND_ROOT_PATH}" CACHE STRING "Install path prefix, prepended onto install directories." FORCE) + +# adjust the default behaviour of the FIND_XXX() commands: +# search headers and libraries in the target environment, search +# programs in the host environment +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) + +# set env vars so that pkg-config will look in the appropriate directory for +# .pc files (as there seems to be no way to force using ${HOST}-pkg-config) +set(ENV{PKG_CONFIG_LIBDIR} "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig") +set(ENV{PKG_CONFIG_PATH} "") + +# Qt4 tools +SET(QT_QMAKE_EXECUTABLE ${HOST}-qmake) +SET(QT_MOC_EXECUTABLE ${HOST}-moc) +SET(QT_RCC_EXECUTABLE ${HOST}-rcc) +SET(QT_UIC_EXECUTABLE ${HOST}-uic) +SET(QT_LRELEASE_EXECUTABLE ${HOST}-lrelease) |