@@ -572,6 +572,8 @@ else()
572
572
set (SWIFT_HOST_VARIANT_SDK_default "WINDOWS" )
573
573
elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Haiku" )
574
574
set (SWIFT_HOST_VARIANT_SDK_default "HAIKU" )
575
+ elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Android" )
576
+ set (SWIFT_HOST_VARIANT_SDK_default "ANDROID" )
575
577
elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Darwin" )
576
578
set (SWIFT_HOST_VARIANT_SDK_default "OSX" )
577
579
else ()
@@ -696,6 +698,15 @@ elseif("${SWIFT_HOST_VARIANT_SDK}" STREQUAL "HAIKU")
696
698
set (SWIFT_PRIMARY_VARIANT_SDK_default "${SWIFT_HOST_VARIANT_SDK} " )
697
699
set (SWIFT_PRIMARY_VARIANT_ARCH_default "${SWIFT_HOST_VARIANT_ARCH} " )
698
700
701
+ elseif ("${SWIFT_HOST_VARIANT_SDK} " STREQUAL "ANDROID" )
702
+
703
+ set (SWIFT_HOST_VARIANT "android" CACHE STRING
704
+ "Deployment OS for Swift host tools (the compiler) [android]." )
705
+
706
+ configure_sdk_unix("Android" "${SWIFT_HOST_VARIANT_ARCH} " )
707
+ set (SWIFT_PRIMARY_VARIANT_SDK_default "${SWIFT_HOST_VARIANT_SDK} " )
708
+ set (SWIFT_PRIMARY_VARIANT_ARCH_default "${SWIFT_HOST_VARIANT_ARCH} " )
709
+
699
710
elseif ("${SWIFT_HOST_VARIANT_SDK} " MATCHES "(OSX|IOS*|TVOS*|WATCHOS*)" )
700
711
701
712
set (SWIFT_HOST_VARIANT "macosx" CACHE STRING
@@ -740,7 +751,10 @@ endif()
740
751
741
752
# Should we cross-compile the standard library for Android?
742
753
is_sdk_requested(ANDROID swift_build_android)
743
- if (swift_build_android AND NOT "${SWIFT_ANDROID_NDK_PATH} " STREQUAL "" )
754
+ if (swift_build_android AND NOT "${SWIFT_HOST_VARIANT_SDK} " STREQUAL "ANDROID" )
755
+ if ("${SWIFT_ANDROID_NDK_PATH} " STREQUAL "" )
756
+ message (FATAL_ERROR "You must set SWIFT_ANDROID_NDK_PATH to cross-compile the Swift runtime for Android" )
757
+ endif ()
744
758
if (NOT ("${CMAKE_HOST_SYSTEM_NAME} " STREQUAL "Darwin" OR "${CMAKE_HOST_SYSTEM_NAME} " STREQUAL "Linux" ))
745
759
message (FATAL_ERROR "A Darwin or Linux host is required to build the Swift runtime for Android" )
746
760
endif ()
0 commit comments