diff options
author | Lasse Collin <lasse.collin@tukaani.org> | 2023-10-11 19:47:44 +0300 |
---|---|---|
committer | Jia Tan <jiat0218@gmail.com> | 2023-10-31 18:44:59 +0800 |
commit | 007558a358c48a0175cc8d47d11798d7967282ab (patch) | |
tree | e5ca8e038fed90de5dcbb25d398dc933ac0b6ebe /CMakeLists.txt | |
parent | CMake: Edit threading related messages. (diff) | |
download | xz-007558a358c48a0175cc8d47d11798d7967282ab.tar.xz |
CMake: Don't shadow the cache entry ENABLE_THREADS with a normal variable.
Using set(ENABLE_THREADS "posix") is confusing because it sets
a new normal variable and leaves the cache entry with the same
name unchanged. The intent wasn't to change the cache entry so
this switches to a different variable name.
Diffstat (limited to '')
-rw-r--r-- | CMakeLists.txt | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 1b403f66..687f9e3e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -355,6 +355,11 @@ set_property(CACHE ENABLE_THREADS # compiler supporting attribute __constructor__. set(USE_WIN95_THREADS OFF) +# This is a flag variable set when posix threads (pthreads) are used. +# It's needed when creating liblzma-config.cmake where dependency on +# Threads::Threads is only needed with pthreads. +set(USE_POSIX_THREADS OFF) + if(NOT ENABLE_THREADS IN_LIST SUPPORTED_THREADING_METHODS) message(FATAL_ERROR "'${ENABLE_THREADS}' is not a supported " "threading method") @@ -384,11 +389,10 @@ if(ENABLE_THREADS) endif() elseif(CMAKE_USE_PTHREADS_INIT) if(ENABLE_THREADS STREQUAL "posix" OR ENABLE_THREADS STREQUAL "ON") - # Overwrite ENABLE_THREADS in case it was set to "ON". # The threading library only needs to be explicitly linked # for posix threads, so this is needed for creating # liblzma-config.cmake later. - set(ENABLE_THREADS "posix") + set(USE_POSIX_THREADS ON) target_link_libraries(liblzma Threads::Threads) add_compile_definitions(MYTHREAD_POSIX) @@ -923,7 +927,7 @@ if(NOT TARGET LibLZMA::LibLZMA) endif() ") -if(ENABLE_THREADS STREQUAL "posix") +if(USE_POSIX_THREADS) set(LZMA_CONFIG_CONTENTS "include(CMakeFindDependencyMacro) set(THREADS_PREFER_PTHREAD_FLAG TRUE) |