Skip to content

Commit bead2cd

Browse files
committed
Don't build arm64e slices of the back-deployed libswift_Concurrency.dylib.
The arm64e ABI is not stable, so there is no reason to build or ship arm64e slices of the back-deployed libswift_Concurrency.dylib. Moreover, these slices interact poorly with bitcode_strip tool, resulting in a shared library that iOS will refuse to load in certain circumstances. Fixes rdar://85752735 / FB9780976. Thank you to Jay Muthialu and Keith Smiley for helping debug this issue!
1 parent e6979d2 commit bead2cd

File tree

1 file changed

+4
-0
lines changed

1 file changed

+4
-0
lines changed

stdlib/public/BackDeployConcurrency/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ include(AddSwiftStdlib)
2323
list(REMOVE_ITEM SWIFT_SDK_IOS_ARCHITECTURES "armv7" "armv7s")
2424
list(REMOVE_ITEM SWIFT_SDK_IOS_SIMULATOR_ARCHITECTURES "i386")
2525

26+
# Don't build the libraries for arm64e; it's not a stable ABI.
27+
list(REMOVE_ITEM SWIFT_SDK_IOS_ARCHITECTURES "arm64e")
28+
list(REMOVE_ITEM SWIFT_SDK_OSX_ARCHITECTURES "arm64e")
29+
2630
# The back-deployed library can only be shared.
2731
list(APPEND SWIFT_STDLIB_LIBRARY_BUILD_TYPES SHARED)
2832

0 commit comments

Comments
 (0)