diff options
author | mdankov <mdankov@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2014-05-30 20:51:42 +0000 |
---|---|---|
committer | mdankov <mdankov@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2014-05-30 20:51:42 +0000 |
commit | 4bdf9797375d301f0ae469898d7822b3d46c9ed2 (patch) | |
tree | 01dc96827a60154491027de1d1a58cd8025d9dfa /cmake | |
parent | 37c472d35e6f72f228a518864f47fa37587653be (diff) | |
download | navit-svn-4bdf9797375d301f0ae469898d7822b3d46c9ed2.tar.gz |
Fix:core:Do not depend on XGettextGlade ability to process broken glade input to fetch translatable strings from navit_shipped.xml.
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@5793 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/navit_xml_parser.cmake | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/cmake/navit_xml_parser.cmake b/cmake/navit_xml_parser.cmake index 745d4cb3..9edbcd2b 100644 --- a/cmake/navit_xml_parser.cmake +++ b/cmake/navit_xml_parser.cmake @@ -5,3 +5,21 @@ foreach (LINE ${TEXT_LINES}) string(REGEX REPLACE ".*(_\\(\"[^\"]*\"\\)).*" "\\1\n" OUTPUT_LINE ${LINE}) file(APPEND ${DST} ${OUTPUT_LINE}) endforeach() + +file(READ "${SRC}" SRC_CONTENT) + +string(REGEX MATCHALL "<text>([^<>]*)</text>" TEXT_ELEMENTS "${SRC_CONTENT}") + +foreach (LINE ${TEXT_ELEMENTS}) + string(REGEX REPLACE ".*<text[^>]*>([^<>]*)</text>.*" "_(\"\\1\")" OUTPUT_LINE ${LINE}) + string(REPLACE "\n" "\\n" OUTPUT_LINE ${OUTPUT_LINE}) + file(APPEND ${DST} "${OUTPUT_LINE}\n") +endforeach() + +string(REGEX MATCHALL "<vehicleprofile [^<>]*name=\"[^\"]+\"" ATTRS "${SRC_CONTENT}") + +foreach (LINE ${ATTRS}) + string(REGEX REPLACE ".* name=\"([^\"]+)\"" "_(\"\\1\")" OUTPUT_LINE ${LINE}) + file(APPEND ${DST} "${OUTPUT_LINE}\n") +endforeach() + |