aboutsummaryrefslogtreecommitdiff
path: root/scripts/toolchains/android.cmake
diff options
context:
space:
mode:
authorBradley Austin Davis <bdavis@saintandreas.org>2018-12-17 16:45:09 -0800
committerRobert Schumacher <roschuma@microsoft.com>2018-12-17 16:45:09 -0800
commitb2996e1fd48842446a64443d057c576f819bda00 (patch)
tree42207554fd116004d1d42c531e05f67c90eb3d26 /scripts/toolchains/android.cmake
parentc094d3133c0b7776c74e1463d64cc079c9960068 (diff)
downloadvcpkg-b2996e1fd48842446a64443d057c576f819bda00.tar.gz
vcpkg-b2996e1fd48842446a64443d057c576f819bda00.zip
Support custom Android NDK, better ABI specification (#4986)
Diffstat (limited to 'scripts/toolchains/android.cmake')
-rw-r--r--scripts/toolchains/android.cmake13
1 files changed, 12 insertions, 1 deletions
diff --git a/scripts/toolchains/android.cmake b/scripts/toolchains/android.cmake
index 893463056..69192aeca 100644
--- a/scripts/toolchains/android.cmake
+++ b/scripts/toolchains/android.cmake
@@ -1,11 +1,22 @@
set(ANDROID_CPP_FEATURES "rtti exceptions" CACHE STRING "")
set(CMAKE_SYSTEM_NAME Android CACHE STRING "")
-set(ANDROID_ABI x86_64 CACHE STRING "")
set(ANDROID_TOOLCHAIN clang CACHE STRING "")
set(ANDROID_NATIVE_API_LEVEL 21 CACHE STRING "")
set(CMAKE_ANDROID_NDK_TOOLCHAIN_VERSION clang CACHE STRING "")
+if (VCPKG_TARGET_TRIPLET STREQUAL "arm64-android")
+ set(ANDROID_ABI arm64-v8a CACHE STRING "")
+elseif(VCPKG_TARGET_TRIPLET STREQUAL "arm-android")
+ set(ANDROID_ABI armeabi-v7a CACHE STRING "")
+elseif(VCPKG_TARGET_TRIPLET STREQUAL "x64-android")
+ set(ANDROID_ABI x86_64 CACHE STRING "")
+elseif(VCPKG_TARGET_TRIPLET STREQUAL "x86-android")
+ set(ANDROID_ABI x86 CACHE STRING "")
+else()
+ message(FATAL_ERROR "Unknown ABI for target triplet ${VCPKG_TARGET_TRIPLET}")
+endif()
+
if(DEFINED ENV{ANDROID_NDK_HOME})
set(ANDROID_NDK_HOME $ENV{ANDROID_NDK_HOME})
else()