From 3f12bd6d936fc2a52155306f7eaecd18cdbf234f Mon Sep 17 00:00:00 2001 From: deepin-ci-robot Date: Tue, 6 Jan 2026 03:06:52 +0000 Subject: [PATCH] sync: from linuxdeepin/qt5integration Synchronize source files from linuxdeepin/qt5integration. Source-pull-request: https://github.com/linuxdeepin/qt5integration/pull/294 --- CMakeLists.txt | 28 +++++++++++++------ iconengineplugins/diconengine/CMakeLists.txt | 2 +- .../svgiconengine/CMakeLists.txt | 2 +- imageformatplugins/dci/CMakeLists.txt | 2 +- imageformatplugins/svg/CMakeLists.txt | 2 +- platformthemeplugin/CMakeLists.txt | 2 +- styleplugins/chameleon/CMakeLists.txt | 2 +- styles/CMakeLists.txt | 2 +- tests/CMakeLists.txt | 10 +++++-- 9 files changed, 34 insertions(+), 18 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 7c2b6965..02612b4b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,13 +4,12 @@ cmake_minimum_required(VERSION 3.13) -file(READ "${CMAKE_CURRENT_SOURCE_DIR}/VERSION" DTK_FILE_VERSION) -string(STRIP "${DTK_FILE_VERSION}" DTK_FILE_VERSION) -set(DTK_VERSION "${DTK_FILE_VERSION}" CACHE STRING "Project version") +file(READ "${CMAKE_CURRENT_SOURCE_DIR}/VERSION" FILE_VERSION) +string(STRIP "${FILE_VERSION}" FILE_VERSION) project( qtintegration - VERSION ${DTK_VERSION} + VERSION ${FILE_VERSION} DESCRIPTION "Qt platform integration for DTK" HOMEPAGE_URL "https://github.com/linuxdeepin/qt5integration" LANGUAGES CXX C @@ -18,14 +17,26 @@ project( option(ENABLE_COV "Enable code coverage" OFF) -if(PROJECT_VERSION_MAJOR EQUAL 6) - set(VERSION_SUFFIX 6) +option(DTK5 "Build DTK5." ON) +if(DTK5) + set(DTK_VERSION_MAJOR "5") + set(DTK_NAME_SUFFIX "") +else() + set(DTK_VERSION_MAJOR "6") + set(DTK_NAME_SUFFIX "6") +endif() + +set(DTK_VERSION_MINOR ${PROJECT_VERSION_MINOR}) +set(DTK_VERSION_PATCH ${PROJECT_VERSION_PATCH}) +set(DTK_VERSION "${DTK_VERSION_MAJOR}.${DTK_VERSION_MINOR}.${DTK_VERSION_PATCH}") +set(QT_VERSION_MAJOR ${DTK_VERSION_MAJOR}) + +if(QT_VERSION_MAJOR EQUAL 6) find_package(QT NAMES Qt6 REQUIRED COMPONENTS Core) if(QT_VERSION VERSION_GREATER_EQUAL 6.10) find_package(Qt6 COMPONENTS CorePrivate GuiPrivate WidgetsPrivate REQUIRED) endif() else() - set(VERSION_SUFFIX) find_package(QT NAMES Qt5 REQUIRED COMPONENTS Core) endif() @@ -104,7 +115,7 @@ function(dtk_add_plugin) endif() endfunction() -find_package(Dtk${VERSION_SUFFIX} REQUIRED COMPONENTS Widget) +find_package(Dtk${DTK_NAME_SUFFIX} REQUIRED COMPONENTS Widget) option(ENABLE_QT_XDG_ICON_LOADER "Enable QtXdgIconLoader" ON) find_package(Qt${QT_VERSION_MAJOR}Xdg) @@ -134,5 +145,6 @@ if(CMAKE_BUILD_TYPE_LOWER STREQUAL debug) add_subdirectory(styles) endif() if(BUILD_TESTING) + enable_testing() add_subdirectory(tests) endif() diff --git a/iconengineplugins/diconengine/CMakeLists.txt b/iconengineplugins/diconengine/CMakeLists.txt index c16d50b2..c3eeb84d 100644 --- a/iconengineplugins/diconengine/CMakeLists.txt +++ b/iconengineplugins/diconengine/CMakeLists.txt @@ -14,5 +14,5 @@ dtk_add_plugin( HEADERS DEPENDENCIES Qt${QT_VERSION_MAJOR}::GuiPrivate - Dtk${VERSION_SUFFIX}::Gui + Dtk${DTK_NAME_SUFFIX}::Gui ) diff --git a/iconengineplugins/svgiconengine/CMakeLists.txt b/iconengineplugins/svgiconengine/CMakeLists.txt index 31eb9ecf..9e03998b 100644 --- a/iconengineplugins/svgiconengine/CMakeLists.txt +++ b/iconengineplugins/svgiconengine/CMakeLists.txt @@ -17,6 +17,6 @@ dtk_add_plugin( qsvgiconengine.h DEPENDENCIES Qt${QT_VERSION_MAJOR}::GuiPrivate - Dtk${VERSION_SUFFIX}::Gui + Dtk${DTK_NAME_SUFFIX}::Gui Qt${QT_VERSION_MAJOR}::Concurrent ) diff --git a/imageformatplugins/dci/CMakeLists.txt b/imageformatplugins/dci/CMakeLists.txt index e86bab2c..b174c167 100644 --- a/imageformatplugins/dci/CMakeLists.txt +++ b/imageformatplugins/dci/CMakeLists.txt @@ -15,5 +15,5 @@ dtk_add_plugin( HEADERS qdciiohandler.h DEPENDENCIES - Dtk${VERSION_SUFFIX}::Gui + Dtk${DTK_NAME_SUFFIX}::Gui ) diff --git a/imageformatplugins/svg/CMakeLists.txt b/imageformatplugins/svg/CMakeLists.txt index 3a17c4df..94bd831f 100644 --- a/imageformatplugins/svg/CMakeLists.txt +++ b/imageformatplugins/svg/CMakeLists.txt @@ -15,5 +15,5 @@ dtk_add_plugin( HEADERS qsvgiohandler.h DEPENDENCIES - Dtk${VERSION_SUFFIX}::Gui + Dtk${DTK_NAME_SUFFIX}::Gui ) diff --git a/platformthemeplugin/CMakeLists.txt b/platformthemeplugin/CMakeLists.txt index 054739b1..cb8bc62f 100644 --- a/platformthemeplugin/CMakeLists.txt +++ b/platformthemeplugin/CMakeLists.txt @@ -63,7 +63,7 @@ dtk_add_plugin( icons/deepin-theme-plugin-icons.qrc deepin-theme-plugin.qrc DEPENDENCIES - Dtk${VERSION_SUFFIX}::Gui + Dtk${DTK_NAME_SUFFIX}::Gui ${QT_LIBS} PkgConfig::Deps DEFINITIONS diff --git a/styleplugins/chameleon/CMakeLists.txt b/styleplugins/chameleon/CMakeLists.txt index 738b7f0a..5212814f 100644 --- a/styleplugins/chameleon/CMakeLists.txt +++ b/styleplugins/chameleon/CMakeLists.txt @@ -16,7 +16,7 @@ dtk_add_plugin( common.h dstyleanimation.h DEPENDENCIES - Dtk${VERSION_SUFFIX}::Widget + Dtk${DTK_NAME_SUFFIX}::Widget Qt${QT_VERSION_MAJOR}::CorePrivate Qt${QT_VERSION_MAJOR}::GuiPrivate Qt${QT_VERSION_MAJOR}::WidgetsPrivate diff --git a/styles/CMakeLists.txt b/styles/CMakeLists.txt index 7e48a396..afa73445 100644 --- a/styles/CMakeLists.txt +++ b/styles/CMakeLists.txt @@ -10,5 +10,5 @@ add_executable(gallery styles.qrc ) -target_link_libraries(gallery PRIVATE Dtk${VERSION_SUFFIX}::Widget) +target_link_libraries(gallery PRIVATE Dtk${DTK_NAME_SUFFIX}::Widget) set_target_properties(gallery PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 6832bca9..18d7300c 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -27,16 +27,19 @@ target_compile_options(unit-tests PRIVATE -g -fno-access-control -Wall - -fsanitize=address -fsanitize-recover=address -O0 ) target_link_options(unit-tests PRIVATE - -fsanitize=address -fsanitize-recover=address ) +if (CMAKE_BUILD_TYPE STREQUAL "Debug") + target_compile_options(unit-tests PRIVATE -fsanitize=address) + target_link_options(unit-tests PRIVATE -fsanitize=address) +endif() + target_link_libraries(unit-tests PRIVATE GTest::GTest GTest::gmock @@ -46,7 +49,6 @@ target_link_options(unit-tests PRIVATE dsvg qdeepin chameleon - asan ) target_compile_definitions(unit-tests PRIVATE @@ -64,3 +66,5 @@ target_include_directories(unit-tests PRIVATE ${CMAKE_SOURCE_DIR}/styleplugins/chameleon ${CMAKE_SOURCE_DIR}/platformthemeplugin ) + +add_test(NAME unit-tests COMMAND unit-tests)