aboutsummaryrefslogtreecommitdiff
path: root/ports/curl/vcpkg-cmake-wrapper.cmake
blob: 955d9353aca2995e5a7470ac2e891cc374e2a254 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
list(REMOVE_ITEM ARGS "NO_MODULE")
list(REMOVE_ITEM ARGS "CONFIG")
list(REMOVE_ITEM ARGS "MODULE")

cmake_policy(SET CMP0012 NEW)

_find_package(${ARGS} CONFIG)

if(TARGET CURL::libcurl)
    set(CURL_FOUND TRUE)

    get_target_property(_curl_include_dirs CURL::libcurl INTERFACE_INCLUDE_DIRECTORIES)
    get_target_property(_curl_link_libraries CURL::libcurl INTERFACE_LINK_LIBRARIES)

    if (CMAKE_SYSTEM_NAME STREQUAL "Windows" OR CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
        get_target_property(_curl_location_debug CURL::libcurl IMPORTED_IMPLIB_DEBUG)
        get_target_property(_curl_location_release CURL::libcurl IMPORTED_IMPLIB_RELEASE)
    endif()

    if(NOT _curl_location_debug AND NOT _curl_location_release)
        get_target_property(_curl_location_debug CURL::libcurl IMPORTED_LOCATION_DEBUG)
        get_target_property(_curl_location_release CURL::libcurl IMPORTED_LOCATION_RELEASE)
    endif()

    if(NOT _curl_link_libraries)
        set(_curl_link_libraries)
    endif()

    set(CURL_INCLUDE_DIRS "${_curl_include_dirs}")
    set(CURL_LIBRARY_DEBUG "${_curl_location_debug}")
    set(CURL_LIBRARY_RELEASE "${_curl_location_release}")

    #For builds which rely on CURL_LIBRAR(Y/IES)
    include(${CMAKE_ROOT}/Modules/SelectLibraryConfigurations.cmake)
    select_library_configurations(CURL)

    set(CURL_LIBRARIES ${CURL_LIBRARY} ${_curl_link_libraries})
    set(CURL_VERSION_STRING "${CURL_VERSION}")

    set(_curl_include_dirs)
    set(_curl_link_libraries)
    set(_curl_location_debug)
    set(_curl_location_release)
endif()