<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#"
    xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
    xmlns:dc="http://purl.org/dc/terms/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:spdx="http://spdx.org/rdf/terms#">

  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link rel="shortcut icon" href="sites/all/themes/cpstandard/favicon.ico" type="image/vnd.microsoft.icon" />

    <title>LLGPL Preamble | Software Package Data Exchange (SPDX)</title>

    <link rel="shortcut icon" href="sites/all/themes/cpstandard/favicon.ico" type="image/vnd.microsoft.icon" />
    <link type="text/css" rel="stylesheet" media="all" href="sites/all/themes/cpstandard/css/style.css" />
    <link type="text/css" rel="stylesheet" media="all" href="sites/all/themes/cpstandard/css/colors.css" />
    <link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet" />
    <!-- GOOGLE FONTS -->
    <link href='//fonts.googleapis.com/css?family=Roboto:400,400italic,300,300italic,100italic,100,500,500italic,700,700italic,900,900italic' rel='stylesheet' type='text/css' />

    <style type="text/css">

      #page {
        color: #58595b;
      }

      #header {
        border-bottom: 3px solid #4597cb;
        padding-bottom: 50px;
      }

      .breadcrumb {
        margin-top: 25px;
      }

      #content-header h1 {
        color: #58595b;
      }

      #page h2, h3, h4, h5 {
        color: #00416b;
      }
       
      #page h1 {
      font-size: 2em;
      }

      #page h2 {
      font-size: 1.5em;
      }

      a, a:visited, a:hover {
        color: #00416b;
      }

      #footer-copyright {
        margin-top: 25px;
      }
            .replaceable-license-text {
      color: #CC0000;
      }

      .optional-license-text {
      color: #0000cc;
      }
           
      .replaceable-license-text {
      color: #CC0000;
      }
      
      .replaceable-license-text p var {
      color: #CC0000;
      }

      .optional-license-text {
      color: #0000cc;
      }
      
      .optional-license-text p var {
      color: #0000cc;
      }
      
      ul, ol, li {
      margin: 10px 0 10px 0;
	  }

    </style>

    <script type="text/javascript">
      var _gaq = _gaq || [];
      _gaq.push(['_setAccount', 'UA-3676394-2']);
      _gaq.push(['_trackPageview']);

      (function() {
        var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
        ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
        var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
      })();
    </script>

  </head>

  <body typeof="spdx:LicenseException">

  <div id="lf-header" class="collaborative-projects">
    <div class="gray-diagonal">
      <div class="container">
        <a id="collaborative-projects-logo" href="http://collabprojects.linuxfoundation.org">Linux Foundation Collaborative Projects</a>
      </div>
    </div>
  </div>

  <div id="header">
    <div id="header-inner">
      <a href="/" title="Home" rel="home" id="logo">
        <img src="https://spdx.org/sites/cpstandard/files/logo_spdx_250.png" alt="Home" />
      </a>
      
      <div id="name-and-slogan">
        <div id="site-name">
          <h1><a href="/" title="Home" rel="home">Software Package Data Exchange (SPDX)</a></h1>
        </div>    
      </div>
      
    </div>
  </div> <!-- /header -->

  <div id="highlighted">  
      <div class="region region-highlighted">
      </div>
  </div>

    <div id="page" class="page">

      <div class="breadcrumb"><a href="/">Home</a> » <a href="/licenses">Licenses</a> » <a href="./exceptions-index.html">Exceptions</a></div>

      <div id="content-header"> 
        <h1 property="dc:title">LLGPL Preamble</h1>
      </div>
      <div style="display:none;"><code property="spdx:deprecated">false</code></div>
      <h2>Full name</h2>
          <div property="spdx:name"><p style="margin-left: 20px;">LLGPL Preamble</p></div>

      <h2>Short identifier</h2>
          <p style="margin-left: 20px;"><code property="spdx:licenseExceptionId">LLGPL</code></p>

      <h2>Other web pages for this exception</h2>
          <div style="margin-left: 20px;">
          <ul>
          <li><a href="http://opensource.franz.com/preamble.html" rel="rdfs:seeAlso">http://opensource.franz.com/preamble.html</a></li>
          </ul>
          </div>
          
      <h2 id="notes">Notes</h2>
          <p style="margin-left: 20px;">Typically used with LGPL-2.1</p>
          
      <h2 id="licenseExceptionText">Text</h2>
      
      <blockquote cite="https://spdx.github.io/spdx-spec/v2.3/license-matching-guidelines-and-templates/">
          <div style="border: 2px solid grey; padding: 8px">
		      Text in italicized blue is omittable (see <a href="https://spdx.github.io/spdx-spec/v2.3/license-matching-guidelines-and-templates/#b35-guideline-omittable-text">Matching Guidelines B.3.5</a>).
		      License or exception text will match to the text for the specified identifier if it either includes or excludes this omittable text.
			  <br/>
			  <br/>
			  Text in red is replaceable (see <a href="https://spdx.github.io/spdx-spec/v2.3/license-matching-guidelines-and-templates/#b34-guideline-replaceable-text">Matching Guidelines B.3.4</a>).
			  License or exception text will match to the text for the specified identifier if it includes a permitted variant of this replaceable text.
			  The permitted variants can be found in the corresponding regular expression as shown in title text visible by hovering over the red text.
	      </div>
	  </blockquote>
	  
      <div property="spdx:licenseExceptionText" class="exception-text">
      
         <var class="optional-license-text"> Preamble to the Gnu Lesser General Public License
         </var>
         <var class="replaceable-license-text"><span title="can be replaced with the pattern .{0,5000}"> 
            Copyright (c) 2000 Franz Incorporated, Berkeley, CA 94704
         </span></var>
         <p>
	    <var class="optional-license-text"> Franz Inc. has adopted the concept of the GNU Lesser General Public License version 2.1 (&quot;LGPL&quot;) to govern the use and distribution of AllegroServe.</var>
	    <var class="optional-license-text"> The concept of the GNU Lesser General Public License version 2.1 (&quot;LGPL&quot;) has been adopted to govern the use and distribution of above-mentioned application</var>.
	    However, <var class="optional-license-text"> the</var> LGPL uses terminology
            that is more appropriate for a program written in C than one
	    written in Lisp. Nevertheless, <var class="optional-license-text"> the</var> LGPL can still be applied to
            a Lisp program if certain clarifications are made. This document
            details those clarifications. Accordingly, the license for
            <var class="replaceable-license-text"><span title="can be replaced with the pattern the open-source Lisp applications|AllegroServe"> the
            open-source Lisp applications</span></var> consists of this document plus
	    <var class="optional-license-text"> the</var> LGPL. Wherever there is a conflict between this document
	    and the LGPL, this document takes precedence over <var class="optional-license-text"> the</var> LGPL.
         </p>

         <p>
            A &quot;Library&quot; 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 &quot;data&quot; 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 &quot;work based on the Library&quot; it contains.
         </p>

         <p>
            The <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var> 
            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 <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var> 
            are redefined in other files,
            then those redefinitions ARE considered a work based on the
            <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>. 
            If additional methods are added to generic functions in
            the <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>, 
            those additional methods are NOT considered a work
            based on the <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>. 
            If <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var> classes are subclassed, these
            subclasses are NOT considered a work based on the <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>. 
            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 
            <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var> 
            ARE considered a work based on the <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>. 
            The goal is to ensure that the <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>
            will compile and run without getting undefined function errors.
         </p>

         <p>
            It is permitted to add proprietary source code to the 
            <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>,
            but it must be done in a way such that the <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var> 
            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 &quot;work that uses the Library.&quot; Section 5 of the LGPL
            states that the latter results in one that is a &quot;derivative of the
	    Library&quot;, which is therefore covered by <var class="optional-license-text"> the</var> 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 <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>, 
            an executable that results from linking a &quot;work
            that uses the <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>&quot; 
            with the Library is considered a &quot;work
            that uses the Library&quot; and is therefore NOT covered by the LGPL.
         </p>

         <p>
            Because of this declaration, section 6 of LGPL is not applicable
            to the <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var>. 
            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 
            <var class="replaceable-license-text"><span title="can be replaced with the pattern Library|AllegroServe Library"> Library</span></var> (or
            your derivative thereof) that is incorporated into this executable.
         </p>

      
      </div>

    </div> <!-- /page -->

    <div class="collaborative-projects">
      <div class="gray-diagonal">
        <div class="container">
          <div id="footer-copyright">
            <p>&#169; 2018          SPDX Workgroup a Linux Foundation Project. All Rights Reserved.        </p>
            <p>Linux Foundation is a registered trademark of The Linux Foundation. Linux is a registered <a href="http://www.linuxfoundation.org/programs/legal/trademark" title="Linux Mark Institute">trademark</a> of Linus Torvalds.</p>
            <p>Please see our <a href="http://www.linuxfoundation.org/privacy">privacy policy</a> and <a href="http://www.linuxfoundation.org/terms">terms of use</a>.</p>
          </div>
        </div>
      </div>
    </div>

    <div id="top-page-link">
      <a href="#"><i class="fa fa-arrow-circle-up"></i><span>top of page</span></a>
    </div>

  </body>
</html>
