updatepo cmake rule
Get rid of the system-specific updatelocales.sh and introduce an updatepo cmake rule. po files are also updated before creating the mo files, and we now keep the .pot file (in the po/en directory). To stabilize the po file creation, file contents are sorted by source filename. Update po files in the process.
This commit is contained in:
parent
e61b2f99c1
commit
d78e5e7329
|
@ -16,6 +16,21 @@ FIND_PROGRAM(GETTEXT_MSGFMT
|
|||
PATHS "${CUSTOM_GETTEXT_PATH}/bin"
|
||||
DOC "path to msgfmt")
|
||||
|
||||
FIND_PROGRAM(GETTEXT_MSGMERGE
|
||||
NAMES msgmerge
|
||||
PATHS "${CUSTOM_GETTEXT_PATH}/bin"
|
||||
DOC "path to msgmerge")
|
||||
|
||||
FIND_PROGRAM(GETTEXT_MSGEN
|
||||
NAMES msgen
|
||||
PATHS "${CUSTOM_GETTEXT_PATH}/bin"
|
||||
DOC "path to msgen")
|
||||
|
||||
FIND_PROGRAM(GETTEXT_EXTRACT
|
||||
NAMES xgettext
|
||||
PATHS "${CUSTOM_GETTEXT_PATH}/bin"
|
||||
DOC "path to xgettext")
|
||||
|
||||
# modern Linux, as well as Mac, seem to not need require special linking
|
||||
# they do not because gettext is part of glibc
|
||||
# TODO check the requirements on other BSDs and older Linux
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 0.0.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-07-20 16:57+0200\n"
|
||||
"POT-Creation-Date: 2011-07-22 11:00+0200\n"
|
||||
"PO-Revision-Date: 2011-07-20 16:58+0100\n"
|
||||
"Last-Translator: Constantin Wenger <constantin.wenger@googlemail.com>\n"
|
||||
"Language-Team: Deutsch <>\n"
|
||||
|
@ -21,44 +21,43 @@ msgstr ""
|
|||
msgid "Name/Password"
|
||||
msgstr "Name/Passwort"
|
||||
|
||||
#: src/guiMainMenu.cpp:202
|
||||
#: src/guiMainMenu.cpp:203
|
||||
msgid "Address/Port"
|
||||
msgstr "Adresse / Port"
|
||||
|
||||
#: src/guiMainMenu.cpp:220
|
||||
#: src/guiMainMenu.cpp:223
|
||||
msgid "Leave address blank to start a local server."
|
||||
msgstr "Lasse die Adresse frei um einen eigenen Server zu starten"
|
||||
|
||||
#: src/guiMainMenu.cpp:226
|
||||
#: src/guiMainMenu.cpp:230
|
||||
msgid "Fancy trees"
|
||||
msgstr "Schöne Bäume"
|
||||
|
||||
#: src/guiMainMenu.cpp:232
|
||||
#: src/guiMainMenu.cpp:236
|
||||
msgid "Smooth Lighting"
|
||||
msgstr "Besseres Licht"
|
||||
|
||||
#: src/guiMainMenu.cpp:239
|
||||
#: src/guiMainMenu.cpp:244
|
||||
msgid "Start Game / Connect"
|
||||
msgstr "Spiel starten / Verbinden"
|
||||
|
||||
#: src/guiMainMenu.cpp:247
|
||||
#: src/guiMainMenu.cpp:253
|
||||
msgid "Change keys"
|
||||
msgstr "Tastenbelegung ändern"
|
||||
|
||||
#: src/guiMainMenu.cpp:269
|
||||
#: src/guiMainMenu.cpp:276
|
||||
msgid "Creative Mode"
|
||||
msgstr "Kreativitätsmodus"
|
||||
|
||||
#: src/guiMainMenu.cpp:274
|
||||
#: src/guiMainMenu.cpp:282
|
||||
msgid "Enable Damage"
|
||||
msgstr "Schaden einschalten"
|
||||
|
||||
#: src/guiMainMenu.cpp:281
|
||||
#: src/guiMainMenu.cpp:290
|
||||
msgid "Delete map"
|
||||
msgstr "Karte löschen"
|
||||
|
||||
#: src/guiMessageMenu.cpp:92
|
||||
#: src/guiTextInputMenu.cpp:110
|
||||
#: src/guiMessageMenu.cpp:93 src/guiTextInputMenu.cpp:111
|
||||
msgid "Proceed"
|
||||
msgstr "Fortsetzen"
|
||||
|
||||
|
@ -66,39 +65,39 @@ msgstr "Fortsetzen"
|
|||
msgid "Old Password"
|
||||
msgstr "Altes Passwort"
|
||||
|
||||
#: src/guiPasswordChange.cpp:116
|
||||
#: src/guiPasswordChange.cpp:117
|
||||
msgid "New Password"
|
||||
msgstr "Neues Passwort"
|
||||
|
||||
#: src/guiPasswordChange.cpp:129
|
||||
#: src/guiPasswordChange.cpp:131
|
||||
msgid "Confirm Password"
|
||||
msgstr "Passwort wiederholen"
|
||||
|
||||
#: src/guiPasswordChange.cpp:143
|
||||
#: src/guiPasswordChange.cpp:146
|
||||
msgid "Change"
|
||||
msgstr "Ändern"
|
||||
|
||||
#: src/guiPasswordChange.cpp:151
|
||||
#: src/guiPasswordChange.cpp:155
|
||||
msgid "Passwords do not match!"
|
||||
msgstr "Passwörter passen nicht zusammen"
|
||||
|
||||
#: src/guiPauseMenu.cpp:109
|
||||
#: src/guiPauseMenu.cpp:110
|
||||
msgid "Continue"
|
||||
msgstr "Weiter"
|
||||
|
||||
#: src/guiPauseMenu.cpp:115
|
||||
#: src/guiPauseMenu.cpp:117
|
||||
msgid "Change Password"
|
||||
msgstr "Passwort ändern"
|
||||
|
||||
#: src/guiPauseMenu.cpp:121
|
||||
#: src/guiPauseMenu.cpp:124
|
||||
msgid "Disconnect"
|
||||
msgstr "Verbindung trennen"
|
||||
|
||||
#: src/guiPauseMenu.cpp:127
|
||||
#: src/guiPauseMenu.cpp:131
|
||||
msgid "Exit to OS"
|
||||
msgstr "Programm beenden"
|
||||
|
||||
#: src/guiPauseMenu.cpp:134
|
||||
#: src/guiPauseMenu.cpp:138
|
||||
msgid ""
|
||||
"Keys:\n"
|
||||
"- WASD: Walk\n"
|
||||
|
@ -122,4 +121,3 @@ msgstr ""
|
|||
"- R: Alle geladenen Kartenteile anzeigen, umschalten\n"
|
||||
"- I: Inventarmenü\n"
|
||||
"- T: Chat\n"
|
||||
|
||||
|
|
|
@ -0,0 +1,113 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: minetest\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-07-22 11:02+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=CHARSET\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: src/guiMainMenu.cpp:180
|
||||
msgid "Name/Password"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMainMenu.cpp:203
|
||||
msgid "Address/Port"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMainMenu.cpp:223
|
||||
msgid "Leave address blank to start a local server."
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMainMenu.cpp:230
|
||||
msgid "Fancy trees"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMainMenu.cpp:236
|
||||
msgid "Smooth Lighting"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMainMenu.cpp:244
|
||||
msgid "Start Game / Connect"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMainMenu.cpp:253
|
||||
msgid "Change keys"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMainMenu.cpp:276
|
||||
msgid "Creative Mode"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMainMenu.cpp:282
|
||||
msgid "Enable Damage"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMainMenu.cpp:290
|
||||
msgid "Delete map"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiMessageMenu.cpp:93 src/guiTextInputMenu.cpp:111
|
||||
msgid "Proceed"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPasswordChange.cpp:102
|
||||
msgid "Old Password"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPasswordChange.cpp:117
|
||||
msgid "New Password"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPasswordChange.cpp:131
|
||||
msgid "Confirm Password"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPasswordChange.cpp:146
|
||||
msgid "Change"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPasswordChange.cpp:155
|
||||
msgid "Passwords do not match!"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPauseMenu.cpp:110
|
||||
msgid "Continue"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPauseMenu.cpp:117
|
||||
msgid "Change Password"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPauseMenu.cpp:124
|
||||
msgid "Disconnect"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPauseMenu.cpp:131
|
||||
msgid "Exit to OS"
|
||||
msgstr ""
|
||||
|
||||
#: src/guiPauseMenu.cpp:138
|
||||
msgid ""
|
||||
"Keys:\n"
|
||||
"- WASD: Walk\n"
|
||||
"- Mouse left: dig blocks\n"
|
||||
"- Mouse right: place blocks\n"
|
||||
"- Mouse wheel: select item\n"
|
||||
"- 0...9: select item\n"
|
||||
"- Shift: sneak\n"
|
||||
"- R: Toggle viewing all loaded chunks\n"
|
||||
"- I: Inventory menu\n"
|
||||
"- ESC: This menu\n"
|
||||
"- T: Chat\n"
|
||||
msgstr ""
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: 0.0.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2011-07-21 02:00+0200\n"
|
||||
"POT-Creation-Date: 2011-07-22 11:00+0200\n"
|
||||
"PO-Revision-Date: 2011-07-21 15:48+0200\n"
|
||||
"Last-Translator: Cyriaque 'Cisoun' Skrapits <cysoun@gmail.com>\n"
|
||||
"Language-Team: Français <>\n"
|
||||
|
@ -21,44 +21,43 @@ msgstr ""
|
|||
msgid "Name/Password"
|
||||
msgstr "Nom / MdP"
|
||||
|
||||
#: src/guiMainMenu.cpp:202
|
||||
#: src/guiMainMenu.cpp:203
|
||||
msgid "Address/Port"
|
||||
msgstr "Adresse / Port"
|
||||
|
||||
#: src/guiMainMenu.cpp:220
|
||||
#: src/guiMainMenu.cpp:223
|
||||
msgid "Leave address blank to start a local server."
|
||||
msgstr "Laisser l'adresse vide pour lancer un serveur local."
|
||||
|
||||
#: src/guiMainMenu.cpp:226
|
||||
#: src/guiMainMenu.cpp:230
|
||||
msgid "Fancy trees"
|
||||
msgstr "Arbres spéciaux"
|
||||
|
||||
#: src/guiMainMenu.cpp:232
|
||||
#: src/guiMainMenu.cpp:236
|
||||
msgid "Smooth Lighting"
|
||||
msgstr "Lumière douce"
|
||||
|
||||
#: src/guiMainMenu.cpp:239
|
||||
#: src/guiMainMenu.cpp:244
|
||||
msgid "Start Game / Connect"
|
||||
msgstr "Démarrer / Connecter"
|
||||
|
||||
#: src/guiMainMenu.cpp:247
|
||||
#: src/guiMainMenu.cpp:253
|
||||
msgid "Change keys"
|
||||
msgstr "Changer touches"
|
||||
|
||||
#: src/guiMainMenu.cpp:269
|
||||
#: src/guiMainMenu.cpp:276
|
||||
msgid "Creative Mode"
|
||||
msgstr "Mode créatif"
|
||||
|
||||
#: src/guiMainMenu.cpp:274
|
||||
#: src/guiMainMenu.cpp:282
|
||||
msgid "Enable Damage"
|
||||
msgstr "Activer blessures"
|
||||
|
||||
#: src/guiMainMenu.cpp:281
|
||||
#: src/guiMainMenu.cpp:290
|
||||
msgid "Delete map"
|
||||
msgstr "Supprimer carte"
|
||||
|
||||
#: src/guiMessageMenu.cpp:92
|
||||
#: src/guiTextInputMenu.cpp:110
|
||||
#: src/guiMessageMenu.cpp:93 src/guiTextInputMenu.cpp:111
|
||||
msgid "Proceed"
|
||||
msgstr "OK"
|
||||
|
||||
|
@ -66,39 +65,39 @@ msgstr "OK"
|
|||
msgid "Old Password"
|
||||
msgstr "Ancien mot de passe"
|
||||
|
||||
#: src/guiPasswordChange.cpp:116
|
||||
#: src/guiPasswordChange.cpp:117
|
||||
msgid "New Password"
|
||||
msgstr "Nouveau mot de passe"
|
||||
|
||||
#: src/guiPasswordChange.cpp:129
|
||||
#: src/guiPasswordChange.cpp:131
|
||||
msgid "Confirm Password"
|
||||
msgstr "Confirmer mot de passe"
|
||||
|
||||
#: src/guiPasswordChange.cpp:143
|
||||
#: src/guiPasswordChange.cpp:146
|
||||
msgid "Change"
|
||||
msgstr "Changer"
|
||||
|
||||
#: src/guiPasswordChange.cpp:151
|
||||
#: src/guiPasswordChange.cpp:155
|
||||
msgid "Passwords do not match!"
|
||||
msgstr "Mauvaise correspondance!"
|
||||
|
||||
#: src/guiPauseMenu.cpp:109
|
||||
#: src/guiPauseMenu.cpp:110
|
||||
msgid "Continue"
|
||||
msgstr "Continuer"
|
||||
|
||||
#: src/guiPauseMenu.cpp:115
|
||||
#: src/guiPauseMenu.cpp:117
|
||||
msgid "Change Password"
|
||||
msgstr "Changer mot de passe"
|
||||
|
||||
#: src/guiPauseMenu.cpp:121
|
||||
#: src/guiPauseMenu.cpp:124
|
||||
msgid "Disconnect"
|
||||
msgstr "Déconnection"
|
||||
|
||||
#: src/guiPauseMenu.cpp:127
|
||||
#: src/guiPauseMenu.cpp:131
|
||||
msgid "Exit to OS"
|
||||
msgstr "Quitter le jeu"
|
||||
|
||||
#: src/guiPauseMenu.cpp:134
|
||||
#: src/guiPauseMenu.cpp:138
|
||||
msgid ""
|
||||
"Keys:\n"
|
||||
"- WASD: Walk\n"
|
||||
|
@ -122,4 +121,3 @@ msgstr ""
|
|||
"- R: Active la vue de tous les blocs\n"
|
||||
"- I: Inventaire\n"
|
||||
"- T: Chat\n"
|
||||
|
||||
|
|
|
@ -297,15 +297,38 @@ if(BUILD_SERVER)
|
|||
endif(BUILD_SERVER)
|
||||
|
||||
if (USE_GETTEXT)
|
||||
add_custom_command(OUTPUT "${GETTEXT_PO_PATH}/en"
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory "${GETTEXT_PO_PATH}/en"
|
||||
COMMENT "po-update [en]: creating translation template base directory")
|
||||
set(POT_FILE "${GETTEXT_PO_PATH}/en/minetest.pot")
|
||||
file(GLOB GETTEXT_POT_DEPS *.cpp *.h)
|
||||
file(GLOB GETTEXT_POT_DEPS_REL RELATIVE ${CMAKE_SOURCE_DIR} *.cpp *.h)
|
||||
add_custom_command(OUTPUT ${POT_FILE}
|
||||
COMMAND ${GETTEXT_EXTRACT} -F -n -o ${POT_FILE} ${GETTEXT_POT_DEPS_REL}
|
||||
DEPENDS "${GETTEXT_PO_PATH}/en" ${GETTEXT_POT_DEPS}
|
||||
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
|
||||
COMMENT "po-update [en]: updating translation template")
|
||||
|
||||
set(PO_FILES)
|
||||
set(MO_FILES)
|
||||
|
||||
foreach(LOCALE ${GETTEXT_AVAILABLE_LOCALES})
|
||||
# skip the 'en' locale which is treated separately
|
||||
if (NOT LOCALE STREQUAL "en")
|
||||
set(PO_FILE_PATH "${GETTEXT_PO_PATH}/${LOCALE}/minetest.po")
|
||||
add_custom_command(OUTPUT ${PO_FILE_PATH}
|
||||
COMMAND ${GETTEXT_MSGMERGE} -F -U ${PO_FILE_PATH} ${POT_FILE}
|
||||
DEPENDS ${POT_FILE}
|
||||
WORKING_DIRECTORY "${GETTEXT_PO_PATH}/${LOCALE}"
|
||||
COMMENT "po-update [${LOCALE}]: updating strings")
|
||||
|
||||
|
||||
set_mo_paths(MO_BUILD_PATH MO_DEST_PATH ${LOCALE})
|
||||
add_custom_command(OUTPUT ${MO_BUILD_PATH}
|
||||
COMMAND ${CMAKE_COMMAND} -E make_directory ${MO_BUILD_PATH}
|
||||
COMMENT "mo-update [${LOCALE}]: Creating locale directory.")
|
||||
|
||||
set(MO_FILE_PATH "${MO_BUILD_PATH}/${PROJECT_NAME}.mo")
|
||||
set(PO_FILE_PATH "${GETTEXT_PO_PATH}/${LOCALE}/minetest.po")
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${MO_FILE_PATH}
|
||||
|
@ -316,9 +339,12 @@ if (USE_GETTEXT)
|
|||
)
|
||||
|
||||
set(MO_FILES ${MO_FILES} ${MO_FILE_PATH})
|
||||
set(PO_FILES ${PO_FILES} ${PO_FILE_PATH})
|
||||
endif(NOT LOCALE STREQUAL "en")
|
||||
endforeach(LOCALE ${GETTEXT_AVAILABLE_LOCALES})
|
||||
|
||||
add_custom_target(translations ALL COMMENT "mo update" DEPENDS ${MO_FILES})
|
||||
add_custom_target(updatepo COMMENT "po update" DEPENDS ${PO_FILES})
|
||||
endif(USE_GETTEXT)
|
||||
|
||||
# Subdirectories
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
#! /bin/bash
|
||||
xgettext -n -o minetest.pot ./src/*.cpp ./src/*.h
|
||||
msgmerge -U ./po/de/minetest.po minetest.pot
|
||||
msgmerge -U ./po/fr/minetest.po minetest.pot
|
||||
rm minetest.pot
|
Loading…
Reference in New Issue