If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.
You can understand that many extensions for LLVM are under GPL (so LLVM will never be complete) right? You can understand that the next GCC will be like LLVM, binary compatible and under GPL right?
One of the big pushes towards LLVM vs GCC is a MUCH cleaner codebase. One that doesnt have what? 20 years? of 'cruft' weird codepaths that no ones really sure what they do anymore or how they ever worked. They ARE working on making the codebase much cleaner but more modular but the devs themselves have even said: if they wanted to get as much modularity as LLVM/Clang has.....page 1, from scratch, rewrite with zero code from the old base.
If you're wondering 'why do you WANT that much modularity?' Simple: IDE's. Gone are the days of pumping c++ into text files with vim / emacs / nano and then you run a straight gcc -o and then test. The name of the game is now IDE's with code parsing, completion, and any other wacky awesome feature to make the programmers life easier as he develops.
FreeBSD and Apple have completely dumped the crap GNU GCC compiler leaving only Linux as the last platform still stuck with GCC.
Just look at the amazing explosion in tools and compiler/language tools and innovation Clang/LLVM have enabled shows just what a massive cancer the GPL and it's shit ideology crippled open source compiler development.
Debian Linux is ensuring LLVM/Clang 3.x is current and works towards making all projects build completely with it.
As a longtime member of the GCC community, I can assure everyone that the above is simply horsesh*t.
The definition of the extensions is obviously not under GPL.
LLVM is a portable compiler suite. Uses front-ends to understand various languages as sources and compiles them to a virtual machine target, then uses back-ends to dynamic final-compile data, targeting a specific instruction set. This portability will come to all survive compiler suites on the future, including a GPL suit like a GCC6 (metaphor). Now if i want to write an extension for LLVM, i will do it under GPL in order to use it with a future GPL portable compiler suite. For example if i have a new software rasterizer that can use GPU shaders and CPUs at the same time, i will make it GPL even if it is for LLVM.
As for BSD, its a fair exchange. A developer gives openly a main program that is a gain for every one, wile hobbyists they contribute sub-programs that is a gain for everyone and mainly for the developer. So if BSD developers they want to gain something back, i don't understand why hobbyists must not have the same right. That is what GPL offers to us and i don't understand the hate. BSD also has a gap (the compatibility gap). So a future Apple-LLVM may be not compatible with the BSD LLVM, or they can make closed source the entire project. At the end any hate comments are ridiculous not because of hate but because of the inevitable. No closed source developer will go more than BSD and no hobbyist will abandon GPL. So comment that is not going to change not even one person, is better not to be written.