Skip to content

Commit 3431b85

Browse files
committed
Fix CMake configuration
1 parent 02d0d97 commit 3431b85

File tree

3 files changed

+18
-0
lines changed

3 files changed

+18
-0
lines changed

CMakeLists.txt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,18 @@ endif()
2525
include(CTest)
2626
include(SwiftSupport)
2727

28+
set(ATOMICS_SWIFT_FLAGS)
29+
set(ATOMICS_C_FLAGS)
30+
31+
if(CMAKE_Swift_COMPILER_VERSION VERSION_GREATER_EQUAL 5.9)
32+
list(APPEND ATOMICS_SWIFT_FLAGS
33+
"-enable-experimental-feature BuiltinModule"
34+
"-DATOMICS_NATIVE_BUILTINS"
35+
"-Xcc" "-DATOMICS_NATIVE_BUILTINS=1")
36+
list(APPEND ATOMICS_C_FLAGS
37+
"-DATOMICS_NATIVE_BUILTINS=1")
38+
endif()
39+
2840
add_subdirectory(Sources)
2941
if(BUILD_TESTING)
3042
add_subdirectory(Tests)

Sources/Atomics/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ add_library(Atomics
3131

3232
set_target_properties(Atomics PROPERTIES
3333
INTERFACE_INCLUDE_DIRECTORIES ${CMAKE_Swift_MODULE_DIRECTORY})
34+
target_compile_options(Atomics PUBLIC
35+
"$<$<COMPILE_LANGUAGE:Swift>:SHELL:${ATOMICS_SWIFT_FLAGS}>"
36+
"$<$<COMPILE_LANGUAGE:C,CXX>:SHELL:${ATOMICS_C_FLAGS}>")
3437
if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64")
3538
target_compile_options(Atomics PUBLIC
3639
"$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xcc -mcx16>")

Sources/_AtomicsShims/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ add_library(_AtomicsShims STATIC
1111
src/_AtomicsShims.c)
1212
target_include_directories(_AtomicsShims PUBLIC
1313
include)
14+
target_compile_options(_AtomicsShims PUBLIC
15+
"$<$<COMPILE_LANGUAGE:Swift>:SHELL:${ATOMICS_SWIFT_FLAGS}>"
16+
"$<$<COMPILE_LANGUAGE:C,CXX>:SHELL:${ATOMICS_C_FLAGS}>")
1417
if(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64|AMD64")
1518
target_compile_options(_AtomicsShims PUBLIC
1619
"$<$<COMPILE_LANGUAGE:Swift>:SHELL:-Xcc -mcx16>")

0 commit comments

Comments
 (0)