discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] GNURadio and GPL licensing issues


From: John Gilmore
Subject: Re: [Discuss-gnuradio] GNURadio and GPL licensing issues
Date: Sat, 20 Nov 2004 14:00:42 -0800

> I think this is something that may have to be clarified for
> researchers at universities, at least those with "intellectual
> property" offices.

At Cygnus, we discovered that the GPL was a great tool for dealing
with lawyers about modifications to GPL'd code.  They always wanted to
impose some terms on the code that would give them maximum advantage,
even when company management didn't care.  Business arguments and such
didn't work on them.  Negotiations would drag out forever.  What
worked, every time, was to say "The license on the original code
doesn't allow that".  That's an argument that a lawyer can understand.

> So basically, if your application communicates with a GPLed application
> merely through an API or network interface, and doesn't need to use GPLed
> code to do that, then you're in the clear and can do whatever you want
> with your application.

I almost agree with this.  Calling thru a network interface is generally
fine.

If you call GPL'd code via an API, though, you are forming a single
program and must make your whole program GPL.  *Unless* that API is a
standard that's implemented more widely (like the Standard C Library,
the Unix system call interface, the libm math library, the termcap
library, published Windows APIs, etc).  If your program can be
usefully linked to SOME OTHER library that isn't GPL licensed, you're
probably OK (though of course you'll have to meet the copyright terms
for that library, too).  If your program is DEDICATED to calling a
GPL'd library, you are making a GPL program.  (The Lesser GPL was
invented for libraries that the owner doesn't mind having non-GPL
programs linked with.)

What you, I, or Eric think about how the GPL applies is ultimately
irrelevant, though.  The Free Software Foundation owns the code.  It
issues the license.  It will ultimately decide what kinds of uses to
complain about, and what kinds of proprietary uses to sue over.  See
the last half of:

  http://www.gnu.org/philosophy/enforcing-gpl.html

by Eben Moglen, General Counsel (main lawyer) of the FSF.

> http://www.gnu.org/licenses/gpl-faq.html#MereAggregation
> http://www.gnu.org/licenses/gpl-faq.html#GPLInProprietarySystem

These are both good explanations.  The first says:

> This is a legal question, which ultimately judges will decide. 

and

> ... pipes, sockets and command-line arguments are communication
> mechanisms normally used between two separate programs. So when they
> are used for communication, the modules normally are separate
> programs. But if the semantics of the communication are intimate
> enough, exchanging complex internal data structures, that too could
> be a basis to consider the two parts as combined into a larger
> program.

In your example of an ATSC reciever with a GUI interface,
communicating via fork()/exec() [command line arguments] and TCP
sockets, it's unlikely you'll be swapping complex internal data
structure, so it would be fine for the GUI to be proprietary.  Though
we hope you'll make it GPL.  :-)

        John




reply via email to

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