This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: uClibc support


On Tue, Sep 07, 2004 at 08:59:09PM +0200, Thomas Petazzoni wrote:
> Hello,
> 
> On Tue, Sep 07, 2004 at 10:33:09AM -0700, Carl Miller wrote :
> > Hi, Thomas.  Yes, the plan is for crosstool eventually to officially
> > support uClibc.  Dan would like to make an official release of 0.28
> > first, and make uClibc support the first major feature added post-0.28.
> > This works OK for me, as I'm currently swamped under other projects,
> > and I wrote the crosstool-uClibc patch.  I still intend to rewrite the
> > crosstool-uClibc patch for 0.28-release once it's out, and if I can
> > squeeze the time, also for newer versions of uClibc (the patch against
> > -rc5 only handles uClibc-0.9.23, which is nigh on a year old).  If I
> > can convince the bosses at work that Linux/GNU workstations and gcc/uClibc
> > tools are right for the next project we'll be starting early next year,
> > then I'll be able to get to things quicker.  If not, this will all be
> > spare time stuff for me, and a bit of help would certainly be welcome.
> 
> Thanks for these informations.
> 
> How hard would it be to make crosstools-0.28-rc35 support recent
> versions of uClibc ? I've looked at your patch againt
> crosstools-0.28-rc5 but it looks really huge, specifically the included
> patch against binutils-2.14.
> 
> What needs to be done ?

Sorry to take so long to reply, Thomas.  The uClibc-crosstool patch is
really four patches in one.  Specifically, it patches:
   crosstool, to remove the assumption that glibc is the only C library
      that can be built, and add the necessary rules to build uClibc as
      an alternative
   binutils, to teach it about *-*-linux-uclibc targets
   gcc, to teach it about *-*-linux-uclibc targets, to add the uClibc
      to libstdc++-v3 glue code so C++ libraries compile cleanly against
      uClibc, and to incorporate the specs file tweaks uClibc wants
   uClibc, to give its Makefiles the ability to build objects in a
      directory other than the source directory (which is a feature
      required by crosstool and absent from stock uClibc)

If you want to freshen up the patch, I'd suggest start with two
independent copies of 0.28-rc5 and apply the patch to one of them.
That will dump the binutils, gcc, and uClibc patches into the patches/*
directories of that one, as appropriate.  Those you shouldn't need to
change unless you want to go with newer versions of binutils, gcc, or
uClibc.  Copy those patches to the corresponding patches/* directories
of your clean 0.28-rc5, and then rediff the two trees.  Now you've got
just the crosstool patch.  Beyond that, I don't think there are any
simple instructions.  You'll have to understand what the patch is
trying to do, see how crosstool has changed since the patch was written,
and figure out how to make the corresponding change in the current
version of crosstool.  But at least now you'll have a more manageable
patch to look at and understand.  And you'll have two parallel trees,
one pre-patch, one post-, so you can look at the origin and the result
whenever the patch file itself seems too confusing.

That's how I plan on starting when I get around to it, anyway.  HTH.


                           -----Carl

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]