From 85011cdcf72fbba721bb0c10f140bfabf7a35725 Mon Sep 17 00:00:00 2001 From: Lukas W Date: Thu, 3 Mar 2016 17:37:41 +1300 Subject: [PATCH] Move CMake locale generation from src/ to data/locale/ --- data/locale/CMakeLists.txt | 40 ++++++++++++++++++++++++++++++++++++-- src/CMakeLists.txt | 35 --------------------------------- 2 files changed, 38 insertions(+), 37 deletions(-) diff --git a/data/locale/CMakeLists.txt b/data/locale/CMakeLists.txt index 4aa7d9e2a..8454e9d83 100644 --- a/data/locale/CMakeLists.txt +++ b/data/locale/CMakeLists.txt @@ -1,7 +1,43 @@ -FILE(GLOB QM_FILES *.qm) +if (QT5) + set (QT_LUPDATE_EXECUTABLE "${Qt5_LUPDATE_EXECUTABLE}") + set (QT_LRELEASE_EXECUTABLE "${Qt5_LRELEASE_EXECUTABLE}") +endif () + +# +# rules for building localizations +# +SET(ts_targets "") +SET(qm_targets "") +SET(QM_FILES "") + +FILE(GLOB lmms_LOCALES ${CMAKE_CURRENT_SOURCE_DIR}/*.ts) +FOREACH(_ts_file ${lmms_LOCALES}) + GET_FILENAME_COMPONENT(_ts_target "${_ts_file}" NAME) + STRING(REPLACE ".ts" ".qm" _qm_file "${_ts_file}") + STRING(REPLACE ".ts" ".qm" _qm_target "${_ts_target}") + ADD_CUSTOM_TARGET(${_ts_target} + COMMAND "${QT_LUPDATE_EXECUTABLE}" -locations none -no-obsolete -I ${CMAKE_SOURCE_DIR}/include/ ${LMMS_SRCS} ${LMMS_INCLUDES} ${LMMS_UIS} `find "\"${CMAKE_SOURCE_DIR}/plugins/\"" -type f -name '*.cpp' -or -name '*.h'` -ts "\"${_ts_file}\"" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) + ADD_CUSTOM_TARGET(${_qm_target} + COMMAND "${QT_LRELEASE_EXECUTABLE}" "\"${_ts_file}\"" -qm "\"${_qm_file}\"" + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) + LIST(APPEND ts_targets "${_ts_target}") + LIST(APPEND qm_targets "${_qm_target}") + LIST(APPEND QM_FILES "${_qm_file}") +ENDFOREACH(_ts_file ${lmms_LOCALES}) + +ADD_CUSTOM_TARGET(update-locales) +FOREACH(_item ${ts_targets}) + ADD_DEPENDENCIES(update-locales "${_item}") +ENDFOREACH(_item ${ts_targets}) + +ADD_CUSTOM_TARGET(finalize-locales ALL) +FOREACH(_item ${qm_targets}) + ADD_DEPENDENCIES(finalize-locales "${_item}") +ENDFOREACH(_item ${qm_targets}) + IF(LMMS_BUILD_WIN32) FILE(GLOB QT_QM_FILES "${QT_TRANSLATIONS_DIR}/qt*[^h].qm") ENDIF(LMMS_BUILD_WIN32) INSTALL(FILES ${QM_FILES} ${QT_QM_FILES} DESTINATION "${LMMS_DATA_DIR}/locale") - diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 0420a19dd..97d4c8202 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -132,41 +132,6 @@ IF(LMMS_BUILD_MSYS AND CMAKE_BUILD_TYPE STREQUAL "Debug") TARGET_LINK_LIBRARIES(lmms QtCore4 QtGui4 QtXml4) ENDIF() -if (QT5) - set (QT_LUPDATE_EXECUTABLE "${Qt5_LUPDATE_EXECUTABLE}") - set (QT_LRELEASE_EXECUTABLE "${Qt5_LRELEASE_EXECUTABLE}") -endif () - -# -# rules for building localizations -# -FILE(GLOB lmms_LOCALES ${CMAKE_SOURCE_DIR}/data/locale/*.ts) -SET(ts_targets "") -SET(qm_targets "") -FOREACH(_ts_file ${lmms_LOCALES}) - STRING(REPLACE "${CMAKE_SOURCE_DIR}/data/locale/" "" _ts_target "${_ts_file}") - STRING(REPLACE ".ts" ".qm" _qm_file "${_ts_file}") - STRING(REPLACE ".ts" ".qm" _qm_target "${_ts_target}") - ADD_CUSTOM_TARGET(${_ts_target} - COMMAND "${QT_LUPDATE_EXECUTABLE}" -locations none -no-obsolete -I ${CMAKE_SOURCE_DIR}/include/ ${LMMS_SRCS} ${LMMS_INCLUDES} ${LMMS_UIS} `find "\"${CMAKE_SOURCE_DIR}/plugins/\"" -type f -name '*.cpp' -or -name '*.h'` -ts "\"${_ts_file}\"" - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) - ADD_CUSTOM_TARGET(${_qm_target} - COMMAND "${QT_LRELEASE_EXECUTABLE}" "\"${_ts_file}\"" -qm "\"${_qm_file}\"" - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}) - LIST(APPEND ts_targets "${_ts_target}") - LIST(APPEND qm_targets "${_qm_target}") -ENDFOREACH(_ts_file ${lmms_LOCALES}) - -ADD_CUSTOM_TARGET(update-locales) -FOREACH(_item ${ts_targets}) - ADD_DEPENDENCIES(update-locales "${_item}") -ENDFOREACH(_item ${ts_targets}) - -ADD_CUSTOM_TARGET(finalize-locales ALL) -FOREACH(_item ${qm_targets}) - ADD_DEPENDENCIES(finalize-locales "${_item}") -ENDFOREACH(_item ${qm_targets}) - # Install IF(LMMS_BUILD_WIN32) SET_TARGET_PROPERTIES(lmms PROPERTIES