Reapply '[BuildSystem] Stop building for i386-watch-simulator (#77692)' (#79018)

* Reapply '[BuildSystem] Stop building for i386-watch-simulator (#77692)'

    * [BuildSystem] Stop building for i386-watch-simulator

    In Xcode16 it is not supported.

This initially broke client projects who were still building the legacy
architecture but now that's resolved.
This commit is contained in:
Cyndy Ishida
2025-01-31 15:04:28 -08:00
committed by GitHub
parent 854fa5c4e3
commit 3232df4d67
10 changed files with 10 additions and 58 deletions

View File

@@ -3,7 +3,7 @@ set(SUPPORTED_IOS_SIMULATOR_ARCHS "x86_64;arm64")
set(SUPPORTED_TVOS_ARCHS "arm64")
set(SUPPORTED_TVOS_SIMULATOR_ARCHS "x86_64;arm64")
set(SUPPORTED_WATCHOS_ARCHS "armv7k;arm64_32")
set(SUPPORTED_WATCHOS_SIMULATOR_ARCHS "i386;x86_64;arm64")
set(SUPPORTED_WATCHOS_SIMULATOR_ARCHS "x86_64;arm64")
set(SUPPORTED_OSX_ARCHS "x86_64;arm64")
set(SUPPORTED_XROS_ARCHS "arm64;arm64e")
set(SUPPORTED_XROS_SIMULATOR_ARCHS "arm64")

View File

@@ -91,10 +91,6 @@ function(remove_sdk_unsupported_archs name os sdk_path deployment_version archit
# 32-bit watchOS is not listed explicitly in SDK settings.
message(STATUS "Assuming ${name} SDK at ${sdk_path} supports architecture ${arch}")
list(APPEND architectures ${arch})
elseif(arch STREQUAL "i386" AND os STREQUAL "watchsimulator")
# 32-bit watchOS simulator is not listed explicitly in SDK settings.
message(STATUS "Assuming ${name} SDK at ${sdk_path} supports architecture ${arch}")
list(APPEND architectures ${arch})
else()
message(STATUS "${name} SDK at ${sdk_path} does not support architecture ${arch}")
endif()

View File

@@ -487,7 +487,6 @@ function verify_host_is_supported() {
| appletvsimulator-x86_64 \
| appletvsimulator-arm64 \
| appletvos-arm64 \
| watchsimulator-i386 \
| watchsimulator-x86_64 \
| watchsimulator-arm64 \
| watchos-armv7k \
@@ -666,13 +665,6 @@ function set_build_options_for_host() {
SWIFT_HOST_VARIANT_SDK="TVOS"
cmake_osx_deployment_target=""
;;
watchsimulator-i386)
SWIFT_HOST_TRIPLE="i386-apple-watchos${DARWIN_DEPLOYMENT_VERSION_WATCHOS}-simulator"
llvm_target_arch="X86"
SWIFT_HOST_VARIANT_SDK="WATCHOS_SIMULATOR"
cmake_osx_deployment_target=""
;;
watchsimulator-x86_64)
SWIFT_HOST_TRIPLE="x86_64-apple-watchos${DARWIN_DEPLOYMENT_VERSION_WATCHOS}-simulator"
llvm_target_arch="X86"

View File

@@ -1272,10 +1272,6 @@ def create_argument_parser():
option('--skip-test-ios-simulator',
toggle_false('test_ios_simulator'),
help='skip testing iOS simulator targets')
option('--skip-test-watchos-32bit-simulator',
toggle_false('test_watchos_32bit_simulator'),
default=False,
help='skip testing watchOS 32 bit simulator targets')
option('--skip-test-ios-host',
toggle_false('test_ios_host'),
help='skip testing iOS device targets on the host machine (the '

View File

@@ -293,7 +293,6 @@ EXPECTED_DEFAULTS = {
'test_cygwin': False,
'test_freebsd': False,
'test_ios': False,
'test_watchos_32bit_simulator': False,
'test_ios_host': False,
'test_ios_simulator': False,
'test_linux': False,
@@ -739,8 +738,6 @@ EXPECTED_OPTIONS = [
DisableOption('--skip-test-cygwin', dest='test_cygwin'),
DisableOption('--skip-test-freebsd', dest='test_freebsd'),
DisableOption('--skip-test-ios', dest='test_ios'),
DisableOption('--skip-test-watchos-32bit-simulator',
dest='test_watchos_32bit_simulator'),
DisableOption('--skip-test-ios-host', dest='test_ios_host'),
DisableOption('--skip-test-ios-simulator', dest='test_ios_simulator'),
DisableOption('--skip-test-linux', dest='test_linux'),

View File

@@ -63,7 +63,6 @@ def get_verify_resource_dir_modules_commands(
('iphonesimulator', 'x86_64', 'x86_64-apple-ios7.0'),
('macosx', 'x86_64', 'x86_64-apple-macosx10.9'),
('watchos', 'armv7k', 'armv7k-apple-watchos2.0'),
('watchsimulator', 'i386', 'i386-apple-watchos2.0'),
]
commands = []

View File

@@ -323,9 +323,6 @@ class HostSpecificConfiguration(object):
def __platforms_archs_to_skip_test(self, args, stage_dependent_args, host_target):
platforms_archs_to_skip_test = set()
if not stage_dependent_args.test_watchos_32bit_simulator:
platforms_archs_to_skip_test.add(
StdlibDeploymentTarget.AppleWatchSimulator.i386)
if host_target == StdlibDeploymentTarget.OSX.x86_64.name:
platforms_archs_to_skip_test.add(
StdlibDeploymentTarget.iOSSimulator.arm64)
@@ -341,8 +338,6 @@ class HostSpecificConfiguration(object):
StdlibDeploymentTarget.iOSSimulator.x86_64)
platforms_archs_to_skip_test.add(
StdlibDeploymentTarget.AppleTVSimulator.x86_64)
platforms_archs_to_skip_test.add(
StdlibDeploymentTarget.AppleWatchSimulator.i386)
platforms_archs_to_skip_test.add(
StdlibDeploymentTarget.AppleWatchSimulator.x86_64)

View File

@@ -303,13 +303,6 @@ class CMakeProduct(product.Product):
swift_host_variant_sdk = 'TVOS'
cmake_osx_deployment_target = None
elif host_target == 'watchsimulator-i386':
swift_host_triple = 'i386-apple-watchos{}-simulator'.format(
self.args.darwin_deployment_version_watchos)
llvm_target_arch = 'X86'
swift_host_variant_sdk = 'WATCHOS_SIMULATOR'
cmake_osx_deployment_target = None
elif host_target == 'watchsimulator-x86_64':
swift_host_triple = 'x86_64-apple-watchos{}-simulator'.format(
self.args.darwin_deployment_version_watchos)

View File

@@ -258,7 +258,7 @@ class StdlibDeploymentTarget(object):
sdk_name="WATCHOS")
AppleWatchSimulator = DarwinPlatform("watchsimulator",
archs=["i386", "x86_64", "arm64"],
archs=["x86_64", "arm64"],
sdk_name="WATCHOS_SIMULATOR",
is_simulator=True)

View File

@@ -191,9 +191,9 @@ class ToolchainTestCase(unittest.TestCase):
'build_watchos_device')
test_should_skip_building_watchos_sim =\
generate_should_skip_building_platform(
'watchsimulator-i386',
'watchsimulator-x86_64',
'WATCHOS_SIMULATOR',
'swift-test-stdlib-watchsimulator-i386',
'swift-test-stdlib-watchsimulator-x86_64',
'build_watchos_simulator')
def generate_should_build_full_targets_when_test(test_arg_name):
@@ -233,7 +233,7 @@ class ToolchainTestCase(unittest.TestCase):
'stress_test')
def generate_should_skip_testing_platform(
host_target, build_arg_name, test_arg_name):
host_target, build_arg_name, test_arg_name, extra_test_arg_name=None):
def test(self):
args = self.default_args()
setattr(args, build_arg_name, True)
@@ -245,6 +245,8 @@ class ToolchainTestCase(unittest.TestCase):
self.assertEqual(len(before.swift_test_run_targets), 0)
setattr(args, test_arg_name, True)
if extra_test_arg_name is not None:
setattr(args, extra_test_arg_name, True)
after = HostSpecificConfiguration(host_target, args)
self.assertIn('check-swift-{}'.format(host_target),
after.swift_test_run_targets)
@@ -290,27 +292,10 @@ class ToolchainTestCase(unittest.TestCase):
# NOTE: test_watchos_host is not supported in open-source Swift
test_should_skip_testing_watchos_sim =\
generate_should_skip_testing_platform(
'watchsimulator-i386',
'watchsimulator-x86_64',
'build_watchos_simulator',
'test_watchos_simulator')
def test_should_skip_testing_32bit_watchos(self):
host_target = 'watchsimulator-i386'
args = self.default_args()
args.build_watchos_simulator = True
args.test_watchos_simulator = True
args.test_watchos_32bit_simulator = False
args.host_target = host_target
args.stdlib_deployment_targets = [host_target]
args.build_stdlib_deployment_targets = 'all'
before = HostSpecificConfiguration(host_target, args)
self.assertEqual(len(before.swift_test_run_targets), 0)
args.test_watchos_32bit_simulator = True
after = HostSpecificConfiguration(host_target, args)
self.assertIn('check-swift-watchsimulator-i386',
after.swift_test_run_targets)
'test_watchos_simulator',
'test_watchos_64bit_simulator')
def generate_should_allow_testing_only_host(
host_target, build_arg_name, test_arg_name, host_test_arg_name):
@@ -681,7 +666,6 @@ class ToolchainTestCase(unittest.TestCase):
test_freebsd=False,
test_ios_host=False,
test_ios_simulator=False,
test_watchos_32bit_simulator=True,
test_linux=False,
test_optimize_for_size=False,
test_optimize_none_with_implicit_dynamic=False,