From 5f8f04721a61398b71afac017b10150663afbbbd Mon Sep 17 00:00:00 2001
From: Sine Striker <trueful@163.com>
Date: 周六, 02 12月 2023 03:33:18 +0800
Subject: [PATCH] CMake: Optimize

---
 src/core/qwkcoreglobal.h                 |    2 +-
 src/QWindowKitConfig.cmake.in            |    2 +-
 src/widgets/qwkwidgetsglobal.h           |    2 +-
 src/widgets/CMakeLists.txt               |    5 ++++-
 src/quick/CMakeLists.txt                 |    5 ++++-
 src/stylesupport/qwkstylesupportglobal.h |    2 +-
 src/core/CMakeLists.txt                  |    8 ++++++--
 src/quick/qwkquickglobal.h               |    2 +-
 src/CMakeLists.txt                       |   14 ++++++++------
 src/stylesupport/CMakeLists.txt          |    5 ++++-
 10 files changed, 31 insertions(+), 16 deletions(-)

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 3dd7697..eb6be77 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -5,6 +5,9 @@
 set(QWINDOWKIT_GENERATED_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR}/../include)
 set(QWINDOWKIT_BUILD_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR}/../etc/include)
 
+set(QWINDOWKIT_ENABLED_TARGETS)
+set(QWINDOWKIT_ENABLED_SUBDIRECTORIES)
+
 # ----------------------------------
 # Configurations
 # ----------------------------------
@@ -144,21 +147,20 @@
         set(_install_options INSTALL_DIR share/doc/${QWINDOWKIT_INSTALL_NAME})
     endif()
 
-    set(_doc_targets)
-    qm_collect_targets(_doc_targets SHARED STATIC)
+    set(_doc_targets ${QWINDOWKIT_ENABLED_TARGETS})
 
     set(QWINDOWKIT_DOXYGEN_TAGFILE
         ${CMAKE_BUILD_SHARE_DIR}/doc/${QWINDOWKIT_INSTALL_NAME}/${QWINDOWKIT_INSTALL_NAME}_tagfile.xml
-        CACHE FILEPATH "QWINDOWKIT doxygen tag file path" FORCE
+        CACHE FILEPATH "QWindowKit doxygen tag file path" FORCE
     )
 
     qm_import(Doxygen)
-    qm_setup_doxygen(QWINDOWKIT_RunDoxygen
-        NAME "QWINDOWKIT"
+    qm_setup_doxygen(QWindowKit_RunDoxygen
+        NAME "QWindowKit"
         DESCRIPTION "${QWINDOWKIT_PROJECT_DESCRIPTION}"
         MDFILE ../README.md
         OUTPUT_DIR ${CMAKE_BUILD_SHARE_DIR}/doc/${QWINDOWKIT_INSTALL_NAME}
-        INPUT QWINDOWKIT
+        INPUT ${QWINDOWKIT_ENABLED_SUBDIRECTORIES}
         TARGETS ${_doc_targets}
         DEPENDS ${_doc_targets}
         NO_EXPAND_MACROS Q_OBJECT Q_GADGET Q_DECLARE_TR_FUNCTIONS
diff --git a/src/QWindowKitConfig.cmake.in b/src/QWindowKitConfig.cmake.in
index 2f04848..edbe112 100644
--- a/src/QWindowKitConfig.cmake.in
+++ b/src/QWindowKitConfig.cmake.in
@@ -2,4 +2,4 @@
 
 include(CMakeFindDependencyMacro)
 
-include("${CMAKE_CURRENT_LIST_DIR}/substateTargets.cmake")
\ No newline at end of file
+include("${CMAKE_CURRENT_LIST_DIR}/QWindowKitTargets.cmake")
\ No newline at end of file
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index 7b3d4a4..8444ad6 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -25,8 +25,9 @@
         contexts/qtwindowcontext_p.h
         contexts/qtwindowcontext.cpp
     )
+
     if(APPLE)
-        # add files
+    # add files
     else()
         list(APPEND _src
             qwindowkit_linux.h
@@ -46,4 +47,7 @@
 set_target_properties(${PROJECT_NAME} PROPERTIES
     CXX_STANDARD 17
     CXX_STANDARD_REQUIRED TRUE
-)
\ No newline at end of file
+)
+
+set(QWINDOWKIT_ENABLED_TARGETS ${QWINDOWKIT_ENABLED_TARGETS} ${PROJECT_NAME} PARENT_SCOPE)
+set(QWINDOWKIT_ENABLED_SUBDIRECTORIES ${QWINDOWKIT_ENABLED_SUBDIRECTORIES} core PARENT_SCOPE)
\ No newline at end of file
diff --git a/src/core/qwkcoreglobal.h b/src/core/qwkcoreglobal.h
index 7c6b936..20d79a9 100644
--- a/src/core/qwkcoreglobal.h
+++ b/src/core/qwkcoreglobal.h
@@ -1,7 +1,7 @@
 #ifndef QWKCOREGLOBAL_H
 #define QWKCOREGLOBAL_H
 
-#include <QLoggingCategory>
+#include <QtCore/QLoggingCategory>
 
 #ifndef QWK_CORE_EXPORT
 #  ifdef QWK_CORE_STATIC
diff --git a/src/quick/CMakeLists.txt b/src/quick/CMakeLists.txt
index b0e3bac..bfdcc12 100644
--- a/src/quick/CMakeLists.txt
+++ b/src/quick/CMakeLists.txt
@@ -23,4 +23,7 @@
 set_target_properties(${PROJECT_NAME} PROPERTIES
     CXX_STANDARD 17
     CXX_STANDARD_REQUIRED TRUE
-)
\ No newline at end of file
+)
+
+set(QWINDOWKIT_ENABLED_TARGETS ${QWINDOWKIT_ENABLED_TARGETS} ${PROJECT_NAME} PARENT_SCOPE)
+set(QWINDOWKIT_ENABLED_SUBDIRECTORIES ${QWINDOWKIT_ENABLED_SUBDIRECTORIES} quick PARENT_SCOPE)
\ No newline at end of file
diff --git a/src/quick/qwkquickglobal.h b/src/quick/qwkquickglobal.h
index 8d79cb7..a5c613e 100644
--- a/src/quick/qwkquickglobal.h
+++ b/src/quick/qwkquickglobal.h
@@ -1,7 +1,7 @@
 #ifndef QWKQUICKGLOBAL_H
 #define QWKQUICKGLOBAL_H
 
