X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=cmake%2Fmodules%2FQuasselMacros.cmake;h=738d49e9c9fcad59b7f8408826d2ab14cac38000;hp=707afc9de33e4169c6cc0d75de746ef2920cc44e;hb=ed178d5c517ad031444fc64f1f85f9ea7a926e15;hpb=5b1e88d1770922fbe8b166994b0f06aa7f596517 diff --git a/cmake/modules/QuasselMacros.cmake b/cmake/modules/QuasselMacros.cmake index 707afc9d..738d49e9 100644 --- a/cmake/modules/QuasselMacros.cmake +++ b/cmake/modules/QuasselMacros.cmake @@ -17,15 +17,32 @@ macro(setup_qt4_variables) set(QUASSEL_QT_LIBRARIES ${QUASSEL_QT_LIBRARIES} ${QT_LIBRARIES}) endmacro(setup_qt4_variables) +# This generates a .ts from a .po file +macro(generate_ts outvar basename) + set(input ${CMAKE_SOURCE_DIR}/po/${basename}.po) + set(output ${CMAKE_BINARY_DIR}/po/${basename}.ts) + add_custom_command(OUTPUT ${output} + COMMAND ${QT_LCONVERT_EXECUTABLE} + ARGS -i ${input} + -of ts + -o ${output} +# This is a workaround to add (duplicate) strings that lconvert missed to the .ts + COMMAND ${QT_LUPDATE_EXECUTABLE} + ARGS -silent + ${CMAKE_SOURCE_DIR}/src/ + -ts ${output} + DEPENDS ${basename}.po) + set(${outvar} ${output}) +endmacro(generate_ts outvar basename) + # This generates a .qm from a .ts file macro(generate_qm outvar basename) - set(input ${CMAKE_SOURCE_DIR}/i18n/${basename}.ts) - set(output ${CMAKE_CURRENT_BINARY_DIR}/${basename}.qm) + set(input ${CMAKE_BINARY_DIR}/po/${basename}.ts) + set(output ${CMAKE_BINARY_DIR}/po/${basename}.qm) add_custom_command(OUTPUT ${output} COMMAND ${QT_LRELEASE_EXECUTABLE} - ARGS ${input} - -qm ${output} - -silent -compress + ARGS -silent + ${input} DEPENDS ${basename}.ts) set(${outvar} ${output}) endmacro(generate_qm outvar basename)