dpkg-cross knows nothing of blacklists - all exclusions must be
specified manually because dpkg-cross does not have any information
about the packages that make the dependencies themselves, only the
single package being processed at that moment. i.e. dpkg-cross only
knows about libc6, not libc-bin or debconf, when processing libc6.
Equally, when processing libc-bin, libc6 is completely unknown. It's
just a string of characters. The meaning of the dependency data can only
ever be available to programs based on apt or aptitude.

apt-cross does try to avoid asking dpkg-cross to build unnecessary
packages but in this case, it fails. However, you can always specify
the -x option to apt-cross manually which then gets passed down to the
-X option of dpkg-cross.

apt-cross itself is unlikely to be fixed because bugs like this are
almost inevitable due to the package mangling going on in the apt perl
bindings. I'm tempted to tag this bug as 'wontfix' now that it has been
correctly assigned.

Compare with dpkg behaviour - you can install a .deb directly whether
the dependencies exist or not. (pbuilder currently relies on this
behaviour to satisfy build dependencies.) It is only apt-get or aptitude
which can fix the resulting mess but dpkg does NOT even try to stop you
creating the mess in the first place.

Anything that relies on data outside the confines of the package itself
(i.e. the .deb) cannot be handled by dpkg-cross.

-- 


Neil Williams
=============
http://www.data-freedom.org/
http://www.linux.codehelp.co.uk/
http://e-mail.is-not-s.ms/

Attachment: pgpLoYVpiPrvg.pgp
Description: PGP signature

Reply via email to