From 30961b0f0c2ceef7d089876ddd5d2347888d46a6 Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 12 Feb 2018 15:59:50 +0100 Subject: Android toolchain: add ANDROID_COMPILER_PREFIX variable. Summary: For ARM it's not necessary, but when building for a x86 tablet I had to set ANDROID_TOOLCHAIN=x86 while gcc/g++ are prefixed with i686-linux-android. i.e. the path is android-ndk-r10e/toolchains/x86-4.9/prebuilt/linux-x86_64/bin/i686-linux-android-g++ Test Plan: cmake picks up the right compiler for me now Reviewers: apol, mart Reviewed By: apol Subscribers: #build_system, #frameworks Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D10462 --- toolchain/Android.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'toolchain/Android.cmake') diff --git a/toolchain/Android.cmake b/toolchain/Android.cmake index 1d76aed5..2f595a70 100644 --- a/toolchain/Android.cmake +++ b/toolchain/Android.cmake @@ -39,6 +39,9 @@ # ``ANDROID_TOOLCHAIN`` # The toolchain to use. See the ``toolchains`` directory of the NDK. # Default: ``arm-linux-androideabi``. +# ``ANDROID_COMPILER_PREFIX`` +# The prefix for the gcc and g++ executables. See the ``toolchains/$ANDROID_TOOLCHAIN/prebuilt/*/bin/*-gcc`` in the NDK. +# Default: ``arm-linux-androideabi``. # ``ANDROID_ABI`` # The ABI to use. See the ``sources/cxx-stl/gnu-libstdc++/*/libs`` # directories in the NDK. Default: ``armeabi-v7a``. @@ -137,6 +140,7 @@ set(ANDROID_NDK "$ENV{ANDROID_NDK}" CACHE path "Android NDK path") set(ANDROID_SDK_ROOT "$ENV{ANDROID_SDK_ROOT}" CACHE path "Android SDK path") set(ANDROID_ARCHITECTURE "arm" CACHE string "Used Architecture, related to the ABI and TOOLCHAIN") set(ANDROID_TOOLCHAIN "arm-linux-androideabi" CACHE string "Used SDK") +set(ANDROID_COMPILER_PREFIX "arm-linux-androideabi" CACHE string "Prefix for gcc/g++/etc") set(ANDROID_ABI "armeabi-v7a" CACHE string "Used ABI") set(ANDROID_GCC_VERSION "4.9" CACHE string "Used GCC version" ) set(ANDROID_API_LEVEL "14" CACHE string "Android API Level") @@ -203,8 +207,8 @@ endif() link_directories(${CMAKE_SYSTEM_LIBRARY_PATH}) -set(CMAKE_C_COMPILER "${ANDROID_TOOLCHAIN_ROOT}/${ANDROID_TOOLCHAIN}-gcc") -set(CMAKE_CXX_COMPILER "${ANDROID_TOOLCHAIN_ROOT}/${ANDROID_TOOLCHAIN}-g++") +set(CMAKE_C_COMPILER "${ANDROID_TOOLCHAIN_ROOT}/${ANDROID_COMPILER_PREFIX}-gcc") +set(CMAKE_CXX_COMPILER "${ANDROID_TOOLCHAIN_ROOT}/${ANDROID_COMPILER_PREFIX}-g++") set(CMAKE_EXE_LINKER_FLAGS "${GNUSTL_SHARED} -Wl,-rpath-link,${ANDROID_LIBRARIES_PATH} -llog -lz -lm -ldl -lc -lgcc" CACHE STRING "") set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}" CACHE STRING "") -- cgit v1.2.1