Stallman on GCC, LLVM, and copyleft
Stallman on GCC, LLVM, and copyleft
Posted Jan 28, 2014 23:00 UTC (Tue) by Del- (guest, #72641)In reply to: Stallman on GCC, LLVM, and copyleft by landley
Parent article: Stallman on GCC, LLVM, and copyleft
I totally agree that having GPLv2 and v3 incompatible is incredibly stupid, so if there ever is a GPLv4, I hope it fixes it. Since practically all GPLv3 projects has the +, it is hopefully even doable. It seems that the anti-Tivo part is the only contentious part. I believe it serves an important purpose, but agree that it is not a critical part of GPL, so it could even be removed.
With regards to the patent clause, it seems you don't even see the value in that. I find that surprising. In today's landscape it seems everybody with knowledge is turning their backs against the BSD license due to patent concerns, with the possible exception of the patent trolls. I consider both Apple and Sony to belong to that category. For the rest of us, we want whatever protection we can get from patents.
You mentioned Cisco not touching linux after their ordeal with FSF. I am having trouble confirming your account of the events, so any clarification is welcome. It seems to me that FSF went after Cisco over Broadcom in 2003 (see e.g., http://slashdot.org/story/03/10/14/1317251/the-fsf-linuxs... ) about the time when the Linksys code release came about and OpenWrt started (ref. http://en.wikipedia.org/wiki/Openwrt#History ). Moreover, Cisco embraced linux for their Linksys devices until they quite recently gave up the consumer market. I am not able to see how this is compatible with your statement that they went over to Windows and/or OSX/IOS? This was also well before GPLv3 I believe, so does this mean you came to the conclusion that GPLv2 also was bad in the long run?
With respect to Broadcom, they did finally cave in and opened up their driver development. Today all wireless vendors seem to try to make decent linux drivers. Do you honestly think we would come to that point if it was all public domain and BSD licensed? I can at least talk for myself. Without copy-left I would not have spent my countless hours over OpenWrt. The fact that the OpenWrt web-interface is permissively licensed was enough to push me away from contributing. I know many of us feel that way, so without copy-left many of us would simply not contribute. The stories you tell about people taking one year off without pay to get a file system into linux, do you believe permissively licensed projects will ignite that amount of devotion even close to what we see for copy-left projects? You have worked on linux for quite some time, do you have the impression that copy-left is an important aspect for many developers?
Personally, I would love to see a world where permissive licensing would thrive on its own and provide us with competitive alternatives. Unfortunately I don't think humans are even close to make that happen yet. There are some signs of course, with larger corporations realising that they can achieve more together, and are willing to do it under a permissive licenses. However, only on predominantly copy-left platforms are we able to compete, where servers today is the prime example. With Android I am incredibly disappointed how little open development it has spurred. Sure the apps are coming, but not from Google. If any , Google is going the other direction with closing stuff up. I haven't seen any of the vendors open up any of their GUI stuff. If anything I believe the last decade showed us that copy-left is very much needed for the next decade. I am incredibly grateful for all the people who ensured that we can have open platforms from A to Z. Apple and Sony has only showed us how to prevent it as far as I am concerned. You may be content with the low level bits being open, but I have a hard time seeing even that happen without copy-left.
Posted Jan 29, 2014 5:01 UTC (Wed)
by khim (subscriber, #9252)
[Link] (6 responses)
It's funny that you can not even get your facts straight when eveyrhing was already discussed on LWN. FSF went after CISCO in 2008 and GPLv3 was published in 2007 (year before). I don't know why you are bringing up totally irrelevant bits and pieces. You are king of right on one point: overzealous GPL enforcement and GPLv3 are independent developments although they bost severely made GPL “damaged goods”, but then Landley never claimed that they are directly related. They are only [correctly] related in minds of corporations via the fact that FSF is behind both. This made FSF-governed packages problematic at first and then later it made GPL as whole spurned by corporations.
Posted Jan 29, 2014 6:47 UTC (Wed)
by Del- (guest, #72641)
[Link] (5 responses)
Thanks, that was what I wanted to know. No, even I don't read and remember everything from six years back, sorry. In any case, that still leaves the need for an explanation as to Cisco moving away from linux. I believe Cisco even after that used the fact that Linksys devices came with linux in their marketing. Moreover, I believe that places the event closer in time to when Broadcom finally started contributing drivers to linux (no, I don't bother checking dates now, I am a bit tired of it).
> You are king of right on one point: overzealous GPL enforcement and GPLv3 are independent developments
Well thank you, never thought I would see a concession in this thread. Indeed, Rob himself demonstrated very clearly that overzealous GPL enforcement was possible with GPLv2, so it is not clear to me that v3 changed everything.
That brings me to another issue from the talk. Rob, you mentioned Apple going away from GPL over version 3. From what I have seen this not correct. The Webkit story is quite telling, and shows a clear tale that Apple tried to circumvent copy-left years before, actually dating back to 2001. Moreover, from reading the mailing list posts surrounding LLVM, I can only conclude that Chris Lattner failed in acquiring copyright transfer agreements from LLVM to FSF, and that was before version 3 came about. Chris should be able to confirm or defuse it though. In any case, Apple was never a friend of copy-left AFAIK, and I believe they would have gone for a permissively licensed solution sooner or later anyway. Their App Store is quite telling in that respect.
My main grievance today is that Apple and Microsoft is so successful in creaing schisms in the open community.
Posted Jan 29, 2014 9:33 UTC (Wed)
by khim (subscriber, #9252)
[Link] (4 responses)
Posted Jan 29, 2014 12:06 UTC (Wed)
by Del- (guest, #72641)
[Link] (3 responses)
This is where we see the historic events differently I believe. I don't think Apple ever accepted GPLv2, or any other copy-left license. I believe it was only a matter of time before they moved over to alternatives. Moreover, I believe they would get rid of bash, WebCore and JavaScriptCore in a heartbeat if something like LLVM surfaced for it, or if the license creates an inconvenience of any sort. I have provided examples supporting that view, but you are of course free to reach another conclusion.
In any case, why does Apple's opinions weigh in on what restrictions we should put on licenses? When it became clear that Apple refuse GPL altogether from their app store, I took it as a clear sign. A signal that Apple no longer needs us, and now wants to get rid of us. If any , this has just reinforced my belief in the importance of copy-left. Remember Cicero and his "cui bono". These things matter, at least to me.
Posted Jan 30, 2014 0:04 UTC (Thu)
by landley (guest, #6789)
[Link] (2 responses)
Apple built MacOS X with gcc, and shipped gcc as the system's compiler, for most of a decade, through gcc version 4.2.1. Version 4.2.2 was the first one containing GPLv3 code, and Apple did not ship that version (or later versions) but instead remained on gcc 4.2 for the next 5 years, while sponsoring development of a replacement until said replacement could take over:
http://caiustheory.com/install-gcc-421-apple-build-56663-...
But feel free to see these historic events differently.
Rob
Posted Jan 30, 2014 0:23 UTC (Thu)
by nix (subscriber, #2304)
[Link]
Posted Jan 30, 2014 11:11 UTC (Thu)
by Del- (guest, #72641)
[Link]
I have tried to dig into the events surrounding GCC and LLVM to understand what went on, and the most I have found is Chris Lattner's posts on the GCC mailing list. Chris is still active on said mailing list, so he may or may not be able to confirm or correct my perception.
First up two mails proposing LLVM as an optimizer for GCC:
In any case, it is very easy to agree that Apple strongly dislikes the GPLv3 on general grounds. Both the patent part (they don't seem very fond of any license providing any sort of patent protection, copy-left or not) and the anti-Tivotization part.
Still, following the webkit story evolving from 2001, ending up with only minimal parts having the original LGPL license, the rest having a BSD license. Moreover, the BSD parts opened up a full four years later. To me at least, it seems quite clear that Apple did not like copy-left long before GPLv3 came about (and quite frankly I cannot see how anybody reach another conclusion). This also leads me to the conclusion that they may very well have made their own compiler out of LLVM regardless of GPLv3. The fact that they stopped contributing after GCC 4.2 seems clearly related to v3, but they may very well have stopped at 4.5 or something if v3 never came about. Actually, with the kind of resources that came into Apple's hands during the last decade, my only surprise was that they continued contributing under copy-left as long as they did.
I understand that there is a lot of emotions around this issue, so it quickly becomes personal, at least for some. For me it is actually a reality I need to figure out. Licensing matters if you want successful projects, where I believe Linus made the prime example of (yes I know some argue that copy-left had little to do with it, but I have now idea how one can reach such a conclusion).
I feel that I have come more or less to the bottom of the patent clause in GPLv3, and it really puts a rather strange light on many of the discussions. I think it is very helpful to think through the "cui bono" on that.
On the tivotization clause, the most interesting information I have found is actually from Upstart's mailing list. Upstart was licensed to GPLv3 in June 2009, and it made a lot of stuff crawl out of the wood work. Here is a reference: https://lists.ubuntu.com/archives/upstart-devel/2009-June...
Stallman on GCC, LLVM, and copyleft
Stallman on GCC, LLVM, and copyleft
Stallman on GCC, LLVM, and copyleft
Rob, you mentioned Apple going away from GPL over version 3. From what I have seen this not correct.
Just what are your talking about? Apple was not happy with GPLv2 but accepted it and compiled with it. Kicking and screaming but complied. GPLv3, on the other hand was banned outright (that's why Apple used GCC 4.2 for years till LLVM was more-or-less ready, that's why it still uses bash 3.x, etc).
Stallman on GCC, LLVM, and copyleft
Stallman on GCC, LLVM, and copyleft
> I don't think Apple ever accepted GPLv2, or any other copy-left license.
Stallman on GCC, LLVM, and copyleft
Stallman on GCC, LLVM, and copyleft
http://gcc.gnu.org/ml/gcc/2005-11/msg00888.html
http://gcc.gnu.org/ml/gcc/2005-11/msg01112.html
To me it seemed the sentiment was rather positive in all camps. However, the copyright transfer seems to never happen, and this is the latest I found on that issue:
http://gcc.gnu.org/ml/gcc/2006-03/msg00706.html
This was now four months later. It may of course be that the early work on GPLv3 had something to do with it, but if so, I saw no hint of it. It seems to me that the process never came past the copyright transfer agreements.
it does give support to those who see GPLv3 anti-Tivo clause as a problematic point for embedded vendors. Note for instance that Cisco seems to be OK with GPLv3 as long as it is not in the more critical parts of the OS (with critical I assume boot-loader, init-system and kernel counts). You will find a number of the sponsors of linux foundation on the concerned parties, so I assume linux was under as least as much pressure to not go with GPLv3.