lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Lilypond \include statements and the GPL


From: David Kastrup
Subject: Re: Lilypond \include statements and the GPL
Date: Tue, 02 Apr 2013 16:33:34 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux)

Joseph Rushton Wakeling <address@hidden> writes:

> On 03/30/2013 01:02 AM, Alexander Kobel wrote:
>> On the other hand, user C /should/ be allowed to distribute source code under
>> whatever license he wants to /as long as he doesn't ship the GPL
>> libraries with
>> it./  It's useless without them, but anybody who wants to run or compile the
>> code is free to download the necessary GPL'ed stuff.
>
> If I write a computer program which uses functions from a GPL'd
> library, it doesn't matter whether I distribute an executable or just
> source code, and it doesn't matter whether I distribute the source
> code alongside the GPL'd libraries or as an individual file.  It's a
> derivative work under the GPL and must be licensed accordingly when
> distributed.

Fine point according to my understanding: it is not a derivative work as
such, but if its intended use is not possible without _forming_ a
derivative work at the client's side in a mechanical manner, the
distributor is indulging in contributory infringement as the client acts
on the distributor's behalf for making the delivery perform its intended
function.

It is somewhat like distributing bullets and gun (or gun parts trivially
to assemble) as separately listed items and claiming that this does not
constitute a weapons sale.

Or trying to claim firewood taxing for distributing self-assembly
furniture.

Or something.

> Perhaps you are thinking of e.g. the case with UNIX shell scripts,
> where e.g. I can write a script that calls GNU sed without having to
> license my script under the GPL.  But this is because there's no
> dynamic linking that takes place when I do so -- I'm starting an
> independent process and receiving its output.

A separate process is a pretty solid boundary unless you actually use
some debug interface for meddling with the internals, or if you have
something like a Scheme interpreter which you severely redefine via an
elaborate input file.

-- 
David Kastrup




reply via email to

[Prev in Thread] Current Thread [Next in Thread]