File geany-inttool.patch of Package geany

diff --git a/Makefile.am b/Makefile.am
index 7c148dffa9..26bb83b7e9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -21,26 +21,14 @@ EXTRA_DIST = \
 	HACKING \
 	README.I18N \
 	README.Packagers \
-	intltool-extract.in \
-	intltool-merge.in \
-	intltool-update.in \
 	$(WIN32_BUILD_FILES)
 
 DISTCLEANFILES = \
-	geany.desktop \
-	intltool-extract \
-	intltool-merge \
-	intltool-update
+	geany.desktop
 
 uninstall-local:
 	rm -rf $(DESTDIR)$(pkgdatadir);
 
-# Remove po/.intltool-merge-cache.lock on "distcheck" which is left over by various incorrectly
-# patched versions of intltool, e.g. https://bugs.archlinux.org/task/67098 or
-# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=991623
-distclean-local:
-	rm -f $(top_builddir)/po/.intltool-merge-cache.lock
-
 # manually install some files under another name
 install-data-local:
 	$(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
@@ -85,6 +73,8 @@ pkgconfig_DATA = geany.pc
 pkgconfigdir = $(libdir)/pkgconfig
 
 desktopdir = $(datadir)/applications
-desktop_in_files = geany.desktop
+desktop_in_files = geany.desktop.in
 desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
-@INTLTOOL_DESKTOP_RULE@
+
+$(desktop_DATA): $(desktop_in_files) $(wildcard $(top_srcdir)/po/*.po)
+	$(AM_V_GEN)$(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@
diff --git a/configure.ac b/configure.ac
index f33c9ea4dc..39636c8825 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,6 +9,9 @@ AC_CONFIG_MACRO_DIR([m4])
 AM_INIT_AUTOMAKE([1.11 -Wall parallel-tests subdir-objects])
 AC_CONFIG_HEADERS([config.h])
 
+AM_GNU_GETTEXT_VERSION([0.19.8])
+AM_GNU_GETTEXT([external])
+
 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
 
 GEANY_PREFIX
@@ -122,13 +125,14 @@ GEANY_CHECK_VTE
 GEANY_CHECK_MAC_INTEGRATION
 GEANY_CHECK_THE_FORCE dnl hehe
 
-# i18n
-GEANY_I18N
+AC_SUBST([GETTEXT_PACKAGE],[$PACKAGE])
+AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], ["$PACKAGE"], [Gettext package.])
 
 # double eval since datarootdir is usually defined as ${prefix}/share
 AM_COND_IF([MINGW],
   [pkgdatadir='${prefix}/data'],
   [pkgdatadir='${datarootdir}/geany'])
+AM_COND_IF([MINGW],[LIBS="$LIBS -liconv"])
 AC_SUBST([GEANY_DATA_DIR], [$(eval echo $(eval echo $pkgdatadir))])
 AC_SUBST([pkgdatadir])
 
diff --git a/doc/plugins.dox b/doc/plugins.dox
index 4344b0929c..ff255ab720 100644
--- a/doc/plugins.dox
+++ b/doc/plugins.dox
@@ -159,7 +159,7 @@ following.
 First you need to have Geany installed. Then install the development files for GTK
 and its dependencies. The easiest way to do this is to use your distribution's package
 management system, e.g. on Debian and Ubuntu systems you can use
-@code apt-get install libgtk-3-dev intltool @endcode
+@code apt-get install libgtk-3-dev autoconf automake autopoint gettext @endcode
 This will install all necessary files to be able to compile plugins for Geany. On other
 distributions, the package names and commands to use may differ.
 
diff --git a/geany.desktop.in b/geany.desktop.in
index 5088385c6e..95b8001d6e 100644
--- a/geany.desktop.in
+++ b/geany.desktop.in
@@ -1,13 +1,13 @@
 [Desktop Entry]
 Type=Application
 Version=1.0
-_Name=Geany
-_GenericName=Integrated Development Environment
-_Comment=A fast and lightweight IDE using GTK+
+Name=Geany
+GenericName=Integrated Development Environment
+Comment=A fast and lightweight IDE using GTK+
 Exec=geany %F
 Icon=geany
 Terminal=false
 Categories=GTK;Development;IDE;TextEditor;
 MimeType=text/plain;text/x-chdr;text/x-csrc;text/x-c++hdr;text/x-c++src;text/x-java;text/x-dsrc;text/x-pascal;text/x-perl;text/x-python;application/x-php;application/x-httpd-php3;application/x-httpd-php4;application/x-httpd-php5;application/xml;text/html;text/css;text/x-sql;text/x-diff;
 StartupNotify=true
-_Keywords=Text;Editor;
+Keywords=Text;Editor;
diff --git a/m4/geany-i18n.m4 b/m4/geany-i18n.m4
deleted file mode 100644
index 71139dd6b3..0000000000
--- a/m4/geany-i18n.m4
+++ /dev/null
@@ -1,26 +0,0 @@
-dnl GEANY_I18N
-dnl Setups I18N support.
-dnl AC_DEFINEs and AC_SUBSTs GETTEXT_PACKAGE
-AC_DEFUN([GEANY_I18N],
-[
-	AC_REQUIRE([AC_PROG_AWK])
-	AC_REQUIRE([AC_PROG_INTLTOOL])
-
-	GETTEXT_PACKAGE="$PACKAGE"
-	AC_SUBST([GETTEXT_PACKAGE])
-	AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], ["$GETTEXT_PACKAGE"], [Gettext package.])
-
-	ALL_LINGUAS=`cd "$srcdir/po" 2>/dev/null && ls *.po 2>/dev/null | $AWK 'BEGIN { FS="."; ORS=" " } { print $[]1 }'`
-
-	AM_GLIB_GNU_GETTEXT
-	# workaround for intltool bug (http://bugzilla.gnome.org/show_bug.cgi?id=490845)
-	if test "x$MSGFMT" = "xno"; then
-		AC_MSG_ERROR([msgfmt not found. Please install the gettext package.])
-	fi
-
-	# intltool hack to define install_sh on Debian/Ubuntu systems
-	if test "x$install_sh" = "x"; then
-		install_sh="`pwd`/install-sh"
-		AC_SUBST([install_sh])
-	fi
-])
diff --git a/po/LINGUAS b/po/LINGUAS
new file mode 100644
index 0000000000..e2931f8fa0
--- /dev/null
+++ b/po/LINGUAS
@@ -0,0 +1 @@
+ar ast be bg ca cs da de el en_GB es et eu fa fi fr gl he hi hu id ie it ja kk ko ku lb lt lv mn nl nn pl pt pt_BR ro ru sk sl sr sv tr uk vi zh_CN zh_TW
diff --git a/po/Makevars b/po/Makevars
new file mode 100644
index 0000000000..0877b10910
--- /dev/null
+++ b/po/Makevars
@@ -0,0 +1,82 @@
+# Makefile variables for PO directory in any package using GNU gettext.
+#
+# Copyright (C) 2003-2019 Free Software Foundation, Inc.
+# This file is free software; the Free Software Foundation gives
+# unlimited permission to use, copy, distribute, and modify it.
+
+# 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_ --keyword=C_:1c,2 --keyword=NC_:1c,2
+
+# 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 = The Geany contributors
+
+# 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 = no
+
+# 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 = https://github.com/geany/geany/issues
+
+# 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 = yes
+
+# 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 = yes
openSUSE Build Service is sponsored by