Hi!
On Sun, 2013-06-02 at 10:55:34 +0200, Johannes Schauer wrote:
> Package: dpkg-dev
> Version: 1.16.10
> Severity: normal
> User: [email protected]
> Usertags: cross
> There is an inconsistency between `dpkg-checkbuilddeps -a${arch}` and
> `apt-get build-dep -a${arch}` behavior. Here we test on the source
> package bash which Build-Depends on autoconf which is Multi-Arch: none.
>
> $ dpkg-checkbuilddeps -aarmel
> dpkg-checkbuilddeps: Unmet build dependencies: libncurses5-dev sharutils time
> $ apt-get build-dep -aarmel bash
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> E: Build-Depends dependency for bash cannot be satisfied because the package
> autoconf cannot be found
> The package autoconf is not listed as an unmet build dependency by
> dpkg-checkbuilddeps. Apt-get lists it as being unsatisfiable. It is my
> understanding that the apt behavior is the correct one as autoconf is
> Multi-Arch: none and can therefore not be used to satisfy the cross
> build dependencies of bash. Therefore, autoconf should also appear in
> the list of unmet build dependencies as given by dpkg-checkbuilddeps.
autoconf is arch:all, so I don't see any reason why it should not be
able to satisfy the Build-Depends. The reason this does not apply to
Depends, is to try to avoid switching architectures in dependency
chains, as in «pkg-a:arch-a → pkg-b:all → pkg-c:arch-c». But arguably
this might not have been a very good idea after all, given that I think
that kind of dependency chain is IMO legitimate for arch:all packages,
OTOH one reason I didn't have much of a problem with that is because
we can always relax that restriction at any later point (and we
probably should).
Thanks,
Guillem
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]