[PD] porting a Pd patch to Max license issues
Simon Wise
simonzwise at gmail.com
Fri Mar 16 05:31:29 CET 2012
On 15/03/12 17:34, Bryan Jurish wrote:
> ... my take is that for a (Pd|Max|...) patch, the dataflow interpreter
> (Pd, Max, or what have you) represents the required "system library" for
> use of that patch, so the copyleft doesn't kick in. If you're the
> copyright holder, you can also always add explicit "linking exceptions"
> to GPL'd code, but I think that shouldn't be necessary in this case,
> since interpreter (Pd|Max|...) and program code (patch) are cleanly
> separated.
A Pd patch is usually distributed as a patch which is then interpreted by a
locally installed Pd in the sense you describe ... but with Max distribution is
usually as executables which include the parts of Max required for them to run,
and perhaps other Max objects in the patch which may or may not be open source.
Max is expensive and a license covering each machine running it as a patch is
required, but Max is not needed on the machine to run the programs distributed
this way. Max is certainly not a system library if it is not on the local system.
Max could be viewed as a compiler in this case, with the resulting binary
package the "output". But now this whole executable would seem to be linked to
the GPL code, and distribution must be accompanied by its whole source code etc
according to the GPL. But since large parts of that source is closed that is not
possible.
This is in contrast to many compilers where the built-in functions are
distributed separately as system libraries and these must installed on the local
machine independently of the distributed GPL program which links to them (as
system libraries).
Certainly porting a Pd library to Max, then using it and any executables you
make yourself is very much within the GPL.
Distributing that port ready to use in Max, along with its source code of
course, is fine as long as any other code used doing the port is ok to
distribute according to the GPL.
I'd think that distributing a Max patch which includes parts of the ported
library is ok, again as long as it is accompanied by all the code you used in
the port etc, for the reasons you stated above.
But if that patch is saved as an executable you can only use it yourself, on as
many machines as you like ... you cannot give the executable to someone else.
So a GPL library does not fit with the closed source distribution model used by Max.
(but of course IANAL)
Simon
More information about the Pd-list
mailing list