Skip to content

Commit 0b479fb

Browse files
committed
Roll back to watchOS 6.0 to keep armv7k support
While the swift compiler in Xcode links against tbd files in the sdk that contain an armv7k slice, the open source swift toolchain links against the stdlib dylb that is in the toolchain itself. This means that we cannot drop support for armv7k support in the stdlib dylib without losing support for building armv7k when back deploying to older watch targets. For now, roll back the recent deployment target bump from 9.0 to 6.0 so that we keep armv7k and i386 simulator. rdar://135560598 (cherry picked from commit 46a83be) (cherry picked from commit aa9de4d)
1 parent d3f745b commit 0b479fb

File tree

5 files changed

+9
-7
lines changed

5 files changed

+9
-7
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -565,7 +565,7 @@ set(SWIFT_DARWIN_DEPLOYMENT_VERSION_IOS "16.0" CACHE STRING
565565
set(SWIFT_DARWIN_DEPLOYMENT_VERSION_TVOS "16.0" CACHE STRING
566566
"Minimum deployment target version for tvOS")
567567

568-
set(SWIFT_DARWIN_DEPLOYMENT_VERSION_WATCHOS "9.0" CACHE STRING
568+
set(SWIFT_DARWIN_DEPLOYMENT_VERSION_WATCHOS "6.0" CACHE STRING
569569
"Minimum deployment target version for watchOS")
570570

571571
set(SWIFT_DARWIN_DEPLOYMENT_VERSION_XROS "1.0" CACHE STRING

benchmark/cmake/modules/AddSwiftBenchmarkSuite.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ macro(configure_sdks_darwin)
113113
set(macosx_ver "13.0")
114114
set(iphoneos_ver "16.0")
115115
set(appletvos_ver "16.0")
116-
set(watchos_ver "9.0")
116+
set(watchos_ver "6.0")
117117

118118
set(macosx_vendor "apple")
119119
set(iphoneos_vendor "apple")

utils/build-script-impl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ KNOWN_SETTINGS=(
104104
darwin-deployment-version-ios "16.0" "minimum deployment target version for iOS"
105105
darwin-deployment-version-osx "13.0" "minimum deployment target version for OS X"
106106
darwin-deployment-version-tvos "16.0" "minimum deployment target version for tvOS"
107-
darwin-deployment-version-watchos "9.0" "minimum deployment target version for watchOS"
107+
darwin-deployment-version-watchos "6.0" "minimum deployment target version for watchOS"
108108
darwin-deployment-version-xros "1.0" "minimum deployment target version for xrOS"
109109
darwin-install-extract-symbols "" "whether to extract symbols with dsymutil during installations"
110110
darwin-install-extract-symbols-use-just-built-dsymutil "1" "whether we should extract symbols using the just built dsymutil"

utils/build_swift/build_swift/defaults.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,9 @@
5555
DARWIN_DEPLOYMENT_VERSION_OSX = '13.0'
5656
DARWIN_DEPLOYMENT_VERSION_IOS = '16.0'
5757
DARWIN_DEPLOYMENT_VERSION_TVOS = '16.0'
58-
DARWIN_DEPLOYMENT_VERSION_WATCHOS = '9.0'
58+
# FIXME: 9.0 would be the aligned watchOS version, but is held back to keep
59+
# support for armv7k (dropped in 9) and i386 simulator (dropped in 7)
60+
DARWIN_DEPLOYMENT_VERSION_WATCHOS = '6.0'
5961
DARWIN_DEPLOYMENT_VERSION_XROS = '1.0'
6062

6163
UNIX_INSTALL_PREFIX = '/usr'

utils/gyb_foundation_support.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ def ObjectiveCBridgeableImplementationForNSValue(Type):
1212
_getObjCTypeEncoding({Type}.self)) == 0,
1313
"NSValue does not contain the right type to bridge to {Type}")
1414
result = {Type}()
15-
if #available(OSX 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, *) {{
15+
if #available(OSX 13.0, iOS 16.0, tvOS 16.0, watchOS 6.0, *) {{
1616
source.getValue(&result!, size: MemoryLayout<{Type}>.size)
1717
}} else {{
1818
source.getValue(&result!)
@@ -27,7 +27,7 @@ def ObjectiveCBridgeableImplementationForNSValue(Type):
2727
return false
2828
}}
2929
result = {Type}()
30-
if #available(OSX 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, *) {{
30+
if #available(OSX 13.0, iOS 16.0, tvOS 16.0, watchOS 6.0, *) {{
3131
source.getValue(&result!, size: MemoryLayout<{Type}>.size)
3232
}} else {{
3333
source.getValue(&result!)
@@ -42,7 +42,7 @@ def ObjectiveCBridgeableImplementationForNSValue(Type):
4242
_getObjCTypeEncoding({Type}.self)) == 0,
4343
"NSValue does not contain the right type to bridge to {Type}")
4444
var result = {Type}()
45-
if #available(OSX 13.0, iOS 16.0, tvOS 16.0, watchOS 9.0, *) {{
45+
if #available(OSX 13.0, iOS 16.0, tvOS 16.0, watchOS 6.0, *) {{
4646
unwrappedSource.getValue(&result, size: MemoryLayout<{Type}>.size)
4747
}} else {{
4848
unwrappedSource.getValue(&result)

0 commit comments

Comments
 (0)