/[zanavi_public1]/navit/po/CMakeLists.txt
ZANavi

Contents of /navit/po/CMakeLists.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (show annotations) (download)
Fri Oct 28 21:19:04 2011 UTC (12 years, 5 months ago) by zoff99
File MIME type: text/plain
File size: 3553 byte(s)
import files
1 FIND_PROGRAM(XGETTEXT xgettext)
2
3 set(POTFILES
4 ${PROJECT_SOURCE_DIR}/navit/main.c
5 ${PROJECT_SOURCE_DIR}/navit/navigation.c
6 ${PROJECT_SOURCE_DIR}/navit/navit.c
7 ${PROJECT_SOURCE_DIR}/navit/popup.c
8 ${PROJECT_SOURCE_DIR}/navit/country.c
9 ${PROJECT_SOURCE_DIR}/navit/gui/gtk/destination.c
10 ${PROJECT_SOURCE_DIR}/navit/gui/gtk/gui_gtk_action.c
11 ${PROJECT_SOURCE_DIR}/navit/gui/gtk/gui_gtk_statusbar.c
12 ${PROJECT_SOURCE_DIR}/navit/gui/internal/gui_internal.c
13 ${PROJECT_SOURCE_DIR}/navit/osd/core/osd_core.c
14 ${CMAKE_CURRENT_BINARY_DIR}/navit_shipped.c
15 )
16 if (XGETTEXT_GLADE)
17 list(APPEND POTFILES ${CMAKE_CURRENT_BINARY_DIR}/navit_shipped.glade)
18 endif()
19
20 ADD_CUSTOM_COMMAND(
21 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/navit_shipped.c
22 DEPENDS ${PROJECT_SOURCE_DIR}/navit/navit_shipped.xml
23 COMMAND ${CMAKE_COMMAND} -D SRC=${PROJECT_SOURCE_DIR}/navit/navit_shipped.xml -D DST=${CMAKE_CURRENT_BINARY_DIR}/navit_shipped.c
24 -P ${PROJECT_SOURCE_DIR}/cmake/navit_xml_parser.cmake
25 )
26
27 ADD_CUSTOM_COMMAND(
28 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/navit_shipped.glade
29 DEPENDS ${PROJECT_SOURCE_DIR}/navit/navit_shipped.xml
30 COMMAND ${CMAKE_COMMAND} -D SRC=${PROJECT_SOURCE_DIR}/navit/navit_shipped.xml -D DST=${CMAKE_CURRENT_BINARY_DIR}/navit_shipped.glade
31 -P ${PROJECT_SOURCE_DIR}/cmake/navit_xml_parser_glade.cmake
32 )
33
34 ADD_CUSTOM_COMMAND(
35 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/navit.po
36 DEPENDS ${POTFILES}
37 COMMAND ${XGETTEXT} --no-location --default-domain=navit_tmp --add-comments --keyword=_ --keyword=_n ${POTFILES}
38 COMMAND ${CMAKE_COMMAND} -DMATCHES="CHARSET" -DREPLACE="utf-8"
39 -DSRC=${CMAKE_CURRENT_BINARY_DIR}/navit_tmp.po -DDST=${CMAKE_CURRENT_BINARY_DIR}/navit.po
40 -P ${PROJECT_SOURCE_DIR}/cmake/replace.cmake
41 )
42
43 FILE(GLOB POIN_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.po.in")
44
45 string(REPLACE ".po.in" "" LANGUAGES "${POIN_FILES}")
46
47 foreach (LANG ${LANGUAGES})
48 ADD_CUSTOM_COMMAND(
49 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${LANG}.po
50 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/navit.po
51 COMMAND ${CMAKE_COMMAND} -D SRC=${CMAKE_CURRENT_SOURCE_DIR}/${LANG}.po.in -D DST=${CMAKE_CURRENT_BINARY_DIR}/${LANG}.po.tmp -DPACKAGE_STRING=${PACKAGE_STRING} -P ${PROJECT_SOURCE_DIR}/cmake/navit_po_version.cmake
52 COMMAND ${GETTEXT_MSGMERGE_EXECUTABLE} --no-fuzzy-matching --verbose -o "${CMAKE_CURRENT_BINARY_DIR}/${LANG}.po" "${CMAKE_CURRENT_BINARY_DIR}/${LANG}.po.tmp" ${CMAKE_CURRENT_BINARY_DIR}/navit.po
53 COMMAND ${CMAKE_COMMAND} -E remove "${CMAKE_CURRENT_BINARY_DIR}/${LANG}.po.tmp"
54 )
55 endforeach(LANG ${LANGUAGES})
56
57 foreach (LANG ${LANGUAGES})
58 ADD_CUSTOM_COMMAND(
59 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${LANG}.mo
60 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${LANG}.po
61 COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} --check --verbose --statistics --output-file="${CMAKE_CURRENT_BINARY_DIR}/${LANG}.mo" "${CMAKE_CURRENT_BINARY_DIR}/${LANG}.po"
62 COMMAND ${CMAKE_COMMAND} -E make_directory "${PROJECT_BINARY_DIR}/locale/${LANG}/LC_MESSAGES"
63 COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_CURRENT_BINARY_DIR}/${LANG}.mo" "${PROJECT_BINARY_DIR}/locale/${LANG}/LC_MESSAGES/navit.mo"
64 )
65 SET(MOFILES ${CMAKE_CURRENT_BINARY_DIR}/${LANG}.mo ${MOFILES})
66 INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${LANG}.mo DESTINATION ${LOCALE_DIR}/${LANG}/LC_MESSAGES RENAME navit.mo)
67 endforeach(LANG ${LANGUAGES})
68
69 add_custom_target(locales ALL DEPENDS ${MOFILES})

   
Visit the ZANavi Wiki