Package: sbuild
Version: 0.89.3+deb13u4
Not entirely clear if this is an issue with sbuild or with how linux is
specifying its dependencies, but I am unable to cross-build the current
unstable version (6.19.6-1) with sbuild due to an unmet dependency on rust-src.
rust-src is an architecture all package just containing the rust source code.
Linux specifies a dependency on it via:
Build-Depends-Arch: .... rust-src (>= 1.78.0) [amd64 arm64 armhf loong64
riscv64] <!pkg.linux.nokernel !pkg.linux.norust>...
I'm building using the following sbuild command (borrowed from the pocket
reform debian package build):
DEB_BUILD_PROFILES="cross nodoc pkg.linux.nokerneldbg
pkg.linux.nokerneldbginfo" sbuild --arch-any --build=amd64 --host=arm64
--arch-all --verbose --clean-source --no-source-only-changes --no-run-lintian
--no-run-autopkgtest
Each build fails with the following dose-check output:
output-version: 1.2
native-architecture: amd64
foreign-architecture: arm64
report:
-
package: sbuild-build-depends-main-dummy
version: 0.invalid.0
architecture: arm64
status: broken
reasons:
-
missing:
pkg:
package: sbuild-build-depends-main-dummy
version: 0.invalid.0
architecture: arm64
unsat-dependency: rust-src:arm64 (>= 1.78.0)
background-packages: 106988
foreground-packages: 1
total-packages: 106989
broken-packages: 1
Neither moving this dependency to Build-Depends-Indep nor removing the
architecture restrictions on it appear to resolve the issue. Changing the
dependency to rust-src:all or rust-src:native does not work either, nor does
changing the build dependency resolver to aptitude.
Disabling rust entirely with the build profile pkg.linux.norust solves my
immediate issue, but as rust is likely to be more widely used in the kernel in
the near future this workaround may soon become unworkable.
Thanks,
Jacob