> 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.