diff options
| author | Michael Catanzaro <mcatanzaro@gnome.org> | 2016-07-28 04:16:44 (GMT) |
|---|---|---|
| committer | Michael Catanzaro <mcatanzaro@gnome.org> | 2016-07-28 04:16:44 (GMT) |
| commit | df7152cb4c7159f5ef954fc8ea210f0510bcacfe (patch) | |
| tree | a6c798a1cfbc931f60ef102167af3f508d2cb11a | |
| parent | 263de13df071779476e15a03f19cb2698a305cbb (diff) | |
| download | gnome-chess-df7152cb4c7159f5ef954fc8ea210f0510bcacfe.zip gnome-chess-df7152cb4c7159f5ef954fc8ea210f0510bcacfe.tar.xz | |
Stop using intltool
Notes
Notes:
Advice for anyone working on porting other applications:
* Note that USE_MSGCTXT should have been set to YES in this commit.
* Note also that PKG_GNU should have been set to NO in this commit.
* You should also add translator comments to the desktop file; check the desktop dfile history.
* If your application uses the C_ macro, then you need to add --keyword=C_:1c,2 to XGETTEXT_OPTIONS.
* https://blogs.gnome.org/mcatanzaro/2016/07/27/on-the-killing-of-intltool/
| -rwxr-xr-x | autogen.sh | 1 | ||||
| -rw-r--r-- | configure.ac | 6 | ||||
| -rw-r--r-- | data/Makefile.am | 8 | ||||
| -rw-r--r-- | data/gnome-chess.appdata.xml.in | 12 | ||||
| -rw-r--r-- | data/gnome-chess.desktop.in | 8 | ||||
| -rw-r--r-- | git.mk | 2 | ||||
| -rw-r--r-- | po/Makevars | 78 | ||||
| -rw-r--r-- | po/POTFILES.in | 9 |
8 files changed, 104 insertions, 20 deletions
@@ -32,7 +32,6 @@ if [ "$#" = 0 -a "x$NOCONFIGURE" = "x" ]; then fi aclocal --install || exit 1 -intltoolize --force --copy --automake || exit 1 autoreconf --verbose --force --install -Wno-portability || exit 1 cd $olddir diff --git a/configure.ac b/configure.ac index b399f28..5105a50 100644 --- a/configure.ac +++ b/configure.ac @@ -60,8 +60,10 @@ dnl ########################################################################### dnl Internationalization dnl ########################################################################### -IT_PROG_INTLTOOL([0.50]) -AC_SUBST(GETTEXT_PACKAGE, gnome-chess) +AM_GNU_GETTEXT([external]) +AM_GNU_GETTEXT_VERSION([0.19.8]) + +AC_SUBST([GETTEXT_PACKAGE], [gnome-chess]) dnl ########################################################################### dnl Documentation diff --git a/data/Makefile.am b/data/Makefile.am index 2ff6793..8ec4a5f 100644 --- a/data/Makefile.am +++ b/data/Makefile.am @@ -3,12 +3,16 @@ SUBDIRS = icons pieces desktopdir = $(datadir)/applications desktop_in_files = gnome-chess.desktop.in desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) -@INTLTOOL_DESKTOP_RULE@ + +$(desktop_DATA): $(desktop_in_files) + $(AM_V_GEN) $(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@ appstream_in_files = gnome-chess.appdata.xml.in appstream_XML = $(appstream_in_files:.appdata.xml.in=.appdata.xml) @APPSTREAM_XML_RULES@ -@INTLTOOL_XML_RULE@ + +$(appstream_XML): $(appstream_in_files) + $(AM_V_GEN) $(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@ dist_noinst_DATA = \ gnome-chess.ui \ diff --git a/data/gnome-chess.appdata.xml.in b/data/gnome-chess.appdata.xml.in index 491c6e9..db9822d 100644 --- a/data/gnome-chess.appdata.xml.in +++ b/data/gnome-chess.appdata.xml.in @@ -4,18 +4,18 @@ <id>gnome-chess.desktop</id> <metadata_license>CC0-1.0</metadata_license> <project_license>GPL-3.0+ and (GPL-2.0+ or GFDL-1.1)</project_license> - <_name>GNOME Chess</_name> - <_summary>Play the classic two-player board game of chess</_summary> + <name>GNOME Chess</name> + <summary>Play the classic two-player board game of chess</summary> <description> - <_p> + <p> GNOME Chess is a simple chess game. You can play against your computer at three different difficulty levels, or against a friend at your computer. - </_p> - <_p> + </p> + <p> Computer chess enthusiasts will appreciate GNOME Chess's compatibility with nearly all modern computer chess engines, and its ability to detect several popular engines automatically if installed. - </_p> + </p> </description> <screenshots> <screenshot type="default" width="748" height="484"> diff --git a/data/gnome-chess.desktop.in b/data/gnome-chess.desktop.in index db2741f..8742ee4 100644 --- a/data/gnome-chess.desktop.in +++ b/data/gnome-chess.desktop.in @@ -1,8 +1,8 @@ [Desktop Entry] -_Name=Chess -_GenericName=3D Chess Game -_Comment=Play the classic two-player board game of chess -_Keywords=game;strategy; +Name=Chess +GenericName=3D Chess Game +Comment=Play the classic two-player board game of chess +Keywords=game;strategy; Version=1.0 Exec=gnome-chess Terminal=false @@ -84,6 +84,7 @@ GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL = \ ar-lib \ compile \ config.guess \ + config.rpath \ config.sub \ depcomp \ install-sh \ @@ -216,6 +217,7 @@ $(srcdir)/.gitignore: Makefile.am $(top_srcdir)/git.mk fi; \ if test -f $(srcdir)/po/Makefile.in.in; then \ for x in \ + ABOUT-NLS \ po/Makefile.in.in \ po/Makefile.in.in~ \ po/Makefile.in \ diff --git a/po/Makevars b/po/Makevars new file mode 100644 index 0000000..df09a7b --- /dev/null +++ b/po/Makevars @@ -0,0 +1,78 @@ +# Makefile variables for PO directory in any package using GNU gettext. + +# Usually the message domain is the same as the package name. +DOMAIN = $(PACKAGE) + +# These two variables depend on the location of this directory. +subdir = po +top_builddir = .. + +# These options get passed to xgettext. +XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ --from-code=UTF-8 + +# This is the copyright holder that gets inserted into the header of the +# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding +# package. (Note that the msgstr strings, extracted from the package's +# sources, belong to the copyright holder of the package.) Translators are +# expected to transfer the copyright for their translations to this person +# or entity, or to disclaim their copyright. The empty string stands for +# the public domain; in this case the translators are expected to disclaim +# their copyright. +COPYRIGHT_HOLDER = Free Software Foundation, Inc. + +# This tells whether or not to prepend "GNU " prefix to the package +# name that gets inserted into the header of the $(DOMAIN).pot file. +# Possible values are "yes", "no", or empty. If it is empty, try to +# detect it automatically by scanning the files in $(top_srcdir) for +# "GNU packagename" string. +PACKAGE_GNU = + +# This is the email address or URL to which the translators shall report +# bugs in the untranslated strings: +# - Strings which are not entire sentences, see the maintainer guidelines +# in the GNU gettext documentation, section 'Preparing Strings'. +# - Strings which use unclear terms or require additional context to be +# understood. +# - Strings which make invalid assumptions about notation of date, time or +# money. +# - Pluralisation problems. +# - Incorrect English spelling. +# - Incorrect formatting. +# It can be your email address, or a mailing list address where translators +# can write to without being subscribed, or the URL of a web page through +# which the translators can contact you. +MSGID_BUGS_ADDRESS = + +# This is the list of locale categories, beyond LC_MESSAGES, for which the +# message catalogs shall be used. It is usually empty. +EXTRA_LOCALE_CATEGORIES = + +# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt' +# context. Possible values are "yes" and "no". Set this to yes if the +# package uses functions taking also a message context, like pgettext(), or +# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument. +USE_MSGCTXT = no + +# These options get passed to msgmerge. +# Useful options are in particular: +# --previous to keep previous msgids of translated messages, +# --quiet to reduce the verbosity. +MSGMERGE_OPTIONS = + +# These options get passed to msginit. +# If you want to disable line wrapping when writing PO files, add +# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and +# MSGINIT_OPTIONS. +MSGINIT_OPTIONS = + +# This tells whether or not to regenerate a PO file when $(DOMAIN).pot +# has changed. Possible values are "yes" and "no". Set this to no if +# the POT file is checked in the repository and the version control +# program ignores timestamps. +PO_DEPENDS_ON_POT = no + +# This tells whether or not to forcibly update $(DOMAIN).pot and +# regenerate PO files on "make dist". Possible values are "yes" and +# "no". Set this to no if the POT file and PO files are maintained +# externally. +DIST_DEPENDS_ON_UPDATE_PO = no diff --git a/po/POTFILES.in b/po/POTFILES.in index 8cfe9c2..d8fc1fd 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1,13 +1,12 @@ # List of source files containing translatable strings. # Please keep this file in alphabetical order. -[encoding: UTF-8] data/gnome-chess.appdata.xml.in data/gnome-chess.desktop.in -[type: gettext/glade]data/gnome-chess.ui -[type: gettext/glade]data/menu.ui +data/gnome-chess.ui +data/menu.ui data/org.gnome.chess.gschema.xml -[type: gettext/glade]data/preferences.ui -[type: gettext/glade]data/promotion-type-selector.ui +data/preferences.ui +data/promotion-type-selector.ui lib/chess-game.vala lib/chess-pgn.vala src/ai-profile.vala |