-#include <QtGlobal>
+#include <QtCore/QtGlobal>
 
 #ifndef QWK_QUICK_EXPORT
 #  ifdef QWK_QUICK_STATIC
diff --git a/src/stylesupport/CMakeLists.txt b/src/stylesupport/CMakeLists.txt
index 6cce10d..eea48a5 100644
--- a/src/stylesupport/CMakeLists.txt
+++ b/src/stylesupport/CMakeLists.txt
@@ -18,4 +18,7 @@
 set_target_properties(${PROJECT_NAME} PROPERTIES
     CXX_STANDARD 17
     CXX_STANDARD_REQUIRED TRUE
-)
\ No newline at end of file
+)
+
+set(QWINDOWKIT_ENABLED_TARGETS ${QWINDOWKIT_ENABLED_TARGETS} ${PROJECT_NAME} PARENT_SCOPE)
+set(QWINDOWKIT_ENABLED_SUBDIRECTORIES ${QWINDOWKIT_ENABLED_SUBDIRECTORIES} stylesupport PARENT_SCOPE)
\ No newline at end of file
diff --git a/src/stylesupport/qwkstylesupportglobal.h b/src/stylesupport/qwkstylesupportglobal.h
index 52ac7d5..27f8e31 100644
--- a/src/stylesupport/qwkstylesupportglobal.h
+++ b/src/stylesupport/qwkstylesupportglobal.h
@@ -1,7 +1,7 @@
 #ifndef QWKSTYLESUPPORTGLOBAL_H
 #define QWKSTYLESUPPORTGLOBAL_H
 
-#include <QtGlobal>
+#include <QtCore/QtGlobal>
 
 #ifndef QWK_STYLESUPPORT_EXPORT
 #  ifdef QWK_STYLESUPPORT_STATIC
diff --git a/src/widgets/CMakeLists.txt b/src/widgets/CMakeLists.txt
index ff558e4..8543997 100644
--- a/src/widgets/CMakeLists.txt
+++ b/src/widgets/CMakeLists.txt
@@ -23,4 +23,7 @@
 set_target_properties(${PROJECT_NAME} PROPERTIES
     CXX_STANDARD 17
     CXX_STANDARD_REQUIRED TRUE
-)
\ No newline at end of file
+)
+
+set(QWINDOWKIT_ENABLED_TARGETS ${QWINDOWKIT_ENABLED_TARGETS} ${PROJECT_NAME} PARENT_SCOPE)
+set(QWINDOWKIT_ENABLED_SUBDIRECTORIES ${QWINDOWKIT_ENABLED_SUBDIRECTORIES} widgets PARENT_SCOPE)
\ No newline at end of file
diff --git a/src/widgets/qwkwidgetsglobal.h b/src/widgets/qwkwidgetsglobal.h
index 80fb5d5..2f04dad 100644
--- a/src/widgets/qwkwidgetsglobal.h
+++ b/src/widgets/qwkwidgetsglobal.h
@@ -1,7 +1,7 @@
 #ifndef QWKWIDGETSGLOBAL_H
 #define QWKWIDGETSGLOBAL_H
 
-#include <QtGlobal>
+#include <QtCore/QtGlobal>
 
 #ifndef QWK_WIDGETS_EXPORT
 #  ifdef QWK_WIDGETS_STATIC

--
Gitblit v1.9.1