1
0
mirror of https://github.com/qTox/qTox.git synced 2024-03-22 14:00:36 +08:00

refactor(cmake): fix missing dependency

This commit is contained in:
sudden6 2020-05-21 23:25:10 +02:00
parent f37813ff88
commit 34c1a1e96b
No known key found for this signature in database
GPG Key ID: 279509B499E032B9

View File

@ -60,23 +60,28 @@ qt5_add_translation(translations_FILES
zh_TW.ts
)
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/translations.qrc.in"
"<!DOCTYPE RCC>
<RCC version=\"1.0\">
<qresource prefix=\"/translations\">
")
foreach(qm ${translations_FILES})
get_filename_component(qm_name ${qm} NAME)
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/translations.qrc.in"
" <file alias=\"${qm_name}\">${qm}</file>\n")
endforeach(qm)
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/translations.qrc.in"
" </qresource>
</RCC>
")
# Generate a resource file which contains all translation files
function(generate_translation_resource)
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/translations.qrc.in"
"<!DOCTYPE RCC>
<RCC version=\"1.0\">
<qresource prefix=\"/translations\">
")
foreach(qm ${translations_FILES})
get_filename_component(qm_name ${qm} NAME)
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/translations.qrc.in"
" <file alias=\"${qm_name}\">${qm}</file>\n")
endforeach(qm)
file(APPEND "${CMAKE_CURRENT_BINARY_DIR}/translations.qrc.in"
" </qresource>
</RCC>
")
endfunction()
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_if_different
${CMAKE_CURRENT_BINARY_DIR}/translations.qrc.in
${CMAKE_CURRENT_BINARY_DIR}/translations.qrc)
generate_translation_resource()
configure_file(${CMAKE_CURRENT_BINARY_DIR}/translations.qrc.in ./translations.qrc COPYONLY)
add_library(translations_library ${translations_FILES} ${CMAKE_CURRENT_BINARY_DIR}/translations.qrc)
add_library(translations_library ${CMAKE_CURRENT_BINARY_DIR}/translations.qrc)
# An explicit dependency is needed or AUTORCC will run before the translation files are created
set_target_properties(translations_library PROPERTIES AUTOGEN_TARGET_DEPENDS "${translations_FILES}")