On Mon, 29 Mar 2010 12:48:39 +0100 Wookey <woo...@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. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=502433 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 ============= http://www.data-freedom.org/ http://www.linux.codehelp.co.uk/ http://e-mail.is-not-s.ms/
pgpXLIWWlHGLg.pgp
Description: PGP signature