Is it compatible with the GPL to construct (and distribute in binary and source form) a GPL licensed program with a "programming language" that only I have the compiler for and which I do not license to anyone?

E.g. something called C$ that compiles to MSIL with my own proprietary tool, but which does not compile with a C# compiler. The App would however use other modules (by other authors) that I use in the App and redistribute under the terms of the GPL as well.

Of course anyone using the App would be given the C$ source code as the GPL requires - just not the compiler. This way nobody could effectively compile or use the GPLd parts of the source code written by me in C$, and I could use GPLd modules as I please without effectively making the source code of my Application usable for anyone.

Would that be compilant?

  • If I distribute a compiler (under GPL, or whatever) it isn't the case anymore that "only I have the compiler for the language". Please rethink your question, as it stands it makes no sense.
    – vonbrand
    Jul 16 '21 at 16:34
  • 7
    @vonbrand I think the question is clear: can you release GPL-licensed code when you need proprietary (or even unavailable) tooling in order to obtain a binary Jul 16 '21 at 17:35
  • @vonbrand, planetmaker is right: the compiler would not be distributed, the source code that only this compiler can compile would
    – Andi
    Jul 17 '21 at 10:55
  • 2
    @vonbrand The question is concerned with a case where one is compelled, due to third-party GPL requirements, to release source code. Does the release of code in this way satisfy the third-party requirements for the author to disclose their source code? i.e., if Bob modifies Alice's GPL program and publishes a binary with source code in a way that requires use of an unreleased compiler to produce the binary from source, has Bob satisfied Alice's GPL requirements? The answer may be that it is allowed, but I think "I can release whatever I want under GPL" doesn't quite address the question.
    – apsillers
    Jul 17 '21 at 22:06
  • 1

I feel that congusbongus' accepted answer pretty much nails it (thanks @brandin for the link):

Do you violate the GPL if you provide source code that cannot be compiled?

The compiler would have to be freely (or maybe "easily", like in the case of Visual Studio) available, otherwise one could argue that an important part of the "corresponding source" (even if it does not specifically mention compilers) is unavailable and thus the GPL is violated.

I feel that a court might not only take the letter of the license but also it's spirit into account. Yet it is not crystal clear and would have to be tried in court.

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