2011/11/17 Henrik Alsing Friberg <henrik.alsing.frib...@mosek.com>:
> 2011/11/11 Carnë Draug <carandraug+...@gmail.com>:
>> Hi Henrik
>>
>> It seems that your package can't be GPL because it's linking octave
>> with non-free software. I'm not sure we can include it at the moment.
>> I'll try to figure it out first. Would be nice if someone with more
>> knowledged on this legal issues could join in.
>>
>> By the way, are you really one of the MOSEK developers? Is the library
>> itself planning to becoming more free as well?
>>
>> Carnë
>>
>
> Okay, let me give you a little background for the project now that you
> have asked.. The MOSEK optimization library is currently often used
> through the MATLAB interface. Some customers have expressed a wish to
> use the Octave interface instead, while other customers yet again have
> mentioned an interface to the R-project (another open source program).
> So one day, it is decided to hire a guy to develop these interfaces in
> the open source environments, and this is where I joined in. Of
> course, using MOSEK from Octave should not only be possible, but also
> a pleasant experience. So as part of my job, I am allowed (and
> encouraged) to make contributions to Octave if it can be regarded as
> beneficial to the Octave-to-MOSEK interface users. In the case of the
> R-project interface, I have already made several contributions to the
> "Matrix" package. Finally, and naturally, all my interfaces,
> userguides and other contributions have an open source license - i.e.
> GPL / LGPL.
>
> With respect to legal matters of the OctMOSEK package, I can assure
> you that everything is in order. OctMOSEK will be distributed under
> the Lesser GPL license, with explicit permissions from the copyright
> holder (me) to allow dependence on the GPL-incompatible MOSEK library.
> There are three legal questions that must be settled in this regard:
>
> ---------------------------
> (Q1) Can Octave, under the GPL license, make use of packages under the
> lesser GPL license?
> ---------------------------
> (A1) Yes, and for several reasons actually.
>
> (A1.1) GPL-licensed code can only be included in GPL-licensed
> projects, while code that is licensed under the the lesser GPL can
> also be included in other projects. This means that the lesser GPL (my
> package) allows inclusions in GPL-projects (Octave). Furthermore, the
> lesser GPL license is GPL-compatible (see
> http://www.gnu.org/licenses/license-list.html). This means that for
> GPL-projects (such as Octave) it is compatible to include lesser GPL
> code (my package).
>
> (A1.2) Since packages are dynamically loaded from *.oct files, and
> neither package names nor data structures are hard-coded into Octave,
> they form a loose plug-in like relationship. That is, as long as a
> package is not shipped with the binary versions of Octave, it can not
> be considered an integral part of Octave. So with respect to this
> question (Q1) it is legal to load packages into Octave, even when they
> are not GPL-compatible. This can be compared to operating systems
> where closed source software is allowed to execute on the GPL-licensed
> linux kernel.
>
> ---------------------------
> (Q2) Can a package under the lesser GPL license (e.g. OctMOSEK), make
> use of a GPL-incompatible library (e.g. the MOSEK library)?
> ---------------------------
> (A2) Yes, but only if permitted by the copyright holder of the lesser
> GPL-licensed program (see
> http://www.gnu.org/licenses/gpl-faq.html#GPLIncompatibleLibs). In case
> of the OctMOSEK package this just means that I, as the copyright
> holder, have to grant permissions in the copyright notice.
>
> Note that the GPL and lesser GPL license are equivalent in this
> regard, and that permissions like these would normally have to be
> carried forward to all including projects and accepted by the
> respective copyright holders of those projects. However, because of
> the loose plug-in like structure described in (A1.2), these demands
> does not apply. As long as there are no names nor data structures of
> the OctMOSEK package hard-coded into Octave, the package is
> dynamically loaded, and it is not part of any binary Octave build,
> there is no need for a permission to be included in Octave.
>
> ---------------------------
> (Q3) Can a package under the lesser GPL license, make use of the
> GPL-licensed Octave API?
> ---------------------------
> (A3) No, not without permission. In the Linux kernel you find this
> exception added to the top of the GPL license (see
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=COPYING):
>
>> NOTE! This copyright does *not* cover user programs that use kernel
>> services by normal system calls - this is merely considered normal use
>> of the kernel, and does *not* fall under the heading of "derived work".
>
> In case of Sun Java becoming GPL back in 2006, the GNU Classpath
> project was created with the following exception added (see
> http://www.gnu.org/software/classpath/license.html)
>
>> As a special exception, the copyright holders of this library give you
>> permission to link this library with independent modules to produce an
>> executable, regardless of the license terms of these independent modules,
>> and to copy and distribute the resulting executable under terms of your
>> choice, provided that you also meet, for each linked independent module,
>> the terms and conditions of the license of that module. An independent
>> module is a module which is not derived from or based on this library. If
>> you modify this library, you may extend this exception to your version of
>> the library, but you are not obligated to do so. If you do not wish to do so,
>> delete this exception statement from your version.
>
> Both license exceptions allow their API to be used by non-GPL projects
> (such as the lesser GPL). The Octave license actually also has an
> exception somewhat like this, but it does not cover packages (see
> http://www.gnu.org/software/octave/license.html):
>
>> ...enhancements to Octave that are written as function files in Octave's
>> scripting language are not required to be redistributed under the terms
>> of the GPL...
>
> If Octave wish to allow packages licensed under something which is not
> GPL (such as the lesser GPL), an exception must be added which allows
> this! This is your choice completely, and I will respect a decision to
> go down the pure-GPL road if that is what you want.
>
> Kind regards and sorry for the late answer,
> Henrik Alsing Friberg
>
> ------------------------------------------------------------------------------
> All the data continuously generated in your IT infrastructure
> contains a definitive record of customers, application performance,
> security threats, fraudulent activity, and more. Splunk takes this
> data and makes sense of it. IT sense. And common sense.
> http://p.sf.net/sfu/splunk-novd2d
> _______________________________________________
> Octave-dev mailing list
> Octave-dev@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/octave-dev
>

Dear Henrik,

Regardless of the discussion that motivated your answer, thank you
very much for this summary. I think it would be a great entry for the
Wiki. I will make sure to upload it there.

Thanks again.

-- 
M. Sc. Juan Pablo Carbajal
-----
PhD Student
University of Zürich
http://ailab.ifi.uzh.ch/carbajal/

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure 
contains a definitive record of customers, application performance, 
security threats, fraudulent activity, and more. Splunk takes this 
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Octave-dev mailing list
Octave-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/octave-dev

Reply via email to