09.10.10
Gemini version available ♊︎Apple is Still Attacking GNU Linux and the GPL
Summary: Apple is said to be “blocking contributions to GCC” (which is GPL-licensed unlike LLVM and Clang); antitrust pressure on Apple causes change
GIVEN THAT Apple is suing Linux (via HTC) and merely exploiting Free software, no wonder people in the Free software world — developers in particular — dislike Apple. This company’s mistreatment of developers and other groups has already given Apple some antitrust issues. Very recently we learned that Apple was retaliating against partners for developing with Linux and also quite recently concerns were expressed about X Server stewardship from Apple.
Phoronix now alleges that “Apple [May Be] Blocking Contributions To GCC”:
Yesterday on the mailing list for GCC is was brought up if Apple’s Objective-C 2.0 patches for the GNU Compiler Collection could be merged back into the upstream GCC code-base as maintained by the Free Software Foundation. Even though Apple’s modified GCC sources still reflect the FSF as the copyright holder and are licensed under the GNU GPLv2+, it doesn’t look like Apple wants their compiler work going back upstream any longer.
Chris Lattner, who is Apple’s chief architect of their compiler group and also the lead developer of LLVM and Clang, came out to say that whatever Apple pushes to their GCC branch on the Free Software Foundation’s servers they should be able to pull upstream, but not code that’s found within the open-source GCC hosted by Apple on OpenDarwin or anywhere else. Or GCC code that’s found within LLVM-GCC.
Apple is not much of a development company and it is allergic to the GPL [1, 2], too (Apple is used to just taking code). That’s why Steve Jobs reportedly rejected his engineers’ advice that the company should use Linux to build the hypePhone (which later introduced hypeOS for the bigger phone, hypePad). The following new report says that Jobs “dodges antitrust action” when deciding to actually relax some restrictions in hypeOS; it’s about antitrust, not about being rational or kind.
But from our point of view, Apple’s hand was forced. By lifting its code ban, Apple removes the spectre of an antitrust inquiry by the Federal Trade Commission or the Department of Justice. By removing the AdMob barriers, Apple does much the same with the possibility of FTC or DoJ action on that allegedly anti-competitive front.
And so Apple’s one-two punch both loosens and tightens restrictions on developers. Its lifting of the code ban and advertising strictures, although likely prompted by fear of legal action, allows a broader range of developer tools and — as Hamoui puts it — “provide[s] immediate clarification about the status of mobile advertising on the iPhone [that] will benefit users, developers, and advertisers.”
On the other hand, by tightening content restrictions on developers with its “my way or the highway” App Store Review Guidelines — or, at minium, by explicitly spelling out what was implicit in its seemingly arbitrary App Store police’s actions — Jobs & Co have shored up the fortifications of the walled garden that is the iOS ecosystem.
Apple does deserve a lot of scrutiny, even though there are those who excuse Apple too much [1, 2]. █
“FSF did some anti-Apple campaigns too. Personally I worry more about Apple because they have user loyalty; Microsoft doesn’t.”
–Bradley M. Kuhn (SFLC)
NotZed said,
September 11, 2010 at 9:25 am
This is the end-game of the wide commercial support for LLVM/clang. Basically to undermine support for gcc, let it stagnate, and eventually be replaced with proprietary compilers based on LLVM/clang.
I doubt apple and particularly jobby boy ever got over their ‘mistake’ of trying to make a proprietary compiler based on gcc.
Dr. Roy Schestowitz Reply:
September 11th, 2010 at 9:37 am
I’ve asked in some places and did not receive a good answer, how does Google compile Android? Apple is very concerned about Android (everything portable is Apple’s cash cows meadow).
I don’t think RHEL is compiled just with GCC. How about Google’s builds?