I have an open source project which I distribute under BSD license. I would like to include parts of iwlib.c, which is part of iwlib project, and which is released under GNU GPL 2. To my understanding this is not possible unless I also change the license of my project to GPL 2, which seems quite silly. Is this correct? Can I overcome this limitation by, say, changing the code a bit (e.g. by changing variable names, removing comments etc)? Or by asking permission to the author?

  • 1
    It's not silly, it's the entire point of the GPL license. You don't get to take advantage of the GPL project unless you commit to giving your users the same rights as those you use the GPL code under. You can always ask the author for an exception, but why would they give you one? Changing the code a little would not be a legal way around the license. Commented Oct 12, 2020 at 22:14
  • 4
    @curiousdannii, why not write that as an answer. Commented Oct 13, 2020 at 5:34
  • I understand. Thanks for the replies. Then I must conclude that the main goal of GPL is literally to spread itself as a license as much as possible (as opposed to facilitate the flourishment of open source code).
    – Mirta
    Commented Oct 14, 2020 at 12:28
  • 2
    To understand the philosophical underpinnings of the GPL, the preamble of the license text itself is a pretty good place to start. Perhaps the fairest way I can restate your above statement is that the GPL strives to disadvantage/exclude proprietary software at all costs, versus permissive licenses which strive to propagate code while being agnostic about proprietary use. Stallman (the first author of the GPL) is nothing if not philosophically opinionated, so he naturally created a very opinionated license.
    – apsillers
    Commented Oct 14, 2020 at 14:05
  • The goal of the GPL is to ensure that open source projects remain open source. You should read The History of the GPL which outlines the events that led to the creation of the license. After reading that article, it should make 100% perfect sense why the license works the way it does.
    – Felix G
    Commented Oct 15, 2020 at 9:40

1 Answer 1


You cannot overcome this limitation by changing the code a bit. The GPL specifically protects against this, and, arguably, it is the central idea of the GPL.

Your only options are:

  1. Change your license,
  2. Ask the author if they will license their code to you under a different license, or
  3. Find or create an alternative implementation with a BSD-compatible license.

Note that option #3 may also violate the GPL if you choose to write your own replacement and you don't do it cleanly from the ground-up (thus without looking at the original work as reference or ideas).

  • I hope you agree with the small addition with which I try to make even more clear what 'from groud-up' means. If not, feel free to revert Commented Oct 14, 2020 at 16:34
  • @planetmaker Thanks.
    – Eric
    Commented Oct 14, 2020 at 16:44

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.