diff --git a/CMakeLists.txt b/CMakeLists.txt index 4ff6ce4b5b..bd30a00f8e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1817,16 +1817,22 @@ endif() # Enable the workaround for all compilers, to make it available when using GCC # to consume libcurl, regardless of the compiler used to build libcurl itself. if(USE_OPENSSL AND TARGET OpenSSL::Crypto) - add_library(CURL::OpenSSL_Crypto INTERFACE IMPORTED) - get_target_property(_curl_libname OpenSSL::Crypto LOCATION) - set_target_properties(CURL::OpenSSL_Crypto PROPERTIES INTERFACE_LINK_LIBRARIES "${_curl_libname}") - list(APPEND CURL_LIBS CURL::OpenSSL_Crypto) + get_target_property(_curl_imported OpenSSL::Crypto IMPORTED) + if(_curl_imported) + add_library(CURL::OpenSSL_Crypto INTERFACE IMPORTED) + get_target_property(_curl_libname OpenSSL::Crypto LOCATION) + set_target_properties(CURL::OpenSSL_Crypto PROPERTIES INTERFACE_LINK_LIBRARIES "${_curl_libname}") + list(APPEND CURL_LIBS CURL::OpenSSL_Crypto) + endif() endif() if(HAVE_LIBZ AND TARGET ZLIB::ZLIB) - add_library(CURL::ZLIB INTERFACE IMPORTED) - get_target_property(_curl_libname ZLIB::ZLIB LOCATION) - set_target_properties(CURL::ZLIB PROPERTIES INTERFACE_LINK_LIBRARIES "${_curl_libname}") - list(APPEND CURL_LIBS CURL::ZLIB) + get_target_property(_curl_imported ZLIB::ZLIB IMPORTED) + if(_curl_imported) + add_library(CURL::ZLIB INTERFACE IMPORTED) + get_target_property(_curl_libname ZLIB::ZLIB LOCATION) + set_target_properties(CURL::ZLIB PROPERTIES INTERFACE_LINK_LIBRARIES "${_curl_libname}") + list(APPEND CURL_LIBS CURL::ZLIB) + endif() endif() if(WIN32) add_library(CURL::win32_winsock INTERFACE IMPORTED)