Make tabcompletion key configurable via shortcuts. fixes 1018
[quassel.git] / cmake / modules / QuasselMacros.cmake
index 099e8a2..738d49e 100644 (file)
@@ -9,7 +9,40 @@ 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 ${CMAKE_BINARY_DIR}/po/${basename}.ts)
+  set(output ${CMAKE_BINARY_DIR}/po/${basename}.qm)
+  add_custom_command(OUTPUT ${output}
+          COMMAND ${QT_LRELEASE_EXECUTABLE}
+          ARGS -silent
+               ${input}
+          DEPENDS ${basename}.ts)
+  set(${outvar} ${output})
+endmacro(generate_qm outvar basename)