party saying it may be distributed under
c) You must cause the whole of the work
the terms of this Lesser General Public
to be licensed at no charge to all third
License (also called "this License").
parties under the terms of this
Each licensee is addressed as "you".
License.
A "library" means a collection of
d)If a facility in the modified Library
software functions and/or data
refers to a function or a table of data
prepared so as to be conveniently linked
to be supplied by an application
with application programs (which use
program that uses the facility, other
some of those functions and data) to
than as an argument passed when
form executables.
the facility is invoked, then you must
make a good faith effort to ensure
The "Library", below, refers to any such
software library or work which has been
that, in the event an application does
not supply such function or table, the
distributed under these terms. A "work
facility still operates, and performs
based on the Library" means either the
whatever part of its purpose remains
Library or any derivative work under
meaningful.
copyright law: that is to say, a work
containing the Library or a portion of it,
(For example, a function in a library to
either verbatim or with modifications
compute square roots has a purpose
and/or translated straightforwardly into
that is entirely well-defined independent
another language. (Hereinafter,
of the application. Therefore,
translation is included without
Subsection 2d requires that any
limitation in the term "modification".)
application-supplied function or table
used by this function must be optional:
"Source code" for a work means the
if the application does not supply it, the
preferred form of the work for making
square root function must still compute
modifications to it. For a library,
square roots.)
complete source code means all the
source code for all modules it contains,
These requirements apply to the
plus any associated interface definition
modified work as a whole. If identifiable
files, plus the scripts used to control
sections of that work are not derived
compilation and installation of the
from the Library, and can be reasonably
library.
considered independent and separate
works in themselves, then this License,
Activities other than copying,
and its terms, do not apply to those
distribution and modification are not
sections when you distribute them as
covered by this License; they are outside
separate works. But when you distribute
its scope. The act of running a program
the same sections as part of a whole
using the Library is not restricted, and
which is a work based on the Library,
output from such a program is covered
the distribution of the whole must be on
only if its contents constitute a work
based on the Library (independent of
the terms of this License, whose
permissions for other licensees extend
the use of the Library in a tool for writing
to the entire whole, and thus to each
it). Whether that is true depends on
what the Library does and what the
and every part regardless of who wrote
it.
program that uses the Library does.
Thus, it is not the intent of this section to
1. You may copy and distribute verbatim
claim rights or contest your rights to
copies of the Library's complete source
code as you receive it, in any medium,
work written entirely by you; rather, the
intent is to exercise the right to control
provided that you conspicuously and
the distribution of derivative or
appropriately publish on each copy an
appropriate copyright notice and
collective works based on the Library.
disclaimer of warranty; keep intact all
In addition, mere aggregation of
the notices that refer to this License and
another work not based on the Library
to the absence of any warranty; and
with the Library (or with a work based on
distribute a copy of this License along
the Library) on a volume of a storage or
with the Library.
distribution medium does not bring the
other work under the scope of this
You may charge a fee for the physical
act of transferring a copy, and you may
License.
at your option offer warranty protection
3. You may opt to apply the terms of the
in exchange for a fee.
ordinary GNU General Public License
instead of this License to a given copy of
2. You may modify your copy or copies of
the Library. To do this, you must alter all
the Library or any portion of it, thus
the notices that refer to this License, so
forming a work based on the Library,
that they refer to the ordinary GNU
and copy and distribute such
modifications or work under the terms
General Public License, version 2,
instead of to this License. (If a newer
of Section 1 above, provided that you
version than version 2 of the ordinary
also meet all of these conditions:
GNU General Public License has
a) The modified work must itself be a
appeared, then you can specify that
software library.
version instead if you wish.) Do not
b)You must cause the files modified to
make any other change in these
carry prominent notices stating that
notices.
you changed the files and the date of
any change.
Once this change is made in a given
Otherwise, if the work is a derivative of
copy, it is irreversible for that copy, so
the Library, you may distribute the
the ordinary GNU General Public
object code for the work under the
License applies to all subsequent
terms of Section 6. Any executables
copies and derivative works made from
containing that work also fall under
that copy.
Section 6, whether or not they are linked
directly with the Library itself.
This option is useful when you wish to
copy part of the code of the Library into
6. As an exception to the Sections above,
a program that is not a library.
you may also combine or link a "work
that uses the Library" with the Library to
4. You may copy and distribute the Library
produce a work containing portions of
(or a portion or derivative of it, under
Section 2) in object code or executable
the Library, and distribute that work
under terms of your choice, provided
form under the terms of Sections 1 and
that the terms permit modification of
2 above provided that you accompany it
the work for the customer's own use
with the complete corresponding
and reverse engineering for debugging
machine-readable source code, which
such modifications.
must be distributed under the terms of
Sections 1 and 2 above on a medium
You must give prominent notice with
customarily used for software
each copy of the work that the Library is
interchange.
used in it and that the Library and its
use are covered by this License. You
If distribution of object code is made by
must supply a copy of this License. If the
offering access to copy from a
work during execution displays
designated place, then offering
copyright notices, you must include the
equivalent access to copy the source
copyright notice for the Library among
code from the same place satisfies the
them, as well as a reference directing
requirement to distribute the source
the user to the copy of this License.
code, even though third parties are not
Also, you must do one of these things:
compelled to copy the source along
with the object code.
a) Accompany the work with the
complete corresponding machine-
5. A program that contains no derivative of
readable source code for the Library
any portion of the Library, but is
including whatever changes were
designed to work with the Library by
used in the work (which must be
being compiled or linked with it, is
distributed under Sections 1 and 2
called a "work that uses the Library".
above); and, if the work is an
Such a work, in isolation, is not a
executable linked with the Library,
derivative work of the Library, and
with the complete machine-readable
therefore falls outside the scope of this
"work that uses the Library", as object
License.
code and/or source code, so that the
However, linking a "work that uses the
user can modify the Library and then
Library" with the Library creates an
relink to produce a modified
executable that is a derivative of the
executable containing the modified
Library (because it contains portions of
Library. (It is understood that the user
the Library), rather than a "work that
who changes the contents of
uses the library". The executable is
definitions files in the Library will not
therefore covered by this License.
necessarily be able to recompile the
Section 6 states terms for distribution of
application to use the modified
such executables.
definitions.)
When a "work that uses the Library"
b)Use a suitable shared library
uses material from a header file that is
mechanism for linking with the
part of the Library, the object code for
Library. A suitable mechanism is one
the work may be a derivative work of the
that (1) uses at run time a copy of the
Library even though the source code is
library already present on the user's
not. Whether this is true is especially
computer system, rather than
significant if the work can be linked
copying library functions into the
without the Library, or if the work is itself
executable, and (2) will operate
a library. The threshold for this to be true
properly with a modified version of the
is not precisely defined by law.
library, if the user installs one, as long
If such an object file uses only
as the modified version is interface-
numerical parameters, data structure
compatible with the version that the
layouts and accessors, and small
work was made with.
macros and small inline functions (ten
c) Accompany the work with a written
lines or less in length), then the use of
offer, valid for at least three years, to
the object file is unrestricted,
give the same user the materials
regardless of whether it is legally a
specified in Subsection 6a, above, for
derivative work. (Executables
a charge no more than the cost of
containing this object code plus
performing this distribution.
portions of the Library will still fall under
d)If distribution of the work is made by
Section 6.)
offering access to copy from a
designated place, offer equivalent
access to copy the above specified
materials from the same place.
e) Verify that the user has already
License to do so, and all its terms and
received a copy of these materials or
conditions for copying, distributing or
that you have already sent this user a
modifying the Library or works based on
copy.
it.
For an executable, the required form of
10. Each time you redistribute the Library
the "work that uses the Library" must
(or any work based on the Library), the
include any data and utility programs
recipient automatically receives a
needed for reproducing the executable
license from the original licensor to
from it. However, as a special exception,
copy, distribute, link with or modify the
the materials to be distributed need not
Library subject to these terms and
include anything that is normally
conditions. You may not impose any
distributed (in either source or binary
further restrictions on the recipients'
form) with the major components
exercise of the rights granted herein.
(compiler, kernel, and so on) of the
You are not responsible for enforcing
compliance by third parties with this
operating system on which the
executable runs, unless that
License.
component itself accompanies the
11. If, as a consequence of a court
executable.
judgment or allegation of patent
It may happen that this requirement
infringement or for any other reason
contradicts the license restrictions of
(not limited to patent issues),
other proprietary libraries that do not
conditions are imposed on you (whether
normally accompany the operating
by court order, agreement or otherwise)
system. Such a contradiction means
that contradict the conditions of this
you cannot use both them and the
License, they do not excuse you from
Library together in an executable that
the conditions of this License. If you
you distribute.
cannot distribute so as to satisfy
simultaneously your obligations under
7. You may place library facilities that are a
this License and any other pertinent
work based on the Library side-by-side
in a single library together with other
obligations, then as a consequence you
may not distribute the Library at all. For
library facilities not covered by this
example, if a patent license would not
License, and distribute such a
combined library, provided that the
permit royalty-free redistribution of the
Library by all those who receive copies
separate distribution of the work based
directly or indirectly through you, then
on the Library and of the other library
facilities is otherwise permitted, and
the only way you could satisfy both it
and this License would be to refrain
provided that you do these two things:
entirely from distribution of the Library.
a) Accompany the combined library
If any portion of this section is held
with a copy of the same work based
on the Library, uncombined with any
invalid or unenforceable under any
particular circumstance, the balance of
other library facilities. This must be
the section is intended to apply, and the
distributed under the terms of the
Sections above.
section as a whole is intended to apply
in other circumstances.
b)Give prominent notice with the
It is not the purpose of this section to
combined library of the fact that part
induce you to infringe any patents or
of it is a work based on the Library,
and explaining where to find the
other property right claims or to contest
validity of any such claims; this section
accompanying uncombined form of
has the sole purpose of protecting the
the same work.
integrity of the free software distribution
8. You may not copy, modify, sublicense,
system which is implemented by public
link with, or distribute the Library except
license practices. Many people have
as expressly provided under this
made generous contributions to the
License. Any attempt otherwise to copy,
wide range of software distributed
modify, sublicense, link with, or
through that system in reliance on
distribute the Library is void, and will
consistent application of that system; it
automatically terminate your rights
is up to the author/donor to decide if he
under this License. However, parties
or she is willing to distribute software
who have received copies, or rights,
through any other system and a
from you under this License will not
licensee cannot impose that choice.
have their licenses terminated so long
This section is intended to make
as such parties remain in full
thoroughly clear what is believed to be a
compliance.
consequence of the rest of this License.
9. You are not required to accept this
License, since you have not signed it.
12. If the distribution and/or use of the
Library is restricted in certain countries
However, nothing else grants you
either by patents or by copyrighted
permission to modify or distribute the
interfaces, the original copyright holder
Library or its derivative works. These
who places the Library under this
actions are prohibited by law if you do
License may add an explicit
not accept this License. Therefore, by
geographical distribution limitation
modifying or distributing the Library (or
excluding those countries, so that
any work based on the Library), you
distribution is permitted only in or
indicate your acceptance of this