Mailing List Archive
tlug.jp Mailing List tlug archive tlug Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]Re: [tlug] JFS file system license
- Date: Thu, 30 Oct 2008 09:17:17 +0900
- From: Curt Sampson <cjs@example.com>
- Subject: Re: [tlug] JFS file system license
- References: <78d7dd350810270153q4f4d2840wb161cbc9ab46659a@mail.gmail.com> <490594AF.9040001@bonivet.net> <78d7dd350810270354m28fc3489p438883a445448631@mail.gmail.com> <87tzaxfox2.fsf@uwakimon.sk.tsukuba.ac.jp> <78d7dd350810270153q4f4d2840wb161cbc9ab46659a@mail.gmail.com> <490594AF.9040001@bonivet.net> <78d7dd350810270354m28fc3489p438883a445448631@mail.gmail.com> <4905A052.2020200@bonivet.net>
- User-agent: Mutt/1.5.17 (2007-11-01)
On 2008-10-27 11:04 +0000 (Mon), Godwin Stewart wrote: > Dr. T. was far more accurate in saying that you don't have to do so > if your application doesn't *contain* GPL'ed code. Just because you > invoke fopen(), i.e. your application is linked to libc, doesn't mean > you incorporated that part of libc in your application. Assuming you're dynamically linked, ld.so (the runtime linker) certainly *did* incorporate that part of libc into your application when it was loaded and run, and at the explicit instruction of your program binary. I've just run into this issue recently with a Ruby library. If I require it, there's no question that I'm "incorporating it into my application," though only at runtime. Is it considered "incorporated" if I include the file in the set of files with which I distribute the application, even if I don't ever require it? Presumably not. In fact, here's a really interesting example. NetBSD distributes gcc (GPL) as part of the OS. It's thought that since gcc is an entirely separate application, its GPL doesn't conflict with NetBSD's BSD libc license (BSD license), and I can bundle these together and sell you a binary copy of NetBSD with a modified libc for which I don't give you source. Sounds reasonable so far, right? But wait! gcc, as distributed with NetBSD, links (dynamically) to libc, and worse yet, even the gcc binary has bits of BSD-licensed code statically linked into it. (These are the stubs that help bring in and start ld.so, the runtime linker.) So does gcc infect these stubs? Does it infect libc? I think all but the most radical GPL advocates would say no. (And I note that even Stallman doesn't appear to object to this.) But what about the readline library? The readline library is very clearly licensed under the GPL, instead of the LGPL, in order not to let you use it in non-GPL'd programs. But presumably I can distribute this as a shared lib with NetBSD without it affecting anything else, since I'm distributing the compiled code itself as a separate "readline.so" file. What if other things link to it? Well, I should not let non-GPL'd programs link to it, if I'm going to keep the spirit of the license. Yet having the dynamic linker at runtime combine in memory the GPL'd readline library and a non-GPL'd program is no different than having it combine the GPL'd gcc and a non-GPL'd libary. So I'm a bit mystified here; it seems to me that either a lot people out there are violating the GPL by distributing binaries that link GPL'd code at runtime, or, in this age of dynamic linking, anybody can easily get around the limitations authors try to impose by releasing a library under the GPL. Does the GPLv3 say anything about this? On 2008-10-28 11:12 +0900 (Tue), Stephen J. Turnbull wrote: > > And what happens if my Hello World program calls fopen()? > > First, fopen() is part of libc, in a GNU system that's GNU libc. GNU > libc is under the LGPL, so linkage to it can't matter ever. I think that he was trying to say something more along the lines of, "what if it invokes the open() syscall directly, without calling the libc code that does this?" > For a GPLed library, RMS (and his legal beagle) claim that the > "derived work" described in copyright law includes everything in the > same process. Interesting. What is a "process," and what does it mean to be "in" or "outside" of it? Would that be a virtual address space, and "in" it mean any data mapped into that space? If so, note that in most OSes these days that your "process" would also include the entire kernel and any data in the block I/O (disk) buffer cache, such as files you've opened and read. Could opening and reading a file containing a compiled GPL program infect your non-GPL'd program? > Larry Rosen seems to believe otherwise (and therefore the GPL == LGPL, > pretty much, the remaining issue being whether a user has the right to > copy a GPLed work, ie, from disk into the same process memory space as > a non-GPL work---the "GPL doesn't cover running the program" phrasing > would seem to say not but this is tricky). Well, note that some people don't appear to place a lot of confidence in this, in particular the BSD OS folks, since otherwise they would not have rewritten the GPL'd readline library. > Second, the fopen() API is standardized. There are multiple > implementations, so as long as you don't distribute a 3rd party GPLed > libc as part of your Hello World program, you're OK. Hm. So I can't distribute my program binary without source and a companion libsomething.so binary with source together if there's only a GPL'd implementation of libsomething available, but as soon as a free libsomething becomes available, such that I could substitute the compiled free libsomething.so instead of the GPL'd libsomething.so, I'm ok? What if the free one is buggy and the GPL'd one isn't? What if the free one barely works at all, or even doesn't work? What makes an API "standard"? > *sigh*-is-it-time-for-yet-another-licensing-talk-ly y'rs, It's a tricky problem. I'm of the opinion that we need a good lawsuit to solve this. cjs -- Curt Sampson <cjs@example.com> +81 90 7737 2974 Mobile sites and software consulting: http://www.starling-software.com
- Follow-Ups:
- Re: [tlug] JFS file system license
- From: Nguyen Vu Hung
- Re: [tlug] JFS file system license
- From: Stephen J. Turnbull
- References:
- [tlug] JFS file system license
- From: Nguyen Vu Hung
- Re: [tlug] JFS file system license
- From: Godwin Stewart
- Re: [tlug] JFS file system license
- From: Nguyen Vu Hung
- Re: [tlug] JFS file system license
- From: Stephen J. Turnbull
- Re: [tlug] JFS file system license
- From: Godwin Stewart
Home | Main Index | Thread Index
- Prev by Date: [tlug] X11 Session Manager Setup
- Next by Date: Re: [tlug] X11 Session Manager Setup
- Previous by thread: Re: [tlug] JFS file system license
- Next by thread: Re: [tlug] JFS file system license
- Index(es):
Home Page Mailing List Linux and Japan TLUG Members Links