summaryrefslogtreecommitdiffstats
path: root/options/license/LLGPL
diff options
context:
space:
mode:
Diffstat (limited to 'options/license/LLGPL')
-rw-r--r--options/license/LLGPL56
1 files changed, 56 insertions, 0 deletions
diff --git a/options/license/LLGPL b/options/license/LLGPL
new file mode 100644
index 0000000..889d0b9
--- /dev/null
+++ b/options/license/LLGPL
@@ -0,0 +1,56 @@
+Preamble to the Gnu Lesser General Public License
+
+Copyright (c) 2016 Franz Inc., Berkeley, CA 94704
+
+The concept of the GNU Lesser General Public License version 2.1 ("LGPL")
+has been adopted to govern the use and distribution of above-mentioned
+application. However, the LGPL uses terminology that is more appropriate
+for a program written in C than one written in Lisp. Nevertheless, the
+LGPL can still be applied to a Lisp program if certain clarifications
+are made. This document details those clarifications. Accordingly, the
+license for the open-source Lisp applications consists of this document
+plus the LGPL. Wherever there is a conflict between this document and
+the LGPL, this document takes precedence over the LGPL.
+
+A "Library" in Lisp is a collection of Lisp functions, data and foreign
+modules. The form of the Library can be Lisp source code (for processing
+by an interpreter) or object code (usually the result of compilation of
+source code or built with some other mechanisms). Foreign modules are
+object code in a form that can be linked into a Lisp executable. When
+we speak of functions we do so in the most general way to include, in
+addition, methods and unnamed functions. Lisp "data" is also a general
+term that includes the data structures resulting from defining Lisp
+classes. A Lisp application may include the same set of Lisp objects
+as does a Library, but this does not mean that the application is
+necessarily a "work based on the Library" it contains.
+
+The Library consists of everything in the distribution file set before
+any modifications are made to the files. If any of the functions or
+classes in the Library are redefined in other files, then those
+redefinitions ARE considered a work based on the Library. If additional
+methods are added to generic functions in the Library, those additional
+methods are NOT considered a work based on the Library. If Library classes
+are subclassed, these subclasses are NOT considered a work based on the Library.
+If the Library is modified to explicitly call other functions that are neither
+part of Lisp itself nor an available add-on module to Lisp, then the functions
+called by the modified Library ARE considered a work based on the Library.
+The goal is to ensure that the Library will compile and run without getting
+undefined function errors.
+
+It is permitted to add proprietary source code to the Library, but it must
+be done in a way such that the Library will still run without that proprietary
+code present. Section 5 of the LGPL distinguishes between the case of a
+library being dynamically linked at runtime and one being statically linked
+at build time. Section 5 of the LGPL states that the former results in an
+executable that is a "work that uses the Library." Section 5 of the LGPL
+states that the latter results in one that is a "derivative of the Library",
+which is therefore covered by the LGPL. Since Lisp only offers one choice,
+which is to link the Library into an executable at build time, we declare that,
+for the purpose applying the LGPL to the Library, an executable that results
+from linking a "work that uses the Library" with the Library is considered a
+"work that uses the Library" and is therefore NOT covered by the LGPL.
+
+Because of this declaration, section 6 of LGPL is not applicable to the Library.
+However, in connection with each distribution of this executable, you must also
+deliver, in accordance with the terms and conditions of the LGPL, the source code
+of Library (or your derivative thereof) that is incorporated into this executable.