GCC 4.2.1 Released
larry bagina writes "GCC 4.2.1 was released 4 days ago. Although this minor update would otherwise be insignificant, it will be the final GPL v2 release; all future releases will be GPL v3. Some key contributors are grumbling over this change and have privately discussed a fork to stay as GPL v2. The last time GCC forked (EGCS), the FSF conceded defeat. How will the FSF/GNU handle the GPL 3 revolt?"
How will the FSF/GNU handle the GPL 3 revolt?
by not shoveling GPL3 down our throats?
Who is opposing the transition to GPLv3 and why?
I'm very interested in everything Free Software, and have been following developments around GPLv3 and its adoption rather closely. Apart from some flaimbaits proclaiming how $CORP was going to abandon GCC (or anything else) after going for v3 of GPL, there is no evidence whatsoever supporting that this might actually be considered by anyone important - or in case there is, it wasn't visible enough for me to spot it.
So, user number 561269, would you please elaborate on the subject and cite any credible source supporting your view that a major contributor to GCC is considering to fork and "have it their way"? Your posting thoroughly lacks that kind of information right now, and therefore I think it deserves being tagged bogus or useless.
Thanks in advance for clearing this up.
- c0l0
(who's growing tired of all this anti-GPLv3-FUD swellig so much recently fast)
:%s/Open Source/Free Software/g
YTARY!
If the GPL v3 objections are real and widespread, then the GPL v2 forks will survive.
If the GPL v2 objections are unfounded or astroturfing, then the GPL v2 forks will die.
I think the grumbling will blow over; I don't see any serious problems with the GPL v3. In fact, the fact that GPL v3 is compatible with more open source licenses seems like a big advantage.
People that use a Linux distro that is newly encumbered by Microsoft patent agreements *cough*Linspire*cough* cannot use the compilers for development anyway. What does the actual GPL version matter to the users in that situation?
I am certainly not a lawyer, but MS has a ton of lawyers that seem to have become experts in the GPL arena and they seem to have little fear of GPL v2, but v3 seems to have them concerned. It seems that if developers want to stick with v2, then they may as well go all the way to the FreeBSD license. v3 is the future of free and open source projects that want to remain free in both senses until MS gets brave enough to sue over some vague patents. But if they can get enough partners like Linspire and Novell, they will have crippled much of the spirit that drives opensource. I plan on supporting companies that are standing up to the MS bullying in whatever ways I can.
Kindness is the language which the deaf can hear and the blind can see. - Mark Twain
I'm a single-person software business, I don't hold any patents, I release by far a majority of my code under the BSD revised licence.
I -do- however have a portion of code that I keep locked up for a commercial application, if I start using a GPL v3 GCC will I be putting myself into peril?
Incidently, I'm not in the US, but well... sort of, I'm in Australia, which is almost as good as another US state *sigh*.
Since the advent of OS X Apple have made some not insignifacnt contributions to gcc as I'm sure IBM, Sun, HP, etc. have but Apple are to my knowledge to _only_ top tier hardware vendor that relies upon gcc as the core of its' OS build system.
Anyone care to speculate on how Apple might react to gcc going GPL3, perhaps they may actually fork it themselves...
I'm in the vfx industry and over the years I've picked up programming plugins for the applications I use. Now I don't use other peoples code because frankly I'm just doing math calculations and using the internals of the applications they are being coded for.
That being said all this GPL3, tivo this tivo that stuff is confusing the hell out of me. I release my plugins free to anyone using the applications they are designed for, I don't however release the source code. You can call me lazy all you want and generally I will agree you are correct, but this license mine field that I have to worry about when making my plugins on Linux is getting annoying to say the least. I work long enough days making the stuff you see on tv and the movies look pretty so I don't have time to go following up on all this license news.
Fault Windows all you want but the worries you have with licenses on Windows is slightly less then Linux, notice I SLIGHTLY easier. I'm halfway tempted to switch my development to a Mac and dump my Linux support to not worry about it ever again. This is pretty sad since I ENJOY Linux, I've been running nothing but Linux the past 5 years. I have better things to do then worry "Opps, shit did I link with something that requires I release the source".
Like I have said in all my previous posts I like Linux, I like it a lot, but I'm sorry to say I don't view the FSF as the best people representing Linux. This is just my very small insignificant opinion and I have no problem with others disagreeing, if things keep going the way they are though I might just have to start looking at another platform. And no I don't say this because I think people care whether I use linux or not, I say it because I DONT WANT TO USE ANYTHING ELSE.
It's worth noting that the linked to article actually contains nothing about GCC developers complaining about GPLv3.
Please help publicise swpat.org - the software patents wiki
Well, a trick involving gcc has been used to work around the GPL in the past. The trick is this:
main.c:
#include stuff
#__INSERT__REAL__CODE__HERE
main(){
call_real_code();
exit 0;
}
The compiler is then hacked to insert the actual code which does the work where it sees #__INSERT__REAL__CODE__HERE, but this version of the compiler is never distributed.
Voila! You can distribute the above file under GPL and it doesn't do someone who wants to modify the code any good because they need your hacked version of the compiler. But you never distributed the compiler, so you're not obliged to distribute the changes you made.
I'm not sure this technique would be affected by GPLv3. You could still reveal "this is how you change the hardware to load any image rather than just the one we distribute" without revealing what your code actually was.
The state of GCC quite sad, actually. It is looking more and more like an academic playground for compiler ideas. Now, academic playgrounds are fine, but GCC is the Free Software compiler and the most important compiler for almost all of Linux, LAMP stacks, Samba, FreeBSD, etc..
i son.html
:(
GCC performance hasn't improved in years. You don't have to believe me for it, just check the GCC developers own performance tracking:
https://vmakarov.108.redhat.com/nonav/spec/compar
Essentially, it says that GCC has gotten slower at compiling and the generated code is no faster. Quite a sad result given the amount of contributors and large "improvements" that are constatly made.
What did improve is standard compliance. GCC is very good there now. But so are the latest Microsoft and Intel compilers. And they *do* generate faster code in newer versions.
Essentially, if this situation keeps going on, Free Software will have to cope with a growing disadvantage compared to Windows, just because its compiler is stagnating. That's quite sad.
The only glimmer of hope is that nowdays many optimizations aren't turned on at -O2 because they're so slow. Maybe those can turn the tide somewhat. But if you look at a Linux installation, -O2 is still the most used flag. And the situation is sad
I maintain a more or less portable OSS project (uSTL - an STL implementation) and I have had to make at least a few changes for each compiler release. Sometimes it happens due to new warnings that catch potential bugs I didn't know about. Sometimes it is due to policy changes (like the stricter aliasing rules in gcc 4), and sometimes there are new features I want to take advantage of.
Since I am strongly opposed to GPLv3 and anything that uses it, I am not going to upgrade my gcc any further than 4.2.1, which I'll probably do today. This means that uSTL, and my other five projects on SourceForge, may have problems compiling on later gcc releases, even though I will not intentionally put any incompatibilities in my code. Not being able to predict the future, I don't know whether these problems would be minor ones or major ones, but I do know that unless they expose some fundamental problem with my code, I will reject any bugs related to them and state explicitly that any gcc > 4.2.1 is not supported and never will be.
Now, you probably wouldn't care about this. After all, I only had a few thousand downloads - a minute fraction of the developers in the world. And you might say "oh, who needs this guy's code anyway?" But I have a feeling I'm not the only one, and I do occasionally contribute to projects other than my own. Perhaps you don't care if you lose my skills and the skills of all those other developers, but I suspect that they do all add up to quite a bit, and while you might not notice it at first, the GPLv3 camp might get lonelier and emptier as time passes.
I read the GCC mailing list. I haven't heard or seen any grumbling. Nothing I'd call significant. The most grumbling I've read is on how to deal with the branching and labeling/versioning which always seems to be a GCC issue; it's a major release number with no new features, when major release number imply new features... Read this. There are closed branches of GCC, ones that vendors may add custom support for their hardware to, stuff like that, those people will have to change things. There was some discussion about how you license patches, purely an academic discussion on licensing though. Like I said, I haven't seen any grumbling and it simply doesn't affect end-users.
I also read LKML and I don't think that that is terribly significant, Linus brings up some points that seem to go un-addressed elsewhere. There is also some disagreement about how something like Linux goes through the process of being recopyrighted, you see there are people that are dead that have contributed large amounts of code. With Linux in particular, nobody was requested to re-assign their copyright to anyone like they are with GCC and a lot GNU projects. Really the only serious disagreement I've seen anywhere is from companies that exploit free software and are worried that they might have to share their substandard source code or rewrite the free components that make up the heart of their applications. Some of the hacks from the magazines are trying to stir the pot a little but that's it. It's unfortunate, some of the folks that really benefit the most from free software, folks that have products that exist because free software makes it possible for them to afford to make software, are now trying to attack and undermine the very software they depend upon.
Yes, but you don't need GCC at all in order to use LLVM to compile all the way from source to binary, once you have a new front-end. Now that Apple has such a front-end for the languages they use (and one which, from early benchmarks, performs significantly better than GCC), I see GCC's days as being numbered at Apple. Add to that the fact that there is certainly no consensus on GPLv3 yet, and GCC could easily deprecate its popularity by jumping to GPLv3.
E pluribus unum
Anything you compile with GCC can be under any license; GCC doesn't force stuff to be under e.g. GPL. Thus, the license of GCC isn't really an issue.
...)? LGPLv3 is incompatible with GPLv2-only. I wonder if distros will be able to ship both LGPLv3-glibc and GPLv2-only apps linking against glibc in binary form.
In contrast, if glibc some day moves to LGPLv3, what will happen to GPLv2-only applications and libraries (git, Qt, MySQL,
Not trolling here, but what's to keep somebody from coming up with a license called GNU Public License v4, defining their own wicked terms along with it, and picking up all the GNU software with the "or later" clause in it?
Does the FSF have the trademark on GNU Public License? What is the third party called it something else, but declared it to be a newer version of the GNU Public License?
I got it from here (PDF). While they call "obsoleting GCC" a "non-goal", it's almost certainly a goal of other folks that the FSF has targeted, such as TiVo, and therefore I could see people using Apple's work as a starting point.
E pluribus unum
It's no surprise that the C++ faithful see everything through C++ tinted glasses, but gcc is VASTLY broader than C++ alone, and tying it to a LLVM backend would compromise the project badly in its broader role.
Huh? Are you implying that LLVM only compiles C++ code? GCC is written in C, can it only compile C code?
LLVM currently handles C, C++ and Objective-C (on OSX only) quite well, though with a bit of work on llvm-gcc it could easily handle Ada (Duncan from AdaCore is working on this), Java and Fortran. LLVM is also used to compile the OpenGL shader language, both by Apple internally and in a branch in Mesa. There's also a working llvm-qemu prototype using LLVM's JIT.
GCC isn't nearly as broad as LLVM. GCC is a compiler. LLVM is a compiler toolkit, JIT, static analysis and dynamic analysis framework, an instruction set, and a compile-time link-time and run-time optimizer. By contrast, GCC supports more languages in and produces code for more backends out. The difference is that LLVM can grow new front-ends and back-ends, but GCC can't grow LLVM's features.