summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-crypt/gpgme/files/ecd0c86d62351d267bdc9566286c532a394c711b.patch40
-rw-r--r--app-crypt/gpgme/gpgme-1.23.2-r1.ebuild (renamed from app-crypt/gpgme/gpgme-1.23.2.ebuild)2
2 files changed, 42 insertions, 0 deletions
diff --git a/app-crypt/gpgme/files/ecd0c86d62351d267bdc9566286c532a394c711b.patch b/app-crypt/gpgme/files/ecd0c86d62351d267bdc9566286c532a394c711b.patch
new file mode 100644
index 000000000000..5e7a37d9ff01
--- /dev/null
+++ b/app-crypt/gpgme/files/ecd0c86d62351d267bdc9566286c532a394c711b.patch
@@ -0,0 +1,40 @@
+From ecd0c86d62351d267bdc9566286c532a394c711b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ingo=20Kl=C3=B6cker?= <dev@ingo-kloecker.de>
+Date: Mon, 2 Sep 2024 15:33:25 +0200
+Subject: [PATCH] build,python: Fix build with setuptools 72.2.0+
+
+* lang/python/setup.py.in (BuildExtFirstHack.run): Extend members of the
+extension instead of lists that were passed to the extension.
+--
+
+setuptools 72.2.0 integrated changes in distutils which included
+"Support for Pathlike objects in data files and extensions". With this
+change the extensions now take a copy of the sources list passed to the
+constructor instead of keeping a reference to the passed list. Hence,
+modifying the sources list that was passed to the extension didn't
+change the sources list of the extension anymore. This is fixed by
+modifying the sources list of the extension directly. For consistency
+we do the same for the swig_opts list.
+
+GnuPG-bug-id: 7281
+---
+ lang/python/setup.py.in | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in
+index 7b64ba7b..d6f537e0 100755
+--- a/lang/python/setup.py.in
++++ b/lang/python/setup.py.in
+@@ -217,9 +217,9 @@ class BuildExtFirstHack(build):
+ def run(self):
+ self._generate()
+
+- swig_sources.extend((self._in_build_base('gpgme.i'),
+- self._in_build_base('helpers.c')))
+- swig_opts.extend([
++ swige.sources.extend((self._in_build_base('gpgme.i'),
++ self._in_build_base('helpers.c')))
++ swige.swig_opts.extend([
+ '-I' + self.build_base, '-outdir',
+ os.path.join(self.build_lib, 'gpg')
+ ])
diff --git a/app-crypt/gpgme/gpgme-1.23.2.ebuild b/app-crypt/gpgme/gpgme-1.23.2-r1.ebuild
index 729e18d1df98..043a8992cf5c 100644
--- a/app-crypt/gpgme/gpgme-1.23.2.ebuild
+++ b/app-crypt/gpgme/gpgme-1.23.2-r1.ebuild
@@ -69,6 +69,8 @@ BDEPEND="
PATCHES=(
"${FILESDIR}"/${PN}-1.18.0-tests-start-stop-agent-use-command-v.patch
"${FILESDIR}"/${PN}-1.23.1-tests-gnupg-no-tofu.patch
+ # backport fix for setuptools 72.2 breakage
+ "${FILESDIR}"/ecd0c86d62351d267bdc9566286c532a394c711b.patch
)
src_prepare() {