Forum OpenACS Q&A: GPL, Derivative Work and OpenACS Packages

Posted by Frank Bergmann on

I finally found the articles from Lawrence Rosen (general counsel for the Open Source Initiative) at SitePoint and LinuxJournal about "derivative works":

Here is what I've learned:
- There _is_ a difference between static and dynamic linking. This is in line with our consultations mentioned before, but here it is explained in detail.
- Static linking (as in 'C') seems to imply the application of the "GPL reciprocity" and requires the linking code to be GPLed.
- Dynamic linking "unfortunately cannot force the GPL upon the derrivative work" as Stallmann himself has put it.
- The main criteria for dynamic linking is that the linking code could (in theory) also work with a different (proprietery) "library" (the OpenACS system). Static linking implies the generation of a combined executable file ('C' style a.out linking). According to this definition, OpenACS modules use "dynamic linking" (there is no joined executable, there are APIs that are designed for being called and these APIs could be reimplemented by a different system).
- There seem to be a certain distinction on how software is distributed. As mentioned before in this thread, including everything in a single TAR would indicate more "combined works", while separately distributable modules indicate independance.
- There seems to be a difference (as of 2003) between the "opinion" of the FSF and what it could legally enforce (atleast in the US). That would explain some confusion we had in earlier discussions.

The issues hasn't received a lot of attention in the last year, even though I believe it wasn't finally resolved...