<div dir="ltr">Thank you for the reply.  The GPL-LGPL dual solution is one I had in mind and with your feedback sounds even more inviting.<div><br></div><div>My program is in fact functional without the SDRIO drivers, reading recorded files instead of streaming from an SDR device.  All of the core functionality is still there.  And I do have the capability of distributing SDRIO separate from my program, so that should not be a problem either.</div>
<div><br></div><div>Unfortunately, I cannot release the program as-is due to the use of a proprietary library (used with permission to incorporate, but not to distribute source).  It may be that I can make a version without that library and I will strongly consider GPLing it in the future.  In the meantime, I would like if others could use SDRIO with maximum flexibility (i.e., use it in programs that are not pure GPL).</div>
<div><br></div><div>-Scott</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Feb 28, 2014 at 12:59 PM, Adam Nielsen <span dir="ltr"><<a href="mailto:a.nielsen@shikadi.net" target="_blank">a.nielsen@shikadi.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="">> My code has been in development, and for various reasons--the largest<br>
> being the desire for transmit support--I have developed my own HW<br>
> abstraction layer called SDRIO.  At the moment, I support rtl-sdr,<br>
> bladeRF, and Funcube Dongle devices via the abstraction layer.  The<br>
> layer will, of course, be GNU licensed and thus free for anyone to<br>
> modify or extend.<br>
<br>
</div>There are many GNU licences with differing terms, so this will depend<br>
on which GNU licence you select.  If you choose LGPL for example, then<br>
what you propose isn't a problem.  But if you choose GPL, I believe that<br>
what you want to achieve may not be permitted.<br>
<div class=""><br>
> My intent is thus for SDRIO to live in the same niche as ExtIO and<br>
> thus have the blessings of the developers.  I'm aware that you cannot<br>
> give legal advice; my hope is only that, if someone comes to me<br>
> saying I violated the rtl-sdr license, that at least I can tell them<br>
> that I've talked with the lead developers and that they've given me<br>
> the same permissions as the ExtIO developers.<br>
<br>
</div>I'm not a developer on this project (nor a lawyer), but I will point out<br>
an entry from the GPL FAQ[1]:<br>
<br>
  If a library is released under the GPL (not the LGPL), does that mean<br>
  that any software which uses it has to be under the GPL or a<br>
  GPL-compatible license?<br>
<br>
    Yes, because the software as it is actually run includes the<br>
    library.<br>
<br>
This means that if you release your library under the GPL, then your<br>
entire program must also be released under the GPL.  If you wanted to<br>
use your SDRIO system with a closed source program, you would need to<br>
release it under the LGPL.<br>
<br>
However since librtlsdr is released under the GPL, you don't have a<br>
choice here and must release any code using librtlsdr as GPL also.<br>
<br>
There is one possible way out, however.  Since you are the developer,<br>
you are able to dual-licence your own code.  This means you can dual<br>
licence SDRIO as both GPL (to keep librtlsdr happy) and some other more<br>
permissive licence, and use the other licence yourself to link it with<br>
your closed-source program.<br>
<br>
This means however that you would not be able to distribute your program<br>
with librtlsdr (because then the GPL licence would take precedence),<br>
just like ExtIO programs do not include open-source ExtIO modules and<br>
require users to install them separately.<br>
<br>
In other words, your program must be functional and usable without any<br>
of the GPL'd SDRIO modules present.  Users can add these themselves to<br>
provide more functionality, but if you require any GPL'd SDRIO modules<br>
to be present in order for your program to be usable, then it is clear<br>
that the SDRIO system only exists to circumvent the requirements of the<br>
various licences and would be legally questionable.<br>
<br>
Perhaps you would consider releasing all your code under the GPL<br>
instead, for the benefit of everyone?<br>
<br>
Cheers,<br>
Adam.<br>
<br>
[1] <a href="http://www.gnu.org/licenses/gpl-faq.html#IfLibraryIsGPL" target="_blank">http://www.gnu.org/licenses/gpl-faq.html#IfLibraryIsGPL</a><br>
<br>
</blockquote></div><br></div>