[build] Respect DEPLOYMENT_VERSION_{IOS|TVOS|WATCHOS} for Simulator targets

This makes sure that Cxx and CxxStdlib modules are built with consistent deployment targets for iOS Simulator and iOS Device.

rdar://141232269
This commit is contained in:
Egor Zhdan
2024-12-17 14:03:07 +00:00
parent 9bf17e894b
commit d1a435c42a
3 changed files with 17 additions and 3 deletions

View File

@@ -248,13 +248,13 @@ function(_add_target_variant_swift_compile_flags
if("${sdk}" STREQUAL "OSX" AND DEFINED VARIANT_DEPLOYMENT_VERSION_OSX)
set(sdk_deployment_version ${VARIANT_DEPLOYMENT_VERSION_OSX})
endif()
if("${sdk}" STREQUAL "IOS" AND DEFINED VARIANT_DEPLOYMENT_VERSION_IOS)
if(("${sdk}" STREQUAL "IOS" OR "${sdk}" STREQUAL "IOS_SIMULATOR") AND DEFINED VARIANT_DEPLOYMENT_VERSION_IOS)
set(sdk_deployment_version ${VARIANT_DEPLOYMENT_VERSION_IOS})
endif()
if("${sdk}" STREQUAL "TVOS" AND DEFINED VARIANT_DEPLOYMENT_VERSION_TVOS)
if(("${sdk}" STREQUAL "TVOS" OR "${sdk}" STREQUAL "TVOS_SIMULATOR") AND DEFINED VARIANT_DEPLOYMENT_VERSION_TVOS)
set(sdk_deployment_version ${VARIANT_DEPLOYMENT_VERSION_TVOS})
endif()
if("${sdk}" STREQUAL "WATCHOS" AND DEFINED VARIANT_DEPLOYMENT_VERSION_WATCHOS)
if(("${sdk}" STREQUAL "WATCHOS" OR "${sdk}" STREQUAL "WATCHOS_SIMULATOR") AND DEFINED VARIANT_DEPLOYMENT_VERSION_WATCHOS)
set(sdk_deployment_version ${VARIANT_DEPLOYMENT_VERSION_WATCHOS})
endif()

View File

@@ -0,0 +1,7 @@
// RUN: %swift -c %s -cxx-interoperability-mode=default -target arm64-apple-ios7.0-simulator
// REQUIRES: DARWIN_SIMULATOR=ios
import Cxx
public func takesCxxType(_ s: some CxxSequence) {}

View File

@@ -0,0 +1,7 @@
// RUN: %swift -c %s -cxx-interoperability-mode=default -target arm64-apple-ios7.0
// REQUIRES: OS=ios
import Cxx
public func takesCxxType(_ s: some CxxSequence) {}