[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: emdebian-tools in Squeeze

On Mon, 29 Mar 2010 12:48:39 +0100
Wookey <wookey@wookware.org> wrote:

> +++ Neil Williams [2010-03-27 22:54 +0000]:
> > It's quite possible that apt-cross won't actually be used because the
> > cross builds will only need to work with a handful of packages.
> > Instead, the adjusted source packages could specifically list the
> > packages to download or have some other script to manually wget the
> > relevant packages. (A symptom of just how little I trust apt-cross
> > anymore.)
> I don't think that's the way to go. One of the most important aspect
> of our efforts has been the generality of solutions. Apt-cross has its
> limitations but there is nothing wrong at all with the concept of
> automatically satisfying cross- and tool- deps in the general case.
> Hopefully we can soon migrate to using apt-ma-emu to do the same job,
> but much better.
> Having to make (and thus maintain) a manual list for each package you
> want to cross build is a major retrograde step.

I'll have to see how it goes. apt-cross is fine for a limited set of
packages - generally those that are low-level enough that there are not
many Conflicts: and Provides: chains. One or two conflicting packages
is fine, when things like heimdal involve a Conflict: chain that is
half a dozen links long, apt-cross just cannot cope.

My problem is that some of the packages I'm considering for these Crush
experiments are the very ones that involve this heimdal chain. The
packages depend on packages which depend on packages that depend on a
choice of libfoo or libfoo-heimdal and a few layers further down a
dependency of the top level package conflicts with a dependency of
libfoo-heimdal and the chain has to step back through all those
dependencies and choose the alternative that does NOT involve heimdal.
apt-cross simply cannot negotiate the recursion, tries to install the
heimdal-$arch-cross dependency and everything breaks.

I'm not thinking of taking apt-cross support out of emdebian-tools -
it's more that these Crush experiments will be closer to the original
Crush 1.0 builds in that the builds are not 100% reproducible and not
entirely automated. It's about trying for something rather than having
to wait for the fully automated, fully reproducible,
apt-ma-emu/multiarch method that we want for Crush 3.0 or possibly 4.0.

The point, this time, is that by concentrating on only a few packages I
can make the time to ensure that all the relevant cross dependencies
are available for just those packages without getting into a mess with
apt-cross for those packages where apt-cross simply cannot cope with
installing the full chain.

I had to do this for Crush 1.0 anyway - there was no way GTK could be
built in a clean chroot using Crush 1.0 methods. I had to manually hack
around a temporary chroot without using apt-cross or staging the
install and manually stepping through the dependency issues.


Neil Williams

Attachment: pgplDifrV808K.pgp
Description: PGP signature

Reply to: