Lines 104-109
IF(UNIX)
Link Here
|
104 |
MY_SEARCH_LIBS(timer_create rt LIBRT) |
104 |
MY_SEARCH_LIBS(timer_create rt LIBRT) |
105 |
MY_SEARCH_LIBS(backtrace execinfo LIBEXECINFO) |
105 |
MY_SEARCH_LIBS(backtrace execinfo LIBEXECINFO) |
106 |
|
106 |
|
|
|
107 |
SET(ATOMIC_TEST_SOURCE " |
108 |
int main() |
109 |
{ |
110 |
char x=1; |
111 |
short y=1; |
112 |
int z=1; |
113 |
long w = 1; |
114 |
long long s = 1; |
115 |
x = __atomic_add_fetch(&x, 1, __ATOMIC_SEQ_CST); |
116 |
y = __atomic_add_fetch(&y, 1, __ATOMIC_SEQ_CST); |
117 |
z = __atomic_add_fetch(&z, 1, __ATOMIC_SEQ_CST); |
118 |
w = __atomic_add_fetch(&w, 1, __ATOMIC_SEQ_CST); |
119 |
return (int)__atomic_load_n(&s, __ATOMIC_SEQ_CST); |
120 |
}" ) |
121 |
CHECK_CXX_SOURCE_COMPILES("${ATOMIC_TEST_SOURCE}" ATOMICS_ARE_BUILTIN) |
122 |
IF(NOT ATOMICS_ARE_BUILTIN) |
123 |
MY_SEARCH_LIBS(atomic_thread_fence atomic LIBATOMIC) |
124 |
ENDIF() |
125 |
|
107 |
LIST(APPEND CMAKE_REQUIRED_LIBRARIES |
126 |
LIST(APPEND CMAKE_REQUIRED_LIBRARIES |
108 |
${LIBM} ${LIBNSL} ${LIBBIND} ${LIBSOCKET} ${LIBDL} |
127 |
${LIBM} ${LIBNSL} ${LIBBIND} ${LIBSOCKET} ${LIBDL} |
109 |
${CMAKE_THREAD_LIBS_INIT} ${LIBRT} ${LIBEXECINFO} |
128 |
${CMAKE_THREAD_LIBS_INIT} ${LIBRT} ${LIBEXECINFO} |