Fedora and Cross Compiling

Hans de Goede j.w.r.degoede at hhs.nl
Wed Jun 13 07:13:33 UTC 2007


Andy Green wrote:
> Ralf Corsepius wrote:
>> On Wed, 2007-06-13 at 00:25 -0600, Brendan Conoboy wrote:
>>> David Woodhouse wrote:
>>>> Do we _actually_ need to build parts of glibc? Could we not get away
>>>> with a fake DSO which just provides the few symbols libgcc uses?
>>> [snip]
>>>
>>> Will follow up on this part tomorrow.  I disfavor faking it, as it were.
>>>
>>>> Binutils at least should be relatively easy. Here's a patch against
>>>> binutils/F-7 which lets me:
>>>>   make DIST_DEFINES='--define "binutils_target i686-linux-gnu"' ppc
>>>>
>>>> Even for this we have build system questions... how best to build it for
>>>> each target architecture we want?
>>> Generally, I think Hans and the rest at 
>>> http://fedoraproject.org/wiki/SIGs/Embedded have the right idea here. 
>>> Prefixing the target name to the package is a good plan for most 
>>> crosses.  More fully, I see 3 options:
>>>
>>> 1.  One srpm to rule them all.  This seems like a bad idea as it doesn't 
>>> scale.
>> Right, it doesn't. You'd end up with a monsterous spec cluttered with
>> cases and many (unused) patches, because different vendors apply
>> different patch sets.
> 
> Yet if you can put the clutter issue aside, this is definitely the Holy
> Grail.  The spec file is the single point at which the uncontrolled
> variance of the raw tarballs are smoothed into a normalized Fedora package.
> 
> Having multiple specs is going to lead to duplication of information and
> loss of coherence when changes are made.
> 
> How about... a single Holy Spec, exactly what Fedora has right now, but
> which gets dynamically pre-patched if there is stuff needed for cross on
> a particular package that can't be hidden in the rpmmacros?  The set of
> arch spec patches lives in the SRPM like the other patches.  This:
> 
>  - keeps a single Fedora basic spec
>  - allows non-cross folks to totally ignore the existence of cross if
> they like
>  - allows maintainability
>  - visibility of what is done for per-arch cross
> 

One single spec might be an idea for Fedora-Fedora cross packages, but it is 
not the answer for Fedora-Other (Embedded) OS target.

For example the gp2x sdk uses binutils 2.16.1 and glibc 2.3.5, so I don't think 
stuffing this into the main Fedora binutils and glibc specs is a good idea.

Regards,

Hans





More information about the fedora-devel-list mailing list