Conversation
Synchronize source files from linuxdeepin/dtkcore. Source-pull-request: linuxdeepin/dtkcore#526
There was a problem hiding this comment.
Pull request overview
This PR unifies the build system to support building both DTK5 (Qt5-based) and DTK6 (Qt6-based) packages from a single dtkcore source repository. The key change introduces a DTK5 CMake option that controls which version to build, replacing the previous approach of determining the version from the PROJECT_VERSION_MAJOR.
Key changes:
- Introduced
DTK5CMake option andDTK_NAME_SUFFIXvariable to control version-specific naming - Refactored conditional compilation from checking
DTK_VERSION_MAJORto checkingDTK5boolean - Updated debian packaging to build both DTK5 and DTK6 packages with separate build directories
Reviewed changes
Copilot reviewed 32 out of 32 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| CMakeLists.txt | Introduces DTK5 option and switches from version-based to option-based configuration |
| dtkcore.cmake | Updates library names, paths, and CMake config generation to use DTK_NAME_SUFFIX |
| debian/rules | Implements dual-build strategy for DTK5 and DTK6 with separate build directories |
| debian/control | Adds DTK6 package definitions and updates DTK5 package descriptions |
| debian/*.install | Specifies version-specific installation paths to avoid conflicts |
| src/CMakeLists.txt | Updates library version properties and dependency references to use new variables |
| src/util/util.cmake | Changes conditional from DTK_VERSION_MAJOR to DTK5 check |
| src/settings/settings.cmake | Changes conditional from DTK_VERSION_MAJOR to DTK5 check |
| src/glob.cmake | Changes conditional from DTK_VERSION_MAJOR to DTK5 check |
| tests/CMakeLists.txt | Updates test exclusion logic to use DTK5 check |
| tools/*/CMakeLists.txt | Updates binary naming and export targets to use DTK_NAME_SUFFIX |
| misc/*.in | Updates template files to use new DTK version and suffix variables |
| cmake/*/CMakeConfig.cmake.in | Updates CMake config files to reference correct versioned dependencies |
| examples/*/CMakeLists.txt | Updates example binary names to use DTK_NAME_SUFFIX |
| docs/CMakeLists.txt | Updates documentation version to use DTK_VERSION |
| archlinux/PKGBUILD | Adds DTK5=ON flag for Arch Linux builds |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Synchronize source files from linuxdeepin/dtkcore. Source-pull-request: linuxdeepin/dtkcore#526
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 32 out of 32 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Synchronize source files from linuxdeepin/dtkcore. Source-pull-request: linuxdeepin/dtkcore#526
Synchronize source files from linuxdeepin/dtkcore. Source-pull-request: linuxdeepin/dtkcore#526
Build DTK5 and DTK6 packages from dtkcore. Log: unify DTK5 and DTK6 Influence: None Signed-off-by: Yixue Wang <wangyixue@deepin.org>
a58a7e0
Synchronize source files from linuxdeepin/dtkcore. Source-pull-request: linuxdeepin/dtkcore#526
deepin pr auto review我来对这个git diff进行审查。这是一个较大的改动,主要涉及DTK5和DTK6版本支持的变更。
改进建议:
# 建议添加版本检查
if(NOT DEFINED DTK5)
option(DTK5 "Build DTK5." ON)
endif()
# 建议添加错误检查
ifeq ($(BUILD_DTK5)$(BUILD_DTK6), OFFOFF)
$(error At least one of DTK5 or DTK6 must be built)
endif
if(DTK5 AND QT_VERSION_MAJOR VERSION_GREATER 5)
message(FATAL_ERROR "DTK5 requires Qt5")
endif()
if(NOT DTK5 AND QT_VERSION_MAJOR VERSION_LESS 6)
message(FATAL_ERROR "DTK6 requires Qt6")
endif()
message(STATUS "Building DTK${DTK_VERSION_MAJOR} with Qt${QT_VERSION_MAJOR}")总的来说,这个改动是合理的,实现了DTK5和DTK6的并行支持,代码质量良好。只需要添加一些额外的错误检查和注释来提高可维护性。 |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: asterwyx, felixonmars, zccrs The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
Build DTK5 and DTK6 packages from dtkcore.
Log: unify DTK5 and DTK6
Influence: None