diff --git a/lang/translations.cmake b/CMakeModules/CalamaresAddTranslations.cmake similarity index 64% rename from lang/translations.cmake rename to CMakeModules/CalamaresAddTranslations.cmake index fc18f4f11..97d4fadf1 100644 --- a/lang/translations.cmake +++ b/CMakeModules/CalamaresAddTranslations.cmake @@ -1,3 +1,6 @@ +# Internal macro for adding the C++ / Qt translations to the +# build and install tree. Should be called only once, from +# src/calamares/CMakeLists.txt. macro(add_calamares_translations language) list( APPEND CALAMARES_LANGUAGES ${ARGV} ) @@ -40,3 +43,26 @@ macro(add_calamares_translations language) ) endmacro() +# Internal macro for Python translations +# +# Translations of the Python modules that don't have their own +# lang/ subdirectories -- these are collected in top-level +# lang/python_.po +macro(add_calamares_python_translations language) + set( CALAMARES_LANGUAGES "" ) + list( APPEND CALAMARES_LANGUAGES ${ARGV} ) + + set( TS_FILES "" ) # Actually po / mo files + foreach( lang ${CALAMARES_LANGUAGES} ) + if( lang STREQUAL "en" ) + message( STATUS "Skipping Python translations for en_US" ) + else() + list( APPEND TS_FILES "${CMAKE_SOURCE_DIR}/lang/python_${lang}.po;${CMAKE_SOURCE_DIR}/lang/python_${lang}.mo" ) + endif() + endforeach() + + install( + FILES ${TS_FILES} + DESTINATION ${CMAKE_INSTALL_DATADIR}/calamares/lang/ + ) +endmacro() diff --git a/src/calamares/CMakeLists.txt b/src/calamares/CMakeLists.txt index 8248de6fb..c0f9ecb66 100644 --- a/src/calamares/CMakeLists.txt +++ b/src/calamares/CMakeLists.txt @@ -37,10 +37,8 @@ include( GNUInstallDirs ) qt5_wrap_ui( calamaresUi_H ${calamaresUi} ) -#qt_add_resources( calamaresRc "../../resources.qrc" ) - # Translations -include( ${CMAKE_SOURCE_DIR}/lang/translations.cmake ) +include( CalamaresAddTranslations ) add_calamares_translations( ${CALAMARES_TRANSLATION_LANGUAGES} ) set( final_src ${calamaresUi_H} ${calamaresSources} ${calamaresRc} ${trans_outfile} ) diff --git a/src/modules/CMakeLists.txt b/src/modules/CMakeLists.txt index ab4033aa1..48cda5c72 100644 --- a/src/modules/CMakeLists.txt +++ b/src/modules/CMakeLists.txt @@ -13,3 +13,6 @@ foreach( SUBDIRECTORY ${SUBDIRECTORIES} ) calamares_add_module_subdirectory( ${SUBDIRECTORY} ) endif() endforeach() + +include( CalamaresAddTranslations ) +add_calamares_python_translations( ${CALAMARES_TRANSLATION_LANGUAGES} )