[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: What does "Malformed Build-Depends / broken syntax" from debcheck mean?



On 2025-10-05 18:10 +0200, Philippe SWARTVAGHER wrote:

I maintain the package shaderc. In the last upload, I fixed the packaging to make the package cross-buildable. Among the required changes, I had to add `python3:any` to Build-Depends.

I don't remember where I found it, but it turns out `python3:any` (adding `:any`) in Build-Depends fixes the problem, by installing any working python3 package, which is what I need in this case.

Yep, this is correct. :any allows a foreign (to the arch built
built-for) arch version of python to satisfy the dependency.

However, since this upload, in my qa.debian.org page (https://qa.debian.org/developer.php?login=phil.swart@gmx.fr), I see in the column "Debcheck" that something is wrong for shaderc. Indeed, it complains (https://qa.debian.org/debcheck.php?dist=unstable&package=shaderc) that "Package declares a build time dependency on 'python3:any' which is broken Syntax.".


This raises several questions:

- If it's a broken syntax, what is the correct syntax? I browsed (maybe too quickly) several pages on the wiki about cross-building, I didn't find an answer.

I don't see anything wrong with a build-dep on python3:any
so I'm not quite sure what it is complaining about.

And the cross-qa pages say it's working right:
https://crossqa.debian.net/src/shaderc

- What is this "Debcheck" tool? I found some source in https://salsa.debian.org/qa/qa/-/tree/master/data/debcheck, and it seems to be packaged in dose-distcheck, but I failed to run dose-debcheck locally. Moreover, according to several bugs opened against qa.debian.org, the tool doesn't seem actively maintained anymore (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=918714).

- Shouldn't Lintian report this kind of problem? `lintian -EviIL +pedantic` reports no problem related to this matter.

- Is there somewhere a reference about the specifiers (like `:any`) which can be appended to a package in the field Build-Depends? The syntax `package:foo` is not mentioned in https://www.debian.org/doc/debian-policy/ch-relationships.html.

It is documented here:
https://wiki.ubuntu.com/MultiarchSpec#Binary_package_control_fields
and here:
https://wiki.debian.org/Multiarch/Implementation

But you seem to have done it correctly, so I think the debcheck check is wrong.


Wookey
--
Principal hats:  Wookware, Debian
http://wookware.org/
Matrix: @wookey:matrix.org

Attachment: signature.asc
Description: PGP signature


Reply to: