1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-21 23:58:49 -05:00

cmake: Threads detection update. ref: #1702

Closes #1719
This commit is contained in:
Sergei Nikulov 2017-08-01 20:40:29 +03:00 committed by Daniel Stenberg
parent b748d7af7e
commit a905e883dc
No known key found for this signature in database
GPG Key ID: 5CC908FDB71E12C2

View File

@ -79,14 +79,12 @@ option(ENABLE_ARES "Set to ON to enable c-ares support" OFF)
if(WIN32) if(WIN32)
option(CURL_STATIC_CRT "Set to ON to build libcurl with static CRT on Windows (/MT)." OFF) option(CURL_STATIC_CRT "Set to ON to build libcurl with static CRT on Windows (/MT)." OFF)
option(ENABLE_INET_PTON "Set to OFF to prevent usage of inet_pton when building against modern SDKs while still requiring compatibility with older Windows versions, such as Windows XP, Windows Server 2003 etc." ON) option(ENABLE_INET_PTON "Set to OFF to prevent usage of inet_pton when building against modern SDKs while still requiring compatibility with older Windows versions, such as Windows XP, Windows Server 2003 etc." ON)
CMAKE_DEPENDENT_OPTION(ENABLE_THREADED_RESOLVER
"Set to ON to enable threaded DNS lookup"
ON "NOT ENABLE_ARES"
OFF)
else()
option(ENABLE_THREADED_RESOLVER "Set to ON to enable POSIX threaded DNS lookup" OFF)
endif() endif()
CMAKE_DEPENDENT_OPTION(ENABLE_THREADED_RESOLVER "Set to ON to enable threaded DNS lookup"
ON "NOT ENABLE_ARES"
OFF)
option(ENABLE_DEBUG "Set to ON to enable curl debug features" OFF) option(ENABLE_DEBUG "Set to ON to enable curl debug features" OFF)
option(ENABLE_CURLDEBUG "Set to ON to build with TrackMemory feature enabled" OFF) option(ENABLE_CURLDEBUG "Set to ON to build with TrackMemory feature enabled" OFF)
@ -110,10 +108,6 @@ set(CMAKE_DEBUG_POSTFIX "-d" CACHE STRING "Set debug library postfix")
# initialize CURL_LIBS # initialize CURL_LIBS
set(CURL_LIBS "") set(CURL_LIBS "")
if(ENABLE_THREADED_RESOLVER AND ENABLE_ARES)
message(FATAL_ERROR "Options ENABLE_THREADED_RESOLVER and ENABLE_ARES are mutually exclusive")
endif()
if(ENABLE_ARES) if(ENABLE_ARES)
set(USE_ARES 1) set(USE_ARES 1)
find_package(CARES REQUIRED) find_package(CARES REQUIRED)
@ -275,19 +269,14 @@ if(WIN32)
endif(WIN32) endif(WIN32)
if(ENABLE_THREADED_RESOLVER) if(ENABLE_THREADED_RESOLVER)
find_package(Threads REQUIRED)
if(WIN32) if(WIN32)
set(USE_THREADS_WIN32 ON) set(USE_THREADS_WIN32 ON)
else() else()
check_include_file_concat("pthread.h" HAVE_PTHREAD_H) set(USE_THREADS_POSIX ${CMAKE_USE_PTHREADS_INIT})
if(HAVE_PTHREAD_H) set(HAVE_PTHREAD_H ${CMAKE_USE_PTHREADS_INIT})
set(CMAKE_THREAD_PREFER_PTHREAD 1)
find_package(Threads)
if(CMAKE_USE_PTHREADS_INIT)
set(CURL_LIBS ${CURL_LIBS} ${CMAKE_THREAD_LIBS_INIT})
set(USE_THREADS_POSIX 1)
endif()
endif()
endif() endif()
set(CURL_LIBS ${CURL_LIBS} ${CMAKE_THREAD_LIBS_INIT})
endif() endif()
# Check for all needed libraries # Check for all needed libraries