proposed FAQ entries about licensing
John W. Eaton
jwe at octave.org
Wed Apr 8 14:15:13 CDT 2009
On 8-Apr-2009, Jaroslav Hajek wrote:
| OK, I believe you, but I just don't understand the reasoning, then.
| There is also the (albeit slight) possibility that the FSF people
| missed some important detail.
I think they understood the situation.
| I see the link to liboctave et al. hard-wired in the produced mex
| file and that seems to me to make it a derivative work of Octave.
| There's certainly no liboctave in Matlab, so it's apparent the
| executable is built to be linked to Octave.
Yes, that's true now, but it is not necessary for Octave's MEX files
to be linked with anything and they will still work (with Octave and
probably with Matlab, even without having to recompile them).
The only thing needed to create a MEX file that can work in both
Octave and Matlab is a set of prototypes for the mx* and mex*
functions you wish to use and a C compiler. Since all operations on
mxArray objects are performed by functions that take pointers to
mxArray ojbects, you can use
typedef void mxArray
and that's exactly what Octave's mex.h file does.
The interface for MEX is not unique to Octave, so I don't think it is
reasonable to claim that using it makes a MEX file a derivative work
of Octave.
| I think mex.h carries the GPL preamble, doesn't it?
Yes, but maybe we should consider changing that. Since someone else
could just create their own file containing all the same mx* and mex*
prototypes and place it in the public domain, I don't see that keeping
Octave's mex.h file under the GPL has much of an effect.
jwe
More information about the Octave-maintainers
mailing list