GNU Radio and GPL licensing issues (again)

This is similar to the original discussion from 2004; see, e.g.:
< discuss-gnuradio (date)
msg00086.html >

My dissertation will involve using GNU Radio in some capacity - e.g.,
through a “compatibility layer” into the code that I’m writing. The
details of my dissertation aren’t relevant to this discussion. The
“compatibility layer” file (or set of files) will be the only
programming that includes GNU Radio-specific programming; all of the
rest of the programming for my dissertation will be of my own
development. The “compatibility layer” is for convenience - to make
use of certain, but not all, GNU Radio signal processing blocks (why
reinvent a perfectly good wheel?) and certain other features provided
by GNU Radio - but is not required for functionality of the rest of
the programming.

I understand from the afore-mentioned discussion, as well as from
reading the GPLv3, that my “compatibility layer” programming -must-
be GPL’d in order to comply with the original license of GNU Radio
(since it will use “#include ” and hence forms a
“larger work”).

Can my “compatibility layer” be LGPL’d, or must the license be GPL to
match that of GNU Radio?

Does the rest of my programming -have- to be GPL’d, because it -can-
(but is not -required to-) make use of my “compatibility
layer” (which must be GPL’d somehow), which in turn makes use of GNU
Radio?

In order for me to be able to choose my dissertation code’s license
(which might end up being GPL; I haven’t decided), do I need to
further separate the programming between my “compatibility layer” and
the rest of the code, e.g., via a pipe or socket (such that these 2
parts can be 'exec’d separately)?

In my reading of the GPL-FAQ, it seems like most of the answers are
“it depends” … thus I’m hoping that someone here might have more
precise knowledge.

Thanks in advance for any advice! - MLD

Michael-

Really, really good questions, well formulated. I’m very interested to
see the
answers – or advice – you receive on the forum.

-Jeff

What are your plans for the source code you create during your research?

  • Are you only writing this code to support your research?

  • Does your school require you to clear all the licenses for code you
    may use in the course of your research? Some schools (most?) will claim
    some IP rights to all research done on campus - they may want you to
    ensure they’re not infringing by using the results of your work.

  • Will you be releasing the source code when you’re done?

  • Do you plan to create a product (freely released or for sale)?

All of these things factor into how you handle the licensing.

Eric

Thanks for the responses thus far (both on and off list); I will
summarize once the topic has reasonably finished discussion.

As a follow-up to answer the current and important questions, please
assume that:

  1. I plan on distributing the source code, or making it available via
    some means, once the dissertation is finished. Hence the need for
    more info about my particular scenario, up front, so that I can make a
    (better) educated decision about the matter before I get too far into
    the programming.

  2. I’ve negotiated with my university to allow me to choose the
    license, if I’m able, with the sole constraint being that I provide
    the university with a license free of any charges. The GPL would
    suffice for this license, but others would too.

  3. I’m interested only in figuring out whether or not the 2 parts of
    my software are required to be GPL’d because of their direct and
    indirect use of GNU Radio, and which license variant of GPL I can
    choose, if any and if required.

First, you seem to be in need of actual legal advice from someone
qualified and licensed to provide it.

Your question has a serious misconception, that code has a single
license. The GPL cannot require that other code be under the GPL; it
can only prohibit distribution of a derived work unless some conditions
are met. Typically this is “in order to distribute the derived work
from GPL component foo, you must also distribute the entire source code
for the derived work under the GPL”.

However, there is no reason why you cannot have work bar (all of which
you wrote), and GPL work foo, and link them to a derived work baz, and
then distribute baz and bar under the GPL, and also (not instead)
distribute bar under some other license, such as “If you pay us $10K you
can do whatever you want”. The point is that code being available under
the GPL does not prevent or prohibit proprietary derived works; it’s the
lack of availability under a proprietary-compatible license that
prohibits that.

The issue of whether the source code of a program that #include’s header
files and expects to link against libraries (where the headers/library
are GPL only) is a derived work is a murky question, and here you are
particularly in need of actual legal advice. My current impression is
that there is not settled case law in this area, but IANAL, TINLA.

If you are an RA, the university may hold copyright under the
work-for-hire doctrine, and I would advise resolving all these issues
before the code is written.