|
|
1 |
GNU LIBRARY GENERAL PUBLIC LICENSE |
|
|
2 |
Version 2, June 1991 |
|
|
3 |
|
|
|
4 |
Copyright (C) 1991 Free Software Foundation, Inc. |
|
|
5 |
675 Mass Ave, Cambridge, MA 02139, USA |
|
|
6 |
Everyone is permitted to copy and distribute verbatim copies |
|
|
7 |
of this license document, but changing it is not allowed. |
|
|
8 |
|
|
|
9 |
[This is the first released version of the library GPL. It is |
|
|
10 |
numbered 2 because it goes with version 2 of the ordinary GPL.] |
|
|
11 |
|
|
|
12 |
Preamble |
|
|
13 |
|
|
|
14 |
The licenses for most software are designed to take away your |
|
|
15 |
freedom to share and change it. By contrast, the GNU General Public |
|
|
16 |
Licenses are intended to guarantee your freedom to share and change |
|
|
17 |
free software--to make sure the software is free for all its users. |
|
|
18 |
|
|
|
19 |
This license, the Library General Public License, applies to some |
|
|
20 |
specially designated Free Software Foundation software, and to any |
|
|
21 |
other libraries whose authors decide to use it. You can use it for |
|
|
22 |
your libraries, too. |
|
|
23 |
|
|
|
24 |
When we speak of free software, we are referring to freedom, not |
|
|
25 |
price. Our General Public Licenses are designed to make sure that you |
|
|
26 |
have the freedom to distribute copies of free software (and charge for |
|
|
27 |
this service if you wish), that you receive source code or can get it |
|
|
28 |
if you want it, that you can change the software or use pieces of it |
|
|
29 |
in new free programs; and that you know you can do these things. |
|
|
30 |
|
|
|
31 |
To protect your rights, we need to make restrictions that forbid |
|
|
32 |
anyone to deny you these rights or to ask you to surrender the rights. |
|
|
33 |
These restrictions translate to certain responsibilities for you if |
|
|
34 |
you distribute copies of the library, or if you modify it. |
|
|
35 |
|
|
|
36 |
For example, if you distribute copies of the library, whether gratis |
|
|
37 |
or for a fee, you must give the recipients all the rights that we gave |
|
|
38 |
you. You must make sure that they, too, receive or can get the source |
|
|
39 |
code. If you link a program with the library, you must provide |
|
|
40 |
complete object files to the recipients so that they can relink them |
|
|
41 |
with the library, after making changes to the library and recompiling |
|
|
42 |
it. And you must show them these terms so they know their rights. |
|
|
43 |
|
|
|
44 |
Our method of protecting your rights has two steps: (1) copyright |
|
|
45 |
the library, and (2) offer you this license which gives you legal |
|
|
46 |
permission to copy, distribute and/or modify the library. |
|
|
47 |
|
|
|
48 |
Also, for each distributor's protection, we want to make certain |
|
|
49 |
that everyone understands that there is no warranty for this free |
|
|
50 |
library. If the library is modified by someone else and passed on, we |
|
|
51 |
want its recipients to know that what they have is not the original |
|
|
52 |
version, so that any problems introduced by others will not reflect on |
|
|
53 |
the original authors' reputations. |
|
|
54 |
|
|
|
55 |
Finally, any free program is threatened constantly by software |
|
|
56 |
patents. We wish to avoid the danger that companies distributing free |
|
|
57 |
software will individually obtain patent licenses, thus in effect |
|
|
58 |
transforming the program into proprietary software. To prevent this, |
|
|
59 |
we have made it clear that any patent must be licensed for everyone's |
|
|
60 |
free use or not licensed at all. |
|
|
61 |
|
|
|
62 |
Most GNU software, including some libraries, is covered by the ordinary |
|
|
63 |
GNU General Public License, which was designed for utility programs. This |
|
|
64 |
license, the GNU Library General Public License, applies to certain |
|
|
65 |
designated libraries. This license is quite different from the ordinary |
|
|
66 |
one; be sure to read it in full, and don't assume that anything in it is |
|
|
67 |
the same as in the ordinary license. |
|
|
68 |
|
|
|
69 |
The reason we have a separate public license for some libraries is that |
|
|
70 |
they blur the distinction we usually make between modifying or adding to a |
|
|
71 |
program and simply using it. Linking a program with a library, without |
|
|
72 |
changing the library, is in some sense simply using the library, and is |
|
|
73 |
analogous to running a utility program or application program. However, in |
|
|
74 |
a textual and legal sense, the linked executable is a combined work, a |
|
|
75 |
derivative of the original library, and the ordinary General Public License |
|
|
76 |
treats it as such. |
|
|
77 |
|
|
|
78 |
Because of this blurred distinction, using the ordinary General |
|
|
79 |
Public License for libraries did not effectively promote software |
|
|
80 |
sharing, because most developers did not use the libraries. We |
|
|
81 |
concluded that weaker conditions might promote sharing better. |
|
|
82 |
|
|
|
83 |
However, unrestricted linking of non-free programs would deprive the |
|
|
84 |
users of those programs of all benefit from the free status of the |
|
|
85 |
libraries themselves. This Library General Public License is intended to |
|
|
86 |
permit developers of non-free programs to use free libraries, while |
|
|
87 |
preserving your freedom as a user of such programs to change the free |
|
|
88 |
libraries that are incorporated in them. (We have not seen how to achieve |
|
|
89 |
this as regards changes in header files, but we have achieved it as regards |
|
|
90 |
changes in the actual functions of the Library.) The hope is that this |
|
|
91 |
will lead to faster development of free libraries. |
|
|
92 |
|
|
|
93 |
The precise terms and conditions for copying, distribution and |
|
|
94 |
modification follow. Pay close attention to the difference between a |
|
|
95 |
"work based on the library" and a "work that uses the library". The |
|
|
96 |
former contains code derived from the library, while the latter only |
|
|
97 |
works together with the library. |
|
|
98 |
|
|
|
99 |
Note that it is possible for a library to be covered by the ordinary |
|
|
100 |
General Public License rather than by this special one. |
|
|
101 |
|
|
|
102 |
GNU LIBRARY GENERAL PUBLIC LICENSE |
|
|
103 |
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION |
|
|
104 |
|
|
|
105 |
0. This License Agreement applies to any software library which |
|
|
106 |
contains a notice placed by the copyright holder or other authorized |
|
|
107 |
party saying it may be distributed under the terms of this Library |
|
|
108 |
General Public License (also called "this License"). Each licensee is |
|
|
109 |
addressed as "you". |
|
|
110 |
|
|
|
111 |
A "library" means a collection of software functions and/or data |
|
|
112 |
prepared so as to be conveniently linked with application programs |
|
|
113 |
(which use some of those functions and data) to form executables. |
|
|
114 |
|
|
|
115 |
The "Library", below, refers to any such software library or work |
|
|
116 |
which has been distributed under these terms. A "work based on the |
|
|
117 |
Library" means either the Library or any derivative work under |
|
|
118 |
copyright law: that is to say, a work containing the Library or a |
|
|
119 |
portion of it, either verbatim or with modifications and/or translated |
|
|
120 |
straightforwardly into another language. (Hereinafter, translation is |
|
|
121 |
included without limitation in the term "modification".) |
|
|
122 |
|
|
|
123 |
"Source code" for a work means the preferred form of the work for |
|
|
124 |
making modifications to it. For a library, complete source code means |
|
|
125 |
all the source code for all modules it contains, plus any associated |
|
|
126 |
interface definition files, plus the scripts used to control compilation |
|
|
127 |
and installation of the library. |
|
|
128 |
|
|
|
129 |
Activities other than copying, distribution and modification are not |
|
|
130 |
covered by this License; they are outside its scope. The act of |
|
|
131 |
running a program using the Library is not restricted, and output from |
|
|
132 |
such a program is covered only if its contents constitute a work based |
|
|
133 |
on the Library (independent of the use of the Library in a tool for |
|
|
134 |
writing it). Whether that is true depends on what the Library does |
|
|
135 |
and what the program that uses the Library does. |
|
|
136 |
|
|
|
137 |
1. You may copy and distribute verbatim copies of the Library's |
|
|
138 |
complete source code as you receive it, in any medium, provided that |
|
|
139 |
you conspicuously and appropriately publish on each copy an |
|
|
140 |
appropriate copyright notice and disclaimer of warranty; keep intact |
|
|
141 |
all the notices that refer to this License and to the absence of any |
|
|
142 |
warranty; and distribute a copy of this License along with the |
|
|
143 |
Library. |
|
|
144 |
|
|
|
145 |
You may charge a fee for the physical act of transferring a copy, |
|
|
146 |
and you may at your option offer warranty protection in exchange for a |
|
|
147 |
fee. |
|
|
148 |
|
|
|
149 |
2. You may modify your copy or copies of the Library or any portion |
|
|
150 |
of it, thus forming a work based on the Library, and copy and |
|
|
151 |
distribute such modifications or work under the terms of Section 1 |
|
|
152 |
above, provided that you also meet all of these conditions: |
|
|
153 |
|
|
|
154 |
a) The modified work must itself be a software library. |
|
|
155 |
|
|
|
156 |
b) You must cause the files modified to carry prominent notices |
|
|
157 |
stating that you changed the files and the date of any change. |
|
|
158 |
|
|
|
159 |
c) You must cause the whole of the work to be licensed at no |
|
|
160 |
charge to all third parties under the terms of this License. |
|
|
161 |
|
|
|
162 |
d) If a facility in the modified Library refers to a function or a |
|
|
163 |
table of data to be supplied by an application program that uses |
|
|
164 |
the facility, other than as an argument passed when the facility |
|
|
165 |
is invoked, then you must make a good faith effort to ensure that, |
|
|
166 |
in the event an application does not supply such function or |
|
|
167 |
table, the facility still operates, and performs whatever part of |
|
|
168 |
its purpose remains meaningful. |
|
|
169 |
|
|
|
170 |
(For example, a function in a library to compute square roots has |
|
|
171 |
a purpose that is entirely well-defined independent of the |
|
|
172 |
application. Therefore, Subsection 2d requires that any |
|
|
173 |
application-supplied function or table used by this function must |
|
|
174 |
be optional: if the application does not supply it, the square |
|
|
175 |
root function must still compute square roots.) |
|
|
176 |
|
|
|
177 |
These requirements apply to the modified work as a whole. If |
|
|
178 |
identifiable sections of that work are not derived from the Library, |
|
|
179 |
and can be reasonably considered independent and separate works in |
|
|
180 |
themselves, then this License, and its terms, do not apply to those |
|
|
181 |
sections when you distribute them as separate works. But when you |
|
|
182 |
distribute the same sections as part of a whole which is a work based |
|
|
183 |
on the Library, the distribution of the whole must be on the terms of |
|
|
184 |
this License, whose permissions for other licensees extend to the |
|
|
185 |
entire whole, and thus to each and every part regardless of who wrote |
|
|
186 |
it. |
|
|
187 |
|
|
|
188 |
Thus, it is not the intent of this section to claim rights or contest |
|
|
189 |
your rights to work written entirely by you; rather, the intent is to |
|
|
190 |
exercise the right to control the distribution of derivative or |
|
|
191 |
collective works based on the Library. |
|
|
192 |
|
|
|
193 |
In addition, mere aggregation of another work not based on the Library |
|
|
194 |
with the Library (or with a work based on the Library) on a volume of |
|
|
195 |
a storage or distribution medium does not bring the other work under |
|
|
196 |
the scope of this License. |
|
|
197 |
|
|
|
198 |
3. You may opt to apply the terms of the ordinary GNU General Public |
|
|
199 |
License instead of this License to a given copy of the Library. To do |
|
|
200 |
this, you must alter all the notices that refer to this License, so |
|
|
201 |
that they refer to the ordinary GNU General Public License, version 2, |
|
|
202 |
instead of to this License. (If a newer version than version 2 of the |
|
|
203 |
ordinary GNU General Public License has appeared, then you can specify |
|
|
204 |
that version instead if you wish.) Do not make any other change in |
|
|
205 |
these notices. |
|
|
206 |
|
|
|
207 |
Once this change is made in a given copy, it is irreversible for |
|
|
208 |
that copy, so the ordinary GNU General Public License applies to all |
|
|
209 |
subsequent copies and derivative works made from that copy. |
|
|
210 |
|
|
|
211 |
This option is useful when you wish to copy part of the code of |
|
|
212 |
the Library into a program that is not a library. |
|
|
213 |
|
|
|
214 |
4. You may copy and distribute the Library (or a portion or |
|
|
215 |
derivative of it, under Section 2) in object code or executable form |
|
|
216 |
under the terms of Sections 1 and 2 above provided that you accompany |
|
|
217 |
it with the complete corresponding machine-readable source code, which |
|
|
|