This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

[libstdc++ 2/3] Explain licensing of library code and docs


Second of three documentation patches.

We have a PR noting that we never specify what license the docs are under.
Also that the "runtime GPL" needs some explaning.  This approach (discussed
with Ben, Gaby, Gerald, and Joseph) makes links for all the pages to a
new license.html page, which contains some explanatory text.

Since we already had a copy of the GPL, I'm checking in a copy of the FDL
alongside it.  (Not included below.)

/Please/ review the new license.html, and send comments to the libstdc++
mailing list.  If you wait for the nightly web-updating scripts to fire,
you'll be able to view it at

    http://gcc.gnu.org/onlinedocs/libstdc++/17_intro/license.html

or wait and then follow the link from the bottom of the existing pages.

Applied to trunk.


2001-10-04  Phil Edwards  <pme@gcc.gnu.org>

	* docs/html/17_intro/COPYING.DOC:  New file, GFDL v1.1 from the FSF.
	* docs/html/17_intro/license.html:  New file.  Explain the licenses
	in use.

	* docs/html/configopts.html:  Link to license.html.
	* docs/html/documentation.html:  Likewise.
	* docs/html/explanations.html:  Likewise.
	* docs/html/install.html:  Likewise.
	* docs/html/17_intro/howto.html:  Likewise.
	* docs/html/18_support/howto.html:  Likewise.
	* docs/html/19_diagnostics/howto.html:  Likewise.
	* docs/html/20_util/howto.html:  Likewise.
	* docs/html/21_strings/howto.html:  Likewise.
	* docs/html/22_locale/howto.html:  Likewise.
	* docs/html/23_containers/howto.html:  Likewise.
	* docs/html/24_iterators/howto.html:  Likewise.
	* docs/html/25_algorithms/howto.html:  Likewise.
	* docs/html/26_numerics/howto.html:  Likewise.
	* docs/html/27_io/howto.html:  Likewise.
	* docs/html/ext/howto.html:  Likewise.
	* docs/html/ext/sgiexts.html:  Likewise.
	* docs/html/faq/index.html:  Likewise.  New question, linking to
	the new license.html.


Index: docs/html/configopts.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/configopts.html,v
retrieving revision 1.15
diff -u -3 -p -r1.15 configopts.html
--- configopts.html	2001/09/27 00:47:59	1.15
+++ configopts.html	2001/10/04 20:00:39
@@ -215,6 +215,7 @@ options</a></h1>
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/documentation.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/documentation.html,v
retrieving revision 1.7
diff -u -3 -p -r1.7 documentation.html
--- documentation.html	2001/09/27 00:47:59	1.7
+++ documentation.html	2001/10/04 20:00:39
@@ -93,5 +93,17 @@
          <li><a href="ext/howto.html">Extensions to the Standard Library</a>
       </ol>
 
+
+<!-- ####################################################### -->
+
+<p>Return <a href="http://gcc.gnu.org/libstdc++/";>to the homepage</a>.</p>
+
+<hr>
+<P CLASS="fineprint"><em>
+See <a href="17_intro/license.html">license.html</a> for copying conditions.
+Comments and suggestions are welcome, and may be sent to
+<a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
+</em></p>
+
 </body>
 </html>
