Line
Link Here
|
0 |
-- /llvm/cmake/modules/CheckAtomic.cmake |
0 |
++ /llvm/cmake/modules/CheckAtomic.cmake |
Lines 82-87
Link Here
|
82 |
endif() |
82 |
endif() |
83 |
endif() |
83 |
endif() |
84 |
|
84 |
|
|
|
85 |
# Set variable LLVM_ATOMIC_LIB specifying flags for linking against libatomic. |
86 |
if(HAVE_CXX_ATOMICS_WITH_LIB OR HAVE_CXX_ATOMICS64_WITH_LIB) |
87 |
# Use options --push-state, --as-needed and --pop-state if linker is known to support them. |
88 |
# Use single option -Wl of compiler driver to avoid incorrect re-ordering of options by CMake. |
89 |
if(LLVM_LINKER_IS_GNULD OR LLVM_LINKER_IS_GOLD OR LLVM_LINKER_IS_LLD OR LLVM_LINKER_IS_MOLD) |
90 |
set(LLVM_ATOMIC_LIB "-Wl,--push-state,--as-needed,-latomic,--pop-state") |
91 |
else() |
92 |
set(LLVM_ATOMIC_LIB "-latomic") |
93 |
endif() |
94 |
else() |
95 |
set(LLVM_ATOMIC_LIB) |
96 |
endif() |
97 |
|
85 |
## TODO: This define is only used for the legacy atomic operations in |
98 |
## TODO: This define is only used for the legacy atomic operations in |
86 |
## llvm's Atomic.h, which should be replaced. Other code simply |
99 |
## llvm's Atomic.h, which should be replaced. Other code simply |
87 |
## assumes C++11 <atomic> works. |
100 |
## assumes C++11 <atomic> works. |
88 |
-- /llvm/lib/Support/CMakeLists.txt |
101 |
++ /llvm/lib/Support/CMakeLists.txt |
Lines 59-67
Link Here
|
59 |
if( LLVM_ENABLE_TERMINFO ) |
59 |
if( LLVM_ENABLE_TERMINFO ) |
60 |
set(imported_libs ${imported_libs} Terminfo::terminfo) |
60 |
set(imported_libs ${imported_libs} Terminfo::terminfo) |
61 |
endif() |
61 |
endif() |
62 |
if( LLVM_ENABLE_THREADS AND (HAVE_LIBATOMIC OR HAVE_CXX_LIBATOMICS64) ) |
62 |
set(system_libs ${system_libs} ${LLVM_ATOMIC_LIB}) |
63 |
set(system_libs ${system_libs} atomic) |
|
|
64 |
endif() |
65 |
set(system_libs ${system_libs} ${LLVM_PTHREAD_LIB}) |
63 |
set(system_libs ${system_libs} ${LLVM_PTHREAD_LIB}) |
66 |
if( UNIX AND NOT (BEOS OR HAIKU) ) |
64 |
if( UNIX AND NOT (BEOS OR HAIKU) ) |
67 |
set(system_libs ${system_libs} m) |
65 |
set(system_libs ${system_libs} m) |
68 |
-- /llvm/tools/dsymutil/CMakeLists.txt |
66 |
++ /llvm/tools/dsymutil/CMakeLists.txt |
Lines 40-45
Link Here
|
40 |
target_link_libraries(dsymutil PRIVATE "-framework CoreFoundation") |
40 |
target_link_libraries(dsymutil PRIVATE "-framework CoreFoundation") |
41 |
endif(APPLE) |
41 |
endif(APPLE) |
42 |
|
42 |
|
43 |
if(HAVE_CXX_ATOMICS_WITH_LIB OR HAVE_CXX_ATOMICS64_WITH_LIB) |
43 |
target_link_libraries(dsymutil PRIVATE ${LLVM_ATOMIC_LIB}) |
44 |
target_link_libraries(dsymutil PRIVATE atomic) |
|
|
45 |
endif() |