summaryrefslogtreecommitdiffstats
path: root/po/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'po/CMakeLists.txt')
-rw-r--r--po/CMakeLists.txt17
1 files changed, 13 insertions, 4 deletions
diff --git a/po/CMakeLists.txt b/po/CMakeLists.txt
index f6c1842..75c89f8 100644
--- a/po/CMakeLists.txt
+++ b/po/CMakeLists.txt
@@ -1,5 +1,14 @@
-file( GLOB _srcs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.po )
+file( GLOB_RECURSE po_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.po )
+string( REGEX REPLACE "[ \r\n\t]+" ";" _linguas "$ENV{LINGUAS}" )
-if( _srcs )
- tde_create_translation( LANG auto OUTPUT_NAME ${PROJECT_NAME} )
-endif()
+foreach( _po ${po_files} )
+ get_filename_component( _lang ${_po} NAME_WE )
+ 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( )