From 88b5b56b6a67d93208eae3980af2f30da09dd8ae Mon Sep 17 00:00:00 2001
From: SineStriker <trueful@163.com>
Date: 周三, 27 12月 2023 01:10:59 +0800
Subject: [PATCH] Add notification observer on Mac

---
 src/CMakeLists.txt |   66 +++++++-------------------------
 1 files changed, 15 insertions(+), 51 deletions(-)

diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index b0c2943..267b05a 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,10 +1,12 @@
-qm_import(Filesystem Preprocess)
-qm_init_directories()
+qm_import(Preprocess)
 
 set(QWINDOWKIT_PROJECT_DESCRIPTION "Cross-platform window customization framework")
 set(QWINDOWKIT_PROJECT_COPYRIGHT "Copyright 2023 Stdware Collections")
 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
@@ -12,7 +14,12 @@
 set(QMSETUP_DEFINITION_SCOPE DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
 set(QMSETUP_DEFINITION_NUMERICAL on)
 
-qm_add_definition(QWINDOWKIT_TEST_CONFIG true)
+qm_add_definition(QWINDOWKIT_ENABLE_QT_WINDOW_CONTEXT
+    CONDITION QWINDOWKIT_ENABLE_QT_WINDOW_CONTEXT
+)
+qm_add_definition(QWINDOWKIT_ENABLE_WINDOWS_SYSTEM_BORDERS
+    CONDITION QWINDOWKIT_ENABLE_WINDOWS_SYSTEM_BORDERS
+)
 
 qm_generate_config(${QWINDOWKIT_BUILD_INCLUDE_DIR}/QWKCore/qwkconfig.h)
 
@@ -25,7 +32,7 @@
 # ----------------------------------
 # CMake API
 # ----------------------------------
-function(qwk_add_library _target)
+macro(qwk_add_library _target)
     set(options AUTOGEN NO_SYNC_INCLUDE NO_WIN_RC)
     set(oneValueArgs SYNC_INCLUDE_PREFIX PREFIX)
     set(multiValueArgs SYNC_INCLUDE_OPTIONS)
@@ -67,6 +74,7 @@
 
     # Add include directories
     target_include_directories(${_target} PRIVATE ${QWINDOWKIT_BUILD_INCLUDE_DIR})
+    target_include_directories(${_target} PRIVATE .)
 
     # Library name
     if(${_target} MATCHES "^QWK(.+)")
@@ -106,22 +114,18 @@
     if(NOT FUNC_NO_SYNC_INCLUDE)
         # Generate a standard include directory in build directory
         qm_sync_include(. "${QWINDOWKIT_GENERATED_INCLUDE_DIR}/${_inc_name}" ${_install_options}
-            ${FUNC_SYNC_INCLUDE_OPTIONS}
+            ${FUNC_SYNC_INCLUDE_OPTIONS} FORCE
         )
         target_include_directories(${_target} PUBLIC
             "$<BUILD_INTERFACE:${QWINDOWKIT_GENERATED_INCLUDE_DIR}>"
         )
     endif()
-endfunction()
+endmacro()
 
 # ----------------------------------
 # Main Project
 # ----------------------------------
 add_subdirectory(core)
-
-if(QWINDOWKIT_BUILD_STYLE_SUPPORT)
-    add_subdirectory(stylesupport)
-endif()
 
 if(QWINDOWKIT_BUILD_WIDGETS)
     add_subdirectory(widgets)
@@ -129,44 +133,6 @@
 
 if(QWINDOWKIT_BUILD_QUICK)
     add_subdirectory(quick)
-endif()
-
-# ----------------------------------
-# Documentation
-# ----------------------------------
-if(QWINDOWKIT_BUILD_DOCUMENTATIONS)
-    if(NOT DOXYGEN_EXECUTABLE)
-        find_package(Doxygen REQUIRED)
-    endif()
-
-    set(_install_options)
-
-    if(QWINDOWKIT_INSTALL)
-        set(_install_options INSTALL_DIR share/doc/${QWINDOWKIT_INSTALL_NAME})
-    endif()
-
-    set(_doc_targets)
-    qm_collect_targets(_doc_targets SHARED STATIC)
-
-    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
-    )
-
-    qm_import(Doxygen)
-    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
-        TARGETS ${_doc_targets}
-        DEPENDS ${_doc_targets}
-        NO_EXPAND_MACROS Q_OBJECT Q_GADGET Q_DECLARE_TR_FUNCTIONS
-        COMPILE_DEFINITIONS Q_SIGNALS=Q_SIGNALS Q_SLOTS=Q_SLOTS
-        GENERATE_TAGFILE "${QWINDOWKIT_DOXYGEN_TAGFILE}"
-        ${_install_options}
-    )
 endif()
 
 # ----------------------------------
@@ -206,7 +172,5 @@
     )
 
     # Install shared files
-    install(DIRECTORY ../share/
-        DESTINATION share/${QWINDOWKIT_INSTALL_NAME}
-    )
+    include("../share/install.cmake")
 endif()
\ No newline at end of file

--
Gitblit v1.9.1