@@ -578,6 +578,8 @@ else()
578
578
set (SWIFT_HOST_VARIANT_SDK_default "WINDOWS" )
579
579
elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Haiku" )
580
580
set (SWIFT_HOST_VARIANT_SDK_default "HAIKU" )
581
+ elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Android" )
582
+ set (SWIFT_HOST_VARIANT_SDK_default "ANDROID" )
581
583
elseif ("${CMAKE_SYSTEM_NAME} " STREQUAL "Darwin" )
582
584
set (SWIFT_HOST_VARIANT_SDK_default "OSX" )
583
585
else ()
@@ -702,6 +704,15 @@ elseif("${SWIFT_HOST_VARIANT_SDK}" STREQUAL "HAIKU")
702
704
set (SWIFT_PRIMARY_VARIANT_SDK_default "${SWIFT_HOST_VARIANT_SDK} " )
703
705
set (SWIFT_PRIMARY_VARIANT_ARCH_default "${SWIFT_HOST_VARIANT_ARCH} " )
704
706
707
+ elseif ("${SWIFT_HOST_VARIANT_SDK} " STREQUAL "ANDROID" )
708
+
709
+ set (SWIFT_HOST_VARIANT "android" CACHE STRING
710
+ "Deployment OS for Swift host tools (the compiler) [android]." )
711
+
712
+ configure_sdk_unix ("Android" "${SWIFT_HOST_VARIANT_ARCH} " )
713
+ set (SWIFT_PRIMARY_VARIANT_SDK_default "${SWIFT_HOST_VARIANT_SDK} " )
714
+ set (SWIFT_PRIMARY_VARIANT_ARCH_default "${SWIFT_HOST_VARIANT_ARCH} " )
715
+
705
716
elseif ("${SWIFT_HOST_VARIANT_SDK} " MATCHES "(OSX|IOS*|TVOS*|WATCHOS*)" )
706
717
707
718
set (SWIFT_HOST_VARIANT "macosx" CACHE STRING
@@ -746,7 +757,10 @@ endif()
746
757
747
758
# Should we cross-compile the standard library for Android?
748
759
is_sdk_requested (ANDROID swift_build_android )
749
- if (swift_build_android AND NOT "${SWIFT_ANDROID_NDK_PATH} " STREQUAL "" )
760
+ if (swift_build_android AND NOT "${SWIFT_HOST_VARIANT_SDK} " STREQUAL "ANDROID" )
761
+ if ("${SWIFT_ANDROID_NDK_PATH} " STREQUAL "" )
762
+ message (FATAL_ERROR "You must set SWIFT_ANDROID_NDK_PATH to cross-compile the Swift runtime for Android" )
763
+ endif ()
750
764
if (NOT ("${CMAKE_HOST_SYSTEM_NAME} " STREQUAL "Darwin" OR "${CMAKE_HOST_SYSTEM_NAME} " STREQUAL "Linux" ))
751
765
message (FATAL_ERROR "A Darwin or Linux host is required to build the Swift runtime for Android" )
752
766
endif ()
0 commit comments