mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Test: allow different deployment target versions for tests on Darwin
Currently we are using the same versions we use to build compiler and standard library. This is an unnecessary coupling especially when testing the generation of backdeployed executables for macOS -- here we have interest in being able to run the tests on previous OSes, not the compiler itself. To support this, add new `--darwin-test-deployment-version-<platform>` flags to build-script, which by default take the same value as the matching `--darwin-deployment-version-<platform>` ones. Addresses rdar://156724078
This commit is contained in:
@@ -630,6 +630,17 @@ set(COMPATIBILITY_MINIMUM_DEPLOYMENT_VERSION_WATCHOS "2.0")
|
|||||||
set(COMPATIBILITY_MINIMUM_DEPLOYMENT_VERSION_XROS "1.0")
|
set(COMPATIBILITY_MINIMUM_DEPLOYMENT_VERSION_XROS "1.0")
|
||||||
set(COMPATIBILITY_MINIMUM_DEPLOYMENT_VERSION_MACCATALYST "13.1")
|
set(COMPATIBILITY_MINIMUM_DEPLOYMENT_VERSION_MACCATALYST "13.1")
|
||||||
|
|
||||||
|
set(SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_OSX "${SWIFT_DARWIN_DEPLOYMENT_VERSION_OSX}" CACHE STRING
|
||||||
|
"Deployment target version for building macOS tests")
|
||||||
|
set(SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_IOS "${SWIFT_DARWIN_DEPLOYMENT_VERSION_IOS}" CACHE STRING
|
||||||
|
"Deployment target version for building iOS tests")
|
||||||
|
set(SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_TVOS "${SWIFT_DARWIN_DEPLOYMENT_VERSION_TVOS}" CACHE STRING
|
||||||
|
"Deployment target version for building tvOS tests")
|
||||||
|
set(SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_WATCHOS "${SWIFT_DARWIN_DEPLOYMENT_VERSION_WATCHOS}" CACHE STRING
|
||||||
|
"Deployment target version for building watchOS tests")
|
||||||
|
set(SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_XROS "${SWIFT_DARWIN_DEPLOYMENT_VERSION_XROS}" CACHE STRING
|
||||||
|
"Deployment target version for building visionOS tests")
|
||||||
|
|
||||||
#
|
#
|
||||||
# User-configurable debugging options.
|
# User-configurable debugging options.
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -12,7 +12,8 @@ is_sdk_requested(OSX swift_build_osx)
|
|||||||
if(swift_build_osx)
|
if(swift_build_osx)
|
||||||
configure_sdk_darwin(
|
configure_sdk_darwin(
|
||||||
OSX "OS X" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_OSX}"
|
OSX "OS X" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_OSX}"
|
||||||
macosx macosx macos macOS "${SUPPORTED_OSX_ARCHS}")
|
macosx macosx macos macOS "${SUPPORTED_OSX_ARCHS}"
|
||||||
|
"${SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_OSX}")
|
||||||
configure_target_variant(OSX-DA "OS X Debug+Asserts" OSX DA "Debug+Asserts")
|
configure_target_variant(OSX-DA "OS X Debug+Asserts" OSX DA "Debug+Asserts")
|
||||||
configure_target_variant(OSX-RA "OS X Release+Asserts" OSX RA "Release+Asserts")
|
configure_target_variant(OSX-RA "OS X Release+Asserts" OSX RA "Release+Asserts")
|
||||||
configure_target_variant(OSX-R "OS X Release" OSX R "Release")
|
configure_target_variant(OSX-R "OS X Release" OSX R "Release")
|
||||||
@@ -36,7 +37,8 @@ if(swift_build_freestanding AND (SWIFT_FREESTANDING_FLAVOR STREQUAL "apple"))
|
|||||||
FREESTANDING "FREESTANDING" "${SWIFT_FREESTANDING_DEPLOYMENT_VERSION}"
|
FREESTANDING "FREESTANDING" "${SWIFT_FREESTANDING_DEPLOYMENT_VERSION}"
|
||||||
"${SWIFT_FREESTANDING_SDK}"
|
"${SWIFT_FREESTANDING_SDK}"
|
||||||
"${SWIFT_FREESTANDING_TRIPLE_NAME}" "${SWIFT_FREESTANDING_MODULE_NAME}"
|
"${SWIFT_FREESTANDING_TRIPLE_NAME}" "${SWIFT_FREESTANDING_MODULE_NAME}"
|
||||||
"${SWIFT_FREESTANDING_AVAILABILITY_NAME}" "${SWIFT_FREESTANDING_ARCHS}")
|
"${SWIFT_FREESTANDING_AVAILABILITY_NAME}" "${SWIFT_FREESTANDING_ARCHS}"
|
||||||
|
"${SWIFT_FREESTANDING_DEPLOYMENT_VERSION}")
|
||||||
set(SWIFT_SDK_FREESTANDING_LIB_SUBDIR "freestanding")
|
set(SWIFT_SDK_FREESTANDING_LIB_SUBDIR "freestanding")
|
||||||
configure_target_variant(FREESTANDING-DA "FREESTANDING Debug+Asserts" FREESTANDING DA "Debug+Asserts")
|
configure_target_variant(FREESTANDING-DA "FREESTANDING Debug+Asserts" FREESTANDING DA "Debug+Asserts")
|
||||||
configure_target_variant(FREESTANDING-RA "FREESTANDING Release+Asserts" FREESTANDING RA "Release+Asserts")
|
configure_target_variant(FREESTANDING-RA "FREESTANDING Release+Asserts" FREESTANDING RA "Release+Asserts")
|
||||||
@@ -54,7 +56,8 @@ is_sdk_requested(IOS swift_build_ios)
|
|||||||
if(swift_build_ios)
|
if(swift_build_ios)
|
||||||
configure_sdk_darwin(
|
configure_sdk_darwin(
|
||||||
IOS "iOS" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_IOS}"
|
IOS "iOS" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_IOS}"
|
||||||
iphoneos ios ios iOS "${SUPPORTED_IOS_ARCHS}")
|
iphoneos ios ios iOS "${SUPPORTED_IOS_ARCHS}"
|
||||||
|
"${SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_IOS}")
|
||||||
configure_target_variant(IOS-DA "iOS Debug+Asserts" IOS DA "Debug+Asserts")
|
configure_target_variant(IOS-DA "iOS Debug+Asserts" IOS DA "Debug+Asserts")
|
||||||
configure_target_variant(IOS-RA "iOS Release+Asserts" IOS RA "Release+Asserts")
|
configure_target_variant(IOS-RA "iOS Release+Asserts" IOS RA "Release+Asserts")
|
||||||
configure_target_variant(IOS-R "iOS Release" IOS R "Release")
|
configure_target_variant(IOS-R "iOS Release" IOS R "Release")
|
||||||
@@ -65,7 +68,8 @@ if(swift_build_ios_simulator)
|
|||||||
configure_sdk_darwin(
|
configure_sdk_darwin(
|
||||||
IOS_SIMULATOR "iOS Simulator" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_IOS}"
|
IOS_SIMULATOR "iOS Simulator" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_IOS}"
|
||||||
iphonesimulator ios ios-simulator iOS
|
iphonesimulator ios ios-simulator iOS
|
||||||
"${SUPPORTED_IOS_SIMULATOR_ARCHS}")
|
"${SUPPORTED_IOS_SIMULATOR_ARCHS}"
|
||||||
|
"${SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_IOS}")
|
||||||
configure_target_variant(
|
configure_target_variant(
|
||||||
IOS_SIMULATOR-DA "iOS Debug+Asserts" IOS_SIMULATOR DA "Debug+Asserts")
|
IOS_SIMULATOR-DA "iOS Debug+Asserts" IOS_SIMULATOR DA "Debug+Asserts")
|
||||||
configure_target_variant(
|
configure_target_variant(
|
||||||
@@ -78,7 +82,8 @@ is_sdk_requested(TVOS swift_build_tvos)
|
|||||||
if(swift_build_tvos)
|
if(swift_build_tvos)
|
||||||
configure_sdk_darwin(
|
configure_sdk_darwin(
|
||||||
TVOS "tvOS" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_TVOS}"
|
TVOS "tvOS" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_TVOS}"
|
||||||
appletvos tvos tvos tvOS "${SUPPORTED_TVOS_ARCHS}")
|
appletvos tvos tvos tvOS "${SUPPORTED_TVOS_ARCHS}"
|
||||||
|
"${SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_TVOS}")
|
||||||
configure_target_variant(TVOS-DA "tvOS Debug+Asserts" TVOS DA "Debug+Asserts")
|
configure_target_variant(TVOS-DA "tvOS Debug+Asserts" TVOS DA "Debug+Asserts")
|
||||||
configure_target_variant(TVOS-RA "tvOS Release+Asserts" TVOS RA "Release+Asserts")
|
configure_target_variant(TVOS-RA "tvOS Release+Asserts" TVOS RA "Release+Asserts")
|
||||||
configure_target_variant(TVOS-R "tvOS Release" TVOS R "Release")
|
configure_target_variant(TVOS-R "tvOS Release" TVOS R "Release")
|
||||||
@@ -89,7 +94,8 @@ if(swift_build_tvos_simulator)
|
|||||||
configure_sdk_darwin(
|
configure_sdk_darwin(
|
||||||
TVOS_SIMULATOR "tvOS Simulator" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_TVOS}"
|
TVOS_SIMULATOR "tvOS Simulator" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_TVOS}"
|
||||||
appletvsimulator tvos tvos-simulator tvOS
|
appletvsimulator tvos tvos-simulator tvOS
|
||||||
"${SUPPORTED_TVOS_SIMULATOR_ARCHS}")
|
"${SUPPORTED_TVOS_SIMULATOR_ARCHS}"
|
||||||
|
"${SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_TVOS}")
|
||||||
configure_target_variant(
|
configure_target_variant(
|
||||||
TVOS_SIMULATOR-DA "tvOS Debug+Asserts" TVOS_SIMULATOR DA "Debug+Asserts")
|
TVOS_SIMULATOR-DA "tvOS Debug+Asserts" TVOS_SIMULATOR DA "Debug+Asserts")
|
||||||
configure_target_variant(
|
configure_target_variant(
|
||||||
@@ -102,7 +108,8 @@ is_sdk_requested(WATCHOS swift_build_watchos)
|
|||||||
if(swift_build_watchos)
|
if(swift_build_watchos)
|
||||||
configure_sdk_darwin(
|
configure_sdk_darwin(
|
||||||
WATCHOS "watchOS" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_WATCHOS}"
|
WATCHOS "watchOS" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_WATCHOS}"
|
||||||
watchos watchos watchos watchOS "${SUPPORTED_WATCHOS_ARCHS}")
|
watchos watchos watchos watchOS "${SUPPORTED_WATCHOS_ARCHS}"
|
||||||
|
"${SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_WATCHOS}")
|
||||||
configure_target_variant(WATCHOS-DA "watchOS Debug+Asserts" WATCHOS DA "Debug+Asserts")
|
configure_target_variant(WATCHOS-DA "watchOS Debug+Asserts" WATCHOS DA "Debug+Asserts")
|
||||||
configure_target_variant(WATCHOS-RA "watchOS Release+Asserts" WATCHOS RA "Release+Asserts")
|
configure_target_variant(WATCHOS-RA "watchOS Release+Asserts" WATCHOS RA "Release+Asserts")
|
||||||
configure_target_variant(WATCHOS-R "watchOS Release" WATCHOS R "Release")
|
configure_target_variant(WATCHOS-R "watchOS Release" WATCHOS R "Release")
|
||||||
@@ -113,7 +120,8 @@ if(swift_build_watchos_simulator)
|
|||||||
configure_sdk_darwin(
|
configure_sdk_darwin(
|
||||||
WATCHOS_SIMULATOR "watchOS Simulator" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_WATCHOS}"
|
WATCHOS_SIMULATOR "watchOS Simulator" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_WATCHOS}"
|
||||||
watchsimulator watchos watchos-simulator watchOS
|
watchsimulator watchos watchos-simulator watchOS
|
||||||
"${SUPPORTED_WATCHOS_SIMULATOR_ARCHS}")
|
"${SUPPORTED_WATCHOS_SIMULATOR_ARCHS}"
|
||||||
|
"${SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_WATCHOS}")
|
||||||
configure_target_variant(WATCHOS_SIMULATOR-DA "watchOS Debug+Asserts" WATCHOS_SIMULATOR DA "Debug+Asserts")
|
configure_target_variant(WATCHOS_SIMULATOR-DA "watchOS Debug+Asserts" WATCHOS_SIMULATOR DA "Debug+Asserts")
|
||||||
configure_target_variant(WATCHOS_SIMULATOR-RA "watchOS Release+Asserts" WATCHOS_SIMULATOR RA "Release+Asserts")
|
configure_target_variant(WATCHOS_SIMULATOR-RA "watchOS Release+Asserts" WATCHOS_SIMULATOR RA "Release+Asserts")
|
||||||
configure_target_variant(WATCHOS_SIMULATOR-R "watchOS Release" WATCHOS_SIMULATOR R "Release")
|
configure_target_variant(WATCHOS_SIMULATOR-R "watchOS Release" WATCHOS_SIMULATOR R "Release")
|
||||||
@@ -123,7 +131,8 @@ is_sdk_requested(XROS swift_build_xros)
|
|||||||
if(swift_build_xros)
|
if(swift_build_xros)
|
||||||
configure_sdk_darwin(
|
configure_sdk_darwin(
|
||||||
XROS "xrOS" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_XROS}"
|
XROS "xrOS" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_XROS}"
|
||||||
xros xros xros visionOS "${SUPPORTED_XROS_ARCHS}")
|
xros xros xros visionOS "${SUPPORTED_XROS_ARCHS}"
|
||||||
|
"${SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_XROS}")
|
||||||
configure_target_variant(XROS-DA "xrOS Debug+Asserts" XROS DA "Debug+Asserts")
|
configure_target_variant(XROS-DA "xrOS Debug+Asserts" XROS DA "Debug+Asserts")
|
||||||
configure_target_variant(XROS-RA "xrOS Release+Asserts" XROS RA "Release+Asserts")
|
configure_target_variant(XROS-RA "xrOS Release+Asserts" XROS RA "Release+Asserts")
|
||||||
configure_target_variant(XROS-R "xrOS Release" XROS R "Release")
|
configure_target_variant(XROS-R "xrOS Release" XROS R "Release")
|
||||||
@@ -134,7 +143,8 @@ if(swift_build_xros_simulator)
|
|||||||
configure_sdk_darwin(
|
configure_sdk_darwin(
|
||||||
XROS_SIMULATOR "xrOS Simulator" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_XROS}"
|
XROS_SIMULATOR "xrOS Simulator" "${SWIFT_DARWIN_DEPLOYMENT_VERSION_XROS}"
|
||||||
xrsimulator xros xros-simulator visionOS
|
xrsimulator xros xros-simulator visionOS
|
||||||
"${SUPPORTED_XROS_SIMULATOR_ARCHS}")
|
"${SUPPORTED_XROS_SIMULATOR_ARCHS}"
|
||||||
|
"${SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_XROS}")
|
||||||
|
|
||||||
configure_target_variant(
|
configure_target_variant(
|
||||||
XROS_SIMULATOR-DA "xrOS Simulator Debug+Asserts" XROS_SIMULATOR DA "Debug+Asserts")
|
XROS_SIMULATOR-DA "xrOS Simulator Debug+Asserts" XROS_SIMULATOR DA "Debug+Asserts")
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ function(_report_sdk prefix)
|
|||||||
message(STATUS " Version: ${SWIFT_SDK_${prefix}_VERSION}")
|
message(STATUS " Version: ${SWIFT_SDK_${prefix}_VERSION}")
|
||||||
message(STATUS " Build number: ${SWIFT_SDK_${prefix}_BUILD_NUMBER}")
|
message(STATUS " Build number: ${SWIFT_SDK_${prefix}_BUILD_NUMBER}")
|
||||||
message(STATUS " Deployment version: ${SWIFT_SDK_${prefix}_DEPLOYMENT_VERSION}")
|
message(STATUS " Deployment version: ${SWIFT_SDK_${prefix}_DEPLOYMENT_VERSION}")
|
||||||
|
message(STATUS " Deployment version for tests: ${SWIFT_SDK_${prefix}_TEST_DEPLOYMENT_VERSION}")
|
||||||
message(STATUS " Triple name: ${SWIFT_SDK_${prefix}_TRIPLE_NAME}")
|
message(STATUS " Triple name: ${SWIFT_SDK_${prefix}_TRIPLE_NAME}")
|
||||||
message(STATUS " Simulator: ${SWIFT_SDK_${prefix}_IS_SIMULATOR}")
|
message(STATUS " Simulator: ${SWIFT_SDK_${prefix}_IS_SIMULATOR}")
|
||||||
endif()
|
endif()
|
||||||
@@ -138,6 +139,7 @@ endfunction()
|
|||||||
# triple_name # The name used in Swift's -triple
|
# triple_name # The name used in Swift's -triple
|
||||||
# availability_name # The name used in Swift's @availability
|
# availability_name # The name used in Swift's @availability
|
||||||
# architectures # A list of architectures this SDK supports
|
# architectures # A list of architectures this SDK supports
|
||||||
|
# test_deployment_version # Deployment versions to be used for tests
|
||||||
# )
|
# )
|
||||||
#
|
#
|
||||||
# Sadly there are three OS naming conventions.
|
# Sadly there are three OS naming conventions.
|
||||||
@@ -170,7 +172,8 @@ endfunction()
|
|||||||
#
|
#
|
||||||
macro(configure_sdk_darwin
|
macro(configure_sdk_darwin
|
||||||
prefix name deployment_version xcrun_name
|
prefix name deployment_version xcrun_name
|
||||||
triple_name module_name availability_name architectures)
|
triple_name module_name availability_name architectures
|
||||||
|
test_deployment_version)
|
||||||
# Note: this has to be implemented as a macro because it sets global
|
# Note: this has to be implemented as a macro because it sets global
|
||||||
# variables.
|
# variables.
|
||||||
|
|
||||||
@@ -202,6 +205,11 @@ macro(configure_sdk_darwin
|
|||||||
# Set other variables.
|
# Set other variables.
|
||||||
set(SWIFT_SDK_${prefix}_NAME "${name}")
|
set(SWIFT_SDK_${prefix}_NAME "${name}")
|
||||||
set(SWIFT_SDK_${prefix}_DEPLOYMENT_VERSION "${deployment_version}")
|
set(SWIFT_SDK_${prefix}_DEPLOYMENT_VERSION "${deployment_version}")
|
||||||
|
if(NOT "${test_deployment_version}" STREQUAL "")
|
||||||
|
set(SWIFT_SDK_${prefix}_TEST_DEPLOYMENT_VERSION "${test_deployment_version}")
|
||||||
|
else()
|
||||||
|
set(SWIFT_SDK_${prefix}_TEST_DEPLOYMENT_VERSION "${deployment_version}")
|
||||||
|
endif()
|
||||||
set(SWIFT_SDK_${prefix}_LIB_SUBDIR "${xcrun_name}")
|
set(SWIFT_SDK_${prefix}_LIB_SUBDIR "${xcrun_name}")
|
||||||
set(SWIFT_SDK_${prefix}_TRIPLE_NAME "${triple_name}")
|
set(SWIFT_SDK_${prefix}_TRIPLE_NAME "${triple_name}")
|
||||||
set(SWIFT_SDK_${prefix}_AVAILABILITY_NAME "${availability_name}")
|
set(SWIFT_SDK_${prefix}_AVAILABILITY_NAME "${availability_name}")
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ function(get_swift_test_versioned_target_triple variant_triple_out_var sdk arch
|
|||||||
# Use the macCatalyst target triple and compiler resources for the iOS-like build flavor.
|
# Use the macCatalyst target triple and compiler resources for the iOS-like build flavor.
|
||||||
set(variant_triple "${arch}-apple-ios13.1-macabi")
|
set(variant_triple "${arch}-apple-ios13.1-macabi")
|
||||||
else()
|
else()
|
||||||
get_versioned_target_triple(variant_triple ${sdk} ${arch} "${SWIFT_SDK_${sdk}_DEPLOYMENT_VERSION}")
|
get_versioned_target_triple(variant_triple ${sdk} ${arch} "${SWIFT_SDK_${sdk}_TEST_DEPLOYMENT_VERSION}")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set(${variant_triple_out_var} "${variant_triple}" PARENT_SCOPE)
|
set(${variant_triple_out_var} "${variant_triple}" PARENT_SCOPE)
|
||||||
|
|||||||
@@ -549,6 +549,27 @@ def create_argument_parser():
|
|||||||
metavar='MAJOR.MINOR',
|
metavar='MAJOR.MINOR',
|
||||||
help='minimum deployment target version for xrOS')
|
help='minimum deployment target version for xrOS')
|
||||||
|
|
||||||
|
option('--darwin-test-deployment-version-osx', store,
|
||||||
|
default=defaults.DARWIN_DEPLOYMENT_VERSION_OSX,
|
||||||
|
metavar='MAJOR.MINOR',
|
||||||
|
help='deployment target version to use when building macOS tests')
|
||||||
|
option('--darwin-test-deployment-version-ios', store,
|
||||||
|
default=defaults.DARWIN_DEPLOYMENT_VERSION_IOS,
|
||||||
|
metavar='MAJOR.MINOR',
|
||||||
|
help='deployment target version to use when building iOS tests')
|
||||||
|
option('--darwin-test-deployment-version-tvos', store,
|
||||||
|
default=defaults.DARWIN_DEPLOYMENT_VERSION_TVOS,
|
||||||
|
metavar='MAJOR.MINOR',
|
||||||
|
help='deployment target version to use when building tvOS tests')
|
||||||
|
option('--darwin-test-deployment-version-watchos', store,
|
||||||
|
default=defaults.DARWIN_DEPLOYMENT_VERSION_WATCHOS,
|
||||||
|
metavar='MAJOR.MINOR',
|
||||||
|
help='deployment target version to use when building watchOS tests')
|
||||||
|
option('--darwin-test-deployment-version-xros', store,
|
||||||
|
default=defaults.DARWIN_DEPLOYMENT_VERSION_XROS,
|
||||||
|
metavar='MAJOR.MINOR',
|
||||||
|
help='deployment target version to use when building visionOS tests')
|
||||||
|
|
||||||
option('--extra-cmake-options', append,
|
option('--extra-cmake-options', append,
|
||||||
type=argparse.ShellSplitType(),
|
type=argparse.ShellSplitType(),
|
||||||
help='Pass through extra options to CMake in the form of comma '
|
help='Pass through extra options to CMake in the form of comma '
|
||||||
|
|||||||
@@ -169,6 +169,16 @@ EXPECTED_DEFAULTS = {
|
|||||||
defaults.DARWIN_DEPLOYMENT_VERSION_WATCHOS,
|
defaults.DARWIN_DEPLOYMENT_VERSION_WATCHOS,
|
||||||
'darwin_deployment_version_xros':
|
'darwin_deployment_version_xros':
|
||||||
defaults.DARWIN_DEPLOYMENT_VERSION_XROS,
|
defaults.DARWIN_DEPLOYMENT_VERSION_XROS,
|
||||||
|
'darwin_test_deployment_version_osx':
|
||||||
|
defaults.DARWIN_DEPLOYMENT_VERSION_OSX,
|
||||||
|
'darwin_test_deployment_version_ios':
|
||||||
|
defaults.DARWIN_DEPLOYMENT_VERSION_IOS,
|
||||||
|
'darwin_test_deployment_version_tvos':
|
||||||
|
defaults.DARWIN_DEPLOYMENT_VERSION_TVOS,
|
||||||
|
'darwin_test_deployment_version_watchos':
|
||||||
|
defaults.DARWIN_DEPLOYMENT_VERSION_WATCHOS,
|
||||||
|
'darwin_test_deployment_version_xros':
|
||||||
|
defaults.DARWIN_DEPLOYMENT_VERSION_XROS,
|
||||||
'darwin_symroot_path_filters': [],
|
'darwin_symroot_path_filters': [],
|
||||||
'darwin_xcrun_toolchain': None,
|
'darwin_xcrun_toolchain': None,
|
||||||
'distcc': False,
|
'distcc': False,
|
||||||
@@ -805,6 +815,11 @@ EXPECTED_OPTIONS = [
|
|||||||
StrOption('--darwin-deployment-version-tvos'),
|
StrOption('--darwin-deployment-version-tvos'),
|
||||||
StrOption('--darwin-deployment-version-watchos'),
|
StrOption('--darwin-deployment-version-watchos'),
|
||||||
StrOption('--darwin-deployment-version-xros'),
|
StrOption('--darwin-deployment-version-xros'),
|
||||||
|
StrOption('--darwin-test-deployment-version-osx'),
|
||||||
|
StrOption('--darwin-test-deployment-version-ios'),
|
||||||
|
StrOption('--darwin-test-deployment-version-tvos'),
|
||||||
|
StrOption('--darwin-test-deployment-version-watchos'),
|
||||||
|
StrOption('--darwin-test-deployment-version-xros'),
|
||||||
DisableOption('--skip-test-xros-host', dest='test_xros_host'),
|
DisableOption('--skip-test-xros-host', dest='test_xros_host'),
|
||||||
DisableOption('--skip-test-xros', dest='test_xros'),
|
DisableOption('--skip-test-xros', dest='test_xros'),
|
||||||
DisableOption('--skip-test-xros-simulator', dest='test_xros_simulator'),
|
DisableOption('--skip-test-xros-simulator', dest='test_xros_simulator'),
|
||||||
|
|||||||
@@ -106,6 +106,9 @@ class Swift(product.Product):
|
|||||||
self.cmake_options.extend(
|
self.cmake_options.extend(
|
||||||
self._enable_new_runtime_build)
|
self._enable_new_runtime_build)
|
||||||
|
|
||||||
|
self.cmake_options.extend(
|
||||||
|
self._darwin_test_deployment_versions)
|
||||||
|
|
||||||
self.cmake_options.extend_raw(self.args.extra_swift_cmake_options)
|
self.cmake_options.extend_raw(self.args.extra_swift_cmake_options)
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
@@ -307,6 +310,19 @@ updated without updating swift.py?")
|
|||||||
return [('SWIFT_ENABLE_NEW_RUNTIME_BUILD:BOOL',
|
return [('SWIFT_ENABLE_NEW_RUNTIME_BUILD:BOOL',
|
||||||
self.args.enable_new_runtime_build)]
|
self.args.enable_new_runtime_build)]
|
||||||
|
|
||||||
|
@property
|
||||||
|
def _darwin_test_deployment_versions(self):
|
||||||
|
return [('SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_OSX:STRING',
|
||||||
|
self.args.darwin_test_deployment_version_osx),
|
||||||
|
('SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_IOS:STRING',
|
||||||
|
self.args.darwin_test_deployment_version_ios),
|
||||||
|
('SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_TVOS:STRING',
|
||||||
|
self.args.darwin_test_deployment_version_tvos),
|
||||||
|
('SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_WATCHOS:STRING',
|
||||||
|
self.args.darwin_test_deployment_version_watchos),
|
||||||
|
('SWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_XROS:STRING',
|
||||||
|
self.args.darwin_test_deployment_version_xros)]
|
||||||
|
|
||||||
def _handle_swift_debuginfo_non_lto_args(self):
|
def _handle_swift_debuginfo_non_lto_args(self):
|
||||||
if ('swift_debuginfo_non_lto_args' not in self.args
|
if ('swift_debuginfo_non_lto_args' not in self.args
|
||||||
or self.args.swift_debuginfo_non_lto_args is None):
|
or self.args.swift_debuginfo_non_lto_args is None):
|
||||||
|
|||||||
@@ -74,7 +74,12 @@ class SwiftTestCase(unittest.TestCase):
|
|||||||
build_swift_private_stdlib=True,
|
build_swift_private_stdlib=True,
|
||||||
swift_tools_ld64_lto_codegen_only_for_supporting_targets=False,
|
swift_tools_ld64_lto_codegen_only_for_supporting_targets=False,
|
||||||
build_stdlib_docs=False,
|
build_stdlib_docs=False,
|
||||||
enable_new_runtime_build=False)
|
enable_new_runtime_build=False,
|
||||||
|
darwin_test_deployment_version_osx="10.9",
|
||||||
|
darwin_test_deployment_version_ios="15.0",
|
||||||
|
darwin_test_deployment_version_tvos="14.0",
|
||||||
|
darwin_test_deployment_version_watchos="6.0",
|
||||||
|
darwin_test_deployment_version_xros="1.0")
|
||||||
|
|
||||||
# Setup shell
|
# Setup shell
|
||||||
shell.dry_run = True
|
shell.dry_run = True
|
||||||
@@ -126,6 +131,11 @@ class SwiftTestCase(unittest.TestCase):
|
|||||||
'-USWIFT_DEBUGINFO_NON_LTO_ARGS',
|
'-USWIFT_DEBUGINFO_NON_LTO_ARGS',
|
||||||
'-DSWIFT_STDLIB_BUILD_SYMBOL_GRAPHS:BOOL=FALSE',
|
'-DSWIFT_STDLIB_BUILD_SYMBOL_GRAPHS:BOOL=FALSE',
|
||||||
'-DSWIFT_ENABLE_NEW_RUNTIME_BUILD:BOOL=FALSE',
|
'-DSWIFT_ENABLE_NEW_RUNTIME_BUILD:BOOL=FALSE',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_OSX:STRING=10.9',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_IOS:STRING=15.0',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_TVOS:STRING=14.0',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_WATCHOS:STRING=6.0',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_XROS:STRING=1.0',
|
||||||
'-DHELLO=YES',
|
'-DHELLO=YES',
|
||||||
]
|
]
|
||||||
self.assertEqual(set(swift.cmake_options), set(expected))
|
self.assertEqual(set(swift.cmake_options), set(expected))
|
||||||
@@ -163,6 +173,11 @@ class SwiftTestCase(unittest.TestCase):
|
|||||||
'-USWIFT_DEBUGINFO_NON_LTO_ARGS',
|
'-USWIFT_DEBUGINFO_NON_LTO_ARGS',
|
||||||
'-DSWIFT_STDLIB_BUILD_SYMBOL_GRAPHS:BOOL=FALSE',
|
'-DSWIFT_STDLIB_BUILD_SYMBOL_GRAPHS:BOOL=FALSE',
|
||||||
'-DSWIFT_ENABLE_NEW_RUNTIME_BUILD:BOOL=FALSE',
|
'-DSWIFT_ENABLE_NEW_RUNTIME_BUILD:BOOL=FALSE',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_OSX:STRING=10.9',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_IOS:STRING=15.0',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_TVOS:STRING=14.0',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_WATCHOS:STRING=6.0',
|
||||||
|
'-DSWIFT_DARWIN_TEST_DEPLOYMENT_VERSION_XROS:STRING=1.0',
|
||||||
'-DHELLO=YES',
|
'-DHELLO=YES',
|
||||||
]
|
]
|
||||||
self.assertEqual(set(swift.cmake_options), set(flags_set))
|
self.assertEqual(set(swift.cmake_options), set(flags_set))
|
||||||
|
|||||||
Reference in New Issue
Block a user