views:

201

answers:

7

I want to use some open source code that is licenced under the following "GNU General Public License (GPL), MIT License". I want to include this code in a product that i will sell.

Here is the code in particular

What do i have to do to not get sued? :)

I dont mind distributing the source code that i have modified, but i dont want the whole application open source.

If i build the open source code into a library and open source the library can i link to it and not open the rest of my source?

EDIT: In the project it has the following

"The mda VST plug-ins are released under the MIT license or under the GPL "either version 2 of the License, or (at your option) any later version"."

A: 

The MIT license might be compatible with your goals, but the GPL isn't. You would still have to open your source code under the GPL.

It looks like the package you referenced allows you to choose the license you want.

Robert Harvey
just found the licence.readme in the project. it seems to state that you can choose your licence.
Tempe
(see the edit i made)
Tempe
A: 

On September 8, 2005, Seoul Central District Court ruled that GPL has no legal relevance concerning the case dealing with trade secret derived from GPL-licensed work.[46] Defendants argued that since it is impossible to maintain trade secret while being compliant with GPL and distributing the work, they aren't in breach of trade secret. This argument was considered without ground. Note that this contradicts what FSF claims in GPL FAQ.[original research?]

Check this out

Dremation
irrelevant. code is not a "trade secret" it's a copyrighted work.
SpliFF
You can argue trade secret with code. Check every Microsoft patent and copyright claim. You'll see that a majority of the source has been excluded claimed as "Trade Secret Material"
Dremation
A: 

It depends whether the software is offering you a choice of licenses, or whether it includes code under two different licenses. If the former then you can use it under the terms of MIT, of the later you will need to remove the GPL'ed parts first.

It doesn't matter what the MIT license promises if the other license is not optional then you must comply with the limitations of both.

SpliFF
A: 

You only have to distribute the source code to the clients you sell the application to. See here http://stackoverflow.com/questions/2534205/practical-ways-around-the-gpl-closed. Also, MIT and GPL are different licenses, with MIT being less restrictive.

BlackVoid
A: 

From what I can tell, the software is dual-licensed as either MIT or GPL. That means you can choose whichever license is more suitable to your situation.

While you can use an MIT licensed library in proprietary software, I'd say it would be courteous, if nothing else, to let the author know what you're planning to do.

Dean Harding
+1  A: 

You will have to look specifically at the individual bits of code to know how each is licensed. While the GPL and MIT license are "incompatible" that does not mean that the code can not be licensed using both licenses. The GPL license may well be there so that folks using the GPL can include it in their projects, while the MIT license is there to let others, not using the GPL, use it in there projects.

If that is the case, that the code is dual licensed, then you would simply choose to use the MIT license for the code you wish to include in your project, instead of the GPL license.

If the two licenses are mentioned because "some are GPL and some are MIT" (this was not clear with a 10 second look at the Sourceforge page), then you would have to know which applies to which module.

Either way, a simple note to the author should easily clarify the status of the code you specifically wish to use.

Will Hartung
+1  A: 

It all depends on _how_you_link_ with GPL covered code. If a library that you want to use is covered by the GPL (not LGPL) and you link against it, your application must be distributed under the terms of the GPL. The license considers your application and the library working together as a combined work.

If you are just distributing independently linked GPL programs along with a proprietary program and they all work together (but never link together), you are fine. The one exception is the intermediary output of gcc, however that's only interesting if you are writing a gcc plug-in.

If you are not ready to distribute any part of your code that links against the GPL code under the same license, you can't use the GPL code. Please note, selling has nothing to do with it, all the GPL cares about is distributing, gratis or for a fee, doesn't matter.

You can't enforce more restrictions than the GPL dictates on a program that uses GPL code. Likewise, you can't enforce fewer restrictions for the same reason.

For instance, if I write a command line program and I want to give it line editing capabilities and a history, I might link against (and use) libreadline, which is GPL. However, if I distribute my new program with a dependency on readline(), I must license the program under the GPL. This is why libedit / libeditline was created under the 3 clause BSD license with a fully compatible API.

Any C program will link against glibc, it must. Because glibc is LGPL, I am not required to inherit the license in my own code.

The library you referenced allows you to choose what license you want, I usually don't use dual licensed libraries unless I can confirm a sole owner of the copyright. If you can confirm that, just use the library under the terms of the MIT license.

Tim Post