Your message dated Sat, 17 Sep 2022 09:50:12 +0200
with message-id <c006e27f-e8ab-ffe2-6509-32be4f366...@thykier.net>
and subject line Re: Bug#1019693: dpkg-buildpackage: fails with unknown
sequence when including missing file
has caused the Debian Bug report #1019693,
regarding dpkg-buildpackage: fails with unknown sequence when including missing
file
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)
--
1019693: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1019693
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: dpkg-dev
Version: 1.29.9
Severity: normal
File: /usr/bin/dpkg-buildpackage
Dear Maintainer,
This may be a regression because I don't have this problem with 1.20.12 which
is on bullseye.
When in debian/rules, I include a file that doesn't exists, dpkg will try to
run
dh /path/to/missing/file ....
which leads to this failure & error:
dh: error: unknown sequence/path/to/missing/file (choose from: binary binary-
arch binary-indep build build-arch build-indep clean install install-arch
install-indep)
for example, in your debian/rules, at the top, put
-include /path/to/missing/file
then, run dpkg-buildpackage
Rgds
Fab
-- package-specific info:
system tainted due to merged-usr-via-aliased-dirs.
-- system information:
debian release: 11.5
apt prefers stable-updates
apt policy: (991, 'stable-updates'), (991, 'stable'), (95, 'testing'), (90,
'unstable')
architecture: amd64 (x86_64)
foreign architectures: i386
kernel: linux 5.10.0-18-amd64 (smp w/4 cpu threads)
kernel taint flags: taint_proprietary_module, taint_oot_module,
taint_unsigned_module
locale: lang=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8),
LANGUAGE=fr:en_US
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
Versions of packages dpkg-dev depends on:
ii binutils 2.35.2-2
ii bzip2 1.0.8-4
ii libdpkg-perl 1.20.12
ii make 4.3-4.1
ii patch 2.7.6-7
ii perl 5.32.1-4+deb11u2
ii tar 1.34+dfsg-1
ii xz-utils 5.2.5-2.1~deb11u1
Versions of packages dpkg-dev recommends:
ii build-essential 12.9
ii fakeroot 1.25.3-1.1
ii gcc [c-compiler] 4:10.2.1-1
ii gcc-10 [c-compiler] 10.2.1-6
ii gnupg 2.2.27-2+deb11u2
ii gpgv 2.2.27-2+deb11u2
ii libalgorithm-merge-perl 0.08-3
Versions of packages dpkg-dev suggests:
ii debian-keyring 2021.07.26
-- no debconf information
--- End Message ---
--- Begin Message ---
Control: tags -1 wontfix
Guillem Jover:
On Tue, 2022-09-13 at 15:50:07 +0200, Fab Stz wrote:
Package: dpkg-dev
Version: 1.29.9
Severity: normal
File: /usr/bin/dpkg-buildpackage
This may be a regression because I don't have this problem with 1.20.12 which
is on bullseye.
When in debian/rules, I include a file that doesn't exists, dpkg will try to
run
dh /path/to/missing/file ....
which leads to this failure & error:
dh: error: unknown sequence/path/to/missing/file (choose from: binary binary-
arch binary-indep build build-arch build-indep clean install install-arch
install-indep)
for example, in your debian/rules, at the top, put
-include /path/to/missing/file
then, run dpkg-buildpackage
Hi,
This seems to be a feature interaction between make and the `dh $@`
style. GNU Make appears to be attempting to create the missing file for
you and I guess it ends up hitting the `catch all %:` rule calling dh
(which I assume you have in your rules file).
This happens *before* dh is called so debhelper cannot do anything about
it. Your only option is to look at having make or your `debian/rules`
file handle this case. Options might include:
* Ensure there is a (.PHONY) target for the missing file to ensure Make
does not pick up the default rule.
* Add Make conditionals around the include so the include is skipped
when the file is not present.
I tested a simple `.PHONY: foo` + `-include foo` and that seemed to work
locally. But you will have to figure out what works for you.
Either way, this is two products independently working as designed
ending up in a bad feature interaction that cannot be solved - only
worked around (for as long as we rely on make and debhelper in Debian
packaging). Therefore closing this as "wontfix" (read: "cantfix").
Thanks,
~Niels
--- End Message ---