Source: debhelper
Version: 13.16

Basic Test Case
--------------
gbp clone https://salsa.debian.org/gnome-team/gnome-backgrounds.git
cd gnome-backgrounds
gbp buildpackage

Overview
------------
debhelper compat 14 warns if single-binary is implicitly used. The
upgrade checklist suggests either
- Add Build-Depends: dh-sequence-single-binary
- Add both --without single-binary and set dh_auto_install --destdir

Test Case 1
----------------
Setting --without single-binary alone without any other changes
enables single binary builds to work for 14 the same as for 13.
Setting this option apparently only silences the warning and results
in **with** single-binary behavior instead of **without**.

Test Case 2
----------------
Do Test Case 1, then
Add debian/install with this single line of content:
usr

Now the build succeeds for 15 but fails for 14

Test Case 3
----------------
Do Test Case 2, then add this to debian/rules

override_dh_auto_install:
        dh_auto_install --destdir=debian/tmp

This works for both 14 and 15

What I Expected Instead
----------------------------------
1. Enable Test Case 2 to work, then

2. The upgrade checklist should suggest either:
- Add Build-Depends: dh-sequence-single-binary
- Add --without single-binary and then handle installing the files
like for a source package that has multiple binary packages


The warning now encourages package maintainers to opt into compat 15
style behavior early. No further changes are currently required for a
working 14 build using this style to upgrade to 15.

It avoids the extra verbosity needed for Test Case 3 for compat 14 and
avoids needing to clean that up for a simple debian/rules once
switched to compat 15.

Other Info
--------------
This would be a breaking change for compat 14. There are several
affected packages.
https://codesearch.debian.net/search?q=path%3Adebian%2Frules+without.*single-binary&literal=0

Thank you,
Jeremy Bícha

Reply via email to