Sine Striker
2023-12-02 91af9c894c8c23f42da32fc96cf2d8b5db401df6
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
@@ -67,6 +69,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,7 +109,7 @@
    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}>"
@@ -118,6 +121,10 @@
# Main Project
# ----------------------------------
add_subdirectory(core)
if(QWINDOWKIT_BUILD_STYLE_SUPPORT)
    add_subdirectory(stylesupport)
endif()
if(QWINDOWKIT_BUILD_WIDGETS)
    add_subdirectory(widgets)
@@ -141,21 +148,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