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