Source: fabulous Version: 0.4.0+dfsg1-1 Tags: patch User: debian-cr...@lists.debian.org Usertags: cross-satisfiability ftcbfs
fabulous cannot be cross built from source as is. The initial problem is failure to satisfy cross Build-Depends. The immediate offender (sphinx) is well known and we know that it cannot be marked Multi-Arch: foreign, because it is sometimes used in architecture-dependent ways. As a result, client packages must make the decision of which architecture they need it for. So we annotate sphinx dependencies :native. While that gets it a bit further, now we see an architecture conflict on python3. Same problem, same solution: We annotate the interpreter with :native. This finally lets us build except that xtermspeedup.so is built with the wrong compiler. dpkg's buildtools.mk can fix that. And finally, something inside dh-python explodes when the hosts' sysconfig data is missing due to missing libpython3-all-dev. So here we go with a patch that fixes everything. A couple of final remarks. I opted dropping python3-minimal, because it is implied in python3-all. I also think that you don't actually need python3-all and that python3 should be sufficient. Even though fabulous builds a shared object, this object is not dependent on the Python version, so we only need it once for all versions. Moving fro python3-all to python3 should remove the need to rebuild fabulous for Python transitions. I leave this up to you. Helmut
diff --minimal -Nru fabulous-0.4.0+dfsg1/debian/changelog fabulous-0.4.0+dfsg1/debian/changelog --- fabulous-0.4.0+dfsg1/debian/changelog 2021-09-02 08:09:04.000000000 +0200 +++ fabulous-0.4.0+dfsg1/debian/changelog 2023-03-27 11:47:44.000000000 +0200 @@ -1,3 +1,15 @@ +fabulous (0.4.0+dfsg1-1.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Fix FTCBFS: (Closes: #-1) + + Drop B-D: python3-minimal implied in python3-all. + + Annotate B-D that cannot be marked M-A:foreign but are used natively + with :native. + + Add missing libpython3-all-dev for sysconfig data. + + Let dpkg's buildtools.mk initialize CC. + + -- Helmut Grohne <hel...@subdivi.de> Mon, 27 Mar 2023 11:47:44 +0200 + fabulous (0.4.0+dfsg1-1) unstable; urgency=medium * New upstream release diff --minimal -Nru fabulous-0.4.0+dfsg1/debian/control fabulous-0.4.0+dfsg1/debian/control --- fabulous-0.4.0+dfsg1/debian/control 2021-09-02 08:09:02.000000000 +0200 +++ fabulous-0.4.0+dfsg1/debian/control 2023-03-27 11:47:44.000000000 +0200 @@ -5,13 +5,13 @@ Uploaders: Jonathan Carter <j...@debian.org> Build-Depends: debhelper-compat (= 13), dh-python, - python3-all, + libpython3-all-dev, + python3-all:native, python3-doc, - python3-minimal, - python3-pil, + python3-pil:native, python3-setuptools, - python3-sphinx, - python3-sphinxcontrib.programoutput + python3-sphinx:native, + python3-sphinxcontrib.programoutput:native, Standards-Version: 4.6.1 Rules-Requires-Root: no Homepage: https://jart.github.io/fabulous/ diff --minimal -Nru fabulous-0.4.0+dfsg1/debian/rules fabulous-0.4.0+dfsg1/debian/rules --- fabulous-0.4.0+dfsg1/debian/rules 2020-10-22 12:17:59.000000000 +0200 +++ fabulous-0.4.0+dfsg1/debian/rules 2023-03-27 11:47:44.000000000 +0200 @@ -2,6 +2,7 @@ export DEB_BUILD_MAINT_OPTIONS=hardening=+all +include /usr/share/dpkg/buildtools.mk CFLAGS := $(shell dpkg-buildflags --get CFLAGS) CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS) LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)