[oe] gcc Recipes
Richard Purdie
rpurdie at rpsys.net
Wed Mar 31 11:28:01 UTC 2010
I've just been looking over OE's gcc recipes and they really depress
me :(. People touch them just enough to tweak their specific problem
with no real thought going into the overall architecture and its a
sprawling mess. I tackled some of this a while back. Sadly its just
getting worse again.
I've spent some time looking at them trying to identify what I consider
to be the main sources of ugliness and how we can try and improve the
situation. I think it might help to set a high level goal for the gcc
recipes which would be:
All configuration for a given gcc version should be contained
within the high level version specific .inc file(gcc-X.Y.Z.inc).
We'd therefore be frowning on version specific hacks in say the cross
recipes only.
It would follow that there would be a clear set of include files and a
clear include structure and that almost all of the variant gcc recipes
(gcc-cross-initial, gcc-cross-intermediate, gcc-cross-kernel,
gcc-cross-sdk, gcc) would be boilerplate includes.
Note that information about flags for the cross builds can be included
in the main common version specific include file.
To illustrate the kind of thing I mean, have a look at this commit:
http://git.openembedded.net/cgit.cgi/openembedded/commit/?h=rpurdie/work-in-progress&id=35481122d7e484fb740ad9440fb4c70cb01de48f
The nice thing about this is all of a sudden we have all the flags in
the same place and it becomes obvious if something is wrong. There are a
few things that raise an eyebrow there. It also becomes easier to
abstract some of the gcc-X.Y.Z.inc data into a common include file
(maybe a gcc-4.3.X.inc for example).
Does anyone else fancy helping trying to clean this mess up. I'm happy
to review some cleanup patches?
Cheers,
Richard
More information about the Openembedded-devel
mailing list