Переписан генератор переводов
This commit is contained in:
parent
5a6bef4529
commit
2f8024b670
@ -24,37 +24,32 @@ function(qt_translation)
|
||||
set(_ts "${_target}_${_lang}.ts")
|
||||
set(_qm "${_target}_${_lang}.qm")
|
||||
list(APPEND _ts_list ${_ts_dir}/${_ts})
|
||||
if(NOT EXISTS ${_ts_dir}/${_ts})
|
||||
file(WRITE ${_ts_dir}/${_ts} "<?xml version=\"1.0\" encoding=\"utf-8\"?>
|
||||
<!DOCTYPE TS>
|
||||
<TS version=\"2.1\" language=\"${_lang}\"></TS>")
|
||||
list(APPEND _l10n_targets "${_target}_l10n_${_lang}")
|
||||
string(APPEND L10N_QRC_BODY "<file alias=\"${_qm}\">${CMAKE_BINARY_DIR}/${_qm}</file>\n")
|
||||
|
||||
add_custom_target(${_target}_l10n_${_lang}
|
||||
COMMAND ${Qt5_LUPDATE_EXECUTABLE} ${_sources_list} -ts ${_ts_dir}/${_ts} -target-language ${_lang}
|
||||
DEPENDS ${_sources_list})
|
||||
|
||||
if(NOT EXISTS "${_ts_dir}/${_ts}")
|
||||
add_custom_target(${_ts} DEPENDS ${_target}_l10n_${_lang})
|
||||
else()
|
||||
add_custom_target(${_ts} COMMAND echo "Skipping lupdate for ${_ts}")
|
||||
endif()
|
||||
string(APPEND L10N_QRC_BODY
|
||||
"<file alias=\"${_qm}\">${CMAKE_BINARY_DIR}/${_qm}</file>\n")
|
||||
|
||||
add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/${_qm}
|
||||
COMMAND ${Qt5_LRELEASE_EXECUTABLE}
|
||||
ARGS ${_ts_dir}/${_ts} -qm
|
||||
${CMAKE_BINARY_DIR}/${_qm}
|
||||
DEPENDS ${_ts_dir}/${_ts})
|
||||
ARGS ${_ts_dir}/${_ts} -qm ${CMAKE_BINARY_DIR}/${_qm}
|
||||
DEPENDS ${_ts})
|
||||
endforeach()
|
||||
|
||||
add_custom_command(OUTPUT ${_ts_list}
|
||||
COMMAND ${Qt5_LUPDATE_EXECUTABLE}
|
||||
ARGS ${_sources_list} -ts ${_ts_list}
|
||||
DEPENDS ${_sources_list})
|
||||
|
||||
configure_file(${CMLIB_MODULE_DIR}/qrc/l10n.qrc.in
|
||||
${CMAKE_BINARY_DIR}/${_target}_l10n.qrc)
|
||||
qt5_add_resources(_qrc ${CMAKE_BINARY_DIR}/${_target}_l10n.qrc)
|
||||
add_custom_target(_qrc_target DEPENDS ${_qrc})
|
||||
add_custom_target(${_target}_qrc DEPENDS ${_qrc})
|
||||
add_custom_target(${_target}_l10n DEPENDS ${_l10n_targets})
|
||||
|
||||
foreach(_lang ${_languages})
|
||||
set(_ts "${_target}_${_lang}.ts")
|
||||
set(_qm "${_target}_${_lang}.qm")
|
||||
endforeach()
|
||||
|
||||
add_dependencies(${_target} _qrc_target)
|
||||
add_dependencies(${_target} ${_target}_qrc)
|
||||
target_sources(${_target} PUBLIC ${_qrc})
|
||||
endfunction()
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user