uclibc libgloss patch
sterling at tensilica.com
Mon Jan 23 22:57:36 UTC 2006
Tony Wu wrote:
> Do you have any update on the libgloss issue ?
Enclosed is a (rather large) patch of all our changes that we did to get
uclibc running on libgloss. It against 0.9.27 with a small amount of
stuff holding over from 0.9.26.
I do not expect it to be checked into the mainline uclibc tree, and it
would probably cause major havoc if it was, as I have not done any
testing to ensure that the linux side still works. (I don't know why it
would fail, but "If it isn't tested, it doesn't work.")
The patch does 3 things. If I had a chance to do it again, I would stage
these things, but I didn't and don't.
1. Adds support for building outside the source tree. These portions
have since been obviated by other uClibc changes, but we haven't pulled
them in yet.
2. Adds support for building to target libgloss.
3. Adds an Xtensa target under libgloss.
In this patch, Xtensa is the only target supported under libgloss.
Adding another should be as simple as adding another target under linux,
or easier if you are copying a target from the linux side. But you'll
have to do that part yourself unless you are building for Xtensa.
Several issues here:
1. Much of libc/sysdeps/linux/* isn't really system dependent. In fact,
the vast majority of libc/sysdeps/libgloss/* is simply a direct copy of
sysdeps/linux/*. If we really want to have uclibc support multiple
operating systems, then most of that directory should be moved to a
directory named libc/internal or something.
2. Much of the bits and sys directories would be duplicates if the
target wanted to support linux and libgloss (today Xtensa only supports
libgloss, so there is no issue here). There should probably be some sort
of architecture (arch) directory for the OS independent portions.
3. Although we are using it just fine, this patch is probably more of a
starting point than an ending point for libgloss support for most
people. It would take a fair amount of work to integrate it into the
latest uclibc stuff, because there have been a lot of changes, the vast
majority of which are not relevant to libgloss environments.
Finally, make sure that libgloss can do all you want it to before you
commit too much time to this project.
I'm happy to answer questions as to what I did and why.
Insert "No warranty, standard disclaimers as to merchantability,
usefulness for a particular purpose and other legalese" here.
Member, Technical Staff
sterling at tensilica.com
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 269701 bytes
Desc: not available
Url : http://lists.busybox.net/pipermail/uclibc/attachments/20060123/40ab3ed6/attachment.bin
More information about the uClibc