From 79f2b46f721b69bc182f35324f8fc195a5cf3f54 Mon Sep 17 00:00:00 2001 From: gcontini <1121667+gcontini@users.noreply.github.com> Date: 周六, 14 12月 2019 11:35:52 +0800 Subject: [PATCH] fix windows compilation, better cmake output --- src/library/CMakeLists.txt | 33 ++++++++++++++++++++------------- 1 files changed, 20 insertions(+), 13 deletions(-) diff --git a/src/library/CMakeLists.txt b/src/library/CMakeLists.txt index dfe2d10..a9f75d8 100644 --- a/src/library/CMakeLists.txt +++ b/src/library/CMakeLists.txt @@ -1,7 +1,4 @@ -add_subdirectory("os") add_subdirectory("base") -add_subdirectory("locate") - ADD_LIBRARY(licensecc_static STATIC licensecc.cpp @@ -11,18 +8,28 @@ ini/ConvertUTF.c ) -target_link_libraries( - licensecc_static - locators - os - base -) +add_subdirectory("locate") +add_subdirectory("os") + +define_property(TARGET PROPERTY WITH_OPENSSL BRIEF_DOCS "need openssl to compile" FULL_DOCS "ff") +IF(UNIX OR OPENSSL_FOUND) + target_compile_definitions(licensecc_static PUBLIC HAS_OPENSSL) + set_target_properties(licensecc_static PROPERTIES WITH_OPENSSL 1) + target_link_libraries(licensecc_static PUBLIC base OpenSSL::Crypto ${EXTERNAL_LIBS} ${CMAKE_DL_LIBS}) +ELSE(UNIX OR OPENSSL_FOUND) + set_target_properties(licensecc_static PROPERTIES WITH_OPENSSL 0) + target_link_libraries(licensecc_static PUBLIC base ${EXTERNAL_LIBS}) +ENDIF(UNIX OR OPENSSL_FOUND) target_include_directories(licensecc_static INTERFACE - $<INSTALL_INTERFACE:include/${PROJECT_NAME}> - $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include> + $<INSTALL_INTERFACE:include> + $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../../include> ) -install(TARGETS licensecc_static ARCHIVE DESTINATION lib/${PROJECT_NAME}/${LCC_PROJECT_NAME}) - +add_library(licensecc::licensecc_static ALIAS licensecc_static) +install(TARGETS licensecc_static EXPORT licensecc + ARCHIVE DESTINATION ${main_lib_dest}/${LCC_PROJECT_NAME}) + +install(EXPORT licensecc NAMESPACE licensecc:: DESTINATION ${main_lib_dest}/${LCC_PROJECT_NAME}/cmake) +export(EXPORT licensecc NAMESPACE licensecc:: FILE ${CMAKE_BINARY_DIR}/${PROJECT_NAME}.cmake) -- Gitblit v1.9.1