Source: cups Version: 2.3.3op1-4 Tags: patch User: helm...@debian.org Usertags: rebootstrap
cups is involved in a number of dependency cycles relevant to architecture bootstrap. Instead of doing the hard work of looking into these cycles, I looked for easily droppable build dependencies and found some. Given that cups is reproducible, I attempted dropping individual dependencies via <!nocheck> and compared the resulting .debs with those of a regular build. It turns out that a lot of dependencies can be thus marked without affecting build results: * ghostscript * libavahi-compat-libdnssd-dev * libfontconfig1-dev * libfreetype6-dev * libijs-dev * libjpeg-dev * libldap2-dev * libpng-dev * libtiff-dev * poppler-utils * sharutils There are two possible mistakes being made here: For some dependencies, a fallback mechanism (e.g. vendored code copy) can be available. Thus it might be that not everything listed above should be tagged <!nocheck>. It also could be that some of these depenencies really are entirely unused. In that case, they should simply be dropped instead. Beyond this, dh_apparmor is only used when cups-daemon is built. It can be dropped for indep-only builds. Please consider applying and improving the attached patch. Helmut
diff --minimal -Nru cups-2.3.3op1/debian/changelog cups-2.3.3op1/debian/changelog --- cups-2.3.3op1/debian/changelog 2020-12-23 14:53:09.000000000 +0100 +++ cups-2.3.3op1/debian/changelog 2021-01-09 21:27:23.000000000 +0100 @@ -1,3 +1,10 @@ +cups (2.3.3op1-4.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Reduce Build-Depends. (Closes: #-1) + + -- Helmut Grohne <hel...@subdivi.de> Sat, 09 Jan 2021 21:27:23 +0100 + cups (2.3.3op1-4) unstable; urgency=medium * Drop ancient manual link-doc setting in cups-bsd.postinst diff --minimal -Nru cups-2.3.3op1/debian/control cups-2.3.3op1/debian/control --- cups-2.3.3op1/debian/control 2020-12-23 14:53:09.000000000 +0100 +++ cups-2.3.3op1/debian/control 2021-01-09 21:27:18.000000000 +0100 @@ -5,36 +5,36 @@ Section: net Priority: optional Build-Depends: debhelper-compat (= 12), - dh-apparmor, dh-strip-nondeterminism, patch, autoconf, automake, libtool, pkg-config, - ghostscript, + ghostscript <!nocheck>, libavahi-client-dev, libavahi-common-dev, - libavahi-compat-libdnssd-dev, + libavahi-compat-libdnssd-dev <!nocheck>, libdbus-1-dev, - libfontconfig1-dev, - libfreetype6-dev, + libfontconfig1-dev <!nocheck>, + libfreetype6-dev <!nocheck>, libgnutls28-dev, - libijs-dev, - libjpeg-dev, - libldap2-dev, + libijs-dev <!nocheck>, + libjpeg-dev <!nocheck>, + libldap2-dev <!nocheck>, libkrb5-dev, libpam0g-dev, libpaper-dev, - libpng-dev, + libpng-dev <!nocheck>, libsystemd-dev [linux-any], - libtiff-dev, + libtiff-dev <!nocheck>, libusb-1.0-0-dev [!hurd-any], po4a, po-debconf, - poppler-utils, - sharutils, + poppler-utils <!nocheck>, + sharutils <!nocheck>, zlib1g-dev +Build-Depends-Arch: dh-apparmor, # libgmp-dev is not GPL-2 compatible before it's 6 release, which makes it also GPL-2+ Build-Conflicts: libgmp-dev (<< 2:6) Standards-Version: 4.5.1