summaryrefslogtreecommitdiff
path: root/Modules/FindCURL.cmake
diff options
context:
space:
mode:
authorCharles Barto <chbarto@microsoft.com>2019-10-10 16:29:00 -0700
committerBrad King <brad.king@kitware.com>2019-10-15 13:56:28 -0400
commitc11e7c5c3d5c5e682adf761c4b0de734ff68e690 (patch)
tree9f6ec3de371d68157562b0763779a8919ec0285c /Modules/FindCURL.cmake
parent8d2f18af3268920412621e98e527830faa763448 (diff)
downloadcmake-c11e7c5c3d5c5e682adf761c4b0de734ff68e690.tar.gz
FindCURL: Try to find CURLConfig.cmake
Diffstat (limited to 'Modules/FindCURL.cmake')
-rw-r--r--Modules/FindCURL.cmake28
1 files changed, 27 insertions, 1 deletions
diff --git a/Modules/FindCURL.cmake b/Modules/FindCURL.cmake
index aeebc842eb..919babcde5 100644
--- a/Modules/FindCURL.cmake
+++ b/Modules/FindCURL.cmake
@@ -37,8 +37,35 @@ This module defines the following variables:
``CURL_VERSION_STRING``
The version of ``curl`` found.
+
+CURL CMake
+^^^^^^^^^^
+
+If CURL was built using the CMake buildsystem then it provides its own
+``CURLConfig.cmake`` file for use with the :command:`find_package` command's
+config mode. This module looks for this file and, if found,
+returns its results with no further action.
+
+Set ``CURL_NO_CURL_CMAKE`` to ``ON`` to disable this search.
+
#]=======================================================================]
+include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
+
+if(NOT CURL_NO_CURL_CMAKE)
+ # do a find package call to specifically look for the CMake version
+ # of curl
+ find_package(CURL QUIET NO_MODULE)
+ mark_as_advanced(CURL_DIR)
+
+ # if we found the CURL cmake package then we are done, and
+ # can print what we found and return.
+ if(CURL_FOUND)
+ find_package_handle_standard_args(CURL HANDLE_COMPONENTS CONFIG_MODE)
+ return()
+ endif()
+endif()
+
find_package(PkgConfig QUIET)
if(PKG_CONFIG_FOUND)
pkg_check_modules(PC_CURL QUIET libcurl)
@@ -139,7 +166,6 @@ if(CURL_FIND_COMPONENTS)
endforeach()
endif()
-include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
find_package_handle_standard_args(CURL
REQUIRED_VARS CURL_LIBRARY CURL_INCLUDE_DIR
VERSION_VAR CURL_VERSION_STRING