build(debian): separate Qt5/Qt6 build configurations for V25/V20 support#116
build(debian): separate Qt5/Qt6 build configurations for V25/V20 support#116deepin-bot[bot] merged 1 commit intolinuxdeepin:masterfrom
Conversation
Reviewer's GuideThis PR introduces dual Qt5/Qt6 build support (aligned with Deepin V20/V25) by splitting Debian packaging control files, updating CMake to choose the correct Qt moc/lupdate tooling dynamically, and refreshing documentation and dependency declarations accordingly. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Hey - I've left some high level feedback:
- The new Qt MOC handling in
src/downloader/CMakeLists.txtmixesqt_wrap_cpp/qt5_wrap_cpp, which are deprecated/Qt5-style macros; consider using CMakeAUTOMOCor the modern Qt6qt_add_executable/qt_add_libraryapproach so the same CMake logic works cleanly for both Qt5 and Qt6. - Renaming
debian/controltodebian/control.1will break standard Debian tooling that expectsdebian/control; if this split is for V20/V25 variants, it would be better to keep a canonicaldebian/controland generate/switch the version-specific control files via a script or packaging branch instead of committing.1directly.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- The new Qt MOC handling in `src/downloader/CMakeLists.txt` mixes `qt_wrap_cpp`/`qt5_wrap_cpp`, which are deprecated/Qt5-style macros; consider using CMake `AUTOMOC` or the modern Qt6 `qt_add_executable`/`qt_add_library` approach so the same CMake logic works cleanly for both Qt5 and Qt6.
- Renaming `debian/control` to `debian/control.1` will break standard Debian tooling that expects `debian/control`; if this split is for V20/V25 variants, it would be better to keep a canonical `debian/control` and generate/switch the version-specific control files via a script or packaging branch instead of committing `.1` directly.Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
Split debian/control into version-specific files to support both Qt6 (V25) and Qt5 (V20) builds. CMake already handles dynamic Qt/DTK detection. 将debian/control拆分为版本特定文件,支持Qt6(V25)和Qt5(V20)双版本构建。 CMake已处理动态Qt/DTK版本检测。 Log: 分离Qt5/Qt6构建配置,支持V25/V20双版本 Influence: 可在不同deepin版本上使用对应Qt版本构建,提升包管理兼容性。 PMS: https://pms.uniontech.com/task-view-386321.html
deepin pr auto review这份代码变更主要是将项目从 Qt5 迁移到 Qt6(或者使其兼容 Qt5 和 Qt6),同时更新了构建依赖和打包配置。以下是对语法逻辑、代码质量、代码性能和代码安全方面的详细审查意见: 1. 语法逻辑与代码逻辑问题点 1:拼写错误修正
问题点 2:Qt 版本兼容性处理
问题点 3:MOC 文件生成与链接
2. 代码质量与构建配置问题点 1:Debian 依赖管理
问题点 2:README.md 的依赖描述
问题点 3:CMake 翻译生成逻辑
3. 代码性能
4. 代码安全
总结与改进建议
总体评价: 代码变更逻辑基本正确,成功适配了 Qt6 的构建命令。主要问题在于构建配置文件( |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: lzwind, re2zero 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 |
|
/merge |
Split debian/control into version-specific files to support both Qt6 (V25) and Qt5 (V20) builds. CMake already handles dynamic Qt/DTK detection.
将debian/control拆分为版本特定文件,支持Qt6(V25)和Qt5(V20)双版本构建。 CMake已处理动态Qt/DTK版本检测。
Log: 分离Qt5/Qt6构建配置,支持V25/V20双版本
Influence: 可在不同deepin版本上使用对应Qt版本构建,提升包管理兼容性。
Summary by Sourcery
Add dual Qt5/Qt6 build and packaging support for deepin-downloader and update related metadata.
New Features:
Enhancements:
Build: