Hello,

Is that something that needs to go for Bullseye (honest question)?
-- 
Let us endeavor so to live that when we come to die even the undertaker will be
sorry.
                -- Mark Twain, "Pudd'nhead Wilson's Calendar"

 ――――――― Original Message ―――――――
 From: Helmut Grohne <hel...@subdivi.de>
 Sent:  2 février 2021 07:25 +01
 Subject: Bug#981620: libcbor: reduce Build-Depends
 To: Debian Bug Tracking System

> Source: libcbor
> Version: 0.5.0+dfsg-2
> Tags: patch
> User: debian-cr...@lists.debian.org
> Usertags: cross-satisfiability
>
> libcbor cannot be cross built from source, because its build depends are
> unsatisfiable. It also participates in dependency loops relevant to
> architecture bootstrap. Both are hard problems, so I rather looked into
> easily droppable dependencies and I have to say, that I'll not be
> leaving many.
>
> The first insight is that the libcbor documentation is nicely split into
> an arch:all package, but d/rules builds the documentation on arch-only
> builds as well. Indeed, the actual library build and the documentation
> build are fully separate. In this package, we can fully move the
> documentation build to -indep overrides and skip all library builds
> there. That allows partitioning all dependencies but debhelper to either
> B-D-A or B-D-I. While on it, I noticed that d/rules calls doxygen
> without depending on it. While the dependency is kinda implicit via
> python3-breathe, I think being explicit here would be better to avoid a
> late surprise.
>
> Finally, libcmocka-dev can be skipped via <!nocheck> as it is only used
> for testing.
>
> Since libcbor is normally reproducible, I went ahead and compared a full
> regular build without these changes to a full build, arch-only build and
> indep-only build with these changes (minus changelog) and they all
> matched exactly. Please consider applying the attached patch.
>
> Helmut
>
> diff --minimal -Nru libcbor-0.5.0+dfsg/debian/changelog 
> libcbor-0.5.0+dfsg/debian/changelog
> --- libcbor-0.5.0+dfsg/debian/changelog       2018-05-17 17:08:03.000000000 
> +0200
> +++ libcbor-0.5.0+dfsg/debian/changelog       2021-02-02 07:03:06.000000000 
> +0100
> @@ -1,3 +1,16 @@
> +libcbor (0.5.0+dfsg-2.1) UNRELEASED; urgency=medium
> +
> +  * Non-maintainer upload.
> +  * Reduce Build-Depends: (Closes: #-1)
> +    + d/rules: Move documentation build to -indep overrides.
> +    + Enable sphinxdoc dh addon via B-D.
> +    + Demote all sphinx dependencies to B-D-I. Be explicit about doxygen.
> +    + d/rules: Skip cmake build in -indep overrides.
> +    + Demote cmake and cmocka to B-D-A.
> +    + Annotate cmocka <!nocheck>.
> +
> + -- Helmut Grohne <hel...@subdivi.de>  Tue, 02 Feb 2021 07:03:06 +0100
> +
>  libcbor (0.5.0+dfsg-2) unstable; urgency=medium
>  
>    * d/control: migrate to salsa.debian.org.
> diff --minimal -Nru libcbor-0.5.0+dfsg/debian/control 
> libcbor-0.5.0+dfsg/debian/control
> --- libcbor-0.5.0+dfsg/debian/control 2018-05-17 17:08:03.000000000 +0200
> +++ libcbor-0.5.0+dfsg/debian/control 2021-02-02 07:03:06.000000000 +0100
> @@ -2,11 +2,13 @@
>  Priority: optional
>  Maintainer: Vincent Bernat <ber...@debian.org>
>  Build-Depends: debhelper (>= 9),
> -               cmake,
> -               libcmocka-dev,
> -               python3-sphinx,
> -               python3-sphinx-rtd-theme,
> -               python3-breathe
> +Build-Depends-Arch: cmake,
> +                    libcmocka-dev <!nocheck>,
> +Build-Depends-Indep: dh-sequence-sphinxdoc,
> +                     doxygen,
> +                     python3-sphinx,
> +                     python3-sphinx-rtd-theme,
> +                     python3-breathe
>  Standards-Version: 4.1.2
>  Section: libs
>  Homepage: https://github.com/PJK/libcbor
> diff --minimal -Nru libcbor-0.5.0+dfsg/debian/rules 
> libcbor-0.5.0+dfsg/debian/rules
> --- libcbor-0.5.0+dfsg/debian/rules   2018-05-17 17:08:03.000000000 +0200
> +++ libcbor-0.5.0+dfsg/debian/rules   2021-02-02 07:03:06.000000000 +0100
> @@ -3,12 +3,15 @@
>  DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
>  
>  %:
> -     dh $@ --with sphinxdoc
> +     dh $@
>  
> -override_dh_auto_build:
> -     dh_auto_build
> +override_dh_auto_configure-indep:
> +
> +override_dh_auto_build-indep:
>       mkdir -p doc/build/doxygen
>       doxygen
>       make -C doc html
>       # Nothing is using MathJax
>       find doc/build/html -type f -print0 | xargs -0 sed -i 
> '/ajax\/libs\/mathjax/d'
> +
> +override_dh_auto_install-indep:

Reply via email to