Skip to content

Commit 13da0b6

Browse files
authored
Merge pull request swiftlang#38523 from rjmccall/link-libatomic-concurrency-5.5
[5.5] Link the concurrency runtime against libatomic on Linux and Android
2 parents 58f7dc4 + 7ae89b1 commit 13da0b6

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

stdlib/public/Concurrency/CMakeLists.txt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,15 @@ if(SWIFT_CONCURRENCY_USES_DISPATCH)
2929
endif()
3030
endif()
3131

32+
# Linux requires us to link an atomic library to use atomics.
33+
# Frustratingly, in many cases this isn't necessary because the
34+
# sequence is inlined, but we have some code that's just subtle
35+
# enough to turn into runtime calls.
36+
if(SWIFT_HOST_VARIANT STREQUAL "linux" OR
37+
SWIFT_HOST_VARIANT STREQUAL "android")
38+
list(APPEND SWIFT_RUNTIME_CONCURRENCY_SWIFT_LINK_FLAGS
39+
-latomic)
40+
endif()
3241

3342
add_swift_target_library(swift_Concurrency ${SWIFT_STDLIB_LIBRARY_BUILD_TYPES} IS_STDLIB
3443
../CompatibilityOverride/CompatibilityOverride.cpp

0 commit comments

Comments
 (0)