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 

Reply via email to