more/license_info.html
2006-07-22 11:48:31 +00:00

281 lines
14 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html">
<title>Boost Software License Background</title>
</head>
<body bgcolor="#FFFFFF">
<table summary="Navigational header"
border="1" bgcolor="#007F7F" cellpadding="2">
<tr>
<td bgcolor="#FFFFFF"><img src="../boost.png" alt="boost.png (6897 bytes)" width="277" height="86"></td>
<td><a href="../index.htm"><font face="Arial" color="#FFFFFF"><big>Home</big></font></a></td>
<td><a href="../libs/libraries.htm"><font face="Arial" color="#FFFFFF"><big>Libraries</big></font></a></td>
<td><a href="../people/people.htm"><font face="Arial" color="#FFFFFF"><big>People</big></font></a></td>
<td><a href="faq.htm"><font face="Arial" color="#FFFFFF"><big>FAQ</big></font></a></td>
<td><a href="index.htm"><font face="Arial" color="#FFFFFF"><big>More</big></font></a></td>
</tr>
</table>
<h1>Information about the <a href="../LICENSE_1_0.txt">Boost Software License</a> </h1>
<p><a href="../LICENSE_1_0.txt">License text</a><br>
<a href="#Introduction">Introduction</a><br>
<a href="#History">History</a><br>
<a href="#Rationale">Rationale</a><br>
<a href="#FAQ">FAQ</a><br>
<a href="#Transition">Transition</a><br>
<a href="#Acknowledgements">Acknowledgements</a></p>
<h2><a name="Introduction">Introduction</a></h2>
<p>The <a href="../LICENSE_1_0.txt">Boost Software License</a>
specifies the terms and conditions of use for those Boost libraries
that it covers.</p>
<p>Currently, some Boost libraries have their own licenses. The hope is that
eventually all Boost libraries will be covered by the Boost Software
License. In the meantime, <b>all</b> libraries comply with the <a
href="#requirements">Boost License requirements</a>.</p>
<h2><a name="History">History</a></h2>
<p>As Boost grew, it became unmanageable for each Boost file to have
its own license. Users complained that each license needed to be reviewed, and that
reviews were difficult or impossible if Boost libraries contained many different licenses.
Boost moderators and maintainers spent excessive time dealing with license
issues. Boost developers often copied existing licenses without actually knowing
if the license wording met legal needs.</p>
<p>To clarify these licensing issues, the Boost moderators asked for help from
the <a href="http://cyber.law.harvard.edu">Berkman Center for Internet &amp; Society</a>
at Harvard Law School, Cambridge, Massachusetts, USA. It was requested that a
single Boost license be developed that met the traditional requirements that Boost licenses, particularly:</p>
<a name="requirements"></a>
<ul>
<li>Must be simple to read and understand. </li>
<li>Must grant permission without fee to copy, use and modify the software for
any use (commercial and non-commercial). </li>
<li>Must require that the license appear with all copies [including
redistributions] of the software source code. </li>
<li>Must not require that the license appear with executables or other binary
uses of the library. </li>
<li>Must not require that the source code be available for execution or other
binary uses of the library. </li>
</ul>
<p>Additionally, other common open source licenses were studied to see what
additional issues were being treated, and additions representing good legal
practice were also requested. The result is the <a href="../LICENSE_1_0.txt">Boost
Software License</a>.</p>
<h2><a name="Rationale">Rationale</a></h2>
<p>The following rationale was provided by Devin Smith, the
lawyer who wrote the Boost Software License. It has been edited slightly for
brevity. Editorial additions are shown in square brackets.</p>
<h3>Benefit of Common Software License</h3>
<p>If one of Boost's goals is to ease use and adoption of the various
libraries made available by Boost, it does make sense to try to
standardize the licenses under which the libraries are made available to
users. (I make some recommendations about a possible short-form license
below.)</p>
<p>[Standardizing the license will not] necessarily address the issue of satisfying
corporate licensees. Each corporation will have its own concerns, based
on their own experiences with software licensing and distribution and,
if they're careful, will want to carefully review each license, even if
they've been told that they're all standard. I would expect that,
unless we're remarkably brilliant (or lucky) in drafting the standard
Boost license, the standard license won't satisfy the legal departments
of all corporations. I imagine that some will, for instance, absolutely
insist that licensors provide a warranty of title and provide
indemnification for third-party intellectual property infringement
claims. Others may want functional warranties. (If I were advising the
corporations, I would point out that they're not paying anything for the
code and getting such warranties from individual programmers, who
probably do not have deep pockets, is not that valuable anyway, but
other lawyers may disagree.)</p>
<p>But this can be addressed, not by trying to craft the perfect standard
license, but by informing the corporations that they can, if they don't like the
standard license, approach the authors to negotiate a different, perhaps even
paid, license.</p>
<p>One other benefit of adopting a standard license is to help ensure that
the license accomplishes, from a legal perspective, what the authors
intend. For instance, many of the [original] licenses for the libraries available
on boost.org do not disclaim the warranty of title, meaning that the
authors could, arguably, be sued by a user if the code infringes the
rights of a third party and the user is sued by that third party. I
think the authors probably want to disclaim this kind of liability.</p>
<h3>Short-Form License</h3>
<p>Without in anyway detracting from the draft license that's been
circulated [to Boost moderators], I'd like to propose an alternative &quot;short-form&quot; license that
Boost could have the library authors adopt. David [Abrahams] has expressed a
desire to keep things as simple as possible, and to try to move away
from past practice as little as possible, and this is my attempt at a
draft.</p>
<p>This license, which is very similar to the BSD license and the MIT
license, should satisfy the Open Source Initiative's Open Source
Definition: (i) the license permits free redistribution, (ii) the
distributed code includes source code, (iii) the license permits the
creation of derivative works, (iv) the license does not discriminate
against persons or groups, (v) the license does not discriminate against
fields of endeavor, (vi) the rights apply to all to whom the program is
redistributed, (vii) the license is not specific to a product, and (viii) the
license is technologically neutral (i.e., it does not [require] an explicit gesture of
assent in order to establish a contract between licensor and licensee).</p>
<p>This license grants all rights under the owner's copyrights (as well as an
implied patent license), disclaims all liability for use of the code (including
intellectual property infringement liability), and requires that all subsequent
copies of the code [except machine-executable object code], including partial copies and derivative works, include the
license.</p>
<h2><a name="FAQ">FAQ</a></h2>
<p><b>How should Boost programmers apply the license to source and
header files?</b></p>
<p>Add a comment based on the following template, substituting
appropriate text for the italicized portion:
<br>
<br>
<pre>
// Copyright <i>Joe Coder 2004 - 2006</i>.
// Distributed under the Boost Software License, Version 1.0.
// (See accompanying file LICENSE_1_0.txt or copy at
// http://www.boost.org/LICENSE_1_0.txt)
</pre>
<br>
Please leave an empty line before and after the above comment block.
It is fine if the copyright and license messages are not on different lines; in
no case there should be other intervening text. Do not include
"All rights reserved" anywhere.<br>
<p>Other ways of licensing source files have been considered, but some
of them turned out to unintentionally nullify legal elements of the
license. Having fixed language for referring to the license helps
corporate legal departments evaluate the boost distribution.
Creativity in license reference language is strongly discouraged, but
judicious changes in the use of whitespace are fine.
<p><b>How should the license be applied to documentation files, instead?</b></p>
<p>Very similarly to the way it is applied to source files: the user should
see the very same text indicated in the template above, with the only difference
that both the local and the web copy of LICENSE_1_0.txt should be linked to.
Refer to the HTML source code of this page in case of doubt.
<p>Note that the location of the local LICENSE_1_0.txt needs to be indicated
relatively to the position of your documentation file
(<code>../LICENSE_1_0.txt</code>, <code>../../LICENSE_1_0.txt</code> etc.)</p>
<p><b>How is the Boost license different from the
<a href="http://www.opensource.org/licenses/gpl-license.php">GNU General Public
License (GPL)</a>?</b></p>
<p>The Boost license permits the creation of derivative works for
commercial or non-commercial use with no legal requirement to release
your source code. Other differences include Boost not requiring
reproduction of copyright messages for object code redistribution, and
the fact that the Boost license is not &quot;viral&quot;: if you
distribute your own code along with some Boost code, the Boost license
applies only to the Boost code (and modified versions thereof); you
are free to license your own code under any terms you like. The GPL is
also much longer, and thus may be harder to understand.</p>
<p><b>Why the phrase &quot;machine-executable object code generated by a source
language processor&quot;?</b></p>
<p>To distinguish cases where we do not require reproduction of the copyrights
and license, such as object libraries, shared libraries, and final program
executables, from cases where reproduction is still required, such as
distribution of self-extracting archives of source code or precompiled header
files. More detailed wording was rejected as not being legally necessary, and
reducing readability.</p>
<p><b>Why is the &quot;disclaimer&quot; paragraph of the license entirely in uppercase?</b></p>
<p>Capitalization of these particular provisions is a US legal mandate for
consumer protection. (Diane Cabell)</p>
<p><b>Does the copyright and license cover interfaces too?</b></p>
<p>The conceptual interface to a library isn't covered. The particular
representation expressed in the header is covered, as is the documentation,
examples, test programs, and all the other material that goes with the library.
A different implementation is free to use the same logical interface, however.
Interface issues have been fought out in court several times; ask a lawyer for
details.</p>
<p><b>Why doesn't the license prohibit the copyright holder from patenting the
covered software?</b></p>
<p>No one who distributes their code under the terms of this license could turn
around and sue a user for patent infringement. (Devin Smith)</p>
<p>Boost's lawyers were well aware of patent provisions in licenses like the GPL
and CPL, and would have included such provisions in the Boost license if they
were believed to be legally useful.</p>
<p><b>Why doesn't the copyright message say &quot;All rights reserved&quot;?</b></p>
<p>Devin Smith says &quot;I don't think it belongs in the copyright notice for
anything (software, electronic documentation, etc.) that is being licensed. It
belongs in books that are sold where, in fact, all rights (e.g., to reproduce
the book, etc.) are being reserved in the publisher or author. I think it
shouldn't be in the BSD license.&quot;</p>
<p><b>Do I have to copyright/license trivial files?</b>
<p>Even a test file that just contains an empty <code>main()</code>
should have a copyright. Files without copyrights make corporate
lawyers nervous, and that's a barrier to adoption. The more of Boost
is uniformly copyrighted and licensed, the less problem people will
have with mounting a Boost release CD on a corporate server.
<p><b>Can I use the Boost license for my own projects outside Boost?</b>
<p>Sure; there are no restrictions on the use of the license itself.
<h2><a name="Transition">Transition</a></h2>
<p>To ease the transition of the code base towards the new common
license, several people decided to give a <a
href="blanket-permission.txt">blanket permission</a> for all
their contributions to use the new license. This hopefully helps
maintainers to switch to the new license once the list contains enough
names without asking over and over again for each change. Please
consider adding your name to the list.</p>
<h2><a name="Acknowledgements">Acknowledgements</a></h2>
<p>Dave Abrahams led the Boost effort to develop better licensing. The legal
team was led by
<a href="http://cyber.law.harvard.edu/people/cabell/index.html">Diane Cabell</a>,
Director, Clinical Programs, <a href="http://cyber.law.harvard.edu">Berkman
Center for Internet &amp; Society</a>, Harvard Law School.
<a href="http://www.nixonpeabody.com/attorneys_detail1.asp?ID=121">Devin Smith</a>, attorney, <a href="http://www.nixonpeabody.com/default.asp">
Nixon Peabody LLP</a>, wrote the Boost License. Eva Chan, Harvard Law School,
contributed analysis of Boost issues and drafts of various legal documents.
Boost members reviewed drafts of the license. Beman Dawes wrote this web page.</p>
<hr>
<p>Revised
<!--webbot bot="Timestamp" S-Type="EDITED" S-Format="%d %B, %Y" startspan -->27 August, 2004<!--webbot bot="Timestamp" endspan i-checksum="39365" --></p>
<p> &copy; Copyright 2003-2004 Beman Dawes, Daniel Frey, David Abrahams.</p>
<p> Distributed under the Boost Software License, Version 1.0.
(See accompanying file <a href="../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)
</p>
</body>
</html>