[Coin-discuss] Open-source Modeling Languages

Brady Hunsaker hunsaker at engr.pitt.edu
Wed Nov 21 09:38:19 EST 2007


Kipp Martin wrote:
> Hi Michal:
> 
>>
>> I am not a lawyer either, so please correct me if I am wrong:
>>
>> Since CPL is very generous about the usage of the code, the authors of 
>> GLPK could indeed include any CPL-licensed code into GLPK and 
>> distribute the whole package further under GPL - both as a source and 
>> as a binary (+ access to source, as GPL requires).
> 
> Good point. I think this would take care of Brian's question. Can 
> someone verify this true?
> 
> Thanks Michal!
> 

As Andrew Makhorin has pointed out, the CPL and GPLv2 are incompatible. 
  I'm pretty sure that the CPL and GPLv3 are also incompatible.

It is true that the CPL is generous about binary release terms. 
However, it is not so generous about source releases: I'm pretty sure 
they must be under the CPL (or the same conditions as the CPL).  The GPL 
requires that if you release binaries, you also release source (both 
under the GPL).  So releasing a binary under the GPL requires releasing 
source under the GPL, but the source release must also satisfy the CPL, 
and I'm pretty sure this won't work even for GPLv3.

License incompatibilities are frustrating, but I think they are an 
inevitable part of open-source software.  In the long run, I expect it 
means there will be some "reinventing the wheel" for various licenses.

For software that I write, my first choice is usually a dual license 
CPL/GPL so that either body of software can make use of it.  But it's 
understandable that some people prefer only the CPL (which is a little 
more permissive and therefore company-friendly) while others prefer only 
the GPL (which enforces a stronger share-alike requirement).  I don't 
think it's possible to find complete agreement on these issues.

As Michal has pointed out, it's always possible to mix code at the user 
level, which is good for those of us on the frontier.  This will help us 
evaluate how important it is to incorporate a given feature.  If it is 
important enough to be worth reimplementing under a different license, 
then we are in a position to talk to the person who has the current 
implementation and ask nicely about relicensing.  If we're really 
committed to reimplementing, we can make this clear to the copyright 
holder.  Perhaps we can commit to helping maintain that part of the code 
if it is relicensed.  But I expect in the end often people will not want 
to relicense for the reasons given above.  In that case we'll have to 
follow through on reimplementation if it's important enough.

Brady

> 
> 
> 
>>
>> On the other hand, if any COIN-OR project wanted to use some GPL'ed 
>> code (such as a part of GLPK), the whole package would have to switch 
>> to GPL.  (This is one of the main features of GPL license, based on 
>> the idea that this way the open source (read GPL) will spread and 
>> eventually conquer the world - while people from the "other site" call 
>> it a "viral" license.)
>> This is why some of the previous emails mentioned that we would have 
>> to ask very nicely the authors of GLPK to allow dual licensing, i.e. 
>> to release GLPK under both GPL and CPL - though I am pretty sure they 
>> won't do it, for the above reason.
>>
>> On the other hand, it is important to remember that all these licences 
>> are about re-distribution of the code. You as a user can freely mix 
>> COIN-OR and GLPK code, as long as you do not distribute the code 
>> further. This is why some of the COIN-OR codes have the "Third Party" 
>> bit, including only scripts to download libraries that are under 
>> licenses that are not CPL-compatible. This way, the user can download 
>> the libraries (and COIN is safe, since they do not distribute them) 
>> and then it is up to the user to adhere to all the licenses involved.
>>
>>
>> Hope this helped.
>>
>> Regards,
>> Michal
>>
>> _______________________________________________
>> Coin-discuss mailing list
>> Coin-discuss at list.coin-or.org
>> http://list.coin-or.org/mailman/listinfo/coin-discuss
> 
> 




More information about the Coin-discuss mailing list