2010/3/31 Richard Purdie <[email protected]>: > 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 > >
Richard, I share your feeling of discomfort and depression. Personally I feel cleaning up should start with removing obsolete & unneeded versions as it is pointless spending time on improving them. I've tried to stir up the discussion on cleaning up a few times, and gave up due to too much negative feedback and little positive feedback. But still I wonder what is e.g. the use of recipes like 4.1.1 (which btw was released in may 2006). Having said that: I've looked at your commit. Looks fine to me so a +1 & thumbs up. Frans. PS: not sure about all the variants, but it might be nice to be able to use something like BBCLASSEXTEND="cross". Don't think my pythonese and knowledge of the gcc build system is good enough to cook up something though. _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
