summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSlávek Banko <slavek.banko@axis.cz>2020-03-24 14:46:10 +0100
committerSlávek Banko <slavek.banko@axis.cz>2020-03-24 14:46:10 +0100
commit8adeb4111077df36629317e21fd00066bc00f397 (patch)
tree9940502ac6454f9bec85b3ab6f19553eade34406
parent4860d0b2f18302d2fa313fed61906c36e9f4ee26 (diff)
downloadabakus-8adeb411.tar.gz
abakus-8adeb411.zip
Add support for LINGUAS for listing translations to install.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
-rw-r--r--doc/CMakeLists.txt23
-rw-r--r--translations/messages/CMakeLists.txt11
2 files changed, 21 insertions, 13 deletions
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
index a8b8de4..cd4611d 100644
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
@@ -1,12 +1,13 @@
-#################################################
-#
-# (C) 2010-2011 Serghei Amelian
-# serghei (DOT) amelian (AT) gmail.com
-#
-# Improvements and feedback are welcome
-#
-# This file is released under GPL >= 2
-#
-#################################################
+file( GLOB _dirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} * )
+string( REGEX REPLACE "[ \r\n\t]+" ";" _linguas "$ENV{LINGUAS}" )
-tde_auto_add_subdirectories()
+foreach( _dir ${_dirs} )
+ if( IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${_dir} AND
+ EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_dir}/CMakeLists.txt )
+ if( "${_dir}" STREQUAL "en" OR
+ "${_linguas}" MATCHES "^;*$" OR
+ ";${_linguas};" MATCHES ";${_dir};" )
+ add_subdirectory( ${_dir} )
+ endif( )
+ endif()
+endforeach()
diff --git a/translations/messages/CMakeLists.txt b/translations/messages/CMakeLists.txt
index 34b99fb..75c89f8 100644
--- a/translations/messages/CMakeLists.txt
+++ b/translations/messages/CMakeLists.txt
@@ -1,7 +1,14 @@
file( GLOB_RECURSE po_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.po )
+string( REGEX REPLACE "[ \r\n\t]+" ";" _linguas "$ENV{LINGUAS}" )
foreach( _po ${po_files} )
get_filename_component( _lang ${_po} NAME_WE )
- string( REGEX REPLACE "^([^/]*)/.*" "\\1" _component "${_po}" )
- tde_create_translation( FILES ${_po} LANG ${_lang} OUTPUT_NAME ${_component} )
+ if( "${_linguas}" MATCHES "^;*$" OR ";${_linguas};" MATCHES ";${_lang};" )
+ if( "${_po}" MATCHES "^([^/]*)/.*" )
+ string( REGEX REPLACE "^([^/]*)/.*" "\\1" _component "${_po}" )
+ else( )
+ set( _component "${PROJECT_NAME}" )
+ endif( )
+ tde_create_translation( FILES ${_po} LANG ${_lang} OUTPUT_NAME ${_component} )
+ endif( )
endforeach( )