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?
...of a fork for a large and well known project like GCC can definitely shake things up. All the people involved just need to remember that if they do fork GCC, they've got a lot of work to do. I'm not saying it shouldn't be done, but some people just whine about licenses, threaten to fork, and hope for the developers to hear their cry. I hate to say it, but GCC under GPLv3 is coming, and no amount of whining will change that.
"You're awefully cute, but unfortunately for you, you're made of meat."
IMHO, dual licensed (GPL 2 + GPL 3) is the way to go for a time, while things shake out in the world of free software. Of course GCC, as a FSF project wants to lead the way to a GPL 3 future. However, I think projects would be wise to require contributions as >=GPL2, and release their software as either >=GPL2 or dual-licensed. The latter is what I'm doing to do in the next release of my own work; I don't really want to take sides, and will let competition sort out which license becomes popular. I won't accept outside contributions that are GPL3 only, which is the only thing that might annoy some developers.
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!
Once more, Slashdot's editors demonstrate that they are here solely for adviews and not to provide "news for nerds" or "stuff that matters". The ECGS fork will be nothing like the current fork. ECGS was forked for technical/organisational reasons: GCC was being developed much like a closed-source program with a free licence, which resulted in a stagnating compiler and unhappy would-be contributors. ECGS should the superiority of the "bazaar"/open-source development method of the "cathedral"/closed-source method in this particular context. All of this is well-known information you can find just about anywhere on the web.
Given that GCC development will remain open, this fork cannot be compared. On the other hand, we do have another situation that might be considered similar: The X.org/XFree86 fork. XFree86 was developed under a free software licence, but with 4.4 this was changed to a non-free licence. X.org forked the most recent free version and has basically completely replaced XFree86.
But, of course, this is still not perfectly comparable. XFree86 was using a relatively closed development method, and the X.org fork's more open style saw it rejuvinated: And indeed, this was part of the purpose of the fork. A GPLv2 GCC fork will not see this sort of rejuvination, as GCC has already seen the benefit for it of an open method, and continues to use it. (See: The EGCS fork the article poster referred to.)
In addition, the XFree86 licence was widely regarded as being non-free and some major distributions (e.g. Debian, Fedora) considered it completely inappropriate for inclusion. It was made unilaterally without discussion without relevant stakeholders. The GPLv3, however, has had public draft releases and discussion including many major distributors and producers of free software. Although it removes certain freedoms distributors had with GPLv2 (which, largely, went completely against the spirit of the GPLv2), the GPLv3 has the agreement of the people needed to make it work. There will be basically top-down push for adoption as there was with XFree86/X.org.
My prediction: Any GPLv2 fork of GCC will be largely forgotten in a year or two.
Look out!
Smells like FUD.
The use of weasel words, speculation of "private discussions" (how would one in the public know the content of a private discussion without being a part of it himself?) and the use of the textbook definition of straw man by bringing up the unrelated fact that one fork have been successful in the past and implying that, because of that, one "revolt" is imminent, is nothing by an ill flamebait, in order to generate controversy and the unavoidable licensing flamewar that it will certainly ensue.
This is sad because Slashdot used to be a place where, when a new version of software were posted, the discussion were directed to the changelog and the new features, fixed bugs, and this particular article didn't even mentioned that. It was a cheap shot at GPLv3, a license that seems to have lots of people that dislikes it, people that aren't even affected by it in the first place. GPL doesn't cover use, only distribution.
Sad, sad, sad, this used to be a cool blog with real "news for nerds" but lately it seems more interested in generating polemic and the page views that accompany it.
DISCLAIMER: Nothing in my post shows any support (or lack of) for any of the mentioned licenses, nor discusses the their merit (or lack of). So keep me out of the flamewar.
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.
To be honest from my reading of the gcc mailing list, most of the complaints seemed to be focused around the fact that the original plan (which was up for discussion at least) was to change the numbering system so they went straight from 4.2.1 to 4.3.3 (lots of 3's to ram the point home of course) which would be confusing to most people (and probably to a few packaging systems as well). With what would be 4.3 going to 4.4.
The big problem is that RMS seems to want all patches put into SVN after July 31st to be GPL3+ no matter what, even on release branches which automatically pollutes them. This then causes problems for corporate users who may then have to wait for a legal department evaluation on the license...
I don't think many people would object if the GPLv3+ restriction was for 4.3/4.4+ really. (well as long as RMS doesn't go mad and revoke the linking exception for libgcc anyway...)
ZoeP
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've not studied the details of GPL v3, but I believe there will no new restrictions of programs built with a v3'd GCC. For example, we can still built our TiVo-ised closed source DRMed patent-encumbered for sale software without fearing the wrath of RMS, or at least no additional rwrath from him.
I follow the GCC list (you know, where all significant contributors hang around), and the only thing I've seen discussed is what should happen to the old branches when GCC goes GPLv3, and if the change should come with a version change. The thread starts here.
Me thinks someone is on crack.
Belief is the currency of delusion.
The only thing that even Linus didn't like about GPLv3 is the anti-tivoization section. Who would ship a devize that is locked down like tivo with gcc?
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...
References? The only grumblings I can see in the GCC mailing lists are about the version number change that accompanies the GPLv3 upgrade. A few developers feel that a license change is not a new feature so the first GPL version should be 4.2.2, not 4.3. And one developer who complains that not allowing backported patches to stay under GPLv2 will be a burdon to companies offering support for older versions (eg Novell, Xandros and Linspire).
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.
I have just looked at the GCC mailing list. There is some discussion how to make the change the best way and what happens to backports. But I have to see now a message, which explicitly states, that he will fork GCC. I think this is overblown.
C'mon. v3 gives more patent protection to developers and it is written in more internationalised language. It's hard to see what people could complain about in terms of GCC.
Please help publicise swpat.org - the software patents wiki
I just read the linked-to email and found no mention of grumbling developers talking about forks.
On what grounds did Slashdot say this is true???
Please help publicise swpat.org - the software patents wiki
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
It's strange that people talk about "the rift" and then link to emails from Januaray while ignoring that since GPLv3 was released last month there've been no rants from Linus.
Please help publicise swpat.org - the software patents wiki
And no one noticed yet that binutils already went to GPLv3?
Jeroen Ruigrok/Asmodai
This article is not about technical issues. As far as I know, there is no significant dissatisfaction in the community about the technical quality of GCC. But asking questions about the legal future of the project is also legitimate.
The article may exaggerate, and you might disregard it as idle speculation
And ultimately, if this leads to a fork it may affect end users as well (compatibility problems between official GCC and the fork?).
C - the footgun of programming languages
The whole EGCS link is also unclear. If I recall correctly, EGCS was a fork to OPTIMISE gcc, not to subvert it.
If it was going to be compatible, it would have to be the exact same license.
One feature of GPL is that it claims that the entire program has to be distributed under whatever terms, with no additional restrictions. So if GPLv3 has less restrictions that GPLv2, v3 code wouldn't be allowed to be distributed under v2. If it had more restrictions, then v2 code wouldn't be allowed to be distributed under v3.
Yes. This is why you should pay attention to what you agree to.
Yeah, the only "spirit" that stays the same between them is the spirit of the FSF. The spirit of a license necessarily must be contained entirely within that license, and the contents of v2 and v3 are very different (from "share and share alike" to "share, and you must share everything").
They asked for people to use the "or any later version" clause specifically so they wouldn't have to do this. Using that clause or not is a judgement call, as to whether you trust the FSF with your license (personally, I don't).
Didn't there used to be a cc at one point distributed under the BSD license? What ever happened to that, anyway?
Cut that out, or I will ship you to Norilsk in a box.
Actually, LLVM is (or was, I'm not sure what the current status is) a candidate for a new middle/backend for GCC.
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.
Obviously many guys are worried about a compiler getting GPL3, they wouldn't be able to modify the compiler and then include the compiler in some tivo like device or whatever GPL3 would make GCC troublesome... Not really getting it, sounds as if some fudders want to call GPL3 dangerous whenever possible...
Copyright infringement is "piracy" in the same way DRM is "consumer rape"
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,
???
They do, right?
You can't take the code, implement new features in it, redistribute it WITHOUT the new stuff also being GPL. That's likely the most annoying restriction to closed software people.
What about all the modems and other hardware that use the Linux kernel and are obliged to include the source code? Definitely a restriction.
These restrictions enable us (other coders) to build upon builders instead of reinventing (and patenting) the wheel, making them good things in our view, but they're still restrictions when compared to the total freedom you have with public domain stuff.
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?
There's two back to back Slashdot articles on the main page. One is on how microsoft is insinuating it's tongs into the Linux ecosystem and setting up a protection racket. Initially companies like linspire and Novel pay the first installment. But then the GPL code you got from Linspire or Novel is now tied to them and not redistributable. That is, and redistribution requires are tithe to MS or they won't transfer the immunity from law suits to the new copy. So that entirely breaks the idea that GPL software it redistributable. It makes one so angry one wants to strike back with the GPL v3 which says if you confer immunity to one then you confer it to all.
But then I think about all these companies that want to create things out of the GPL'd code. These are commercial firms and they need to indemnify their customers that using their products won't expose them to risk. They want to use Linux not BSD but this is going to make them think twice.
The middle ground here is to make sure large parts of the GNU are GPL v2 and LGPL. But if core things like GCC are gong to GPLv3 then it gets weird. Even BSD-dervied works like Apple OSX use GCC.
I don't like it.
Some drink at the fountain of knowledge. Others just gargle.
They removed the ad-skipping because if they didn't, they would have to stop making Tivos.
They couldn't let people add them back in for the same reason. If they wanted to keep making their machines for 99% of people, they had to stop 1% from changing the software on them.
So now they will probably have to stick with GPLv2 code, or switch to something non-linux based. So say goodby to any contributions back to the community they could have made.
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.
Where's EGCS today, then...
you had me at #!
What the ???? step is in
1. Download GPL software
2. ????
3. Profit!
Interested in a Flash-based MAME front end? Visit mame.danzbb.com
Slashdot has always been this way. It's particularly noticeable if your opinions are outside the Slashdot mainstream, such as we few conservatives who have to listen the "Republicans want to eat your babies" stories that inevitably flood the Politics section every election cycle. If you believe that Republicans really do eat babies, you don't notice those stories. If you don't believe it, they stick out like a sore thumb.
This is getting a bit off-topic, but it supports my point: people notice the inflammatory rhetoric when it's their pet belief that's being demonized. Until then, it just hides in the background.
I guess that would mean that it daemonizes. But that's different.
Dewey, what part of this looks like authorities should be involved?
The EGCS fork had one big thing different from this work: time and weight of code. EGCS happened because GCC wasn't being maintained, wasn't being updated to support new CPUs and wasn't accepting contributions. EGCS ran for quite a few years and amassed a considerable volume of code by the time GCC restarted. The FSF "conceded defeat" and merged GCC into EGCS simply because there was too much code that was only in EGCS and it simply wasn't feasible to replicate that many years worth of work. In any GPLv2/GPLv3 fork of GCC, the GPLv2 branch won't have a mass of code and time in existence to give it weight. The GPLv3 branch won't either, but it will have the advantage of the name and recognition as the "official" branch in the community. It'll also be able to use any contributions to the GPLv2 fork that are under v2-or-later license terms, while the v2 fork won't be able to use any contributions to the v3 mainline. Unless the GPLv2 fork attracts a lot of the major GCC contributors and convinces them to change their license to GPLv2-only, I don't see a v2 fork staying viable for long under those circumstances.
The objection is that requiring C++ dramatically increases the bootstrap requirements because now you have to build a bigass C++ compiler just to build any compiler. Whereas if it's written in C you only need a dinky little C compiler, which is small and simple and if not ubiquitous (lots of Unix systems don't come with a compiler... those fuckers!) at least a lot more common than a C++ compiler. It also tends to take a lot more to build the C++ compiler, greatly increasing the bootstrap time, which is annoying.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
Of course the GPL is written for developers. What good is the source code to non-developers? They just recognize that as a developer the right to look at and modify the code you're using is more important than your right as a developer to deny others that ability.
Give me Classic Slashdot or give me death!
Does GCC 4.2.1 generate binaries for the Cell uP? Does it have a way to generate the separate PPC/SPE code to run parallel DSPs with the builtin scheduler? Optimized for the Cell? From the same source code that could run on just the PPC (eg. recompile Linux/PPC OpenGL to Cell for SPE rendering)?
--
make install -not war
I can see new features going GPL3 only. But security and other all-but-mandatory fixes must not impose a license change. For some value-add customers this means they cannot pass on important security fixes to their downstream customers without adopting the GPL 3.
This puts them in a bind: Recreate the security fixes themselves, leave their customers unprotected, or adopt the GPL3. The first is expensive and the third option may not be an option.
Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
You know, I don't think it does. GPL software is still GPL software, even if MS say they probably maybe won't sue you but only if you buy your distro from an approved commercial source. All that happens if you don't follow MS's tacked on terms and conditions is that you lose the promise not to sue unless they really really want to - which was pretty much worthless in the first place.
So the software is just as re-distributable as it was before. Nothing has changed, much as MS might like us to think otherwise.
I suppose it might do - but that's not the way it happened. The GPLv3 was devised as a preventative measure against the day when someone tried to enclose free software using a patent thicket. Microsoft's recent fun and games only arrived in the closing stages of the GPLv3 review process.
Lost me there. Suppose I use a GPLv3 compiler, compile a completely unrelated product with it, and sell it to you under a commercial licence? How does that expose you to any additional risk?
Don't let THEM immanentize the Eschaton!
Not being affected by something is the weakest reason not to hold an opinion about something ever.
So you want to throw out a far superior optimizer, which would speed up pretty much all code compiled in gcc, to shave some minutes off bootstrapping, which happens... statistically speaking, never?
GCC is an application, not a library, that mean noone cares what the source code license is because IT DOES NOT MATTER. If all the Web 2.0 BB has shown us anything, it's that the source code license has no effect on anyone anymore. Do developers care what the license on the LAMP stack is? Of course not.
The GPLv3 guys have just taken their obsession with dark lord Gates to the point where they are looking completely nuts, even to us open source advocates. They are trying hard to fork everything because of it.
Can Microsoft use GCC under v2? Yes.
Can Microsoft use GCC under v3? Yes. OH NO!!!
So why does anyone care? What a bunch of bull.
- Adam L. Beberg - The Cosm Project - http://www.mithral.com/
How about the source code? http://llvm.org/svn/llvm-project/cfe/trunk/
Considering that the vast, vast majority of gcc users are in fact USERS, not contributors, what real difference does it make?
Given that they *do* use gcc, it's even possible that the majority actually cares what the license is (I'm an outspoken exception), but if every single contributor outside the core team decided to protest by keeping patches private, I can't see it making much difference in the grand scheme of things.
I'm not saying it's a valid reason, I'm saying it's a valid argument (because it's true.)
There are other reasons as well; it tends to take dramatically more memory even to compile a program in C++ than to compile one written in C. I'm not sure if that's a truism, though. But it is an issue for limited systems. You can cross-compile a toolchain for them if you must build on them, but now we're talking about another PITA.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
"The trouble is that there's nothing now to be done about it, but to see how the dice fall."
Right, if you are uneasy about GPLv3 (as I am) then it is not necessary to take drastic action now. Just wait and see how everything works out. Don't committ to GPLv3 until it proves itself. If experience shows that GPLv3 has serious flaws then the projects which have committed to GPLv3 will probably create a later version of the GPL which corrects the flaws in GPLv3. A more drastic mesure would be for a project that finds itself in trouble because of GPLv3 to fork back to the last GPLv2 version of the project and abandon the GPLv3 version.
I think that the most likely outcome is that GPLv3 will be replaced by a better version which corrects the flaws in GPLv3. But it will take time before the consensus of opinion will come to that conclusion.
------------------
Steve Stites
Yes, but no big powerful companies are in a position to sue Ford out of existence if people make after-market mods. Tivo faces very real legal threats that it really can not afford to fight.
As for your options... (b) is what they will probably have to do, which will once again make life worse for everyone, including the 1% who want to tinker. (c) will not help since the tinkerers will then start complaining that they are not being allowed to buy thier Tivo (since leasing is apparently also evil). (a) just doesn't make sense.. their 'model' in this case is 'not get sued into bankruptcy'.
And yes, they used to be able to sell Tivo before that had features like this, and they got threatened for doing it. They didn't wake up one day and say 'hey! let us screw our users and take away a really popular feature for no reason besides feeling like jerks!'.. they woke up one day and said 'if we keep this feature, we very well might not be able to sell ANY Tivos again, so sacrifice one feature to save the rest'.
I also find it amusing that the people who want to tinker with their Tivo are failing to support Neuro's DVR. So instead of rewarding a company that is trying to appeal to the FSF people, they are punishing a company that isn't 'doing enough'.
And the FSF wonder why embedded companies don't like them. People aren't willing to vote with their time or their wallets and help companies that do get it.. all they do is whine and make life difficult for companies that are giving back but still close their device.
If you compare gcc to the compiler supplied on Apple's MacOSX, I think you will find that the performance is at least similar....
"When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
The GPL as used by the FSF has a clause saying any later version of the license may be used. So code licensed under that is effectively multi-licensed GPLv2, GPLv3, GPLv4 (even though it currently does not exist), .... Linux's license does not have the "or later" part of the license, so it is GPLv2 only, although a contributor could dual-license their contribution as GPLv2 and any other license they want, including GPLv3.
Centralization breaks the internet.
Apple will fork. Count on it.
Apple makes a lot of money off DRM and keeping their systems under their own control. And the GPLv3 works against that.
So there's at least one major company right there.
http://lkml.org/lkml/2005/8/20/95
The GPLv2 existed long before the GPLv3. It is double speak to claim that something invented 16 years prior was invented with the intention to be incompatible with something that would come almost two decades later.
Lets put it this way... "It is not the Patriot Act which is incompatible with the Constitution. The Constitution is the one conflicting with most other foreign legal systems and UN policies. The Patriot Act is in fact less incompatible*."
*Since it is more along the lines of what third world dictators would do and there are more of them than free first world countries.
Don't leave your mind so open that your brain falls out. Don't close it so much that you cut off the blood.
Not really.
GPLv3 does very little for 'developers', in fact it makes life more difficult for people who actually develop software. The group it does help are people who buy consumer devices (notice how industrial ones are exempt?) and want to fiddle around with them by putting different software on them. These people are not 'developing' for the platform, they are playing with it.
And keep in mind, GPLv3 does nothing to change a tinker's ability to look at or alter code, it merely stops embedded systems manufacturers from using a signing system on the hardware to prevent unauthorized software from running on it.
These people are not 'developing' for the platform, they are playing with it.
What's the difference? A coder is a coder is a coder.
Give me Classic Slashdot or give me death!
The same difference between a hobby and a profession.
Someone playing with a platform is doing it for their own (and community) fun.
Someone developing for a platform is making their living off it and intends some part of their work to be sold to users.
There is also a matter of scale. Someone playing with a system might burn 10-20 hours a week on it, while a professional might be investing 40-60 hours/week on it.
I admit I am playing with a conceptual difference here, but GPLv3, in embedded space, is really gearing twards one conceptual group over the other.
Actually, the other main difference. Someone playing with a platform only risks things for themselves and other 'take no responsibility' people who download their changes.
When you are developing for a platform professionally, you and your company are responsible for building stable code that will effect non-coders who purchase the device. They are also responsible for dealing with 'my widget doesn't' work!' customer complaints, which a hobbyist can choose to ignore if they want to with any financial repercussions.
What is so bad about GPL3... If people don't like it...use something else and find work around...Xandros, Novell, Linspire...if they can't use that anymore because it is a gpled 3...Thats their problem. they could make a fork if they want...But someone would have to tell me how is it better for the rest of the community...?
What's a conservative doing worrying about slurs to Republicans? The Republican Party was conservative in the 1970s, and has been becoming more radical ever since. The current Republican party seems to believe in wildly unbalanced budgets, massive intrusions into personal privacy, and a highly aggressive foreign policy. Barry Goldwater and Gerald Ford must be spinning in their graves.
"When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
> Fair enough, it's your right to throw a tantrum and stamp your little foot
> if you want, but it's purely political showboating on your part.
Well, of course it is. That's what all protests are. Sometimes it pays to keep your seat on the bus for a better cause, and sometimes it furthers that cause.
> and your crocodile tears for your poor users are thoroughly specious, since you're the one holding them hostage
That's not exactly true. I am not holding them hostage; I am giving them a choice - GPL3 software or me. A perfectly free choice, just like the one GPL projects give their users to not touch their code or switch to GPL. Turnabout is fair play.
> It's a massively unprofessional attitude of you, you are cutting off your project's nose to spite your users' faces
Not at all. I am simply exercising my right to choose whom I do business with. Some forms of discrimination are illegal, such as on race, sex, or religion, but discrimination against GPL fanatics is still perfectly legal. The result of my actions is that people in the GPL camp would be less likely to use my project (in the hypothetical long run, anyway; a GPL3 gcc hasn't even been released yet), which suits me very well. I fully expect normal people to follow suit and boycott all GPL3 software, and those people (who are precisely the sort for whom I would most like to write for) will never have any problems compiling my projects. I call this getting exactly what you deserve.
> we could really do without someone whose ego so far outweighs their desire to contribute.
Indeed you could, because the premise of FSF's communist philosophy dictates that nobody is allowed to have an ego of any kind. If you join their commune, I wish you luck, because its members are expected to have a perpetual "desire to contribute" without getting anything in return. For myself, I prefer the capitalist system, where I am paid for my efforts instead of being a penniless slave to society.
You're holding them hostage. If they rely on your uSTL, they may be prevented from moving to a later version of gcc. You, on the other hand, are refusing to move because you dislike GPLv3, not because you are going to have any problems whatsoever with using a GPLv3ed gcc.
Given that, I'd only use uSTL if I was willing to maintain it myself, and that would be the reaction of most people.
You're delusional. Hundreds of millions of people use Microsoft products without worrying about the license, and Microsoft licenses are more restrictive than any GPL version, and they're more likely to have an effect than the gcc license. What makes you think there's going to be three people (including you) who will boycott new gcc versions because they don't like the license?
No, they're expected to have at least an occasional desire to contribute, in exchange for getting excellent software. Alternatively, they're expected to improve the software when it's in their own interests. The FSF is quite insistent on the ability to sell GPLed software; if you can't use software commercially, it isn't free by their standards.
So, why are you maintaining a free software project (or, if you prefer, open source)? Are you being paid? If so, did you consult with your employers/customers? If not, why are you intent on being a "penniless slave"?
"When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
you know gcc is the compiler supplied with Mac OS.. right?
> You're holding them hostage. If they rely on your uSTL, they may be
> prevented from moving to a later version of gcc.
Not at all. They are welcome to make whatever changes, if any, that are required to make it work. And, since uSTL is distributed under the MIT license, doing this places no obligations on them for doing so. I think that is quite reasonable and quite a bit more than what you'd get from a GPL'ed project.
> Given that, I'd only use uSTL if I was willing to maintain it myself
That's true of all OSS projects. I will probably keep maintaining uSTL, but there is no reason for you to expect that. Most projects are eventually abandoned. Some get new maintainers, some just vanish into black holes on SourceForge. This is true of commercial software as well. Microsoft could go out of business in five years and then where will your Windows installations be? At least with uSTL, like with all other open source projects, you get the option of maintaining it yourself. It is better than having no such option, as with commercial software, and is one of the main reasons for using open source software in the first place.
> What makes you think there's going to be three people (including you) who will
> boycott new gcc versions because they don't like the license?
The american entrepreneural spirit. In this country we have been traditionally opposed to communism in all its forms, preferring our free market society. It may be changing now, but most people still hold such beliefs, and will instinctively revile GPLv3, which is profoundly anti-business.
> No, they're expected to have at least an occasional desire to contribute,
Or be branded "freeloaders" and face social ostracism from the community. Oh, sure, it doesn't matter much to me, since I couldn't care less what GPL fanatics think, but I'm obviously not a member of that community. If I were, the pressure would be far more real. This is rather beside the point though. The point is that you get no incentive for doing your work. No, "getting excellent software" is not an incentive, because one, it isn't that good, and two, you get it anyway, whether you contribute or not. I was born in the Soviet Union, so I know exactly how this works. Everyone gets paid the same, no matter how much they work, so nobody works. That's communism for you.
> The FSF is quite insistent on the ability to sell GPLed software
In theory, but not in practice. Read my earlier rant on this subject. Hell, you can even get it from the horse's mouth; RMS himself repeatedly states that his most cherished goal is the destruction of all commercial software.
> So, why are you maintaining a free software project (or, if you prefer, open source)?
Because it isn't worth anything. You just go and try setting a reasonable price for uSTL. Would you pay $10? $5? How about $1? No? I didn't think so. You can't compete against free. Sure, I believe my implementation is a very good one, but would anyone really care? Yes, you can reduce C++ overhead by a factor of four if you use uSTL, but in today's world of terabyte hard disks and gigabyte RAM sticks, nobody cares enough to pay any money for such a reduction. Another reason is that it isn't really my work; I only implemented a standard, there isn't that much original work in it. I wouldn't feel correct in charging money for something I didn't do.
I keep it open source because it costs me nothing. I don't really gain anything from it. I've had perhaps less than ten bug reports in the entire lifetime of the project. Nobody contributed any code. So why bother? Because someone might write some good software with it. Something nice, small, and blazingly fast. Sure it hasn't happened yet, but it might, and it costs me nothing to keep the project on SourceForge.
Note that I did not say that the "nice, small, and blazingly fast" project
Well, I'll certainly give you that one. I'm a conservative, so I usually tend Republican (although we have a great Democrat senator here that I fully support). I'm liking Ron Paul these days because he actually seems to remember what being a conservative means.
Dewey, what part of this looks like authorities should be involved?
It says you can make DRM, but you have to distribute the signing keys as well - kind of defeats the whole purpose.
Also, your goal when you do modifications isn't to create the exact same binary - the "exact same binary" wouldn't have your mods. You're free to take their source, mod it, and run it on other hardware. The gpl v2 says nothing about proprietary hardware, and last time I looked, most hardware is proprietary, not just Tivo.
Really, just take what you want from their source, add the features to mythtv, and use your own hardware. Or buy hardware that supports modding - there is some, you know. And you're free to build your own.
> Just out of curiosity, if someone sent you a patch with changes to make the
> library work with a GPLv3 GCC, would you merge them into your official code base?
Probably no. That rather depends on the patch. Let's say gcc 5.4 has some nifty new warnings that tell you how to rearrange your code to make it compile smaller, even with gcc 4.2.1. I would merge such a change. But say gcc 5.4 has decided that __attribute__ syntax is no longer acceptable and changes it to some other mechanism, like back to #pragma or whatever. I would reject such a change.
> I suppose you could make the argument that you cannot test them, so provide
> an alternate unsupported version... But would you even do that?
No, I would politely tell them to maintain their own version, if they feel like it. I may help them out if they need something explained. I might even link to it. There is already one such fork, for the Symbian project, which I decline to merge into the mainline. There are numerous very platform-specific things in it, and I have no interest in supporting such a marginal platform. The only burden in this scenario lies on the maintainer of the fork, and it is not a very heavy one, since the library code has been quite stable for a while now. I make releases once a year or so, and pulling my changes into a fork should really not be that hard. The Linux kernel maintains several trees in this manner, so this development model is very well tested and established. Now, if I could only switch to git...
Except that the possibility of running unsigned/unproven code is enough to remove a device from certification.
In your scenario, there's nothing to prevent someone from running malicious code, doing what they want, then re-installing the certified code. Who gets the blame?
Really, the GPLv3 is screwed up because it is targeting something that is none of its business - hardware. GPLv2 is fine. It does the job. So is the BSD license. So are a whole bunch of other licenses. The GPLv3 was a political statement, not a real license.
Clearly there is a difference between professional and amateur coders. But why is that relevant to the rights one should have?
Give me Classic Slashdot or give me death!
Because the GPL only applies to what you distribute, so it puts no requirements on people who buy a device and play with it, but it does dictate the behavior of the person who develops and distributes devices.
The FSF also specifically caters to people who are NOT writing software for sale, so when it comes down to 'who's freedom is more important' they will tend to side with their core group.... non-professional coders, hobbyists, service-oriented coders, and web-centric coders. Notice how the GPL doesn't effect what any of those groups can program or how their hardware must behave?
it does dictate the behavior of the person who develops and distributes devices.
Whether amateur or professional.
The FSF also specifically caters to people who are NOT writing software for sale
Except that selling GPL software is specifically encouraged.
I really think the GPL is value neutral on whose rights it protects. The right to view, modify, and distribute is there for everyone's benefit.
Give me Classic Slashdot or give me death!