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