I'm very curious about this: Lets say that you have to use the GPL in your library because some dependency uses it or (if your library is fork) the upstream library uses GPL. Now GPL doesn't play well with a couple of important open source licenses which means that some users simply can't use your librar because of licensing issues, which doesn't help anybody

An option that I've been toying with is still using GPL to maintain dependency compatibility but telling users that I will not enforce it against open source software or (if that's way too broad) software that uses open source but not completable licenses like Apache, MPL, CC, etc.

Would there be any legal ramifications of doing this? Would this put my users at legal risk?

  • 2
    Sounds like you really want the LGPL. Commented May 25, 2012 at 15:54
  • @CrazyEddie Must be GPL to comply with license
    – TheLQ
    Commented May 25, 2012 at 18:52

3 Answers 3


You would be the one responsible for enforcing the GPL on anyone who uses your project, so if you have no intention of enforcing it then your users would only have to worry about you lying in an attempt to trap them. They may also have to worry about the owner of whatever GPL library you link to, due to the viral nature of the GPL. Your best option is to find a way to circumvent having to release your project under the GPL, as its really the only "safe" method.


Your best option would be to structure / package your library such that users of your library would not be bound by the GPL. The FSF FAQ describes a few means of how this can be achieved.

This is the "viral" aspect of GPL, and yes, you would potentially be exposing your future users to legal issues. More importantly, most users wouldn't / shouldn't use your package for risk of violating the GPL.

Here's why.

 the copyright holders of the software are the ones who have the power to enforce the GPL

You stated that you are working on a forked project that is GPL'd, so you are not the sole copyright owner of the product. So while you may rescind your right to enforce the copyright, you cannot make that claim for all of the other copyright holders unless they have also made that claim. At which point, the project is public domain and not GPL but that's off topic.

If your users only use your library for internal, never-distributed-to-the-public applications, then they would be okay with using your libraries. I suspect that's not your target audience though.

As I alluded to, there are several options that you can consider depending upon which version of the GPL is in effect. For example, if your users can call your library / use its output after a fork or an exec, then your library is not considered part of their application. You may be able to relicense your fork of the project to a more compatible GPL version. Check out the following links to see what's going to work for you.

http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins http://www.gnu.org/licenses/gpl-faq.html#LinkingWithGPL

Their FAQ is well worth the read and you will discover quite a few options to work with.


Problem is that if your library uses a GPL library, then the author of that library may confront the users of your library too for not conforming to the library license.

It is not enough just to say that you will not do this.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.