Package: pythonmagick
Version: 0.9.19-7
Severity: serious
Tags: patch
Justification: misbuilt
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu jammy ubuntu-patch

Dear maintainers,

Well it's me again ;)  Ubuntu has switched python3.10 to be the default
python, which is *again* causing pythonmagick to misbuild.  The reason is
that the upstream configure script has a --with-python-min-version option,
but not a --with-python-max-version option; so when the version returned by
the bare 'python3' command satisfies the min constraint, that's what the
build uses.

So python3 returns 3.10, which satisfies the >= 3.9 constraint, and both
binary builds try to install to the python3.10 path by mistake (despite the
python3.9 build having used the correct libboost-python).

The attached patch addresses this by explicitly telling configure in its
environment what python command to use for each build.  I've confirmed that
this fixes the build in Ubuntu, so it should also let pythonmagick rebuild
correctly when python3.10 becomes the default in Debian (soon).

You can probably also drop the use of --with-python-min-version, which is
now redundant.

Cheers,
-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                   https://www.debian.org/
slanga...@ubuntu.com                                     vor...@debian.org
diff -Nru pythonmagick-0.9.19/debian/rules pythonmagick-0.9.19/debian/rules
--- pythonmagick-0.9.19/debian/rules    2022-01-28 05:42:27.000000000 -0800
+++ pythonmagick-0.9.19/debian/rules    2022-02-07 16:11:55.000000000 -0800
@@ -8,7 +8,8 @@
 export PYBUILD_NAME=pythonmagick
 export PYBUILD_SYSTEM=custom
 export PYBUILD_CLEAN_ARGS=dh_auto_clean $d;
-export PYBUILD_CONFIGURE_ARGS=dh_auto_configure $d -- \
+export PYBUILD_CONFIGURE_ARGS=PYTHON=python{version.major}.{version.minor} \
+       dh_auto_configure $d -- \
        --disable-silent-rules --disable-static \
        --with-python-min-version={version.major}.{version.minor} \
        --with-boost-python=boost_python{version.major}{version.minor}

Reply via email to