CMake: Always add pthread flags into CMAKE_REQUIRED_LIBRARIES

It was weird to add CMAKE_THREAD_LIBS_INIT in CMAKE_REQUIRED_LIBRARIES
only if CLOCK_MONOTONIC is available. Alternative would be to remove
the thread libs from CMAKE_REQUIRED_LIBRARIES after the check for
pthread_condattr_setclock() but keeping the libs should be fine too.
Then it's ready in case more pthread functions were wanted some day.
This commit is contained in:
Lasse Collin 2024-06-25 15:51:48 +03:00
parent 068a70e549
commit e620f35097
1 changed files with 4 additions and 2 deletions

View File

@ -645,11 +645,13 @@ if(XZ_THREADS)
target_link_libraries(liblzma PRIVATE Threads::Threads) target_link_libraries(liblzma PRIVATE Threads::Threads)
add_compile_definitions(MYTHREAD_POSIX) add_compile_definitions(MYTHREAD_POSIX)
# Make the thread libs available in later checks. In practice
# only pthread_condattr_setclock check should need this.
list(INSERT CMAKE_REQUIRED_LIBRARIES 0 "${CMAKE_THREAD_LIBS_INIT}")
# Check if pthread_condattr_setclock() exists to # Check if pthread_condattr_setclock() exists to
# use CLOCK_MONOTONIC. # use CLOCK_MONOTONIC.
if(HAVE_CLOCK_MONOTONIC) if(HAVE_CLOCK_MONOTONIC)
list(INSERT CMAKE_REQUIRED_LIBRARIES 0
"${CMAKE_THREAD_LIBS_INIT}")
check_symbol_exists(pthread_condattr_setclock pthread.h check_symbol_exists(pthread_condattr_setclock pthread.h
HAVE_PTHREAD_CONDATTR_SETCLOCK) HAVE_PTHREAD_CONDATTR_SETCLOCK)
tuklib_add_definition_if(ALL HAVE_PTHREAD_CONDATTR_SETCLOCK) tuklib_add_definition_if(ALL HAVE_PTHREAD_CONDATTR_SETCLOCK)