Index: docs/html/explanations.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/explanations.html,v
retrieving revision 1.3
diff -u -3 -p -r1.3 explanations.html
--- explanations.html	2001/09/27 00:47:59	1.3
+++ explanations.html	2001/10/04 20:00:39
@@ -65,6 +65,7 @@ design</a></h1>
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/install.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/install.html,v
retrieving revision 1.8
diff -u -3 -p -r1.8 install.html
--- install.html	2001/09/27 00:47:59	1.8
+++ install.html	2001/10/04 20:00:39
@@ -281,6 +281,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/17_intro/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/17_intro/howto.html,v
retrieving revision 1.10
diff -u -3 -p -r1.10 howto.html
--- howto.html	2001/10/04 19:54:50	1.10
+++ howto.html	2001/10/04 20:00:39
@@ -178,6 +178,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/17_intro/license.html
===================================================================
RCS file: license.html
diff -N license.html
--- /dev/null	Tue May  5 13:32:27 1998
+++ license.html	Thu Oct  4 13:00:39 2001
@@ -0,0 +1,117 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<html>
+<head>
+   <meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
+   <meta NAME="AUTHOR" CONTENT="pme@gcc.gnu.org (Phil Edwards)">
+   <meta NAME="KEYWORDS" CONTENT="libstdc++, license, licence">
+   <meta NAME="DESCRIPTION" CONTENT="Copying restrictions for libstdc++.">
+   <meta NAME="GENERATOR" CONTENT="vi and eight fingers">
+   <title>libstdc++-v3 copying</title>
+<link REL=StyleSheet HREF="../lib3styles.css">
+</head>
+<body>
+
+<h1 CLASS="centered"><a name="top">Licenses for the Library</a></h1>
+
+<p><strong>As long as this sentence is in place, this page isn't
+official.  It is still experimental if you are reading this.</strong></p>
+
+<p>There are two licenses affecting GNU libstdc++-v3:  one for the code, and
+   one for the documentation.  Here we will describe both of them, and try
+   to answer some of the common questions.  If you have more questions, ask the
+   FSF or the gcc-help mailing list; the person writing this page is a
+   programmer, not a lawyer.
+</p>
+
+<hr>
+
+<h2>The Code:  Runtime GPL</h2>
+
+<p>The source code of libstdc++-v3 is distributed under version 2 of the
+   <a href="COPYING">GNU General Public License</a>, with the so-called
+   &quot;runtime exception,&quot; as follows (or see any header or
+   implementation file):
+   <pre>
+   As a special exception, you may use this file as part of a free software
+   library without restriction.  Specifically, if other files instantiate
+   templates or use macros or inline functions from this file, or you compile
+   this file and link it with other files to produce an executable, this
+   file does not by itself cause the resulting executable to be covered by
+   the GNU General Public License.  This exception does not however
+   invalidate any other reasons why the executable file might be covered by
+   the GNU General Public License.
+   </pre>
+</p>
+
+<p>Hopefully that text is self-explanatory.  If it isn't, you need to speak
+   to your lawyer, or the Free Software Foundation.  I am not a legal expert.
+   I do not even play one on television.
+</p>
+
+<!-- Most of the Q&A's are based on, paraphrased from, and outright stolen
+     from this thread:
+     http://gcc.gnu.org/ml/libstdc++/2000-q2/subjects.html#00050
+-->
+<p><strong>Q:  So any program which uses libstdc++ falls under the GPL?</strong>
+ <br>A:  <strong>No.</strong>  The special exception permits use of the
+     library in proprietary applications.
+</p>
+
+<p><strong>Q:  How is that different from the GNU {Lesser,Library}
+   GPL?</strong>
+ <!-- Quoting Jason Merrill from the thread above: -->
+ <br>A:  The LGPL requires that users be able to replace the LGPL code with a
+     modified version; this is trivial if the library in question is a C
+     shared library.  But there's no way to make that work with C++, where
+     much of the library consists of inline functions and templates, which
+     are expanded inside the code that uses the library.  So to allow people
+     to replace the library code, someone using the library would have to
+     distribute their own source, rendering the LGPL equivalent to the GPL.
+</p>
+
+<p><strong>Q:  I see.  So, what restrictions <em>are</em> there on
+   programs that use the library?</strong>
+ <br>A:  None.  We encourage such programs to be released as open source,
+     but we won't punish you or sue you if you choose otherwise.
+</p>
+
+<!-- Someone would probably shoot me if I uncommented this.
+<p><strong>Q:  I heard that the startup code for libstdc++-v3 detects
+   what license the program uses, and makes my program crash if it isn't
+   an open source license!  Is that true?</strong>
+ <br>A:  You are paranoid and insane.  Please calm down and try switching
+     to decaf.
+</p>
+-->
+
+<hr>
+
+<h2>The Docs:  FDL</h2>
+
+<p>The documentation shipped with the library and made available over the
+   web, including the pages generated from source comments, are copyrighted
+   by the Free Software Foundation, and placed under
+   the <a href="COPYING.DOC">GNU Free Documentation License version 1.1</a>.
+   There are no Front-Cover Texts, no Back-Cover Texts, and
+   <!-- as far as I know -->
+   no Invariant Sections.
+</p>
+
+<p>If you plan on making copies of the documentation, please let us know.
+   We can probably offer suggestions.
+</p>
+
+
+<!-- ####################################################### -->
+
+<hr>
+<P CLASS="fineprint"><em>
+Comments and suggestions are welcome, and may be sent to
+<a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
+</em></p>
+
+
+</body>
+</html>
+
+
Index: docs/html/18_support/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/18_support/howto.html,v
retrieving revision 1.7
diff -u -3 -p -r1.7 howto.html
--- howto.html	2001/10/04 19:54:50	1.7
+++ howto.html	2001/10/04 20:00:39
@@ -262,6 +262,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/19_diagnostics/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/19_diagnostics/howto.html,v
retrieving revision 1.8
diff -u -3 -p -r1.8 howto.html
--- howto.html	2001/10/04 19:54:50	1.8
+++ howto.html	2001/10/04 20:00:39
@@ -112,6 +112,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/20_util/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/20_util/howto.html,v
retrieving revision 1.8
diff -u -3 -p -r1.8 howto.html
--- howto.html	2001/10/04 19:54:51	1.8
+++ howto.html	2001/10/04 20:00:39
@@ -199,6 +199,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/21_strings/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/21_strings/howto.html,v
retrieving revision 1.6
diff -u -3 -p -r1.6 howto.html
--- howto.html	2001/10/04 19:54:51	1.6
+++ howto.html	2001/10/04 20:00:39
@@ -327,6 +327,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/22_locale/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/22_locale/howto.html,v
retrieving revision 1.8
diff -u -3 -p -r1.8 howto.html
--- howto.html	2001/10/04 19:54:52	1.8
+++ howto.html	2001/10/04 20:00:39
@@ -211,6 +211,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/23_containers/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/23_containers/howto.html,v
retrieving revision 1.12
diff -u -3 -p -r1.12 howto.html
--- howto.html	2001/10/04 19:54:52	1.12
+++ howto.html	2001/10/04 20:00:40
@@ -366,6 +366,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/24_iterators/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/24_iterators/howto.html,v
retrieving revision 1.6
diff -u -3 -p -r1.6 howto.html
--- howto.html	2001/10/04 19:54:53	1.6
+++ howto.html	2001/10/04 20:00:40
@@ -173,6 +173,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/25_algorithms/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/25_algorithms/howto.html,v
retrieving revision 1.8
diff -u -3 -p -r1.8 howto.html
--- howto.html	2001/10/04 19:54:53	1.8
+++ howto.html	2001/10/04 20:00:40
@@ -94,6 +94,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/26_numerics/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/26_numerics/howto.html,v
retrieving revision 1.6
diff -u -3 -p -r1.6 howto.html
--- howto.html	2001/10/04 19:54:54	1.6
+++ howto.html	2001/10/04 20:00:40
@@ -152,6 +152,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/27_io/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/27_io/howto.html,v
retrieving revision 1.11
diff -u -3 -p -r1.11 howto.html
--- howto.html	2001/10/04 19:54:54	1.11
+++ howto.html	2001/10/04 20:00:40
@@ -457,6 +457,7 @@
 
 <hr><br><br><br><br><br><br><br><br>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/ext/howto.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/ext/howto.html,v
