Unable to use OM build system

Andy Green andy at openmoko.com
Sun Apr 20 10:20:25 CEST 2008


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Somebody in the thread at some point said:
| Dnia Saturday 19 of April 2008, Andy Green napisał:
|> But I KNOW that I can cross-compile DM2 on this machine if I did it by
|> hand, since I use John Lee's toolchain.  I just needed some target-arch
|> libs to link against is all.  So I would characterize these 1000
|> actions, many of the host-arch builds of stuff I already have, as
|> remarkable bloat considering the minimum it actually needed to do for
|> what I needed.
|
| So you need to get someone from Openmoko to prepare toolchain which will
| work as 'external-toolchain' (using OE terminology) so Your next build
| will do not have to build many components.
|
| This should be possible with current OE and such toolchain can contain
any
| set of packages so amount of 'required-to-build' ones will be low.
|
| It is possible -- you just need someone familiar with OE to provide you
| tool.

I think it is possible to get to this package-centric build future, but
I only believe that because Richard Purdie says he is creating the new
functionality in OE to cope with it (and knew exactly what I was on
about when I first mentioned it).  There's a major issue I describe
below that needs dealing with to make it all work as something better
than a hack.

Currently the toolchain tarball (a giant leap in the right direction)
has some canned libs and includes in it that are kind of fixed.  As
packages get upleveled in the real distro it will start to lose
coherence with whatever was in the toolchain tarball when you got it.
What is needed is host-side target package management, running opkg on
the host to manage target packages in a chroot or similiar.  That way if
I work on patching a lib, maybe adding APIs, after I cook it for target
I take care to upgrade-install it on the host chroot: and then when I
build packages that link to it, everything works out with the latest lib
API.  (Plus having a package manager look after that chroot, we can do
things like resolve build dependencies automatically by adding the
necessary packages and any -dev from a repo).  If I understood it, this
is what Richard will be adding to OE.

But when I ask are we going to take this on, this is a big philosophical
change and so it is a real question to ponder.  At the moment our distro
is more Gentoo than anything else and devs accept to sit there watching
extremely large builds all over the place including host packages, and I
seriously doubt most devs feel in control of what bitbake is doing.
It's just "magic".  Part of this package-centric build concept is we
basically disallow "GentoOE" from messing with our host packages and we
put the dev directly in control of build actions.  If some package
versions specified by OE/OM cannot deal with modern build tools, there
will have to be a round of fixing breakage associated with this change.

- -Andy
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org

iEYEARECAAYFAkgK/MMACgkQOjLpvpq7dMpboQCfbwOAcpLks0YIry0fn9Ra3DjJ
ujUAn1qnBylBxrPadhlqb68xQ//5bRr/
=v479
-----END PGP SIGNATURE-----



More information about the distro-devel mailing list