X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=cmake%2Fmodules%2FQuasselMacros.cmake;h=8e453e26370a3486375dce0e233b3a9823c152e5;hp=6b2f82d30370ce5b1d4541d20cf8c6d1895acc6c;hb=f8de7b607c3e168996138cbc5e1cfca18254ba09;hpb=e8e1f038e6bf4a7bc938e316774374d3116ff39a diff --git a/cmake/modules/QuasselMacros.cmake b/cmake/modules/QuasselMacros.cmake index 6b2f82d3..8e453e26 100644 --- a/cmake/modules/QuasselMacros.cmake +++ b/cmake/modules/QuasselMacros.cmake @@ -9,20 +9,39 @@ macro(setup_qt4_variables) set(MAIN MAIN) ENDIF(WIN32) foreach(qtmod CORE ${ARGV} ${MAIN}) - set(QUASSEL_QT_LIBRARIES ${QUASSEL_QT_LIBRARIES} ${QT_QT${qtmod}_LIBRARY} ${QT_${qtmod}_LIB_DEPENDENCIES}) + set(QUASSEL_QT_LIBRARIES ${QUASSEL_QT_LIBRARIES} ${QT_QT${qtmod}_LIBRARY}) + if(STATIC) + set(QUASSEL_QT_LIBRARIES ${QUASSEL_QT_LIBRARIES} ${QT_${qtmod}_LIB_DEPENDENCIES}) + endif(STATIC) endforeach(qtmod ${ARGV}) 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 ${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 DEPENDS ${basename}.ts) set(${outvar} ${output}) endmacro(generate_qm outvar basename)