From f4e683fc6bd6ac76f9979f49d737588b6ddf16b0 Mon Sep 17 00:00:00 2001
From: gcontini <1121667+gcontini@users.noreply.github.com>
Date: 周六, 14 11月 2020 22:13:13 +0800
Subject: [PATCH] windows smbios

---
 src/library/os/CMakeLists.txt |   59 ++++++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 36 insertions(+), 23 deletions(-)

diff --git a/src/library/os/CMakeLists.txt b/src/library/os/CMakeLists.txt
index f2dc67b..ef19453 100644
--- a/src/library/os/CMakeLists.txt
+++ b/src/library/os/CMakeLists.txt
@@ -1,27 +1,40 @@
 IF(UNIX OR OPENSSL_FOUND)
-    ADD_LIBRARY(os STATIC
-        openssl/signature_verifier.cpp
-        os.c
-        os-linux.c
-        network_id.c)
-
-	if (CMAKE_VERSION VERSION_GREATER 3.5)
-		target_link_libraries(os base OpenSSL::Crypto ${EXTERNAL_LIBS} ${CMAKE_DL_LIBS})
-	#patch for old cmake in Centos 7
-	ELSE(CMAKE_VERSION VERSION_GREATER 3.5)
-		target_link_libraries(os base ${OPENSSL_CRYPTO_LIBRARY} ${EXTERNAL_LIBS} ${CMAKE_DL_LIBS})
-	ENDIF(CMAKE_VERSION VERSION_GREATER 3.5)
+	IF(UNIX)
+		add_library(os OBJECT
+		    openssl/signature_verifier.cpp
+            execution_environment_common.cpp
+		    linux/execution_environment.cpp
+		    linux/cpu_info.cpp
+		    linux/dmi_info.cpp
+		    linux/network.cpp
+		    linux/os_linux.cpp) 
+	ELSE(UNIX)
+	    #windows and openssl
+  	    add_library(os OBJECT 
+  	    windows/cpu_info.cpp
+  	    windows/dmi_info.cpp  
+  	    openssl/signature_verifier.cpp 
+        execution_environment_common.cpp 
+        windows/execution_environment.cpp
+  	    windows/os_win.cpp
+  	    windows/network.cpp)
+	ENDIF(UNIX)
+	target_include_directories(os PUBLIC ${OPENSSL_INCLUDE_DIR})
 ELSE(UNIX OR OPENSSL_FOUND)
-    ADD_LIBRARY(os STATIC
-        windows/signature_verifier.cpp
-        os.c
-        os-win.c)
-
-	target_link_libraries(
-	     os
-	     base
-	     ${EXTERNAL_LIBS} 
-	)
+#windows no openssl
+    add_library(os OBJECT
+        windows/cpu_info.cpp
+        windows/dmi_info.cpp 
+        windows/signature_verifier.cpp 
+        execution_environment_common.cpp 
+        windows/execution_environment.cpp
+        windows/os_win.cpp
+        windows/network.cpp)
 ENDIF(UNIX OR OPENSSL_FOUND)
 
-install(TARGETS os ARCHIVE DESTINATION lib/${PROJECT_NAME}/${LCC_PROJECT_NAME})
+#dependency of signature_verifier.cpp
+add_dependencies( os project_initialize )
+
+if(CODE_COVERAGE AND UNIX)
+	  target_compile_options(os PUBLIC -O0 -g --coverage)
+endif(CODE_COVERAGE AND UNIX)
\ No newline at end of file

--
Gitblit v1.9.1