Control: tag -1 patch

On Wed, Dec 04, 2024 at 08:10:55PM -0100, Graham Inggs wrote:
> The autopkgtests of this package fail with Python 3.13 [1].  I've
> copied what I hope is the relevant part of the log below.
[...]
> 137s ERROR: test-atomiclevelwidth
> (unittest.loader._FailedTest.test-atomiclevelwidth)
> 137s ----------------------------------------------------------------------
> 137s ImportError: Failed to import test module: test-atomiclevelwidth
> 137s Traceback (most recent call last):
> 137s File "/usr/lib/python3.13/unittest/loader.py", line 137, in
> loadTestsFromName
> 137s module = __import__(module_name)
> 137s File 
> "/tmp/autopkgtest-lxc.fi8tnbgp/downtmp/build.g5v/src/python/tests/test-atomiclevelwidth.py",
> line 2, in <module>
> 137s import xraylib
> 137s File "/usr/lib/python3/dist-packages/xraylib.py", line 14, in <module>
> 137s import _xraylib
> 137s ModuleNotFoundError: No module named '_xraylib'

I believe the attached patch does the job: it builds and passes
autopkgtests, adding a Python 3.13 extension.

Thanks,

-- 
Colin Watson (he/him)                              [cjwat...@debian.org]
>From d84aca4188e7104d066a9ec3df14f7fd10fe5bb2 Mon Sep 17 00:00:00 2001
From: Colin Watson <cjwat...@debian.org>
Date: Fri, 13 Dec 2024 00:53:38 +0000
Subject: [PATCH] Build for all supported Python versions

Closes: #1089070
---
 debian/changelog |  6 ++++++
 debian/control   |  2 +-
 debian/rules     | 23 +++++++++++++++++++++--
 3 files changed, 28 insertions(+), 3 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 9ccf66c..5ca6897 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+xraylib (4.0.0+dfsg1-6) UNRELEASED; urgency=medium
+
+  * Build for all supported Python versions (closes: #1089070).
+
+ -- Colin Watson <cjwat...@debian.org>  Fri, 13 Dec 2024 00:42:14 +0000
+
 xraylib (4.0.0+dfsg1-5) unstable; urgency=medium
 
   * d/t/python: test all supported python versions.
diff --git a/debian/control b/debian/control
index 2ea9899..a5da8fb 100644
--- a/debian/control
+++ b/debian/control
@@ -14,7 +14,7 @@ Build-Depends:
  dh-sequence-python3,
  meson,
  pkgconf,
- python3-dev,
+ python3-all-dev,
  python3-numpy,
  swig,
 Standards-Version: 4.6.2
diff --git a/debian/rules b/debian/rules
index 9c63a4e..eb38e40 100755
--- a/debian/rules
+++ b/debian/rules
@@ -15,9 +15,28 @@ endif
 	dh $@ --without autoreconf -S meson
 
 override_dh_auto_configure:
-	dh_auto_configure -- -Dpython-bindings=enabled -Dpython-numpy-bindings=enabled
+	set -e; for v in $$(py3versions -sv); do \
+		dh_auto_configure -Bobj-$(DEB_HOST_GNU_TYPE)-py$$v -- -Dpython=python$$v -Dpython-bindings=enabled -Dpython-numpy-bindings=enabled; \
+	done
+
+override_dh_auto_build:
+	set -e; for v in $$(py3versions -sv); do \
+		dh_auto_build -Bobj-$(DEB_HOST_GNU_TYPE)-py$$v; \
+	done
+
+override_dh_auto_test:
+	set -e; for v in $$(py3versions -sv); do \
+		dh_auto_test -Bobj-$(DEB_HOST_GNU_TYPE)-py$$v; \
+	done
 
 override_dh_auto_install:
-	dh_auto_install
+	set -e; for v in $$(py3versions -sv); do \
+		dh_auto_install -Bobj-$(DEB_HOST_GNU_TYPE)-py$$v; \
+	done
 	find debian/tmp/ -name xraydoc.txt -delete || true
 	find debian/tmp -name libxrl.la -delete || true
+
+override_dh_auto_clean:
+	set -e; for v in $$(py3versions -sv); do \
+		dh_auto_clean -Bobj-$(DEB_HOST_GNU_TYPE)-py$$v; \
+	done
-- 
2.45.2

Reply via email to