Update CMakeLists.txt to fix MacOS build (#14160)

Co-authored-by: sfan5 <sfan5@live.de>
This commit is contained in:
superfloh247 2023-12-27 22:19:56 +01:00 committed by GitHub
parent 93dfa8a6d8
commit 4f1dbb127a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 8 additions and 3 deletions

View File

@ -316,9 +316,14 @@ endif()
# On clang and gcc, some functionalities of std::atomic require -latomic.
# See <https://en.cppreference.com/w/cpp/atomic/atomic#Notes>.
if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang"
OR CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
set(PLATFORM_LIBS ${PLATFORM_LIBS} atomic)
# Note that find_library does not reliably find it so we have to resort to this.
# Also, passing -latomic is not always the same as adding atomic to the library list.
include(CheckCSourceCompiles)
set(CMAKE_REQUIRED_LIBRARIES "-latomic")
check_c_source_compiles("int main(){}" HAVE_LINK_ATOMIC)
set(CMAKE_REQUIRED_LIBRARIES "")
if(HAVE_LINK_ATOMIC)
set(PLATFORM_LIBS ${PLATFORM_LIBS} "-latomic")
endif()
check_include_files(endian.h HAVE_ENDIAN_H)