[buildd-tools-devel] Bug#811202: sbuild: order some code differently

Johannes Schauer josch at debian.org
Tue Jul 5 06:12:44 UTC 2016


Hi,

On Mon, 04 Jul 2016 09:54:55 +0200 Johannes Schauer <josch at debian.org> wrote:
> This is a tricky one because it creates a chicken-and-egg situation when
> sbuild is instructed to download the source package itself. In that
> situation, the source package's metadata is required *before* the chroot is
> updated, so that extra architectures can be added to the chroot. But sbuild
> should only download the source package (including its metadata) *after* the
> chroot is updated to pick up the latest source package version.

one can also make the argument, that adding architectures explicitly given in
dependencies on binary packages is futile anyways and should be removed and
replaced by a mechanism where the user lists all enabled foreign architectures
on the command line when running sbuild manually.

To elaborate: currently sbuild goes through the build dependencies of a source
package to find explicitly architecture qualified build dependencies. It then
adds these architectures to the foreign architectures of the chroot. But this
method is incomplete. If any of the binary packages a source package indirectly
build depends on deeper in the dependency chain carries an architecture
qualified dependency, then the current system will not see this architecture.
Implementing a system that finds all required architectures is hard because it
would mean to recursively walk the dependency graph and add all explicitly
given architectures as they are required. There currently exists no software in
Debian that can do this task. One could for example think about calling
dose-builddebcheck multiple times, adding more architectures as they are
discovered to be missing by dose3. But this would also be highly fragile and
computationally expensive.

Removing the code that currently automatically adds architectures to the chroot
would of course also fix this bug but remove some functionality.

Thanks!

cheers, josch
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: signature
URL: <http://lists.alioth.debian.org/pipermail/buildd-tools-devel/attachments/20160705/2e1f16ff/attachment.sig>


More information about the Buildd-tools-devel mailing list