any medium, provided that y ou conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the
absence of any warranty; and distr ibute a cop y of this License along with the Librar y .
You may charge a fee f or the physical act of transf erring a copy , and you ma y at your option offer w arranty
protection in exchange f or a fee.
2. Y ou may modify your cop y or copies of the Library or any portion of it, thus forming a work based on the
Library , and copy and distribute such modifications or work under the terms of Section 1 above, provided
that you also meet all of these conditions:
a) The modified work must itself be a software libr ar y .
b) Y ou must cause the files modified to carry prominent notices stating that you changed the files and the
date of any change.
c) Y ou must cause the whole of the work to be licensed at no charge to all third par ties under the terms of
this License.
d) If a f acility in the modified Library refers to a function or a table of data to be supplied by an application
program that uses the f acility , other than as an argument passed when the facility is invok ed, then you
must make a good f aith effort to ensure that, in the event an application does not supply such function
or table, the f acility still operates, and perf orms whatever part of its pur pose remains meaningful. (For
example, a function in a libr ary to compute square roots has a pur pose that is entirely well-defined
independent of the application. Therefore, Subsection 2d requires that any application-supplied function
or table used by this function m ust be optional: if the application does not supply it, the square root
function must still compute square roots.)
These requirements apply to the modified work as a whole. If identifiable sections of that work are not
derived from the Library , and can be reasonably considered independent and separate works in them-
selves, then this License , and its terms, do not apply to those sections when you distribute them as sepa-
rate works. But when you distribute the same sections as part of a whole which is a work based on the
Library , the distr ib ution of the whole must be on the terms of this License, whose per missions f or other
licensees extend to the entire whole, and thus to each and e ver y part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you;
rather , the intent is to ex ercise the right to control the distr ib ution of derivative or collective w orks based on
the Library .
In addition, mere aggregation of another work not based on the Library with the Library (or with a work
based on the Library) on a volume of a storage or distribution medium does not bring the other work under
the scope of this License.
3. Y ou may opt to apply the terms of the ordinary GNU General Public License instead of this License to a
given cop y of the Library . T o do this, you must alter all the notices that ref er to this License, so that they
refer to the ordinary GNU General Public License, v ersion 2, instead of to this License. (If a newer v ersion
than version 2 of the ordinary GNU General Public License has appeared, then you can specify that v er-
sion instead if you wish.) Do not make an y other change in these notices.
Once this change is made in a given cop y , it is irreversib le for that copy , so the ordinar y GNU General
Public License applies to all subsequent copies and derivativ e works made from that copy . This option is
useful when you wish to cop y par t of the code of the Library into a program that is not a library .
4. Y ou may cop y and distribute the Library (or a por tion or derivative of it, under Section 2) in object code or
executable f orm under the ter ms of Sections 1 and 2 abov e provided that you accompany it with the com-
plete corresponding machine-readable source code, which must be distrib uted under the terms of
Sections 1 and 2 above on a medium customarily used f or software interchange.
If distribution of object code is made by off ering access to copy from a designated place, then off ering
equivalent access to cop y the source code from the same place satisfies the requirement to distribute the
source code, ev en though third parties are not compelled to copy the source along with the object code.
5. A program that contains no derivative of any portion of the Library , but is designed to work with the Librar y
by being compiled or linked with it, is called a “work that uses the Library”. Such a work, in isolation, is not
a derivative work of the Library , and therefore f alls outside the scope of this License.
Howe ver , linking a “work that uses the Library” with the Libr ar y creates an e xecutable that is a deriv ative of
the Library (because it contains por tions of the Library), rather than a “w ork that uses the librar y”. The exe-
cutable is theref ore covered by this License . Section 6 states ter ms f or distribution of such ex ecutables.
When a “work that uses the Library” uses material from a header file that is part of the Library , the object
code for the work ma y be a derivative work of the Library ev en though the source code is not. Whether
this is true is especially significant if the work can be linked without the Library , or if the work is itself a
library . The threshold for this to be true is not precisely defined by la w .
If such an object file uses only numerical parameters, data structure lay outs and accessors, and small
macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted,
regardless of whether it is legally a derivative work. (Executables containing this object code plus portions
of the Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Libr ary , you may distribute the object code f or the wor k under
the terms of Section 6. An y executab les containing that work also fall under Section 6, whether or not they
are linked directly with the Library itself.
6. As an exception to the Sections above , you may also combine or link a “work that uses the Library” with
the Library to produce a work containing por tions of the Library , and distribute that work under ter ms of
your choice, pro vided that the terms per mit modification of the work for the customer’ s own use and
rev erse engineering for debugging such modifications.
You must give prominent notice with each copy of the w ork that the Librar y is used in it and that the
Library and its use are covered by this License . Y ou must supply a copy of this License. If the work dur ing
execution displays cop yright notices, you must include the cop yright notice for the Library among them, as
well as a reference directing the user to the cop y of this License. Also, y ou must do one of these things:
a) Accompany the work with the complete corresponding machine-readab le source code for the Library
including whatev er changes were used in the work (which must be distributed under Sections 1 and 2
above); and, if the work is an executable link ed with the Library , with the complete machine-readable
“work that uses the Library”, as object code and/or source code, so that the user can modify the Library
and then relink to produce a modified ex ecutable containing the modified Library . (It is understood that
the user who changes the contents of definitions files in the Library will not necessarily be able to
recompile the application to use the modified definitions.)
b) Use a suitable shared libr ar y mechanism f or linking with the Library . A suitable mechanism is one that
(1) uses at run time a copy of the library already present on the user’s computer system, r ather than
copying library functions into the ex ecutable, and (2) will oper ate properly with a modified version of the
library , if the user installs one, as long as the modified version is interface-compatib le with the version
that the work was made with.
c) Accompany the work with a written offer, v alid for at least three years , to give the same user the materi-
als specified in Subsection 6a, above , for a charge no more than the cost of perf or ming this distribution.
d) If distribution of the work is made by off ering access to copy from a designated place, off er equivalent
access to copy the abov e specified materials from the same place.
e) V erify that the user has already received a copy of these materials or that you ha ve already sent this
user a copy .
For an e xecutable , the required form of the “work that uses the Library” m ust include any data and utility
programs needed f or reproducing the executab le from it. Howev er, as a special e xception, the mater ials to
be distributed need not include anything that is normally distributed (in either source or binary form) with
the major components (compiler , kernel, and so on) of the operating system on which the ex ecutable runs,
unless that component itself accompanies the ex ecutable.
It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do
not normally accompany the operating system. Such a contradiction means you cannot use both them and
the Library together in an executab le that you distribute.
7. Y ou may place library facilities that are a work based on the Library side-by-side in a single library togeth-
er with other library facilities not cov ered by this License, and distribute such a combined library , provided
that the separate distribution of the work based on the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
a) Accompany the combined library with a copy of the same work based on the Library , uncombined with
any other library facilities. This must be distributed under the terms of the Sections above.
b) Give prominent notice with the combined libr ary of the fact that par t of it is a work based on the Library ,
and explaining where to find the accompanying uncombined f or m of the same work.
8. Y ou may not cop y , modify , sublicense, link with, or distribute the Library except as e xpressly provided
under this License. Any attempt otherwise to cop y , modify , sublicense, link with, or distribute the Libr ar y is
void, and will automatically terminate your rights under this License. Howe ver , parties who have received
copies, or rights, from you under this License will not ha ve their licenses terminated so long as such par-
ties remain in full compliance.
9. Y ou are not required to accept this License, since you hav e not signed it. Howev er , nothing else grants you
permission to modify or distribute the Library or its der iv ative works. These actions are prohibited by law if
you do not accept this License. Therefore, by modifying or distributing the Libr ar y (or any w ork based on
the Library), you indicate your acceptance of this License to do so , and all its terms and conditions for