gtk-doc, itstool: upgraded packages to upstream

Upgraded dev-util/gtk-doc to version 1.32-r2 on amd64
Upgraded dev-util/itstool to version 2.0.6-r1 on amd64

BUG=chromium:1111336
TEST=CQ passes

Change-Id: I5426c81fbfc83eb52555eb3aa1601aa7e90f9b8f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/portage-stable/+/2333624
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Alex Klein <saklein@chromium.org>
Tested-by: Allen Webb <allenwebb@google.com>
Commit-Queue: Allen Webb <allenwebb@google.com>
diff --git a/dev-util/gtk-doc/files/1.32-deprecation-parse-fixes.patch b/dev-util/gtk-doc/files/1.32-deprecation-parse-fixes.patch
new file mode 100644
index 0000000..59f878c
--- /dev/null
+++ b/dev-util/gtk-doc/files/1.32-deprecation-parse-fixes.patch
@@ -0,0 +1,180 @@
+From 2667d8cd95a2a29c35c1bb8f4629c22fd0aa98e9 Mon Sep 17 00:00:00 2001
+From: Xavier Claessens <xavier.claessens@collabora.com>
+Date: Thu, 2 Jan 2020 21:56:10 -0500
+Subject: [PATCH 1/3] Skip G_GNUC_(BEGIN|END)_IGNORE_DEPRECATIONS lines
+
+For some reason, glib has to put empty line before and after each of
+these lines otherwise the symbol following it is undeclared.
+---
+ gtkdoc/scan.py | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/gtkdoc/scan.py b/gtkdoc/scan.py
+index d04d4d4..7de08ad 100644
+--- a/gtkdoc/scan.py
++++ b/gtkdoc/scan.py
+@@ -561,6 +561,11 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options):
+                     logging.info('Found start of comment: %s', line.strip())
+                 continue
+ 
++            # Skip begin/end deprecation macros.
++            m = re.search(r'^\s*G_GNUC_(BEGIN|END)_IGNORE_DEPRECATIONS', line)
++            if m:
++                continue
++
+             logging.info('no decl: %s', line.strip())
+ 
+             cm = [m.match(line) for m in CLINE_MATCHER]
+-- 
+2.20.1
+
+
+From 9e58548688c9768cf41c59ccef531d438ffb2504 Mon Sep 17 00:00:00 2001
+From: Xavier Claessens <xavier.claessens@collabora.com>
+Date: Fri, 3 Jan 2020 06:47:47 -0500
+Subject: [PATCH 2/3] typedef can be followed by decorator
+
+---
+ gtkdoc/scan.py | 30 +++++++++++++++++-------------
+ 1 file changed, 17 insertions(+), 13 deletions(-)
+
+diff --git a/gtkdoc/scan.py b/gtkdoc/scan.py
+index 7de08ad..5a5da92 100644
+--- a/gtkdoc/scan.py
++++ b/gtkdoc/scan.py
+@@ -96,19 +96,8 @@ CLINE_MATCHER = [
+         (struct|union)\s*
+         \w*\s*{""", re.VERBOSE),
+     # 12-14: OTHER TYPEDEFS
+-    re.compile(
+-        r"""^\s*typedef\s+
+-        (?:struct|union)\s+\w+[\s\*]+
+-        (\w+)                                # 1: name
+-        \s*;""", re.VERBOSE),
+-    re.compile(
+-        r"""^\s*
+-        (?:G_GNUC_EXTENSION\s+)?
+-        typedef\s+
+-        (.+[\s\*])                           # 1: e.g. 'unsigned int'
+-        (\w+)                                # 2: name
+-        (?:\s*\[[^\]]+\])*
+-        \s*;""", re.VERBOSE),
++    None,  # in InitScanner()
++    None,  # in InitScanner()
+     re.compile(r'^\s*typedef\s+'),
+     # 15: VARIABLES (extern'ed variables)
+     None,  # in InitScanner()
+@@ -267,6 +256,21 @@ def InitScanner(options):
+         %s                                   # 3: optional decorator
+         \s*;""" % optional_decorators_regex, re.VERBOSE)
+     # OTHER TYPEDEFS
++    CLINE_MATCHER[12] = re.compile(
++        r"""^\s*typedef\s+
++        (?:struct|union)\s+\w+[\s\*]+
++        (\w+)                                # 1: name
++        %s                                   # 2: optional decorator
++        \s*;""" % optional_decorators_regex, re.VERBOSE)
++    CLINE_MATCHER[13] = re.compile(
++        r"""^\s*
++        (?:G_GNUC_EXTENSION\s+)?
++        typedef\s+
++        (.+?[\s\*])                          # 1: e.g. 'unsigned int'
++        (\w+)                                # 2: name
++        (?:\s*\[[^\]]+\])*
++        %s                                   # 3: optional decorator
++        \s*;""" % optional_decorators_regex, re.VERBOSE)
+     CLINE_MATCHER[15] = re.compile(
+         r"""^\s*
+         (?:extern|[A-Za-z_]+VAR%s)\s+
+-- 
+2.20.1
+
+
+From 5bfe23f0257e1b4c6c9a4e3a2dbb180455f753f2 Mon Sep 17 00:00:00 2001
+From: Jason Crain <jason@inspiresomeone.us>
+Date: Mon, 6 Jan 2020 19:05:42 -0700
+Subject: [PATCH 3/3] scan: support deprecated struct members
+
+gcc allows deprecating members of structs. For example:
+
+struct data {
+  int x G_GNUC_DEPRECATED_FOR(replacement);
+};
+
+However, this currently causes the entire struct to be marked as
+deprecated and confuses mkdb because it doesn't understand the
+G_GNUC_DEPRECATED_FOR symbol.
+
+Fix this by having the whole struct only be marked as deprecated if the
+'_DEPRECATED' is after the closing bracket of the struct, similar to how
+it already does for enums, and having scan automatically remove all
+G_GNUC_* decorators from struct members, similar to how it already does
+for functions.
+---
+ gtkdoc/scan.py | 12 ++++++++++--
+ tests/scan.py  | 17 +++++++++++++++++
+ 2 files changed, 27 insertions(+), 2 deletions(-)
+
+diff --git a/gtkdoc/scan.py b/gtkdoc/scan.py
+index 5a5da92..6c6534a 100644
+--- a/gtkdoc/scan.py
++++ b/gtkdoc/scan.py
+@@ -538,7 +538,7 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options):
+         # section (#endif /* XXX_DEPRECATED */
+         if deprecated_conditional_nest == 0 and '_DEPRECATED' in line:
+             m = re.search(r'^\s*#\s*(if*|define|endif)', line)
+-            if not (m or in_declaration == 'enum'):
++            if not (m or in_declaration == 'enum' or in_declaration == 'struct'):
+                 logging.info('Found deprecation annotation (decl: "%s"): "%s"',
+                              in_declaration, line.strip())
+                 deprecated_conditional_nest += 0.1
+@@ -953,9 +953,17 @@ def ScanHeaderContent(input_lines, decl_list, get_types, options):
+                     title = '<TITLE>%s</TITLE>' % objectname
+ 
+                 logging.info('Store struct: "%s"', symbol)
++                # Structs could contain deprecated members and that doesn't
++                # mean the whole struct is deprecated, so they are ignored when
++                # setting deprecated_conditional_nest above. Here we can check
++                # if the _DEPRECATED is between '}' and ';' which would mean
++                # the struct as a whole is deprecated.
++                if re.search(r'\n\s*\}.*_DEPRECATED.*;\s*$', decl):
++                    deprecated = '<DEPRECATED/>\n'
+                 if AddSymbolToList(slist, symbol):
+                     structsym = in_declaration.upper()
+-                    stripped_decl = re.sub('(%s)' % optional_decorators_regex, '', decl)
++                    regex = r'(?:\s+(?:G_GNUC_\w+(?:\(\w*\))?%s))' % ignore_decorators
++                    stripped_decl = re.sub(regex, '', decl)
+                     decl_list.append('<%s>\n<NAME>%s</NAME>\n%s%s</%s>\n' %
+                                      (structsym, symbol, deprecated, stripped_decl, structsym))
+                     if symbol in forward_decls:
+diff --git a/tests/scan.py b/tests/scan.py
+index ad63541..6d608b6 100755
+--- a/tests/scan.py
++++ b/tests/scan.py
+@@ -552,6 +552,23 @@ class ScanHeaderContentStructs(ScanHeaderContentTestCase):
+         slist, doc_comments = self.scanHeaderContent([header])
+         self.assertDecl('data', expected, slist)
+ 
++    def test_HandleDeprecatedMemberDecorator(self):
++        """Struct with deprecated members."""
++        header = textwrap.dedent("""\
++            struct data {
++              int x1 G_GNUC_DEPRECATED;
++              int x2 G_GNUC_DEPRECATED_FOR(replacement);
++            };""")
++        expected = textwrap.dedent("""\
++            struct data {
++              int x1;
++              int x2;
++            };""")
++        scan.InitScanner(self.options)
++        slist, doc_comments = self.scanHeaderContent(
++                header.splitlines(keepends=True))
++        self.assertDecl('data', expected, slist)
++
+ 
+ class ScanHeaderContentUnions(ScanHeaderContentTestCase):
+     """Test parsing of union declarations."""
+-- 
+2.20.1
+
diff --git a/dev-util/gtk-doc/gtk-doc-1.32.ebuild b/dev-util/gtk-doc/gtk-doc-1.32-r2.ebuild
similarity index 87%
rename from dev-util/gtk-doc/gtk-doc-1.32.ebuild
rename to dev-util/gtk-doc/gtk-doc-1.32-r2.ebuild
index 1358bc9..7f6abc6 100644
--- a/dev-util/gtk-doc/gtk-doc-1.32.ebuild
+++ b/dev-util/gtk-doc/gtk-doc-1.32-r2.ebuild
@@ -26,7 +26,9 @@
 	~app-text/docbook-sgml-dtd-3.0
 	>=app-text/docbook-dsssl-stylesheets-1.40
 	emacs? ( >=app-editors/emacs-23.1:* )
-	dev-python/pygments[${PYTHON_USEDEP}]
+	$(python_gen_cond_dep '
+		dev-python/pygments[${PYTHON_MULTI_USEDEP}]
+	')
 "
 DEPEND="${RDEPEND}
 	~dev-util/gtk-doc-am-${PV}
@@ -48,6 +50,9 @@
 src_prepare() {
 	# Remove global Emacs keybindings, bug #184588
 	eapply "${FILESDIR}"/${PN}-1.8-emacs-keybindings.patch
+	# Fix dev-libs/glib[gtk-doc] doc generation tests by fixing stuff surrounding deprecations
+	# https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1488
+	eapply "${FILESDIR}"/${PV}-deprecation-parse-fixes.patch
 
 	gnome2_src_prepare
 }
diff --git a/dev-util/gtk-doc/metadata.xml b/dev-util/gtk-doc/metadata.xml
index 1a3871a..8c9b95e 100644
--- a/dev-util/gtk-doc/metadata.xml
+++ b/dev-util/gtk-doc/metadata.xml
@@ -5,11 +5,6 @@
 	<email>gnome@gentoo.org</email>
 	<name>Gentoo GNOME Desktop</name>
 </maintainer>
-<use>
-	<flag name="highlight">Enable source code highlighting</flag>
-	<flag name="vim">Enable source code highlighting through
-	<pkg>app-editors/vim</pkg></flag>
-</use>
 <longdescription lang="en">
 	GTK-Doc is used to document C code.
 	It is typically used to document the public API of libraries,
diff --git a/dev-util/itstool/itstool-2.0.6.ebuild b/dev-util/itstool/itstool-2.0.6-r1.ebuild
similarity index 90%
rename from dev-util/itstool/itstool-2.0.6.ebuild
rename to dev-util/itstool/itstool-2.0.6-r1.ebuild
index 454ee08..a90dca8 100644
--- a/dev-util/itstool/itstool-2.0.6.ebuild
+++ b/dev-util/itstool/itstool-2.0.6-r1.ebuild
@@ -21,7 +21,9 @@
 REQUIRED_USE="${PYTHON_REQUIRED_USE}"
 
 RDEPEND="${PYTHON_DEPS}
-	dev-libs/libxml2[python,${PYTHON_USEDEP}]"
+	$(python_gen_cond_dep '
+		dev-libs/libxml2[python,${PYTHON_MULTI_USEDEP}]
+	')"
 DEPEND="${RDEPEND}"
 BDEPEND=""
 
diff --git a/metadata/md5-cache/dev-util/gtk-doc-1.32 b/metadata/md5-cache/dev-util/gtk-doc-1.32
deleted file mode 100644
index e1831db..0000000
--- a/metadata/md5-cache/dev-util/gtk-doc-1.32
+++ /dev/null
@@ -1,15 +0,0 @@
-DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup
-DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 ) python_single_target_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_8(-),python_single_target_python3_6(+)?,python_single_target_python3_7(+)?] >=dev-libs/glib-2.6:2 dev-libs/libxslt >=dev-libs/libxml2-2.3.6:2 ~app-text/docbook-xml-dtd-4.3 app-text/docbook-xsl-stylesheets ~app-text/docbook-sgml-dtd-3.0 >=app-text/docbook-dsssl-stylesheets-1.40 emacs? ( >=app-editors/emacs-23.1:* ) dev-python/pygments[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_8(-),python_single_target_python3_6(+)?,python_single_target_python3_7(+)?] ~dev-util/gtk-doc-am-1.32 dev-util/itstool virtual/pkgconfig >=app-portage/elt-patches-20170815 app-arch/xz-utils >=sys-apps/sed-4 dev-util/desktop-file-utils x11-misc/shared-mime-info
-DESCRIPTION=GTK+ Documentation Generator
-EAPI=6
-HOMEPAGE=https://www.gtk.org/gtk-doc/
-IUSE=debug doc emacs python_targets_python3_6 python_targets_python3_7 python_single_target_python3_6 python_single_target_python3_7
-KEYWORDS=*
-LICENSE=GPL-2 FDL-1.1
-RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 ) python_single_target_python3_7? ( dev-lang/python:3.7 ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_8(-),python_single_target_python3_6(+)?,python_single_target_python3_7(+)?] >=dev-libs/glib-2.6:2 dev-libs/libxslt >=dev-libs/libxml2-2.3.6:2 ~app-text/docbook-xml-dtd-4.3 app-text/docbook-xsl-stylesheets ~app-text/docbook-sgml-dtd-3.0 >=app-text/docbook-dsssl-stylesheets-1.40 emacs? ( >=app-editors/emacs-23.1:* ) dev-python/pygments[python_targets_python3_6(-)?,python_targets_python3_7(-)?,-python_single_target_pypy3(-),-python_single_target_python2_7(-),-python_single_target_python3_8(-),python_single_target_python3_6(+)?,python_single_target_python3_7(+)?]
-REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 ) python_single_target_python3_6? ( python_targets_python3_6 ) python_single_target_python3_7? ( python_targets_python3_7 )
-RESTRICT=test
-SLOT=0
-SRC_URI=mirror://gnome/sources/gtk-doc/1.32/gtk-doc-1.32.tar.xz
-_eclasses_=eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	elisp-common	3322f14f031ddc95feccd9089c9adc59	estack	43ddf5aaffa7a8d0482df54d25a66a1f	eutils	06133990e861be0fe60c2b428fd025d9	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2	acac536f2c3bbcd312ac3faaa3e55e40	gnome2-utils	c6060f4ab634aca444c4b2176b0f3877	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	75ce0f715133825e020f9777032d1376	python-utils-r1	931c328767d245c08a16a3f87be9ce9c	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	605c126bed8d87e4378d5ff1645330cb	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
-_md5_=300b5e4b68b5f39c5dd3454a92a89406
diff --git a/metadata/md5-cache/dev-util/gtk-doc-1.32-r2 b/metadata/md5-cache/dev-util/gtk-doc-1.32-r2
new file mode 100644
index 0000000..68330d3
--- /dev/null
+++ b/metadata/md5-cache/dev-util/gtk-doc-1.32-r2
@@ -0,0 +1,15 @@
+DEFINED_PHASES=compile configure install postinst postrm preinst prepare setup
+DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) >=dev-libs/glib-2.6:2 dev-libs/libxslt >=dev-libs/libxml2-2.3.6:2 ~app-text/docbook-xml-dtd-4.3 app-text/docbook-xsl-stylesheets ~app-text/docbook-sgml-dtd-3.0 >=app-text/docbook-dsssl-stylesheets-1.40 emacs? ( >=app-editors/emacs-23.1:* ) python_single_target_python3_6? ( dev-python/pygments[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/pygments[python_targets_python3_7(-)] ) ~dev-util/gtk-doc-am-1.32 dev-util/itstool virtual/pkgconfig >=app-portage/elt-patches-20170815 app-arch/xz-utils >=sys-apps/sed-4 dev-util/desktop-file-utils x11-misc/shared-mime-info
+DESCRIPTION=GTK+ Documentation Generator
+EAPI=6
+HOMEPAGE=https://www.gtk.org/gtk-doc/
+IUSE=debug doc emacs python_single_target_python3_6 python_single_target_python3_7
+KEYWORDS=*
+LICENSE=GPL-2 FDL-1.1
+RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6 >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7 >=dev-lang/python-exec-2:=[python_targets_python3_7] ) >=dev-libs/glib-2.6:2 dev-libs/libxslt >=dev-libs/libxml2-2.3.6:2 ~app-text/docbook-xml-dtd-4.3 app-text/docbook-xsl-stylesheets ~app-text/docbook-sgml-dtd-3.0 >=app-text/docbook-dsssl-stylesheets-1.40 emacs? ( >=app-editors/emacs-23.1:* ) python_single_target_python3_6? ( dev-python/pygments[python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-python/pygments[python_targets_python3_7(-)] )
+REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 )
+RESTRICT=test
+SLOT=0
+SRC_URI=mirror://gnome/sources/gtk-doc/1.32/gtk-doc-1.32.tar.xz
+_eclasses_=eapi7-ver	756b3f27d8e46131d5cf3c51bd876446	elisp-common	3322f14f031ddc95feccd9089c9adc59	estack	43ddf5aaffa7a8d0482df54d25a66a1f	eutils	06133990e861be0fe60c2b428fd025d9	gnome.org	532d56d07b9eace4831aaa817d2b756a	gnome2	acac536f2c3bbcd312ac3faaa3e55e40	gnome2-utils	c6060f4ab634aca444c4b2176b0f3877	libtool	f143db5a74ccd9ca28c1234deffede96	multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	43034a822923b18d8f3ab710b753f775	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	readme.gentoo-r1	22ae82e140bdd95d17a34fd5fd733190	toolchain-funcs	605c126bed8d87e4378d5ff1645330cb	versionator	26ca8a8bd95d6a74122c08ba98a4ee72	xdg	c7ba313ea1eaf266f95cc6235f7d6a07	xdg-utils	ff2ff954e6b17929574eee4efc5152ba
+_md5_=4fb8c1921de52f6a30797ebe75f8ca52
diff --git a/metadata/md5-cache/dev-util/itstool-2.0.6 b/metadata/md5-cache/dev-util/itstool-2.0.6
deleted file mode 100644
index 511d2c2..0000000
--- a/metadata/md5-cache/dev-util/itstool-2.0.6
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFINED_PHASES=setup test
-DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python2_7(-),python_single_target_python3_6(+)?,python_single_target_python3_7(+)?,python_single_target_python3_8(+)?] dev-libs/libxml2[python,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python2_7(-),python_single_target_python3_6(+)?,python_single_target_python3_7(+)?,python_single_target_python3_8(+)?]
-DESCRIPTION=Translation tool for XML documents that uses gettext files and ITS rules
-EAPI=7
-HOMEPAGE=http://itstool.org/
-IUSE=python_targets_python3_6 python_targets_python3_7 python_targets_python3_8 python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8
-KEYWORDS=*
-LICENSE=GPL-3+
-RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] ) >=dev-lang/python-exec-2:=[python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python2_7(-),python_single_target_python3_6(+)?,python_single_target_python3_7(+)?,python_single_target_python3_8(+)?] dev-libs/libxml2[python,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,-python_single_target_pypy3(-),-python_single_target_python2_7(-),python_single_target_python3_6(+)?,python_single_target_python3_7(+)?,python_single_target_python3_8(+)?]
-REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 ) python_single_target_python3_6? ( python_targets_python3_6 ) python_single_target_python3_7? ( python_targets_python3_7 ) python_single_target_python3_8? ( python_targets_python3_8 )
-SLOT=0
-SRC_URI=http://files.itstool.org/itstool/itstool-2.0.6.tar.bz2
-_eclasses_=multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	75ce0f715133825e020f9777032d1376	python-utils-r1	931c328767d245c08a16a3f87be9ce9c	toolchain-funcs	605c126bed8d87e4378d5ff1645330cb
-_md5_=f74c7129eb64c408f5bd627c9a4fc4cc
diff --git a/metadata/md5-cache/dev-util/itstool-2.0.6-r1 b/metadata/md5-cache/dev-util/itstool-2.0.6-r1
new file mode 100644
index 0000000..9e045d3
--- /dev/null
+++ b/metadata/md5-cache/dev-util/itstool-2.0.6-r1
@@ -0,0 +1,14 @@
+DEFINED_PHASES=setup test
+DEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_6? ( dev-libs/libxml2[python,python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-libs/libxml2[python,python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-libs/libxml2[python,python_targets_python3_8(-)] )
+DESCRIPTION=Translation tool for XML documents that uses gettext files and ITS rules
+EAPI=7
+HOMEPAGE=http://itstool.org/
+IUSE=python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8
+KEYWORDS=*
+LICENSE=GPL-3+
+RDEPEND=python_single_target_python3_6? ( dev-lang/python:3.6[xml] >=dev-lang/python-exec-2:=[python_targets_python3_6] ) python_single_target_python3_7? ( dev-lang/python:3.7[xml] >=dev-lang/python-exec-2:=[python_targets_python3_7] ) python_single_target_python3_8? ( dev-lang/python:3.8[xml] >=dev-lang/python-exec-2:=[python_targets_python3_8] ) python_single_target_python3_6? ( dev-libs/libxml2[python,python_targets_python3_6(-)] ) python_single_target_python3_7? ( dev-libs/libxml2[python,python_targets_python3_7(-)] ) python_single_target_python3_8? ( dev-libs/libxml2[python,python_targets_python3_8(-)] )
+REQUIRED_USE=^^ ( python_single_target_python3_6 python_single_target_python3_7 python_single_target_python3_8 )
+SLOT=0
+SRC_URI=http://files.itstool.org/itstool/itstool-2.0.6.tar.bz2
+_eclasses_=multilib	2477ebe553d3e4d2c606191fe6c33602	python-single-r1	43034a822923b18d8f3ab710b753f775	python-utils-r1	157a6a7a3e99c7dbdf81acc9dd4f57cd	toolchain-funcs	605c126bed8d87e4378d5ff1645330cb
+_md5_=9761e47690a9a9f947c73cb0414d32e0