[MonoDevelop] Licensing concerns.
Wed, 14 Jul 2004 11:30:32 +0200
it is somewhat saddening to see this kind of bickering going on.
First of all, I'd suggest
a) reading the GPL - not just skimming, but reading it. In my (sad)
experience most people tend to only look at the short text.
b) reading the GPL FAQ. <http://www.fsf.org/licenses/gpl-faq.html>
This way I am sure we will all form a common base for constructive
Some points I personally find pertinent to the issue at hand are:
1) The definition of what is compatible licensing:
"In order to combine two programs (or substantial parts of them) into
larger work, you need to have permission to use both programs in this
If the two programs' licenses permit this, they are compatible. If
is no way to satisfy both licenses at once, they are incompatible."
For some licenses, the way in which the combination is made may
affect whether they are compatible--for instance, they may allow
linking two modules together, but not allow merging their code into
What does it mean to say a license is "compatible with the GPL".
It means that the other license and the GNU GPL are compatible;
you can combine code released under the other license with code
released under the GNU GPL in one larger program.
The GPL permits such a combination provided it is released under
GNU GPL. The other license is compatible with the GPL if it permits
Regarding this it might also be worth reading this
A list of licenses compatible and incompatible with the GPL can be
Please note that there seems to be quite a bit of confusion regarding
X-licenses. It is imperative that you set down *exactly* which one
refer to and then clear up with the FSF whether this would be
2) The licensing status of the monodevelop code as to date:
Monodevelop is derived from a GPL'd work. Therefore *all* code in
monodevelop is GPL'd by default.
Even though the term proprietary is used, this applies to all other
licenses (if not compatible in the sense of the definition above).
3) Licensing of future contributions:
"If I add a module to a GPL-covered program, do I have to use the GPL
the license for my module?
The GPL says that the whole combined program has to be released
under the GPL. So your module has to be available for use under the
But you can give additional permission for the use of your code.
can, if you wish, release your program under a license which is more
than the GPL but compatible with the GPL. The license list page gives
partial list of GPL-compatible licenses. "
This means in a nutshell that in monodevelop, the code would be GPL,
may be used *without* linking to the GPL'd code in other, independent
products under a different license. Or to state this in a different
manner: if your code *does not in any way implement or depend upon
of the GPL'd code (even if they are 'only' data structures,
function calls)*, it may be dual-licensed. For a definition of
the GPL sense, refer to 5) below.
4) Tainting clauses in the GPL:
There are no 'tainting' clauses in the GPL. The LGPL was created
expressly to allow linking against code under different licenses.
And to adress a specific example given in this discussion:
>The 'Tainting' of non-GPL licensed code only happens when you ship
>code as a linked binary. As source, different files can retain their
The same code cannot be licensed differently in binary or source
form. The code as such is identical, only the expression varies in
5) Plug-in licensing:
"If the program dynamically links plug-ins, and they make function
calls to each other and share data structures, we believe they form a
single program, so plug-ins must be treated as extensions to the main
program. This means they must be released under the GPL or a GPL-
compatible free software license, and that the terms of the GPL must
followed when those plug-ins are distributed."
This is the case with the #develop/monodevelop plug-in architecture.
This hopefully contributes to a clearer understanding of the issues
#develop senior word wrangler
This email is confidential, and now that you have read it you are legally obliged to
shoot yourself. Or shoot a lawyer, if you prefer. If you have received this email in
error, place it in its original wrapping and return for a full refund. By opening this
email, you accept that Elvis lives.