4

I have read Can LGPL 2.1 licenses software be re-published under GPL 3.0? and followed link to GPL license compatibility matrix in the GPL FAQ, which is confusing me a bit:

If I understand the table correctly it says that I can take code published under GPLv2 and use it in my fork (even without any modifications?), which I can publish under LGPLv2.1? Doesn't it contradict the original authors' intention (GPL) to disallow their work to be used in a closed source software, which now my LGPL-ed fork allows?

3 Answers 3

13

I do not think you are reading the compatibility table correctly. When I look at the intersection of I want to copy code under GPLv2 and I want to licence my code under LGPLv2.1 I see a box that says OK: Combination is under GPLv2 only.

I read that as saying that you can write some code which you release under the LGPLv2.1, but that if you later combine it with someone else's GPLv2 code you can only release the resulting combined work under GPLv2. I certainly don't read it as permission to relicense GPLv2-covered code under LGPLv2.1, and I've never heard it suggested that such a thing is possible.

I have to admit that I don't find it a very helpful table, since I think it's clear that if I have released code I wrote under Mr. Grumpy's Evil Proprietary Licence That Requires You To Surrender A Kidney, I can still combine that code with someone else's GPLv2 code and distribute the result, so long as I distribute it entirely under GPLv2. But there we go, I didn't create the table.

4
  • 2
    Footnote 7 on the table explicitly says something equivalent to your second paragraph. "7: LGPLv2.1 gives you permission to relicense the code under any version of the GPL since GPLv2. If you can switch the LGPLed code in this case to using an appropriate version of the GPL instead (as noted in the table), you can make this combination." Feb 3, 2020 at 17:26
  • 2
    @DanisFiddlingbyFirelight thanks. I admit I had seen that, which is why the table annoys me. According to the rubric above the table, the LPGL code in question might well be mine, in which case I don't need the LPGL's permission to relicense it, so the table makes no sense in that context. It would be better if they took the issue of personal code off the table, to my mind, and just concentrated on the licence combinations permitted, and resulting licences required, if combining works by third parties.
    – MadHatter
    Feb 3, 2020 at 17:43
  • @MadHatter and DanisFiddlingbyFirelight thank you very much for the answer and comments. I am convinced (once again) that I should switch back to programming and leave license-related issues for dedicated and educated people :)
    – mvidelgauz
    Feb 3, 2020 at 18:19
  • 2
    Upvote for "Mr. Grumpy's Evil Proprietary Licence That Requires You To Surrender A Kidney"! Feb 3, 2020 at 20:06
4

The table is basically wrong. The header says "I want to license my code under LGPL v2.1" so the answer is "no". Including the possibility of a relicense completely muddles things and rather defeats the purpose of the table. If you already own the copyright, as is assumed for the top header, then you can relicense it to whatever you want.

It's basically answering the question "I want to license my code under LGPL v2.1, can I?" with "sure, but you have to use a different licence than LGPL v2.1".

It isn't even assuming that you own the GPL v2 code. If you read the paragraph above it explicitly says

It assumes that someone else has written some software under one of these licenses, and you want to somehow incorporate code from that into a project that you're releasing (either your own original work, or a modified version of someone else's software).

I think the purpose of the odd corner case is that you can relicense someone else's LGPL v2.1 code into GPL v2. But in that case you could just look at the LGPL v2.1 -> GPL v2 entry in the table.

1

If you look at the intent of LGPL, it is a license meant for libraries, to encourage use of free software even together/from closed source. Sort of a stopgap measure, "we can't go GPL free here, no user wants to open all their stuff; as a compromise, this part is free but can be used with non-free parts" (where GPL is all free or nothing). Also, LGPL originally was "Library GPL", today it reads "Lesser GPL".

Allowing GPL --> LGPL transition at the user's discretion would be very much against the whole objective of the licenses. That you are allowed to consider anything under LGPL as GPL also (sort of implicit dual-licensing) is exactly in line with the above.

1
  • Thank you @vonbrand for you answer!
    – mvidelgauz
    Mar 5, 2020 at 17:43

Your Answer

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

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