Linked by Thom Holwerda on Mon 21st Mar 2011 21:14 UTC, submitted by jbicha
Google Does Google's Android violate the GPL? This bold claim is being made by Edward Naughton, and was picked up here and there across the web. The problem seems to be that Android's Bionic, a glibc alternative, supposedly violates the GPL by stripping the Linux kernel header files of all comments and other extraneous information and relicensing them under a more permissive license so that non-GPL programs can be written. Bradley Kuhn, former FSF executive director and expert on GPL violations, believes the claims are way overblown.
Order by: Score:
Quality Burn
by pompous stranger on Mon 21st Mar 2011 21:31 UTC
pompous stranger
Member since:
2006-05-28


I was hoping to avoid having to comment further on this problematic story. I figured a comment as a brief identi.ca statement was enough when it was just a story on the Register. But, it's now hit a major tech news outlet …
— Bradley M. Kuhn

Reply Score: 1

Elaborate Troll?
by Carewolf on Mon 21st Mar 2011 21:42 UTC
Carewolf
Member since:
2005-09-08

If this isn't allowed, I guess it wouldn't be allowed to use the header-files to the LGPL glibc. In essence this boils down to the age-old troll:

Troll: It is not allowed to run non-GPL programs on Linux.

Tired answer: Yes, yes it is. Go away troll

Reply Score: 5

RMS calls BS on this!! (Back in 2003)
by glarepate on Mon 21st Mar 2011 23:58 UTC
glarepate
Member since:
2006-01-04

Saw this info on /.

http://lkml.indiana.edu/hypermail/linux/kernel/0301.1/0362.html

I'm not sure what your project is designed to do, so I don't have an opinion about how it stands regarding the GPL. However, I've talked with our lawyer about one specific issue that you raised: that of using simple material from header files.

Someone recently made the claim that including a header file always makes a derivative work. That's not the FSF's view. Our view is that just using structure definitions, typedefs, enumeration constants, macros with simple bodies, etc., is NOT enough to make a derivative work. It would take a substantial amount of code (coming from inline functions or macros with substantial bodies) to do that.
---

This might also explain why no coders have come forward to complain or object to it. (^;)

Reply Score: 2

Question is a complex one.
by oiaohm on Tue 22nd Mar 2011 00:42 UTC
oiaohm
Member since:
2009-05-30

Issue is macros and inline.

If headers only include structs and function calls including it the license of the header does not effect the rest of the work. In the USA atleast.

Note those items are still copyrighted by the first copyright holder.

Now if the headers contain macros and inlines copied across they are active code. No different to linking a .c file into your binary that is GPL if you use them.

Few legal problems stripping of copyright notice very much like Novell did with BSD and paid a high price. 2 it was a program that processed the data. Legally if program processing the data has not been ruled if that resets copyright.

Yes if I type a new copy of the struct and the interface functions even if it looks the same since I typed it the copyright is mine. Legally is a computer program allowed to also do this. Has data processed by a program changed copyright.

Because this does open up some scary facts if it does.

One of the issues being argued over in the Orcale case against Google on java is the use of decompliers and its effect on copyright.

Technically Orcale lose and we might be legally allowed to used a decomplier to pull programs to bits and rebuild them under a different license.

This is a true pandora for copyrights of mixed works as well.

Reply Score: 1

not that complicated
by TechGeek on Tue 22nd Mar 2011 02:19 UTC
TechGeek
Member since:
2006-01-14

AFAIK, header files are NOT copy-writeable. They are similar to book titles.

As for machine generated code, you still start with something that is copyrighted and make a copy of it, at least into memory. There is also the issue that the code is still essentially the same. While it may differ a little, the vast majority of it will be the same in structure making it a derivative work.

Reply Score: 2

RE: not that complicated
by Carewolf on Tue 22nd Mar 2011 11:51 UTC in reply to "not that complicated"
Carewolf Member since:
2005-09-08

Well in general. While there is no issue here, the copyright status of header files is not that simple.

Header files are supposed to be interface descriptions, and interfaces can not be copyrighted.

On the other hand, C and C++ makes no distinction between source files and header files, and it is very easy to put non-interface code into the header files, inlined functions, templates and comments are all copyrightable, so you can not make a blanket claim.

Still this is rather stupid. The Linux system-calls are not only header files they are the published APIs for the operating system, they are published for the very purpose of being used by all types of software.

One thing strikes me as odd though: Why did Google feel the need to change the license header? The very fact that makes it legal for them to do so, is the very fact that makes it completely unnecessary.

Edited 2011-03-22 11:52 UTC

Reply Score: 3

Linus Torvalds weighs in
by lemur2 on Tue 22nd Mar 2011 08:53 UTC
lemur2
Member since:
2007-02-17

http://www.groklaw.net/article.php?story=20110322014831856

Linus calls these claims bogus. Userland programs are not derivatives of the kernel, there is no copyright violation, and indeed userland programs are *expected* to use the kernel header files in order to interface with the kernel.

Way back in the early days of Linux, shortly after Linus Torvalds switched the kernel from his own "non-commercial" license to the GPL, he also added an important clarification to the kernel's license. In the COPYING file at the top of the kernel tree since mid-1993, there has been a clear statement that Torvalds, at least, does not consider user-space programs to be derived from the kernel, and thus are not subject to the kernel's license:

This copyright does *not* cover user programs that use kernel services by normal system calls - this is merely considered normal use of the kernel, and does *not* fall under the heading of "derived work".

Reply Score: 6

Spelling nazi..
by rohandhruva on Tue 22nd Mar 2011 12:17 UTC
rohandhruva
Member since:
2008-02-05

Unrelated to the article: I've noticed that you tend to use UK English in your articles. In that case, it should be "sceptical", instead of "skeptical".

Reply Score: 1

Kuhn' argument?
by melgross on Wed 23rd Mar 2011 00:39 UTC
melgross
Member since:
2005-08-12

Kuhn's argument is as unsatisfying as he says Naughton's is. Neither is a full analysis. All that Kuhn is really saying is that Naughton hasn't fully analyzed this. He isn't actually saying that he's wrong, just that he might be, or that he might only be partly correct. But neither has he done any analysis. In fact, his own arguments are mere speculation.

This does need further work. But for now, it doesn't look good for Google.

Edited 2011-03-23 00:41 UTC

Reply Score: 1

Short memories
by unclefester on Wed 23rd Mar 2011 07:03 UTC
unclefester
Member since:
2007-01-13

I recall that Apple Inc was sued by Apple Records. Part of that settlement was that Apple Inc was not to sell music.

Oops! Posted under the wrong article.

Edited 2011-03-23 07:04 UTC

Reply Score: 2

Comment by littlegeek
by littlegeek on Thu 24th Mar 2011 02:16 UTC
littlegeek
Member since:
2010-08-16

I wonder why google hadn't started with *BSD, why do they use Linux which is obviously not business friendly.

Reply Score: 1