|
|
Log in / Subscribe / Register

GPLV3 has been a boon for bait-and-switch licensing

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 15, 2016 18:21 UTC (Mon) by Cyberax (✭ supporter ✭, #52523)
In reply to: GPLV3 has been a boon for bait-and-switch licensing by mordocai
Parent article: Winning the copyleft fight

> I may have missed something, but for the most part the FSF doesn't care about corporate users
And that's the reason GPL supporters are now begging for developers' time.


to post comments

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 15, 2016 18:48 UTC (Mon) by mordocai (guest, #71668) [Link] (26 responses)

The free software movement as a whole has always begged for developers' time.

I don't see a problem with this. It is the fallout of not being controlled by corporate greed.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 16, 2016 2:28 UTC (Tue) by Cyberax (✭ supporter ✭, #52523) [Link] (25 responses)

Not really. There was a good period during the early 2000-s when multiple companies (even Apple!) had been contributing to GPL projects like GCC, binutils, Samba and others.

That all has changed after the GPLv3 crusade.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 17, 2016 1:59 UTC (Wed) by rahvin (guest, #16953) [Link] (22 responses)

Though GPLv3 was contentious, IMO it had little to no effect on the issues you claim. LLVM would have developed regardless as Apple and other commercial companies wanted/needed a compiler they could cut commercial versions of because GCC destroyed vast swaths of compiler companies. LLVM has more to do with GCC destroying commercial companies who simply couldn't compete against a free compiler that was often better in every respect. These private companies needed a compiler on an equal footing with GCC technically that they could close source and offer extended features and plugins against. LLVM exists because of GCC's success, not because of a licensing issue. Have you ever thought about all the compiler companies that went under in the late 90's and 00's? The list is quite large. LLVM developed to fill the void created by all those specialty compilers going under.

There has been no effort (that I'm aware of) to replace Samba with a BSD licensed version and their likely never will, it's contribution profile has changed little since the switch. It serves only one purpose and that's inter-operation with Windows, hopefully something that won't be needed forever.

Personally I've seen little impact from GPLv3 beyond all the initial hullabaloo by all the corporate interests that didn't like the explicit patent license which was intended to subvert the main extortion avenue on GPL licensed code. You'd have a hard time listing more than a couple FOSS programs that switched to GPLv3 and were subsequently "replaced" in marketshare by a BSD licensed alternative. I personally can't think of a single example.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 17, 2016 2:34 UTC (Wed) by raven667 (subscriber, #5198) [Link] (12 responses)

> LLVM developed to fill the void created by all those specialty compilers going under.

Isn't this the same as saying GCC couldn't (or wouldn't) actually meet the needs that all those specialty compilers were fulfilling? Maybe I'm wrong but I don't think there is a large secondary market selling expensive LLVM plugins, instead LLVM is just being integrated where optimizing JITs are useful, like OpenGL shaders, something the GCC project intentionally made difficult during a critical time. It's a means to an end and a market where GCC is no longer competitive.

> I've seen little impact from GPLv3 beyond all the initial hullabaloo by all the corporate interests

Those corporate interests and the resources and developers they represent moved on to other non-copyleft licenses. If the goal of the GPL license sphere is to have fun, self-sustaining software platform for a few cognoscenti to use and improve then we are achieving it, if the goal is to change the default way that software is developed across the entire industry to copyleft, then we are failing, massively.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 9:34 UTC (Thu) by Del- (guest, #72641) [Link] (11 responses)

> Isn't this the same as saying GCC couldn't (or wouldn't) actually meet the needs that all those specialty compilers were fulfilling?

Yes, GCC fails to allow proprietary forks and extensions. Apple seems to have no interest in sharing the source code of xcode. LLVM almost became part of GCC, but Apple at the time felt strong enough to fight the same community that helped them back from the dead.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 10:23 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (10 responses)

> Yes, GCC fails to allow proprietary forks and extensions.
It's also incompatible with pretty much anything but command-line compilers. For example, LLVM is also used to compile shaders in Mesa - and GCC would be useless for this purpose due to its license.

> Apple seems to have no interest in sharing the source code of xcode.
Why should it? XCode is an IDE, after all.

And Apple shares their changes to LLVM, like the new Swift language.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 10:55 UTC (Thu) by Del- (guest, #72641) [Link] (9 responses)

> For example, LLVM is also used to compile shaders in Mesa - and GCC would be useless for this purpose due to its license.

Are you referring to Mesa's permissive license or GCCs technical abilities? Both can be changed you know. After all, LLVM was initially slated for inclusion in GCC, nothing prevents GCC from gaining such capabilities. By now, the Mesa developers should realise that they have nothing to gain from permissive licenses. They possibly have quite a bit to gain from copyleft though.

> Why should it? XCode is an IDE, after all.

Are you asking me why Apple should share code? This is indeed an unexpected question. Short answer, to stay ahead. Give me one freaking reason they need to keep xcode closed? Fewer people buying iphones maybe? I believe Apple's hostility to open communities will be their downfall. Both Apple and Microsoft can stay on top due to dominating market positions, but that will not be sufficient forever. It seems Microsoft is slowly learning this, while Apple is too full of themselves. To me, Clang/LLVM looks like a classic embrace, extend, extinguish.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 11:36 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (8 responses)

> Are you referring to Mesa's permissive license or GCCs technical abilities? Both can be changed you know.
Mesa needs to link with other applications directly, including proprietary ones. That means GPL is right out. If gcc wanted to change their license to BSD then yes, it might have been useful.

Meanwhile, GCC has released their JIT library and it's used by.... erm... nobody - exactly because of this.

> They possibly have quite a bit to gain from copyleft though.
No, they don't. They'll become pretty much irrelevant the moment they switch to GPL.

> Are you asking me why Apple should share code? This is indeed an unexpected question.
I'm asking why they should share code for XCode, which is their private IDE.

> To me, Clang/LLVM looks like a classic embrace, extend, extinguish.
Apple has been releasing their LLVM/clang changes for about 10 years by now. Including the changes that they could have kept private.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 15:17 UTC (Thu) by mlopezibanez (guest, #66088) [Link] (1 responses)

Meanwhile, GCC has released their JIT library and it's used by.... erm... nobody - exactly because of this.
I think you are trolling us (why Apple should share code? You know, because that is the whole ****ing point of FOSS? The four freedoms? Ethics? Co-operation? Social responsibility? Ah, you think the point of FOSS is maximising Apple's profits? Then, why should anyone who believes otherwise care about your opinion or advice? RMS is completely right when he says: Why take advice on pursuing your goals from people who are against those goals!?).

But I could not let the above lie stand. The reason nobody uses GCC JIT in production code yet is that:

libgccjit is currently of “Alpha” quality; the APIs are not yet set in stone, and they shouldn’t be used in production yet.

(Second line at https://gcc.gnu.org/onlinedocs/jit/)

I would not answer to any of your other comments, but any readers should be aware that you are thoroughly misinformed (or misinforming) on this topic.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 20:08 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link]

> I think you are trolling us (why Apple should share code?)
Why should Apple share code for Xcode? It won't really add significant benefit for users.

On the other hand, they DO release stuff that benefits other projects (clang support for autocomplete, for example).

Case in point: JetBrains released their community edition source code under GPL and nobody cares.

> But I could not let the above lie stand. The reason nobody uses GCC JIT in production code yet is that:
> libgccjit is currently of “Alpha” quality; the APIs are not yet set in stone, and they shouldn’t be used in production yet.
Well, that's because nobody is really using it. It's been in that form since late 2013. It's been officially released since Sep 2015, and it's still not being used for anything that is more than a code sample.

Want to be that it's not going to change?

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 15:52 UTC (Thu) by Del- (guest, #72641) [Link] (5 responses)

> Mesa needs to link with other applications directly, including proprietary ones. That means GPL is right out.

Linking exceptions are common. As for use of GCC, that should be no problem. GCC already compiles and links a plethora of proprietary code, and that is specifically allowed by the license. I see absolutely no advantage of permissive licensing in Mesa, and I have not seen you produce any argument to the contrary.

> Apple has been releasing their LLVM/clang changes for about 10 years by now. Including the changes that they could have kept private.

I believe that is not correct. I believe there were some ios related bits kept away, but I am not inclined to dig that up now. I am also pretty sure that the continued dominance of GCC keeps Apple in check here, so again, you should be grateful for the existence of a copyleft alternative.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 19:40 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link] (2 responses)

> Linking exceptions are common. As for use of GCC, that should be no problem. GCC already compiles and links a plethora of proprietary code, and that is specifically allowed by the license.
Well, yes. And relicensing GCC under BSD would also have helped.

But that defeats the very copyleft argument.

> I see absolutely no advantage of permissive licensing in Mesa, and I have not seen you produce any argument to the contrary.
Ask Mesa developers. Really, go to mesa-dev and ask them what they are thinking about switching to GPL.

> I believe that is not correct. I believe there were some ios related bits kept away
Nope. You can compile iOS applications with a stock LLVM. However, you're also going to need private headers and libraries that have nothing to do with LLVM itself.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 20:57 UTC (Thu) by Del- (guest, #72641) [Link] (1 responses)

> But that defeats the very copyleft argument.

You lost me, are you not aware that GCC is used to compile proprietary code, and that the license specifically allows it?

> Ask Mesa developers. Really, go to mesa-dev and ask them what they are thinking about switching to GPL.

GPL with an exception to allow, e.g., proprietary games to run? Sure, if I was involved in the project I would. Not being involved it is none of my business.

> Nope.

Are you by any chance working at Apple with LLVM? Otherwise I find your statement here provocative, how can you be so sure? In any case, not sharing bits from Clang and its standard libraries suffices for me to conclude.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 25, 2016 22:15 UTC (Thu) by Cyberax (✭ supporter ✭, #52523) [Link]

> GPL with an exception
You're defeating your own argument. GPL with exceptions is not a GPL. It's even incompatible with other pure GPL projects.

> Are you by any chance working at Apple with LLVM? Otherwise I find your statement here provocative, how can you be so sure? In any case, not sharing bits from Clang and its standard libraries suffices for me to conclude.
No, I don't work at Apple and I don't even use an iPhone. Apple shares all the relevant clang bits, the unshared bits are not related to the compiler or its base language libraries.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 26, 2016 1:54 UTC (Fri) by zlynx (guest, #2285) [Link] (1 responses)

> Linking exceptions are common. As for use of GCC, that should be no problem. GCC already compiles and links a plethora of proprietary code, and that is specifically allowed by the license.

Are you saying that the GCC JIT engine itself is allowed to be statically linked into proprietary code? I haven't looked, but I doubt the FSF would have done that.

One of the things LLVM is great for is embedding it so that binary code can be produced as needed from a cross-platform compiled intermediate form. And people don't want to GPL their game engines in order to do that.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 26, 2016 9:10 UTC (Fri) by Del- (guest, #72641) [Link]

> Are you saying that the GCC JIT engine itself is allowed to be statically linked into proprietary code?

I don't know, I haven't followed that project. From a quick glance I cannot find any linking exceptions, so this may be more involved than I thought.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 17, 2016 4:02 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link] (8 responses)

> These private companies needed a compiler on an equal footing with GCC technically that they could close source and offer extended features and plugins against. LLVM exists because of GCC's success, not because of a licensing issue
While there are proprietary compilers based on LLVM, they are a small niche. And before LLVM and clang they just used stuff like http://www.edg.com/

Nope, the move to LLVM+clang was very clearly caused by GPLv3. And before that, Apple had no problem with GPLv2 - they had timely support for gcc in their tools, up to the last GPLv2 version.

The same with Samba - Apple has just switched to a homegrown SMB implementation rather than using GPLv3 version of Samba.

> There has been no effort (that I'm aware of) to replace Samba with a BSD licensed version and their likely never will, it's contribution profile has changed little since the switch.
Yep. It's a niche software that becomes less relevant even in the Windows world.

From what I see, there are no interesting GPLv3 applications anymore. And by "interesting" I mean something non-trivial that has no liberally licensed counterpart.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 19, 2016 2:22 UTC (Fri) by rahvin (guest, #16953) [Link] (7 responses)

>Nope, the move to LLVM+clang was very clearly caused by GPLv3.

I won't agree with that. The market was ripe for another OSS compiler, far too many specialty compilers and compiler companies had gone under due to GCC. Though I might agree it was related I won't assign causality as I believe something like it would have developed either way due to the changing market eliminating options.

You simply couldn't write a closed source compiler anymore unless you could spend hundreds of millions on development to stay ahead of GCC. LLVM+clang levels the playing field for a lot of companies and takes the heavy lifting off. Hell in 5 years I wouldn't be surprised to see the Intel compiler or even the Visual studio compiler end up as forked LLVM, that is if they aren't already.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 19, 2016 3:06 UTC (Fri) by Cyberax (✭ supporter ✭, #52523) [Link]

> I won't agree with that. The market was ripe for another OSS compiler, far too many specialty compilers and compiler companies had gone under due to GCC.
How two of these are related?

There were several backends and frontends for proprietary compilers (Open64, EDG and others).

> You simply couldn't write a closed source compiler anymore unless you could spend hundreds of millions on development to stay ahead of GCC. LLVM+clang levels the playing field for a lot of companies and takes the heavy lifting off.
And why would Apple want to write a closed-source compiler in 2007? They are not in the business of selling compilers. Even their proprietary language (Swift) is open.

The causality is pretty clear on this point - Apple wanted to have a GPLv3-free system due to the anti-TiVo-clause. Just look at the recent Mac OS - there's literally NOTHING under GPLv3 there, even utilities like bash and rsync are pre-GPLv3.

And timing works out perfectly. clang development was started after the final drafts of GPLv3 had been made available.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 19, 2016 9:27 UTC (Fri) by excors (subscriber, #95769) [Link] (5 responses)

> Hell in 5 years I wouldn't be surprised to see the Intel compiler or even the Visual studio compiler end up as forked LLVM, that is if they aren't already.

The Intel C++ Compiler already has a Clang front-end for OS X (http://llvm.org/devmtg/2014-04/PDFs/Posters/ClangIntel.pdf), in addition to its original EDG front-end.

Visual Studio 2015 also has an optional Clang front-end (https://blogs.msdn.microsoft.com/vcblog/2015/12/04/clang-...), seemingly aimed at iOS and Android projects.

Both claim to have offered their Clang changes upstream, but I don't know what their current status is.

Both are still using their proprietary backends though, not LLVM's, presumably because they're better in some ways (likely performance). For frontends, I think "better" usually means "more compatible with my existing code and libraries", so standardising on Clang seems sensible.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 20, 2016 2:12 UTC (Sat) by rahvin (guest, #16953) [Link] (4 responses)

I was aware of the front end changes from Microsoft but not Intel. As I said I wouldn't be surprised to see them at some point drop their proprietary backends and just drop LLVM in with their own proprietary optimizations because they can't keep up with the OSS community. This is the problem I've been talking about, the OSS compilers, between GCC and LLVM are often way way ahead of all the proprietary compilers to the point of it not even being close.

Does Visual studio's proprietary compiler even support C99 at this point let alone C11? GCC and LLVM had C11 support before it was even official. Even the standards organizations are using them to develop the standards at this point. There reaches a point where you have to spend millions developing a compiler and you can't even keep up with GCC/LLVM on basic stuff let alone your own proprietary optimizations that are your selling point. Its at the point that there is little point trying to compete because you simply can't and your effort is better spent on plugin's, extensions or support on the OSS compiler.

I think it reached that point several years ago and the only real competitors to the OSS compilers at this point are the companies that produce compilers not for revenue but for other reasons, like Microsoft producing a compiler that is targeted specifically at windows or Intel using it to differentiate their processors. But even in those cases there is going to be some point in the future where these companies just decide it's easier to fork LLVM/clang and track their changes on top of the OSS codebase.

At least that's my opinion on the matter.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 20, 2016 14:13 UTC (Sat) by madscientist (subscriber, #16861) [Link] (3 responses)

Visual Studio 14 (2015) supports C99 (finally!) and virtually all of C++11. Visual Studio 13 supported a non-trivial subset of C++11 but still had significant holes, and didn't support C99 completely.

https://msdn.microsoft.com/en-us/library/hh567368.aspx

FWIW.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 20, 2016 18:31 UTC (Sat) by lsl (subscriber, #86508) [Link] (2 responses)

AFAIU, it doesn't support C99 at all. It only has the parts of C99 that are required for C++11 (the CPP, a long long type and most of the stdlib) and *supports them only in C++ mode*. When compiling C code you still get C89 and nothing else.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 20, 2016 20:17 UTC (Sat) by madscientist (subscriber, #16861) [Link] (1 responses)

You could well be right. I avoid Windows and Visual Studio as much as possible: I only know this much because I just made the effort to update our Windows development prerequisites at work to VS 14 so we could get better C++11 support on all our platforms. In doing so I had to undo some of the "hacks" we needed to get older VS versions to work, for example VS 14 finally supports snprintf() properly.

However our code is C++, not C. I assumed if it was supported in C++ it would be supported in C as well but maybe that was naive.

GPLV3 has been a boon for bait-and-switch licensing

Posted Mar 9, 2016 16:45 UTC (Wed) by nye (guest, #51576) [Link]

Basically MSVC is a C++ compiler that happens to have some support for compiling C in cases where that was something they could easily chuck in as an extra feature by reusing their existing C++ work.

Alright, technically that's not strictly correct, but I think it's a pretty close approximation.

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 17, 2016 14:26 UTC (Wed) by mathstuf (subscriber, #69389) [Link] (1 responses)

> That all has changed after the GPLv3 crusade.

If GPLv2 had had GPLv3's patent and tivoization clauses when it was first released, would it have been as unwanted? Or is it more that the delta between GPLv2 and GPLv3 is what deterred these companies?

GPLV3 has been a boon for bait-and-switch licensing

Posted Feb 17, 2016 20:29 UTC (Wed) by Cyberax (✭ supporter ✭, #52523) [Link]

Who knows? Playing "what if" with history is rarely productive. Perhaps tivoization wouldn't have happened at all. Or perhaps TiVo would have used the BSD kernerl as the base catapulting it onto the first place, sidelining Linux.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds