Opened 17 years ago
Last modified 2 years ago
#1907 new enhancement
Replace GNU C library and utilities with BSD-licensed equivalents
Reported by: | jonas.kirilla | Owned by: | nobody |
---|---|---|---|
Priority: | low | Milestone: | R2 |
Component: | System/libroot.so | Version: | |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
Not that this is strictly necessary but it would lessen the GPL footprint in Haiku and could lead to more cooperation with the BSDs.
This could be a GSoC project.
Change History (18)
comment:1 by , 17 years ago
comment:3 by , 17 years ago
If there is a high quality libc and full userland with a license which has synergy with that of core parts of Haiku it seems logical to at least not shut the door completely, even though it may not seem practical right now. I know that it's perfectly okay to run GPL software on Haiku and to integrate LGPL code. But, FWIW, if the GPL parts were BSD-licensed it would be less problematic to reuse that code elsewhere.
comment:4 by , 16 years ago
Perhaps this one should be moved to low priority and bumped from the hrev1 milestone? Might even be an ok one to move over to HaikuPorts even.
comment:5 by , 16 years ago
Milestone: | R1 → Unscheduled |
---|---|
Priority: | normal → low |
comment:6 by , 15 years ago
Owner: | changed from | to
---|---|
Version: | R1/pre-alpha1 |
comment:7 by , 12 years ago
Libc++ seems like an obvious choice for a glibc replacement. Part of clang. MIT licensed. http://libcxx.llvm.org/ maybe for R2
comment:8 by , 12 years ago
jscipione, irrelevant, Libc++ isn't a C lib but a C++ lib like libstdc++.
comment:9 by , 12 years ago
We would need to use the BSD libc. This was previously discussed on the dev-list.
comment:10 by , 6 years ago
Milestone: | Unscheduled → R2 |
---|
musl is a better candidate, for a variety of reasons. And only for libio, wchar, libmath really; we have our own code for pthreads, etc.
comment:11 by , 6 years ago
It seems that the FreeBSD libc is actually lacking in some respects: https://twitter.com/dimpase/status/1119688292734312448
comment:12 by , 6 years ago
That tweet says "this was fixed in FreeBSD 12", so?
And there is also a separate rant about lack of fortran support, which in the next tweets is also shown to be incorrect...
If you have actual bugreports against FreeBSD libraries, fine. But random twitter rants?
Also, musl being better "for a variety of reasons" is not helpful. If you have made a study, please share your results, you will get more support and agreement than by using authority arguments.
It seems aljen had already done the work on switching to a FreeBSD C library back in 2009, it's unfortunate that his patch seems to now be offline.
comment:13 by , 3 years ago
Note that libgcc_s.so is currently a part of ABI. It is directly imported by applications that use exceptions, has symbol versions with GNU in naming. libgcc_s.so can't coexist with alternative implementations because it maintains global list of eh_frame registrations (information for exception handling for specific dynamically-loadable module).
comment:14 by , 3 years ago
It has C library of HelenOS, it is permissive license.
https://github.com/HelenOS/helenos/tree/master/uspace/lib/c
https://github.com/HelenOS/helenos/tree/master/uspace/lib/posix
Here documentation:
http://www.helenos.org/wiki/StandardAPI
http://www.helenos.org/wiki/PortingSoftware
FreeBSD solves the libgcc issue in this implementation:
comment:15 by , 3 years ago
FreeBSD solves the libgcc issue in this implementation:
Interesting. It may help with RISC-V port exceptions problem.
comment:16 by , 3 years ago
Permissive license alternatives to glibc, coreutils, gnu-bc.
https://github.com/managarm/mlibc
The GNU C library is licensed under the LGPL. I personally don't mind GPL utilities at all; and IMO we shouldn't decide by license, but by code quality.
Also, I don't think this would be a good GSoC project for now, as it doesn't advance the project in any way.