From b68bf53bb796cbe83d623126a61b3b060a70ea42 Mon Sep 17 00:00:00 2001
From: Gabriele Contini <contini.mailing@gmail.com>
Date: 周六, 14 3月 2020 12:15:04 +0800
Subject: [PATCH] improve includes

---
 src/library/CMakeLists.txt        |    4 +++-
 src/library/LicenseReader.cpp     |    2 --
 src/library/locate/CMakeLists.txt |    5 +++++
 src/library/os/os.h               |    2 +-
 CMakeLists.txt                    |   21 ++++++++++++---------
 src/library/os/CMakeLists.txt     |    3 +++
 src/library/base/CMakeLists.txt   |    2 --
 7 files changed, 24 insertions(+), 15 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3cb66f1..9af73aa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -114,21 +114,23 @@
   COMMENT "generating ${LCC_PROJECT_PUBLIC_KEY}"
   USES_TERMINAL
 )
+include_directories( ${LCC_INCLUDE_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/include" )
 add_custom_target(project_initialize DEPENDS "${LCC_PROJECT_PUBLIC_KEY}" "${LCC_PROJECT_PRIVATE_KEY}")
-include_directories( ${LCC_INCLUDE_DIR} ${CMAKE_BINARY_DIR} "${CMAKE_CURRENT_SOURCE_DIR}/include")
 
-message( STATUS "C compiler        : " ${CMAKE_C_COMPILER})
-message( STATUS "C compiler flags  : " ${CMAKE_C_FLAGS})
-message( STATUS "CXX compiler      : " ${CMAKE_CXX_COMPILER})
-message( STATUS "CXX compiler flags: " ${CMAKE_CXX_FLAGS})
+message( STATUS "C compiler          : " ${CMAKE_C_COMPILER})
+message( STATUS "C compiler flags    : " ${CMAKE_C_FLAGS})
+message( STATUS "CXX compiler        : " ${CMAKE_CXX_COMPILER})
+message( STATUS "CXX compiler flags  : " ${CMAKE_CXX_FLAGS})
 message( STATUS "CXX compiler flags debug : " ${CMAKE_CXX_FLAGS_DEBUG})
 message( STATUS "CXX compiler flags release: " ${CMAKE_CXX_FLAGS_RELEASE})
 if(CMAKE_BUILD_TYPE)
-  message( STATUS "Build type        : " ${CMAKE_BUILD_TYPE})
+  message( STATUS "Build type          : " ${CMAKE_BUILD_TYPE})
 endif(CMAKE_BUILD_TYPE)
-message( STATUS "Install prefix    : " ${CMAKE_INSTALL_PREFIX})
-message( STATUS "Project name      : " ${LCC_PROJECT_NAME} )
-message( STATUS "Project base dir  : " ${LCC_PROJECTS_BASE_DIR}/${LCC_PROJECT_NAME} )
+message( STATUS "Install prefix      : " ${CMAKE_INSTALL_PREFIX})
+message( STATUS "Project name        : " ${LCC_PROJECT_NAME} )
+message( STATUS "Project base dir    : " ${LCC_PROJECTS_BASE_DIR}/${LCC_PROJECT_NAME} )
+get_property(inc_dirs DIRECTORY PROPERTY INCLUDE_DIRECTORIES)
+message( STATUS "Include dirs : " "${inc_dirs}" )
 
 add_subdirectory(src)
 
@@ -164,6 +166,7 @@
     SET(DOXYGEN_EXCLUDE_PATTERNS "*/library/ini/*;*/doc/resources/*")
     SET(DOXYGEN_DISABLE_INDEX YES)
     SET(DOXYGEN_GENERATE_TREEVIEW YES)
+    SET(DOXYGEN_GENERATE_XML YES)
     SET(DOXYGEN_LAYOUT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/doc/DoxygenLayout.xml")
 	doxygen_add_docs(docs doc src include/licensecc COMMENT "doxygen docs")
 	file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/doc/resources/" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}/html")
diff --git a/src/library/CMakeLists.txt b/src/library/CMakeLists.txt
index bea92bd..3ec8380 100644
--- a/src/library/CMakeLists.txt
+++ b/src/library/CMakeLists.txt
@@ -32,9 +32,11 @@
 ENDIF(UNIX OR OPENSSL_FOUND)
 
 target_include_directories(licensecc_static
-    INTERFACE 
+    PUBLIC 
         $<INSTALL_INTERFACE:include>
+        $<INSTALL_INTERFACE:include/${PROJECT_NAME}/${LCC_PROJECT_NAME}>
         $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../../include>
+        $<BUILD_INTERFACE:${LCC_INCLUDE_DIR}>
 )
 
 add_library(licensecc::licensecc_static ALIAS licensecc_static)
diff --git a/src/library/LicenseReader.cpp b/src/library/LicenseReader.cpp
index 0448243..673bb1d 100644
--- a/src/library/LicenseReader.cpp
+++ b/src/library/LicenseReader.cpp
@@ -22,8 +22,6 @@
 #include <stdlib.h>
 #include <math.h>
 
-#include <public_key.h>
-#include <licensecc_properties.h>
 #include <licensecc/licensecc.h>
 
 #include "base/base.h"
diff --git a/src/library/base/CMakeLists.txt b/src/library/base/CMakeLists.txt
index f0f9588..07ad88f 100644
--- a/src/library/base/CMakeLists.txt
+++ b/src/library/base/CMakeLists.txt
@@ -6,8 +6,6 @@
     logger.c
 )
 
-add_dependencies( base project_initialize )
-
 if(CODE_COVERAGE AND UNIX)
 	  MESSAGE(STATUS "Enabling code coverage")
 	  target_compile_options(base PUBLIC
diff --git a/src/library/locate/CMakeLists.txt b/src/library/locate/CMakeLists.txt
index 0862d6c..22d78b8 100644
--- a/src/library/locate/CMakeLists.txt
+++ b/src/library/locate/CMakeLists.txt
@@ -7,6 +7,11 @@
     LocatorFactory.cpp
 )
 
+target_include_directories(locate PRIVATE
+        $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../../include>
+        $<BUILD_INTERFACE:${LCC_INCLUDE_DIR}>
+)
+
 if(CODE_COVERAGE AND UNIX)
 	  target_compile_options(locate PUBLIC -O0 -g --coverage)
 endif(CODE_COVERAGE AND UNIX)
\ No newline at end of file
diff --git a/src/library/os/CMakeLists.txt b/src/library/os/CMakeLists.txt
index c22b806..ca9ba79 100644
--- a/src/library/os/CMakeLists.txt
+++ b/src/library/os/CMakeLists.txt
@@ -31,6 +31,9 @@
         windows/network.cpp)
 ENDIF(UNIX OR OPENSSL_FOUND)
 
+#dependency of signature_verifier.cpp
+add_dependencies( os project_initialize )
+
 if(CODE_COVERAGE AND UNIX)
 	  MESSAGE(STATUS "Enabling code coverage")
 	  target_compile_options(os PUBLIC -O0 -g --coverage)
diff --git a/src/library/os/os.h b/src/library/os/os.h
index 00abae2..fa1862f 100644
--- a/src/library/os/os.h
+++ b/src/library/os/os.h
@@ -12,7 +12,6 @@
 extern "C" {
 #endif
 
-#include "../base/base.h"
 #include <stddef.h>
 #include <string.h>
 #include <ctype.h>
@@ -23,6 +22,7 @@
 #include <unistd.h>
 #include <stdbool.h>
 #endif
+#include "../base/base.h"
 
 typedef struct {
 	int id;

--
Gitblit v1.9.1