Re: GPL and command-line libraries
Once upon a time Wesley W. Terpstra said...
> Good evening!
> I'm developing an error-correcting code library which works on a lot of data
> at once. Since the API is quite simple and the cost of process creation
> relatively insignificant, I would like to provide a command-line API.
> To the point: I want this library to be released under the GPL, BUT ...
> Would the GPL still protect it?
> If someone writes a program that does: popen('my-api');
> does the GPL require that program to also be GPL?
> From the short answer I got on IRC it seemed the answer was: No!
I would think the answer is Yes!, assuming that Mr Wontshare is
distributing your program with his.
Section 2 of the GPL says:
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
It would seem irrelevant how the two programs are "linked", whether
through popen(3) or dlopen(3). I can't see copyright law making a
distinction between these two library calls. I know the GPL FAQ says
otherwise, but I dont see why.
Furthermore, Mr Wontshare's software could possibly be determined to be
a derative work of yours in which case your licence will apply.
Unfortunately as far as I know, whether or not something is a derative
work is typically determined on a case by case basis, with little or no
guiding rules as applied to software.