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