I have a library released under a license incompatible with the GPL. That library adds some critical feature to the GPL program that I want to modify. And I also want to make the result available to the public, but without releasing the source of the resulting executable (only the original one).

What I have in mind right now is releasing a binary patch to the executable compiled from the legit GPL source. Say, I compile the original GPL code to exe, then I compile the modified one, that adds my incompatible library's functionality, then I do binary diff and only release the file that contains bytes that should be written to the original exe, and where one should put them.

Such a patch doesn't have a single piece of code that the original GPL program has, so it's not a derivative work. It isn't designed to work along with that program either. It just changes some bytes, and it's hard to tell what those bytes do, what they internally are, and what's the source of the library that was added.

Does this approach get covered anywhere in the official docs about GPL?


Unless the diff you plan to release is useful without the GPL binary, you cannot possibly claim that it is not designed to work with the GPL binary.

From the GPL faq at gnu.org (strong type added by me):

However, in many cases you can distribute the GPL-covered software alongside your proprietary system. To do this validly, you must make sure that the free and non-free programs communicate at arms length, that they are not combined in a way that would make them effectively a single program.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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