
Originally Posted by
m^2
Copyright and patents have little in common. No license can prevent such thing from happening, though patents that cover unoriginal inventions are invalid by definition.
As to license, GPL v3 is not technically incompatible with 7-zip (which is public domain) in the sense that anyone can mix both codes and use in any way that doesn't break GPL.
It is incompatible with GPL v2 though and there are many codecs that use it. Also, it's incompatible with CDDL and there's at least 1 codec covered by it. These can't be legally distributed in a mix with your code.
GPL was designed so a combination of GPL with other code is practically GPL and projects that chose notably different licensing schemes are unlikely to be willing to take your code. Using a less restrictive scheme is the only thing you can do to make the deal acceptable for them.
So I suggest that you consider 3 choices:
- Dual licensing under GPL v2 and v3. It solves the issue for GPL projects, doesn't for anyone else, but is the closest to what you have now.
- A permissive license. Matt listed 2 popular choices. Anyone can use your code in any way, but they have to mention that you're the author of your code. Might not solve the issue for some purists (7-zip?), but I guess it's good enough for 99% of projects.
- Public domain. Really, not much different from the second option, 99% of people will keep naming you as the author because it's the right thing and heck, why not.