retrieving revision 1.9
diff -u -3 -p -r1.9 howto.html
--- howto.html	2001/10/04 19:54:54	1.9
+++ howto.html	2001/10/04 20:00:40
@@ -310,6 +310,7 @@
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/ext/sgiexts.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/ext/sgiexts.html,v
retrieving revision 1.2
diff -u -3 -p -r1.2 sgiexts.html
--- sgiexts.html	2001/09/27 00:48:00	1.2
+++ sgiexts.html	2001/10/04 20:00:40
@@ -224,6 +224,7 @@ libstdc++-v3</a></h1>
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>
Index: docs/html/faq/index.html
===================================================================
RCS file: /cvs/gcc/gcc/libstdc++-v3/docs/html/faq/index.html,v
retrieving revision 1.14
diff -u -3 -p -r1.14 index.html
--- index.html	2001/10/04 19:54:54	1.14
+++ index.html	2001/10/04 20:00:40
@@ -35,6 +35,7 @@ http://gcc.gnu.org/onlinedocs/libstdc++/
       <li><a href="#1_6">How do I contribute to the effort?</a>
       <li><a href="#1_7">What happened to libg++?  I need that!</a>
       <li><a href="#1_8">What if I have more questions?</a>
+      <li><a href="#1_9">What are the license terms for libstdc++-v3?</a>
    </ol>
 
    <li><a href="#2_0">Installation</a>
@@ -245,7 +246,12 @@ which is no longer available, thanks dej
       </p>
 
 <hr>
+   <h2><a name="1_9">1.9 What are the license terms for libstdc++-v3?</a></h2>
+      <p>See <a href="../17_intro/license.html">our license description</a>
+         for these and related questions.
+      </p>
 
+<hr>
 <h1><a name="2_0">2.0 Installation</a></h1>
    <h2><a name="2_1">2.1 How do I install libstdc++-v3?</a></h2>
       <p>Complete instructions are not given here (this is a FAQ, not
@@ -695,6 +701,7 @@ HREF="http://gcc.gnu.org/ml/libstdc++/19
 
 <hr>
 <P CLASS="fineprint"><em>
+See <a href="../17_intro/license.html">license.html</a> for copying conditions.
 Comments and suggestions are welcome, and may be sent to
 <a href="mailto:libstdc++@gcc.gnu.org";>the mailing list</a>.
 </em></p>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]