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 devel
mailing list