Re:QNX is now free for anything non-commercial, plus there's...
by f1shy on Friday November 08, 2024 @01:54AM
(#42084775)
They could have very well used lots or reusable parts of GCC. It was possible, and were many projects trying to change GCC.
Re:QNX is now free for anything non-commercial, plus there's...
by baq on Friday November 08, 2024 @04:22AM
(#42085514)
gcc was specifically designed to not have many reusable parts to avoid people ripping them out. modularity only happened after LLVM and clang specifically started eating its lunch.
Re:QNX is now free for anything non-commercial, plus there's...
by Y_Y on Friday November 08, 2024 @04:56AM
(#42085658)
> LLVM and clang specifically started eating its lunch
I don't know how you can eat GCC's lunch. I feel like in this analogy GCC eats from a communal trough and is very happy to share. A company that sells licenses can lose customers, the GNU project just wants the world to benefit. GCC is still ubiquitous and has plenty of developers and mindshare, what more could they want?
Re:QNX is now free for anything non-commercial, plus there's...
by pjmlp on Friday November 08, 2024 @07:08AM
(#42086227)
Basically most of the embedded folks that used GCC forks are now on clang, and if in the old days they were breaching GPL, nowadays they are fully compilant, so not upstreaming is not even a legal issue any longer.
Re:QNX is now free for anything non-commercial, plus there's...
by Y_Y on Friday November 08, 2024 @07:20AM
(#42086291)
Fair enough. I guess you're talking about microcontrollers rather than lightweight CPUs, at least in my experience it's still standard to use GCC on the sort of dinky ARM-based devices my company produces.
I'll note that GPL never says anything about upstreaming. It can certainly make life easier if you want to keep your patches up to date and hand off maintenance responsibility, but it suffices to make a written offer of source code under the same license (on a conventional medium) to your customers to comply with any GPL version. You're never obliged to upstream or even publish your code.
The license angle with Apple did happen because of GCC's switch to GPLv3 but that came years later - and GCC still wasn't (and AFAIK still isn't) designed to be used like LLVM or (later) Clang, like using it as a backend for IDEs, analyzers, language servers, etc. The two projects aren't interchangeable with only the license being the thing that differentiates them.