1 # Generate and add translations
2 # The LINGUAS variable can be used to limit that set
4 if(QT_LRELEASE_EXECUTABLE)
5 # We always include quassel.ts
6 generate_qm(QM quassel)
10 file(GLOB avail_tsfiles quassel_*.ts)
11 foreach(TS_FILE ${avail_tsfiles})
12 get_filename_component(basename ${TS_FILE} NAME_WE)
13 string(REGEX REPLACE "quassel_(.+)$" "\\1" lang ${basename})
14 # test if we want this
17 string(REGEX MATCH "${lang}" flg ${LINGUAS})
20 generate_qm(QM ${basename})
21 set(qm_files ${qm_files} ${QM})
22 set(gen_linguas "${gen_linguas} ${lang}")
24 endforeach(TS_FILE ${avail_tsfiles})
25 message(STATUS "Including languages:${gen_linguas}")
26 else(QT_LRELEASE_EXECUTABLE)
27 message(STATUS "WARNING: lrelease not found, you won't have translations!")
28 endif(QT_LRELEASE_EXECUTABLE)
31 set(resfile ${CMAKE_CURRENT_BINARY_DIR}/i18n.qrc)
32 file(WRITE ${resfile} "<!DOCTYPE RCC><RCC version=\"1.0\">\n"
33 "<qresource prefix=\"/i18n\">\n")
34 foreach(file ${qm_files})
35 get_filename_component(file ${file} NAME)
36 file(APPEND ${resfile} " <file>${file}</file>\n")
37 endforeach(file ${qm_files})
38 file(APPEND ${resfile} "</qresource>\n</RCC>\n")
40 #add_custom_command(OUTPUT ${resfile} DEPENDS ${qm_files})
41 set_directory_properties(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${qm_files} i18n.qrc")
42 qt4_add_resources(RC_I18N ${resfile})
43 add_custom_target(i18n DEPENDS ${RC_I18N})