| <?php |
| /** |
| * Copyright (c) 2005, 2018 Eclipse Foundation and others. |
| * |
| * This program and the accompanying materials are made |
| * available under the terms of the Eclipse Public License 2.0 |
| * which is available at https://www.eclipse.org/legal/epl-2.0/ |
| * |
| * Contributors: |
| * Eric Poirier (Eclipse Foundation) |
| * |
| * SPDX-License-Identifier: EPL-2.0 |
| */ |
| ?> |
| <style> |
| .checklist { |
| border: 1px solid #ccc; |
| list-style: none; |
| } |
| |
| .checklist, .checklist li { |
| margin: 0; |
| padding: 0; |
| } |
| |
| .checklist label { |
| display: block; |
| padding-left: 25px; |
| text-indent: -25px; |
| } |
| |
| .postit { |
| border: 1px dashed black; |
| margin: 10px 0 10px 0; |
| } |
| |
| .postitinner { |
| margin: 0 5px 5px 5px; |
| } |
| </style> |
| <form action="#" method="GET"> |
| <div id="midcolumn"> |
| <h1><?php print $pageTitle; ?></h1> |
| <p>Last updated: September 25, 2007</p> |
| <p> |
| This document is intended to assist the Eclipse committers in fulfilling |
| their obligations to implement the <a |
| href="/org/documents/Eclipse_IP_Policy.pdf" |
| >Eclipse IP Policy</a>. In addition to their role as the leading |
| developers on Eclipse projects, Committers are also charged with the |
| responsibility of ensuring that the software distributed by the Eclipse |
| Foundation meets the expectations of the community with respect to |
| intellectual property. This document provides a set of specific checklists |
| for developers on Eclipse Projects to follow regarding the legal |
| documentation required in all source files, builds, and releases. While |
| these checklists should cover most projects, there will obviously be cases |
| where additional advice is needed: if so, please contact <a |
| href="mailto:emo@eclipse.org" |
| >the Eclipse Management Organization</a>. |
| |
| |
| <h2>1. Source Code</h2> |
| <p> |
| Every source file must have a Copyright and License Notice. The standard |
| format for these notices can be found in <a |
| href="copyrightandlicensenotice.php" target="_blank" |
| > Default Copyright and License Notice</a>. If the source is to be |
| licensed under a license other than the EPL alone, you must ensure that |
| the Eclipse Foundation has approved the notice. |
| </p> |
| <p> |
| Source files must have the Copyright and License Notice <em><b>before</b></em> |
| the files are checked into the eclipse.org source repository. |
| </p> |
| <ul class="checklist"> |
| <li><label for="o1"><input id="o1" name="o1" type="checkbox" />Every |
| source file has a Copyright and License Notice</label></li> |
| </ul> |
| <h2>2. Documentation</h2> |
| <p> |
| The help documentation must have a Legal page with a copyright notice and |
| a link to the <a href="#about_files">About file</a> in the plug-in that |
| contains the help documentation. For example: |
| </p> |
| <img src="guidetolegaldoc_files/Help_legal_page.jpg" width="598" |
| height="260" |
| > |
| <p>Documentation books usually contain a "Legal" page as the last |
| page in the book.</p> |
| <ul class="checklist"> |
| <li><label for="o2"><input id="o2" name="o2" type="checkbox" />Every help |
| documentation set contains a Legal page</label></li> |
| </ul> |
| <h2> |
| <a name="3_Builds"></a>3. Builds |
| </h2> |
| <p> |
| Every build distribution, such as a zip or tar file, must contain a <a |
| href="epl/notice.html" target="_blank" |
| >Eclipse Foundation Software User Agreement</a> (known as the |
| "SUA") in the root directory of the distribution in HTML format |
| in a file named "notice.html". |
| </p> |
| <p> |
| A copy of the Project's primary license(s) must be in the root directory |
| of the distribution in HTML format. In most cases, this will be the <a |
| href="epl-v10.html" |
| >Eclipse Public License</a> alone in a file named "epl-v10.html" |
| In exceptional circumstances, the Board may approve the licensing of a |
| project under license terms other than the EPL alone. |
| |
| |
| <ul class="checklist"> |
| <li><label for="o31"><input id="o31" name="o31" type="checkbox" />Every |
| build distribution has the standard SUA in the root as |
| "notice.html"</label></li> |
| <li><label for="o32"><input id="o32" name="o32" type="checkbox" />Every |
| build distribution has a copy of the primary license(s) in the root, |
| e.g., "epl-v10.html"</label></li> |
| </ul> |
| <div class="postit"> |
| <div class="postitinner"> |
| <a name="SUA"></a> |
| <h3>What is the Software User Agreement?</h3> |
| The Software User Agreement is the agreement that governs the use of all |
| software distributed by the Eclipse Foundation. The SUA references the |
| Eclipse Public License as the primary vehicle to grant license rights |
| and obligations to use the software. In addition, it also references |
| other legal notices and agreements and describes the potential layout of |
| the legal documentation in the accompanying Content. |
| <p>The reason for the SUA is that Eclipse-based content is highly |
| modularized to facilitate ease of delivery, extensibility, and |
| upgradeability. A typical Eclipse installation may potentially include |
| plug-ins and features authored and/or distributed by many different |
| parties including the Eclipse Foundation, other open-source |
| organizations, and commercial vendors. |
| |
| |
| <p>This modularity makes an Eclipse distribution somewhat different from |
| a classical software product delivered with a single license file. The |
| Eclipse Foundation SUA guides the consumer to the various licenses |
| distributed through out the Eclipse Project distribution. |
| |
| </div> |
| </div> |
| <h2>4. Features</h2> |
| <p>A feature is a set of one or more related plug-ins and/or fragments that |
| can be installed and upgraded together. Every feature must have at least |
| three (usually at least four) legal files: |
| |
| |
| <p>For example:</p> |
| <blockquote> |
| <table cellspacing="4"> |
| <tr> |
| <td><i>eclipse</i></td> |
| <td>(installation root directory)</td> |
| </tr> |
| <tr> |
| <td> <i>features</i></td> |
| <td>(features directory)</td> |
| </tr> |
| <tr> |
| <td> <i>org.eclipse.sdk_3.0.1</i></td> |
| <td>(feature directory)</td> |
| </tr> |
| <tr> |
| <td> <i>license.html</i></td> |
| <td><b>(#1 Feature License)</b></td> |
| </tr> |
| <tr> |
| <td> <i>epl-v10.html</i></td> |
| <td><b>(#2 Project's Primary License(s) (typically EPL alone) |
| referenced by Feature License)</b></td> |
| </tr> |
| <tr> |
| <td> <i>feature.properties</i></td> |
| <td><b>(#3 Feature Update License in "license" property)</b></td> |
| </tr> |
| <tr> |
| <td> <i>plugins</i></td> |
| <td>(plug-ins and fragments directory)</td> |
| </tr> |
| <tr> |
| <td> <i>org.eclipse.sdk_3.0.1</i></td> |
| <td>(plug-in packaged as a directory)</td> |
| </tr> |
| <tr> |
| <td> <i>about.properties</i></td> |
| <td><b>(#4 Feature Blurb in "blurb" property)</b></td> |
| </tr> |
| </table> |
| </blockquote> |
| The first required file is "license.html". This file is required |
| to be the <a href="epl/notice.html" target="_blank">Eclipse Foundation SUA</a> |
| in HTML format (and thus an exact duplicate of the "notice.html" |
| in <a href="#3_Builds">the root of the distribution</a>). This file is |
| referred to as <em>The Feature License</em>. |
| <p> |
| The second required file is the <a href="epl-v10.html">Eclipse Public |
| License</a> in HTML format in a file named "epl-v10.html" (and |
| thus also an exact duplicate of the "epl-v10.html" in <a |
| href="#3_Builds" |
| >the root of the distribution</a>). |
| |
| |
| <p> |
| Each feature has a file named "feature.xml" with a |
| <code>license</code> |
| node. Often the strings in the "feature.xml" file are |
| externalized in a "feature.properties" file. Either way, the |
| <code>license</code> |
| node or property must contain the <a href="epl/notice.txt" target="_blank">Eclipse |
| Foundation SUA</a> in PLAIN TEXT format. This text (node or property) is |
| referred to as <em>The Feature Update License</em>. |
| |
| |
| <p>Each feature has at least one plug-in associated with it which is the |
| "feature plug-in" for that feature. Not surprisingly, this |
| plug-in usually has the same name as the feature. The |
| "about.properties" property named "blurb" contains |
| text that appears in the "About features" dialog in the Eclipse |
| workbench. This is known as a "Feature Blurb." Blurbs often |
| contain copyright notices and any other statements of attribution that may |
| be required by licenses. |
| |
| |
| <ul class="checklist"> |
| <li><label for="o41"><input id="o41" name="o41" type="checkbox" />Every |
| feature has the standard SUA in <u>HTML</u> in |
| "license.html"</label></li> |
| <li><label for="o42"><input id="o42" name="o42" type="checkbox" />Every |
| feature has the Project's primary license(s) (e.g., the EPL in |
| "epl-v10.html")</label></li> |
| <li><label for="o43"><input id="o43" name="o43" type="checkbox" />Every |
| feature has the standard SUA in <u>plain text</u> in "feature.xml |
| <license>" or "feature.properties / license"</label></li> |
| <li><label for="o44"><input id="o44" name="o44" type="checkbox" />Every |
| feature plug-in has copyright notices, etc. in the "blurb" |
| property of "about.properties"</label></li> |
| </ul> |
| <div class="postit"> |
| <div class="postitinner"> |
| <h3>Why So Many Copies?</h3> |
| <p>For technical reasons (i.e., this is the way the software works), |
| each of the different copies of the SUA and Project license(s) (e.g., |
| EPL) are shown to the user at different times. We need to make sure |
| that the SUA and Project license(s) are available to the user |
| regardless of which installation and/or browsing mechanism he or she |
| uses, thus the existence of numerous copies of the same legal |
| documents. |
| |
| </div> |
| </div> |
| <div class="postit"> |
| <div class="postitinner"> |
| <h3>What’s the Difference Between These Files?</h3> |
| <p>The difference between the Feature License and Feature Update License |
| is when they are shown to the user. The Feature License is only |
| available once a feature has been installed. The Feature Update |
| License is seen when a user is using the Eclipse Update Manager to |
| install or upgrade a feature and must agree to an agreement before |
| proceeding with the installation. One thing that is important to note |
| is that with the distributed licensing model used by plug-ins, unless |
| a Feature Update License contains an aggregation of all the notices |
| from the plug-ins for a feature, a user will not be able to see these |
| notices before installing the feature.</p> |
| </div> |
| </div> |
| <h2>5. Plug-ins</h2> |
| <p> |
| <a name="#about_files"></a> All plug-in directories must have an |
| "about.html" file describing the license terms of the code and |
| content of the plug-in. The "about.html" file may also contain |
| other information such as whether the content contains cryptographic |
| functionality that may be subject to export controls. These |
| "about.html" are collective known as "Abouts." |
| |
| |
| <p> |
| Most plug-ins of Eclipse Projects are pure EPL and thus the about.html |
| file will be <a href="epl/about.html" target="_blank">default about for |
| EPL plug-ins</a>. If a plug-in contains non-EPL content, read more about |
| <a href="epl/about.php">About files</a> and how to write About files for |
| third-party content. |
| |
| |
| <p>In JAR’ed plug-ins, any local files linked from an About such as |
| copies of licenses, must be located in a directory called |
| "about_files." The contents of the "about_files" |
| directory are handled specially so that links resolve correctly when the |
| About in a JAR’ed plug-in is viewed in an external browser spawned |
| from the About dialog.</p> |
| <p>As an example:</p> |
| <blockquote> |
| <table cellspacing="4"> |
| <tr> |
| <td><i>eclipse</i></td> |
| <td>(installation root directory)</td> |
| </tr> |
| <tr> |
| <td> <i>plugins</i></td> |
| <td>(plug-ins and fragments directory)</td> |
| </tr> |
| <tr> |
| <td> <i>org.apache.ant_1.6.2</i></td> |
| <td>(plug-in packaged as a directory)</td> |
| </tr> |
| <tr> |
| <td> <i>about.html</i></td> |
| <td><b>About</b></td> |
| </tr> |
| <tr> |
| <td> <i>asl-v20.txt</i></td> |
| <td><b>Apache Software License referenced by about.html</b></td> |
| </tr> |
| <tr> |
| <td> <i>LICENSE.dom.html</i></td> |
| <td><b>W3C License referenced by about.html</b></td> |
| </tr> |
| <tr> |
| <td> <i>org.eclipse.core.runtime_3.1.0.jar</i></td> |
| <td>(plug-in packaged as a JAR)</td> |
| </tr> |
| <tr> |
| <td> <i>about.html</i></td> |
| <td><b>About</b></td> |
| </tr> |
| <tr> |
| <td> <i>about_files</i></td> |
| <td>(directory for any local files linked from about.html)</td> |
| </tr> |
| <tr> |
| <td> <i>asl-v20.txt</i></td> |
| <td><b>Apache Software License referenced by about.html</b></td> |
| </tr> |
| </table> |
| </blockquote> |
| <ul class="checklist"> |
| <li><label for="o51"><input id="o51" name="o51" type="checkbox" />Every |
| plug-in has an "about.html", usually the standard one.</label></li> |
| <li><label for="o53"><input id="o53" name="o53" type="checkbox" />Every |
| plug-in with a non-standard "about.html" contains the |
| additional referenced license files.</label></li> |
| <li><label for="o52"><input id="o52" name="o52" type="checkbox" />Every |
| ’ed plug-in stores linked files in "about_files"</label></li> |
| </ul> |
| <h2>6. Download Web Pages</h2> |
| <p> |
| Any web page that makes builds available must have a link to the <a |
| href="#SUA" |
| >SUA</a> with the following wording: |
| |
| |
| <blockquote> |
| <p> |
| All downloads are provided under the terms and conditions of the <a |
| href="epl/notice.php" target="_blank" |
| >Eclipse Foundation Software User Agreement</a> unless otherwise |
| specified. |
| </p> |
| </blockquote> |
| <ul class="checklist"> |
| <li><label for="o61"><input id="o61" name="o61" type="checkbox" />All |
| download pages contain the standard reference to the SUA.</label></li> |
| </ul> |
| <h2>Appendix A. Viewing All These Files</h2> |
| <h3>About Files</h3> |
| <p> |
| Users looking for legal documentation may find the Abouts by browsing the |
| directory structure of an Eclipse installation but the files are also |
| viewable from the "About plug-ins" dialog in the Eclipse |
| workbench. To view the Abouts, go to the menu item <strong>Help -> About |
| Eclipse Platform</strong> and then click on the button "Plug-in |
| Details" and then select a plug-in and click on the button "More |
| Info." |
| </p> |
| <img src="guidetolegaldoc_files/About_plugins_dialog.jpg" width="598" |
| height="447" |
| > |
| <h3>Feature Blurbs</h3> |
| <p> |
| To view the blurb for each installed feature, go to the menu item <strong>Help |
| > About Eclipse Platform</strong> and then click "Feature |
| Details" and then select a feature. The blurb will appear in the |
| bottom half of the dialog. |
| </p> |
| <img src="guidetolegaldoc_files/About_features_dialog.jpg" width="598" |
| height="536" |
| > |
| </div> |
| </form> |