Preamble
The licenses for most software are designed to take
away your freedom to share and change it. By
contrast, the GNU General Public Licenses are
intended to guarantee your freedom to share and
change free software--to make sure the software is
free for all its users.
This license, the Library General Public License,
applies to some specially designated Free Software
Foundation software, and to any other libraries
whose authors decide to use it. You can use it for
your libraries, too.
When we speak of free software, we are referring to
freedom, not price. Our General Public Licenses are
designed to make sure that you have the freedom to
distribute copies of free software (and charge for this
service if you wish), that you receive source code or
can get it if you want it, that you can change the
software or use pieces of it in new free programs; and
that you know you can do these things.
To protect your rights, we need to make restrictions
that forbid anyone to deny you these rights or to ask
you to surrender the rights. These restrictions
translate to certain responsibilities for you if you
distribute copies of the library, or if you modify it.
For example, if you distribute copies of the library,
whether gratis or for a fee, you must give the
recipients all the rights that we gave you. You must
make sure that they, too, receive or can get the
source code. If you link a program with the library,
you must provide complete object files to the
recipients so that they can relink them with the library,
after making changes to the library and recompiling it.
And you must show them these terms so they know
their rights.
Our method of protecting your rights has two steps:
(1) copyright the library, and (2) offer you this license
which gives you legal permission to copy, distribute
and/or modify the library.
Also, for each distributor's protection, we want to
make certain that everyone understands that there is
no warranty for this free library. If the library is
modified by someone else and passed on, we want
its recipients to know that what they have is not the
original version, so that any problems introduced by
others will not reflect on the original authors'
reputations.
Finally, any free program is threatened constantly by
software patents. We wish to avoid the danger that
companies distributing free software will individually
obtain patent licenses, thus in effect transforming the
program into proprietary software. To prevent this, we
have made it clear that any patent must be licensed
for everyone's free use or not licensed at all.
Most GNU software, including some libraries, is
covered by the ordinary GNU General Public License,
which was designed for utility programs. This license,
the GNU Library General Public License, applies to
certain designated libraries. This license is quite
different from the ordinary one; be sure to read it in
full, and don't assume that anything in it is the same
as in the ordinary license.
The reason we have a separate public license for
some libraries is that they blur the distinction we
usually make between modifying or adding to a
program and simply using it. Linking a program with a
library, without changing the library, is in some sense
simply using the library, and is analogous to running a
utility program or application program. However, in a
textual and legal sense, the linked executable is a
combined work, a derivative of the original library,
and the ordinary General Public License treats it as
such.
Because of this blurred distinction, using the ordinary
General Public License for libraries did not effectively
promote software sharing, because most developers
did not use the libraries. We concluded that weaker
conditions might promote sharing better.
However, unrestricted linking of non-free programs
would deprive the users of those programs of all
benefit from the free status of the libraries
themselves. This Library General Public License is
intended to permit developers of non-free programs
to use free libraries, while preserving your freedom as
a user of such programs to change the free libraries
that are incorporated in them. (We have not seen how
to achieve this as regards changes in header files, but
we have achieved it as regards changes in the actual
functions of the Library.) The hope is that this will lead
to faster development of free libraries.
The precise terms and conditions for copying,
distribution and modification follow. Pay close
attention to the difference between a "work based on
the libary" and a "work that uses the library". The
former contains code derived from the library, while
the latter only works together with the library.
Note that it is possible for a library to be covered by
the ordinary General Public License rather than by
this special one.
TERMS AND CONDITIONS FOR COPYING,
DISTRIBUTION AND MODIFICATION
A "library" means a collection of software functions
and/or data prepared so as to be conveniently linked
with application programs (which use some of those
functions and data) to form executables.
The "Library", below, refers to any such software
library or work which has been distributed under
these terms. A "work based on the Library" means
either the Library or any derivative work under
copyright law: that is to say, a work containing the
Library or a portion of it, either verbatim or with
106