aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ports/boost-modular-build-helper/CMakeLists.txt6
-rw-r--r--scripts/toolchains/android.cmake14
2 files changed, 14 insertions, 6 deletions
diff --git a/ports/boost-modular-build-helper/CMakeLists.txt b/ports/boost-modular-build-helper/CMakeLists.txt
index 0ebd3812c..629e01f6d 100644
--- a/ports/boost-modular-build-helper/CMakeLists.txt
+++ b/ports/boost-modular-build-helper/CMakeLists.txt
@@ -97,7 +97,11 @@ if(CMAKE_CXX_COMPILER_TARGET AND CMAKE_CXX_COMPILE_OPTIONS_TARGET)
endif()
endif()
if(CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN)
- set(CXXFLAGS "${CXXFLAGS} <compileflags>${CMAKE_CXX_COMPILE_OPTIONS_EXTERNAL_TOOLCHAIN} <compileflags>${CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN}")
+ if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
+ set(CXXFLAGS "${CXXFLAGS} <compileflags>${CMAKE_CXX_COMPILE_OPTIONS_EXTERNAL_TOOLCHAIN}${CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN}")
+ else()
+ set(CXXFLAGS "${CXXFLAGS} <compileflags>${CMAKE_CXX_COMPILE_OPTIONS_EXTERNAL_TOOLCHAIN} <compileflags>${CMAKE_CXX_COMPILER_EXTERNAL_TOOLCHAIN}")
+ endif()
endif()
if(CMAKE_SYSROOT AND CMAKE_CXX_COMPILE_OPTIONS_SYSROOT)
set(CXXFLAGS "${CXXFLAGS} <compileflags>${CMAKE_CXX_COMPILE_OPTIONS_SYSROOT}${CMAKE_SYSROOT}")
diff --git a/scripts/toolchains/android.cmake b/scripts/toolchains/android.cmake
index 8d2c9f931..a7a7ea2d0 100644
--- a/scripts/toolchains/android.cmake
+++ b/scripts/toolchains/android.cmake
@@ -5,13 +5,13 @@ 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")
+if (VCPKG_TARGET_TRIPLET MATCHES "^arm64-android")
set(ANDROID_ABI arm64-v8a CACHE STRING "")
-elseif(VCPKG_TARGET_TRIPLET STREQUAL "arm-android")
+elseif(VCPKG_TARGET_TRIPLET MATCHES "^arm-android")
set(ANDROID_ABI armeabi-v7a CACHE STRING "")
-elseif(VCPKG_TARGET_TRIPLET STREQUAL "x64-android")
+elseif(VCPKG_TARGET_TRIPLET MATCHES "^x64-android")
set(ANDROID_ABI x86_64 CACHE STRING "")
-elseif(VCPKG_TARGET_TRIPLET STREQUAL "x86-android")
+elseif(VCPKG_TARGET_TRIPLET MATCHES "^x86-android")
set(ANDROID_ABI x86 CACHE STRING "")
else()
message(FATAL_ERROR "Unknown ABI for target triplet ${VCPKG_TARGET_TRIPLET}")
@@ -26,7 +26,11 @@ endif()
if(DEFINED ENV{ANDROID_NDK_HOME})
set(ANDROID_NDK_HOME $ENV{ANDROID_NDK_HOME})
else()
- set(ANDROID_NDK_HOME "$ENV{ProgramData}/Microsoft/AndroidNDK64/android-ndk-r13b/")
+ set(ANDROID_NDK_HOME "$ENV{ProgramData}/Microsoft/AndroidNDK64/android-ndk-r13b/")
+ if(NOT EXISTS "${ANDROID_NDK_HOME}")
+ # Use Xamarin default installation folder
+ set(ANDROID_NDK_HOME "$ENV{ProgramFiles\(x86\)}/Android/android-sdk/ndk-bundle")
+ endif()
endif()
if(NOT EXISTS "${ANDROID_NDK_HOME}/build/cmake/android.toolchain.cmake")