modify cmakelists
This commit is contained in:
parent
0b5fa3746a
commit
7a0a0b7495
@ -25,11 +25,27 @@ SET(
|
|||||||
TS_FILES
|
TS_FILES
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/translations/Dyt_zh_CN.ts
|
${CMAKE_CURRENT_SOURCE_DIR}/translations/Dyt_zh_CN.ts
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# 控制是否在构建时自动运行 lupdate 更新 TS 文件。
|
||||||
|
# 关闭时仅在 TS 变更后编译生成 QM,避免每次构建都重新创建翻译文件。
|
||||||
|
option(UPDATE_TRANSLATIONS "Run lupdate to refresh TS files during build" OFF)
|
||||||
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
|
if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
|
||||||
|
if(UPDATE_TRANSLATIONS)
|
||||||
|
# 运行 lupdate + lrelease:更新 TS 并生成 QM(可能导致每次构建都触发)
|
||||||
qt6_create_translation(QM_FILES ${CMAKE_CURRENT_SOURCE_DIR} ${TS_FILES})
|
qt6_create_translation(QM_FILES ${CMAKE_CURRENT_SOURCE_DIR} ${TS_FILES})
|
||||||
|
else()
|
||||||
|
# 仅生成 QM,TS 未变化时不重新创建
|
||||||
|
qt_add_translations(QM_FILES TS_FILES ${TS_FILES})
|
||||||
|
endif()
|
||||||
add_custom_target(translations DEPENDS ${QM_FILES})
|
add_custom_target(translations DEPENDS ${QM_FILES})
|
||||||
else()
|
else()
|
||||||
|
if(UPDATE_TRANSLATIONS)
|
||||||
|
# 运行 lupdate + lrelease
|
||||||
qt5_create_translation(QM_FILES ${CMAKE_CURRENT_SOURCE_DIR} ${TS_FILES})
|
qt5_create_translation(QM_FILES ${CMAKE_CURRENT_SOURCE_DIR} ${TS_FILES})
|
||||||
|
else()
|
||||||
|
# 仅运行 lrelease 生成 QM
|
||||||
|
qt5_add_translation(QM_FILES ${TS_FILES})
|
||||||
|
endif()
|
||||||
add_custom_target(translations DEPENDS ${QM_FILES})
|
add_custom_target(translations DEPENDS ${QM_FILES})
|
||||||
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS WinExtras REQUIRED)
|
find_package(Qt${QT_VERSION_MAJOR} COMPONENTS WinExtras REQUIRED)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user