24 lines
681 B
CMake
24 lines
681 B
CMake
# Public Domain
|
|
|
|
# We're looking for pthreads only, while preferring the -pthread flag
|
|
set (CMAKE_THREAD_PREFER_PTHREAD ON)
|
|
set (THREADS_PREFER_PTHREAD_FLAG ON)
|
|
find_package (Threads)
|
|
|
|
# Prepares the given target for threads
|
|
function (add_threads target)
|
|
if (NOT Threads_FOUND OR NOT CMAKE_USE_PTHREADS_INIT)
|
|
message (FATAL_ERROR "pthreads not found")
|
|
endif ()
|
|
|
|
if (THREADS_HAVE_PTHREAD_ARG)
|
|
set_property (TARGET ${target} PROPERTY
|
|
COMPILE_OPTIONS "-pthread")
|
|
set_property (TARGET ${target} PROPERTY
|
|
INTERFACE_COMPILE_OPTIONS "-pthread")
|
|
endif ()
|
|
if (CMAKE_THREAD_LIBS_INIT)
|
|
target_link_libraries (${target} "${CMAKE_THREAD_LIBS_INIT}")
|
|
endif ()
|
|
endfunction ()
|