rev |
line source |
nuclear@28
|
1 GNU LESSER GENERAL PUBLIC LICENSE
|
nuclear@28
|
2 Version 3, 29 June 2007
|
nuclear@28
|
3
|
nuclear@28
|
4 Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
nuclear@28
|
5 Everyone is permitted to copy and distribute verbatim copies
|
nuclear@28
|
6 of this license document, but changing it is not allowed.
|
nuclear@28
|
7
|
nuclear@28
|
8
|
nuclear@28
|
9 This version of the GNU Lesser General Public License incorporates
|
nuclear@28
|
10 the terms and conditions of version 3 of the GNU General Public
|
nuclear@28
|
11 License, supplemented by the additional permissions listed below.
|
nuclear@28
|
12
|
nuclear@28
|
13 0. Additional Definitions.
|
nuclear@28
|
14
|
nuclear@28
|
15 As used herein, "this License" refers to version 3 of the GNU Lesser
|
nuclear@28
|
16 General Public License, and the "GNU GPL" refers to version 3 of the GNU
|
nuclear@28
|
17 General Public License.
|
nuclear@28
|
18
|
nuclear@28
|
19 "The Library" refers to a covered work governed by this License,
|
nuclear@28
|
20 other than an Application or a Combined Work as defined below.
|
nuclear@28
|
21
|
nuclear@28
|
22 An "Application" is any work that makes use of an interface provided
|
nuclear@28
|
23 by the Library, but which is not otherwise based on the Library.
|
nuclear@28
|
24 Defining a subclass of a class defined by the Library is deemed a mode
|
nuclear@28
|
25 of using an interface provided by the Library.
|
nuclear@28
|
26
|
nuclear@28
|
27 A "Combined Work" is a work produced by combining or linking an
|
nuclear@28
|
28 Application with the Library. The particular version of the Library
|
nuclear@28
|
29 with which the Combined Work was made is also called the "Linked
|
nuclear@28
|
30 Version".
|
nuclear@28
|
31
|
nuclear@28
|
32 The "Minimal Corresponding Source" for a Combined Work means the
|
nuclear@28
|
33 Corresponding Source for the Combined Work, excluding any source code
|
nuclear@28
|
34 for portions of the Combined Work that, considered in isolation, are
|
nuclear@28
|
35 based on the Application, and not on the Linked Version.
|
nuclear@28
|
36
|
nuclear@28
|
37 The "Corresponding Application Code" for a Combined Work means the
|
nuclear@28
|
38 object code and/or source code for the Application, including any data
|
nuclear@28
|
39 and utility programs needed for reproducing the Combined Work from the
|
nuclear@28
|
40 Application, but excluding the System Libraries of the Combined Work.
|
nuclear@28
|
41
|
nuclear@28
|
42 1. Exception to Section 3 of the GNU GPL.
|
nuclear@28
|
43
|
nuclear@28
|
44 You may convey a covered work under sections 3 and 4 of this License
|
nuclear@28
|
45 without being bound by section 3 of the GNU GPL.
|
nuclear@28
|
46
|
nuclear@28
|
47 2. Conveying Modified Versions.
|
nuclear@28
|
48
|
nuclear@28
|
49 If you modify a copy of the Library, and, in your modifications, a
|
nuclear@28
|
50 facility refers to a function or data to be supplied by an Application
|
nuclear@28
|
51 that uses the facility (other than as an argument passed when the
|
nuclear@28
|
52 facility is invoked), then you may convey a copy of the modified
|
nuclear@28
|
53 version:
|
nuclear@28
|
54
|
nuclear@28
|
55 a) under this License, provided that you make a good faith effort to
|
nuclear@28
|
56 ensure that, in the event an Application does not supply the
|
nuclear@28
|
57 function or data, the facility still operates, and performs
|
nuclear@28
|
58 whatever part of its purpose remains meaningful, or
|
nuclear@28
|
59
|
nuclear@28
|
60 b) under the GNU GPL, with none of the additional permissions of
|
nuclear@28
|
61 this License applicable to that copy.
|
nuclear@28
|
62
|
nuclear@28
|
63 3. Object Code Incorporating Material from Library Header Files.
|
nuclear@28
|
64
|
nuclear@28
|
65 The object code form of an Application may incorporate material from
|
nuclear@28
|
66 a header file that is part of the Library. You may convey such object
|
nuclear@28
|
67 code under terms of your choice, provided that, if the incorporated
|
nuclear@28
|
68 material is not limited to numerical parameters, data structure
|
nuclear@28
|
69 layouts and accessors, or small macros, inline functions and templates
|
nuclear@28
|
70 (ten or fewer lines in length), you do both of the following:
|
nuclear@28
|
71
|
nuclear@28
|
72 a) Give prominent notice with each copy of the object code that the
|
nuclear@28
|
73 Library is used in it and that the Library and its use are
|
nuclear@28
|
74 covered by this License.
|
nuclear@28
|
75
|
nuclear@28
|
76 b) Accompany the object code with a copy of the GNU GPL and this license
|
nuclear@28
|
77 document.
|
nuclear@28
|
78
|
nuclear@28
|
79 4. Combined Works.
|
nuclear@28
|
80
|
nuclear@28
|
81 You may convey a Combined Work under terms of your choice that,
|
nuclear@28
|
82 taken together, effectively do not restrict modification of the
|
nuclear@28
|
83 portions of the Library contained in the Combined Work and reverse
|
nuclear@28
|
84 engineering for debugging such modifications, if you also do each of
|
nuclear@28
|
85 the following:
|
nuclear@28
|
86
|
nuclear@28
|
87 a) Give prominent notice with each copy of the Combined Work that
|
nuclear@28
|
88 the Library is used in it and that the Library and its use are
|
nuclear@28
|
89 covered by this License.
|
nuclear@28
|
90
|
nuclear@28
|
91 b) Accompany the Combined Work with a copy of the GNU GPL and this license
|
nuclear@28
|
92 document.
|
nuclear@28
|
93
|
nuclear@28
|
94 c) For a Combined Work that displays copyright notices during
|
nuclear@28
|
95 execution, include the copyright notice for the Library among
|
nuclear@28
|
96 these notices, as well as a reference directing the user to the
|
nuclear@28
|
97 copies of the GNU GPL and this license document.
|
nuclear@28
|
98
|
nuclear@28
|
99 d) Do one of the following:
|
nuclear@28
|
100
|
nuclear@28
|
101 0) Convey the Minimal Corresponding Source under the terms of this
|
nuclear@28
|
102 License, and the Corresponding Application Code in a form
|
nuclear@28
|
103 suitable for, and under terms that permit, the user to
|
nuclear@28
|
104 recombine or relink the Application with a modified version of
|
nuclear@28
|
105 the Linked Version to produce a modified Combined Work, in the
|
nuclear@28
|
106 manner specified by section 6 of the GNU GPL for conveying
|
nuclear@28
|
107 Corresponding Source.
|
nuclear@28
|
108
|
nuclear@28
|
109 1) Use a suitable shared library mechanism for linking with the
|
nuclear@28
|
110 Library. A suitable mechanism is one that (a) uses at run time
|
nuclear@28
|
111 a copy of the Library already present on the user's computer
|
nuclear@28
|
112 system, and (b) will operate properly with a modified version
|
nuclear@28
|
113 of the Library that is interface-compatible with the Linked
|
nuclear@28
|
114 Version.
|
nuclear@28
|
115
|
nuclear@28
|
116 e) Provide Installation Information, but only if you would otherwise
|
nuclear@28
|
117 be required to provide such information under section 6 of the
|
nuclear@28
|
118 GNU GPL, and only to the extent that such information is
|
nuclear@28
|
119 necessary to install and execute a modified version of the
|
nuclear@28
|
120 Combined Work produced by recombining or relinking the
|
nuclear@28
|
121 Application with a modified version of the Linked Version. (If
|
nuclear@28
|
122 you use option 4d0, the Installation Information must accompany
|
nuclear@28
|
123 the Minimal Corresponding Source and Corresponding Application
|
nuclear@28
|
124 Code. If you use option 4d1, you must provide the Installation
|
nuclear@28
|
125 Information in the manner specified by section 6 of the GNU GPL
|
nuclear@28
|
126 for conveying Corresponding Source.)
|
nuclear@28
|
127
|
nuclear@28
|
128 5. Combined Libraries.
|
nuclear@28
|
129
|
nuclear@28
|
130 You may place library facilities that are a work based on the
|
nuclear@28
|
131 Library side by side in a single library together with other library
|
nuclear@28
|
132 facilities that are not Applications and are not covered by this
|
nuclear@28
|
133 License, and convey such a combined library under terms of your
|
nuclear@28
|
134 choice, if you do both of the following:
|
nuclear@28
|
135
|
nuclear@28
|
136 a) Accompany the combined library with a copy of the same work based
|
nuclear@28
|
137 on the Library, uncombined with any other library facilities,
|
nuclear@28
|
138 conveyed under the terms of this License.
|
nuclear@28
|
139
|
nuclear@28
|
140 b) Give prominent notice with the combined library that part of it
|
nuclear@28
|
141 is a work based on the Library, and explaining where to find the
|
nuclear@28
|
142 accompanying uncombined form of the same work.
|
nuclear@28
|
143
|
nuclear@28
|
144 6. Revised Versions of the GNU Lesser General Public License.
|
nuclear@28
|
145
|
nuclear@28
|
146 The Free Software Foundation may publish revised and/or new versions
|
nuclear@28
|
147 of the GNU Lesser General Public License from time to time. Such new
|
nuclear@28
|
148 versions will be similar in spirit to the present version, but may
|
nuclear@28
|
149 differ in detail to address new problems or concerns.
|
nuclear@28
|
150
|
nuclear@28
|
151 Each version is given a distinguishing version number. If the
|
nuclear@28
|
152 Library as you received it specifies that a certain numbered version
|
nuclear@28
|
153 of the GNU Lesser General Public License "or any later version"
|
nuclear@28
|
154 applies to it, you have the option of following the terms and
|
nuclear@28
|
155 conditions either of that published version or of any later version
|
nuclear@28
|
156 published by the Free Software Foundation. If the Library as you
|
nuclear@28
|
157 received it does not specify a version number of the GNU Lesser
|
nuclear@28
|
158 General Public License, you may choose any version of the GNU Lesser
|
nuclear@28
|
159 General Public License ever published by the Free Software Foundation.
|
nuclear@28
|
160
|
nuclear@28
|
161 If the Library as you received it specifies that a proxy can decide
|
nuclear@28
|
162 whether future versions of the GNU Lesser General Public License shall
|
nuclear@28
|
163 apply, that proxy's public statement of acceptance of any version is
|
nuclear@28
|
164 permanent authorization for you to choose that version for the
|
nuclear@28
|
165 Library.
|