uclibc with no os?
Sterling Augustine
sterling at tensilica.com
Mon Sep 26 18:55:27 UTC 2005
I am the original submitter of the libgloss patch. It was pretty
preliminary and much has changed since I submitted it over a year ago,
both on my side and on the uclibc side. As I never heard anything back,
I assumed it was simply a different direction than the project wanted to
go, and I respect that.
On the plus side, the current libgloss-xtensa port passes every
validation suite I've thrown at it. It's also much, much smaller than
newlib, although newlib is an easier port to libgloss than uclibc
is--depending on your time to market vs size trade-off, you might want
to pick newlib instead.
There were two portions that were combined: the xtensa port and the
libgloss port, so you'll have to sort through a lot of that, but neither
was particularly complex. But if you haven't worked with libgloss
before, you'll want to understand what it can and cannot do first.
I haven't kept current with the uclibc source tree, I just update
against the stable releases (99.99% of the day-to-day changes are
irrelevant to libgloss).
There are many changes to the structure of uclibc that should probably
be made before actively supporting any OS other than linux. In
particular, there needs to be a distinction made between the directories
for hardware and the os that is running the os. I solved it by simply
duplicating a bunch of files, but that doesn't seem like a good
long-term strategy. Uclibc also really wants linux headers to be around,
so I had to provide a fake set. This part should be abstracted away some
how, but that would be a lot of work, and would probably destabilize the
linux side unless someone who knows a lot more than me were to integrate it.
There was also a fair amount of makefile hacking to support building
outside of the source tree and our local build system.
In any event, I would be happy to resubmit a somewhat more mature patch
against 0.9.27 if anyone wants a look. A huge amount of work would have
to happen for it to be integrated into cvs.
Sterling
More information about the uClibc
mailing list