PageRenderTime 32ms CodeModel.GetById 19ms app.highlight 9ms RepoModel.GetById 1ms app.codeStats 0ms

/quassel-0.7.3/cmake/modules/QuasselMacros.cmake

#
CMake | 48 lines | 38 code | 3 blank | 7 comment | 1 complexity | 895182b5ebc9f1562a01d3079311eb8d MD5 | raw file
Possible License(s): GPL-2.0, GPL-3.0
 1# This macro sets variables for additional Qt modules.
 2# We need this because targets need different Qt4 modules, i.e. different libs
 3# and defines. We can't simply include UseQt4 several times, since definitions add up.
 4# We workaround this by using our own macro to figure out what to add.
 5
 6macro(setup_qt4_variables)
 7  set(QUASSEL_QT_LIBRARIES )
 8  IF(WIN32)
 9    set(MAIN MAIN)
10  ENDIF(WIN32)
11  foreach(qtmod CORE ${ARGV} ${MAIN})
12    set(QUASSEL_QT_LIBRARIES ${QUASSEL_QT_LIBRARIES} ${QT_QT${qtmod}_LIBRARY})
13    if(STATIC)
14      set(QUASSEL_QT_LIBRARIES ${QUASSEL_QT_LIBRARIES} ${QT_${qtmod}_LIB_DEPENDENCIES})
15    endif(STATIC)
16  endforeach(qtmod ${ARGV})
17  set(QUASSEL_QT_LIBRARIES ${QUASSEL_QT_LIBRARIES} ${QT_LIBRARIES})
18endmacro(setup_qt4_variables)
19
20# This generates a .ts from a .po file
21macro(generate_ts outvar basename)
22  set(input ${CMAKE_SOURCE_DIR}/po/${basename}.po)
23  set(output ${CMAKE_BINARY_DIR}/po/${basename}.ts)
24  add_custom_command(OUTPUT ${output}
25          COMMAND ${QT_LCONVERT_EXECUTABLE}
26          ARGS -i ${input}
27               -of ts
28               -o ${output}
29# This is a workaround to add (duplicate) strings that lconvert missed to the .ts
30          COMMAND ${QT_LUPDATE_EXECUTABLE}
31          ARGS -silent
32	       ${CMAKE_SOURCE_DIR}/src/
33               -ts ${output}
34          DEPENDS ${basename}.po)
35  set(${outvar} ${output})
36endmacro(generate_ts outvar basename)
37
38# This generates a .qm from a .ts file
39macro(generate_qm outvar basename)
40  set(input ${CMAKE_BINARY_DIR}/po/${basename}.ts)
41  set(output ${CMAKE_BINARY_DIR}/po/${basename}.qm)
42  add_custom_command(OUTPUT ${output}
43          COMMAND ${QT_LRELEASE_EXECUTABLE}
44          ARGS -silent
45               ${input}
46          DEPENDS ${basename}.ts)
47  set(${outvar} ${output})
48endmacro(generate_qm outvar basename)