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

  • From: scott mc <scottmc2@xxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Fri, 27 Feb 2009 03:07:36 +0000

On Fri, Feb 27, 2009 at 3:02 AM, Artur Wyszynski <aljen-mlists@xxxxxxx> wrote:
> 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.
> 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 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.
>
> Current status:
> * old libroot is moved from src/system/libroot to
> src/system/libroot/compatibility and gcc2 builds it from there
> * new libroot is now in src/system/libroot
> * headers/posix is moved to headers/compatibility/beos/posix and they are
> used in buildtools scripts to instruct gcc2
> where headers are and in build/jam/HeadersRules where they are when building
> Haiku
> * new posix headers are in headers/posix
>
> Tested configurations (currently i only tested x86 arch, others are propably
> broken for gcc4 with this patch):
> * plain gcc2 build, you can still do it by ./configure --build-cross-tools
> ../buildtools; jam haiku-image and it will build
> old glibc based libroot and nothing is changed here, no binary comp break
> * gcc4 build, nothing changed in here, except that current binaries built
> for gcc4 won't work, they need to be rebuilt
> * gcc4 build with gcc2 alternative libraries, worked as expected, system is
> gcc4 with new libroot/libc, and you can still use beos applications, no
> binary break for gcc2
> * gcc2 build with gcc4 alternative, same as above, but vice versa :)
>
> 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)
> * gui is more responsible, i think it's because new sun math library
>
> Things that yet to be fixed:
> * on gcc4 build, letter 'q' appears randomly on screen, no mather is it
> terminal or you're editing filename in tracker (don't know the reason
> for that yet)
> * headers/os/support/Errors.h: posix error codes are messed and i need
> to revert them to old ones + add new from libc
>
> Patch for trunk:
> http://hitomi.pl/haiku/patches/libc_final.patch (12MB)
> or 7ziped
> http://hitomi.pl/haiku/patches/libc_final.patch.7z (1.4MB)
>
> Patch for buildtools:
> http://hitomi.pl/haiku/patches/libc_buildtools.patch
>
> I think that's all for now, i'm waiting for your comments :)
>
> regards, aljen
>
>
>

Maybe you can see if the IEEE754 issue is cleared up by your changes:
http://dev.haiku-os.org/ticket/3308
There's links to a test program in the ticket comments
-scottmc

Other related posts: