@@ -351,12 +351,16 @@ endfunction()
351
351
# this function adds a ${TARGET}_lrelease target
352
352
#
353
353
# \param:TARGET target to generate releases for
354
- # \param:INSTALL if set, QM files will be installed to bin/translations
354
+ # \param:INSTALL if set, QM files will be installed
355
+ # \param:DIRECTORY if INSTALL is set, path where translations should be installed,
356
+ # default to bin/translations
355
357
# \param:QM_FILE .qm file to generate
356
358
# \param:TS_FILES source ts
357
359
#
358
360
function (mo2_add_lrelease TARGET )
359
- cmake_parse_arguments (MO2 "INSTALL" "QM_FILE" "TS_FILES" ${ARGN} )
361
+ cmake_parse_arguments (MO2 "INSTALL" "DIRECTORY;QM_FILE" "TS_FILES" ${ARGN} )
362
+
363
+ mo2_set_if_not_defined(MO2_DIRECTORY "bin/translations" )
360
364
361
365
mo2_find_qt_executable(lrelease_command lrelease)
362
366
@@ -378,7 +382,7 @@ function(mo2_add_lrelease TARGET)
378
382
FOLDER autogen)
379
383
380
384
if (${MO2_INSTALL} )
381
- install (FILES ${MO2_QM_FILE} DESTINATION bin/translations )
385
+ install (FILES ${MO2_QM_FILE} DESTINATION ${MO2_DIRECTORY} )
382
386
endif ()
383
387
384
388
endfunction ()
@@ -391,20 +395,17 @@ endfunction()
391
395
# \param:TARGET target to generate translations for
392
396
# \param:RELEASE if set, will use mo2_add_lrelease to generate .qm files
393
397
# \param:INSTALL_RELEASE if true, will install generated .qm files (force RELEASE)
398
+ # \param:INSTALL_DIRECTORY installation directory for .qm files, default to bin/translations
394
399
# \param:TS_FILE intermediate .ts file to generate
395
400
# \param:QM_FILE file .qm file to generate if RELEASE or INSTALL_RELEASE is set
396
401
# \param:SOURCES source directories to look for translations, send to mo2_add_lupdate
397
402
#
398
403
function (mo2_add_translations TARGET )
399
- cmake_parse_arguments (MO2 "RELEASE;INSTALL_RELEASE" "TS_FILE;QM_FILE" "SOURCES" ${ARGN} )
400
-
401
- if (NOT MO2_TS_FILE)
402
- set (MO2_TS_FILE ${CMAKE_CURRENT_SOURCE_DIR} /${TARGET} _en.ts)
403
- endif ()
404
+ cmake_parse_arguments (MO2 "RELEASE;INSTALL_RELEASE" "TS_FILE;QM_FILE;INSTALL_DIRECTORY" "SOURCES" ${ARGN} )
404
405
405
- if ( NOT MO2_QM_FILE )
406
- set (MO2_QM_FILE ${CMAKE_CURRENT_BINARY_DIR} /${TARGET} _en.qm)
407
- endif ( )
406
+ mo2_set_if_not_defined(MO2_TS_FILE ${CMAKE_CURRENT_SOURCE_DIR} / ${TARGET} _en.ts )
407
+ mo2_set_if_not_defined (MO2_QM_FILE ${CMAKE_CURRENT_BINARY_DIR} /${TARGET} _en.qm)
408
+ mo2_set_if_not_defined(MO2_INSTALL_DIRECTORY "bin/translations" )
408
409
409
410
# force release with install
410
411
if (${MO2_INSTALL_RELEASE} )
@@ -416,6 +417,7 @@ function(mo2_add_translations TARGET)
416
417
if (${MO2_RELEASE} )
417
418
mo2_add_lrelease(${TARGET}
418
419
INSTALL ${MO2_INSTALL_RELEASE}
420
+ DIRECTORY ${MO2_INSTALL_DIRECTORY}
419
421
TS_FILES ${MO2_TS_FILE}
420
422
QM_FILE ${MO2_QM_FILE} )
421
423
0 commit comments