[haiku-development] Re: [PATCH] libroot improvements

  • From: "François Revol" <revol@xxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Fri, 27 Feb 2009 17:43:02 +0100 CET

> Hey,
> while i was trying to port Chrome to Haiku, i came across a problem
> with
> broken/missing wide chars support
> (Chrome is using them everywhere), looking at current libroot status
> i
> noticed a mix composed by different
> versions of glibc with some features enabled/disabled and some ports
> of
> bsd code there.

For having done the same to ZETA I know it's a hell of a work.
I'm not actually sure it's that needed though, even if our glibc is
quite dated.

> Then i removed completly glibc and friends mixes from libroot and
> started porting libc and Sun math library from FreeBSD.
> Now it's working as expected, with full posix support (even c99),
> wide

Hmm did you make sure it doesn't imply errno > 0 ?
C99 mandates that (at least some part of it, other parts being less
consistent), and we violate it, so things like return -EFOO need to be
looked after.

> chars enabled, support for locales, etc.
> Don't worry, it won't break binary compatibility, because it's ported
> &
> enabled only for gcc4 build, gcc2 is still using old
> libroot+glibc&friends.

I'm wondering how that impacts headers and the rest...

> Things noticed by me (and not only, thx for testing guys :P):
> * system is noticable faster compared to other builds, i mean gui and
> boot; for virtual box on my machine (dont know how others and i
> didn't
> tested this on real hardware yet) boot time was decrased from 24-26
> seconds to 14 (don't know the reason)

Are you sure stuff like stdio are made threadsafe as with glibc ?
Also, how does BSD libc handle threading/cancelation points/... ?

> * gui is more responsible, i think it's because new sun math library

But is it less buggy ? :p

François.

Other related posts: