mirror of https://github.com/microsoft/vcpkg.git
100 lines
2.8 KiB
Diff
100 lines
2.8 KiB
Diff
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
|
index b5a3408..ecdeda8 100644
|
|
--- a/src/CMakeLists.txt
|
|
+++ b/src/CMakeLists.txt
|
|
@@ -57,16 +57,12 @@ set_target_properties(zoe PROPERTIES
|
|
|
|
target_include_directories(zoe
|
|
PUBLIC $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/include>
|
|
- PUBLIC $<INSTALL_INTERFACE:../include>
|
|
+ PUBLIC $<INSTALL_INTERFACE:include>
|
|
)
|
|
|
|
# CURL
|
|
-find_package(CURL REQUIRED)
|
|
-if(ZOE_BUILD_SHARED_LIBS)
|
|
- target_link_libraries(zoe PRIVATE ${CURL_LIBRARIES})
|
|
-else()
|
|
- target_link_libraries(zoe PUBLIC ${CURL_LIBRARIES})
|
|
-endif()
|
|
+find_package(CURL CONFIG REQUIRED)
|
|
+target_link_libraries(zoe PRIVATE CURL::libcurl)
|
|
|
|
target_include_directories(zoe PRIVATE ${CURL_INCLUDE_DIRS})
|
|
|
|
@@ -74,25 +70,16 @@ target_include_directories(zoe PRIVATE ${CURL_INCLUDE_DIRS})
|
|
find_package(OpenSSL)
|
|
if(OpenSSL_FOUND)
|
|
target_compile_definitions(zoe PRIVATE WITH_OPENSSL)
|
|
-
|
|
- if(ZOE_BUILD_SHARED_LIBS)
|
|
- target_link_libraries(zoe PRIVATE OpenSSL::SSL OpenSSL::Crypto)
|
|
- else()
|
|
- target_link_libraries(zoe PUBLIC OpenSSL::SSL OpenSSL::Crypto)
|
|
- endif()
|
|
+ target_link_libraries(zoe PRIVATE OpenSSL::SSL)
|
|
endif()
|
|
|
|
|
|
-if (WIN32 OR _WIN32)
|
|
- if(ZOE_BUILD_SHARED_LIBS)
|
|
- target_link_libraries(zoe PRIVATE Ws2_32.lib Crypt32.lib)
|
|
- else()
|
|
- target_link_libraries(zoe PUBLIC Ws2_32.lib Crypt32.lib)
|
|
- endif()
|
|
+if (WIN32)
|
|
+ target_link_libraries(zoe PRIVATE ws2_32 crypt32)
|
|
endif()
|
|
|
|
install(TARGETS zoe
|
|
- EXPORT zoeConfig
|
|
+ EXPORT zoeTargets
|
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
|
@@ -101,15 +88,25 @@ install(TARGETS zoe
|
|
|
|
install(DIRECTORY ../include/zoe DESTINATION include)
|
|
|
|
-install(EXPORT zoeConfig
|
|
+install(EXPORT zoeTargets
|
|
NAMESPACE zoe::
|
|
DESTINATION share/zoe
|
|
)
|
|
|
|
include(CMakePackageConfigHelpers)
|
|
+configure_package_config_file(zoeConfig.cmake.in
|
|
+ ${CMAKE_CURRENT_BINARY_DIR}/zoeConfig.cmake
|
|
+ INSTALL_DESTINATION share/zoe
|
|
+ NO_SET_AND_CHECK_MACRO
|
|
+ NO_CHECK_REQUIRED_COMPONENTS_MACRO
|
|
+)
|
|
write_basic_package_version_file(
|
|
zoeConfigVersion.cmake
|
|
VERSION ${PROJECT_VERSION}
|
|
COMPATIBILITY AnyNewerVersion
|
|
)
|
|
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/zoeConfigVersion.cmake DESTINATION share/zoe)
|
|
+install(FILES
|
|
+ ${CMAKE_CURRENT_BINARY_DIR}/zoeConfig.cmake
|
|
+ ${CMAKE_CURRENT_BINARY_DIR}/zoeConfigVersion.cmake
|
|
+ DESTINATION share/zoe
|
|
+)
|
|
diff --git a/src/zoeConfig.cmake.in b/src/zoeConfig.cmake.in
|
|
new file mode 100644
|
|
index 0000000..28f29fe
|
|
--- /dev/null
|
|
+++ b/src/zoeConfig.cmake.in
|
|
@@ -0,0 +1,11 @@
|
|
+@PACKAGE_INIT@
|
|
+
|
|
+if(NOT "@ZOE_BUILD_SHARED_LIBS@")
|
|
+ include(CMakeFindDependencyMacro)
|
|
+ find_dependency(CURL)
|
|
+ if("@OpenSSL_FOUND@")
|
|
+ find_dependency(OpenSSL)
|
|
+ endif()
|
|
+endif()
|
|
+
|
|
+include("${CMAKE_CURRENT_LIST_DIR}/zoeTargets.cmake")
|