Skip to content

Commit 6298f35

Browse files
liyigang1Johnson-zs
authored andcommitted
refactor: centralize PROJECT_VERSION_MAJOR configuration in root CMakeLists
Moved PROJECT_VERSION_MAJOR definition from submodule cmake files to root CMakeLists.txt for unified version management Qt6 build sets PROJECT_VERSION_MAJOR to 1 (libdfm-*.so.1) Qt5 build sets PROJECT_VERSION_MAJOR to 0 (libdfm-*.so.0) Removed redundant PROJECT_VERSION_MAJOR settings from: - src/dfm-burn/dfm-burn-lib/dfm-burn.cmake - src/dfm-io/dfm-io/dfm-io.cmake - src/dfm-mount/dfm-mount.cmake This change ensures consistent SOVERSION across all submodules and simplifies version management by having a single source of truth The change maintains binary compatibility while improving build configuration clarity Influence: 1. Verify libdfm-burn.so.* has correct SOVERSION after build 2. Verify libdfm-io.so.* has correct SOVERSION after build 3. Verify libdfm-mount.so.* has correct SOVERSION after build 4. Check Qt5 build produces libdfm-*.so.0 5. Check Qt6 build produces libdfm-*.so.1 refactor: 将 PROJECT_VERSION_MAJOR 配置集中到根 CMakeLists 中 将 PROJECT_VERSION_MAJOR 定义从子模块 cmake 文件移到根 CMakeLists.txt 实现统一的版本管理 Qt6 构建设置 PROJECT_VERSION_MAJOR 为 1 (libdfm-*.so.1) Qt5 构建设置 PROJECT_VERSION_MAJOR 为 0 (libdfm-*.so.0) 移除了以下文件中的冗余 PROJECT_VERSION_MAJOR 设置: - src/dfm-burn/dfm-burn-lib/dfm-burn.cmake - src/dfm-io/dfm-io/dfm-io.cmake - src/dfm-mount/dfm-mount.cmake 此变更确保所有子模块的 SOVERSION 一致,并通过单一配置源简化版本管理 该变更保持二进制兼容性的同时提高了构建配置的清晰度 Influence: 1. 验证构建后 libdfm-burn.so.* 具有正确的 SOVERSION 2. 验证构建后 libdfm-io.so.* 具有正确的 SOVERSION 3. 验证构建后 libdfm-mount.so.* 具有正确的 SOVERSION 4. 检查 Qt5 构建产生 libdfm-*.so.0 5. 检查 Qt6 构建产生 libdfm-*.so.1
1 parent 0203e8c commit 6298f35

4 files changed

Lines changed: 2 additions & 12 deletions

File tree

CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,15 @@ if(OPT_ENABLE_QT6)
2121
set(DFM_BUILD_WITH_QT6 TRUE)
2222
set(QT_VERSION_MAJOR 6)
2323
set(DFM_VERSION_MAJOR 6)
24+
set(PROJECT_VERSION_MAJOR 1)
2425
endif()
2526
endif()
2627

2728
if(NOT DFM_BUILD_WITH_QT6)
2829
message(WARNING "Qt6 not found, Use Qt5.")
2930
set(QT_VERSION_MAJOR 5)
3031
set(DFM_VERSION_MAJOR "")
32+
set(PROJECT_VERSION_MAJOR 0)
3133
endif()
3234

3335
# default

src/dfm-burn/dfm-burn-lib/dfm-burn.cmake

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,6 @@ if (NOT VERSION)
2626
set(VERSION "1.0.0")
2727
endif()
2828

29-
if (NOT PROJECT_VERSION_MAJOR)
30-
set(PROJECT_VERSION_MAJOR 1)
31-
endif()
32-
3329
set_target_properties(
3430
${BIN_NAME} PROPERTIES
3531
VERSION ${VERSION}

src/dfm-io/dfm-io/dfm-io.cmake

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,6 @@ if (NOT VERSION)
3030
set(VERSION "1.0.0")
3131
endif()
3232

33-
if (NOT PROJECT_VERSION_MAJOR)
34-
set(PROJECT_VERSION_MAJOR 1)
35-
endif()
36-
3733
set_target_properties(
3834
${BIN_NAME} PROPERTIES
3935
VERSION ${VERSION}

src/dfm-mount/dfm-mount.cmake

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,6 @@ if (NOT VERSION)
2121
set(VERSION "1.0.0")
2222
endif()
2323

24-
if (NOT PROJECT_VERSION_MAJOR)
25-
set(PROJECT_VERSION_MAJOR 1)
26-
endif()
27-
2824
set_target_properties(
2925
${BIN_NAME} PROPERTIES
3026
VERSION ${VERSION}

0 commit comments

Comments
 (0)