[arm64e] Add arm64e support into Swift's build system

This commit is contained in:
Kuba Mracek
2020-02-27 16:08:15 -08:00
parent 869e579477
commit 45ba5cec05
5 changed files with 13 additions and 4 deletions

View File

@@ -106,7 +106,7 @@ endmacro()
macro(configure_sdks_darwin)
set(macosx_arch "x86_64")
set(iphoneos_arch "arm64" "armv7")
set(iphoneos_arch "arm64" "arm64e" "armv7")
set(appletvos_arch "arm64")
set(watchos_arch "armv7k")

View File

@@ -3,10 +3,10 @@ option(SWIFT_ENABLE_IOS32
TRUE)
if(SWIFT_ENABLE_IOS32)
set(SUPPORTED_IOS_ARCHS "armv7;armv7s;arm64")
set(SUPPORTED_IOS_ARCHS "armv7;armv7s;arm64;arm64e")
set(SUPPORTED_IOS_SIMULATOR_ARCHS "i386;x86_64")
else()
set(SUPPORTED_IOS_ARCHS "arm64")
set(SUPPORTED_IOS_ARCHS "arm64;arm64e")
set(SUPPORTED_IOS_SIMULATOR_ARCHS "x86_64")
endif()

View File

@@ -16,6 +16,7 @@ function(set_if_arch_bitness var_name)
set("${var_name}" "${SIA_CASE_32_BIT}" PARENT_SCOPE)
elseif("${SIA_ARCH}" STREQUAL "x86_64" OR
"${SIA_ARCH}" STREQUAL "arm64" OR
"${SIA_ARCH}" STREQUAL "arm64e" OR
"${SIA_ARCH}" STREQUAL "aarch64" OR
"${SIA_ARCH}" STREQUAL "powerpc64" OR
"${SIA_ARCH}" STREQUAL "powerpc64le" OR

View File

@@ -420,6 +420,7 @@ function verify_host_is_supported() {
| iphoneos-armv7 \
| iphoneos-armv7s \
| iphoneos-arm64 \
| iphoneos-arm64e \
| appletvsimulator-x86_64 \
| appletvos-arm64 \
| watchsimulator-i386 \
@@ -519,6 +520,13 @@ function set_build_options_for_host() {
SWIFT_HOST_TRIPLE="arm64-apple-ios${DARWIN_DEPLOYMENT_VERSION_IOS}"
llvm_target_arch="AArch64"
SWIFT_HOST_VARIANT_SDK="IOS"
cmake_osx_deployment_target=""
;;
iphoneos-arm64e)
SWIFT_HOST_TRIPLE="arm64e-apple-ios${DARWIN_DEPLOYMENT_VERSION_IOS}"
llvm_target_arch="AArch64"
SWIFT_HOST_VARIANT_SDK="IOS"
cmake_osx_deployment_target=""
;;

View File

@@ -117,7 +117,7 @@ class StdlibDeploymentTarget(object):
OSX = DarwinPlatform("macosx", archs=["x86_64"],
sdk_name="OSX")
iOS = DarwinPlatform("iphoneos", archs=["armv7", "armv7s", "arm64"],
iOS = DarwinPlatform("iphoneos", archs=["armv7", "armv7s", "arm64", "arm64e"],
sdk_name="IOS")
iOSSimulator = DarwinPlatform("iphonesimulator", archs=["i386", "x86_64"],
sdk_name="IOS_SIMULATOR",