public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Mike Gilbert" <floppym@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: x11-misc/shared-mime-info/files/, x11-misc/shared-mime-info/
Date: Sun, 21 Nov 2021 23:39:01 +0000 (UTC)	[thread overview]
Message-ID: <1637537938.40fb79f4c69cdc4331ba21d12b65d70c8175b7e8.floppym@gentoo> (raw)

commit:     40fb79f4c69cdc4331ba21d12b65d70c8175b7e8
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 21 23:36:15 2021 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Nov 21 23:38:58 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=40fb79f4

x11-misc/shared-mime-info: avoid calling broken translation script

Closes: https://bugs.gentoo.org/824142
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 .../files/shared-mime-info-2.1-itstool.patch       | 82 ++++++++++++++++++++++
 .../shared-mime-info/shared-mime-info-2.1.ebuild   |  5 +-
 2 files changed, 86 insertions(+), 1 deletion(-)

diff --git a/x11-misc/shared-mime-info/files/shared-mime-info-2.1-itstool.patch b/x11-misc/shared-mime-info/files/shared-mime-info-2.1-itstool.patch
new file mode 100644
index 000000000000..dedeb61e29cf
--- /dev/null
+++ b/x11-misc/shared-mime-info/files/shared-mime-info-2.1-itstool.patch
@@ -0,0 +1,82 @@
+From 5a406b06792e26a83c7346b3c2443c0bd8d4cdb2 Mon Sep 17 00:00:00 2001
+From: Eli Schwartz <eschwartz@archlinux.org>
+Date: Mon, 8 Nov 2021 18:22:47 -0500
+Subject: [PATCH] migrate from custom itstool to builtin msgfmt for creating
+ translated XML
+
+gettext upstream has supported this for a very long time (since 0.19.7
+via commit b3c2a5a242c36fbbaa0c5b17f975d6c638598a23, released in 2015),
+and itstool is (mostly) a legacy of the time before gettext had proper
+support for these sorts of use cases.
+
+This is similar to the state of intltool, which is described at
+https://wiki.gnome.org/MigratingFromIntltoolToGettext
+
+During the port from autotools to meson, the legacy use of itstool was
+faithfully translated to meson in the only way possible: by jumping
+through hoops to run ninja inside ninja in order to generate the .mo
+files for itstool, because meson's i18n module used a flawed design and
+there was no "real" target to create those files, only a .PHONY
+run_target which other rules cannot depend on.
+
+Although meson 0.60.0 added support for real targets for the built .mo
+files, this changed the rules for output filenames, breaking the script.
+
+But msgfmt does not care, and anyways comes with builtin meson functions
+for convenient use with XML files. So let's take this opportunity to
+drop legacy dependencies and use the modern, builtin tooling, which
+fixes this bug as a side effect.
+
+Fixes #170
+---
+ .gitlab-ci.yml               |  2 --
+ README.md                    |  2 +-
+ data/freedesktop_generate.sh | 12 ------------
+ data/meson.build             | 16 +++++-----------
+ meson.build                  |  1 -
+ 5 files changed, 6 insertions(+), 27 deletions(-)
+ delete mode 100755 data/freedesktop_generate.sh
+
+diff --git a/data/meson.build b/data/meson.build
+index 24361c9..09ed7a9 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -1,18 +1,12 @@
+ 
+ install_man('update-mime-database.1')
+ 
+-freedesktop_org_xml = custom_target('freedesktop.org.xml',
+-    input : files(
+-        'freedesktop.org.xml.in',
+-        'its/shared-mime-info.its',
+-        'its/shared-mime-info.loc',
+-    ),
++freedesktop_org_xml = i18n.merge_file(
++    input: 'freedesktop.org.xml.in',
+     output: 'freedesktop.org.xml',
+-    command: [
+-        find_program('freedesktop_generate.sh'),
+-        meson.source_root(),
+-        meson.build_root()
+-    ],
++    data_dirs: '.',
++    po_dir: '../po',
++    type: 'xml',
+     install: true,
+     install_dir: get_option('datadir') / 'mime' / 'packages',
+ )
+diff --git a/meson.build b/meson.build
+index 0d08c8a..60f17ae 100644
+--- a/meson.build
++++ b/meson.build
+@@ -20,7 +20,6 @@
+ ###############################################################################
+ # Find tools
+ 
+-itstool = find_program('itstool')
+ xmllint = find_program('xmllint')
+ xmlto   = find_program('xmlto')
+ 
+-- 
+GitLab
+

diff --git a/x11-misc/shared-mime-info/shared-mime-info-2.1.ebuild b/x11-misc/shared-mime-info/shared-mime-info-2.1.ebuild
index 440f28e1465b..0957f1fa1a14 100644
--- a/x11-misc/shared-mime-info/shared-mime-info-2.1.ebuild
+++ b/x11-misc/shared-mime-info/shared-mime-info-2.1.ebuild
@@ -20,7 +20,6 @@ RESTRICT="test"
 BDEPEND="
 	app-text/docbook-xml-dtd:4.1.2
 	app-text/xmlto
-	dev-util/itstool
 	sys-devel/gettext
 	virtual/pkgconfig
 "
@@ -32,6 +31,10 @@ DEPEND="${RDEPEND}"
 
 DOCS=( HACKING.md NEWS README.md )
 
+PATCHES=(
+	"${FILESDIR}/shared-mime-info-2.1-itstool.patch"
+)
+
 src_install() {
 	meson_src_install
 


             reply	other threads:[~2021-11-21 23:39 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-21 23:39 Mike Gilbert [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-02-06  3:31 [gentoo-commits] repo/gentoo:master commit in: x11-misc/shared-mime-info/files/, x11-misc/shared-mime-info/ Sam James
2023-10-19 13:12 Sam James
2020-06-15 20:06 Lars Wendler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1637537938.40fb79f4c69cdc4331ba21d12b65d70c8175b7e8.floppym@gentoo \
    --to=floppym@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox