Introduction to General Public License Part I

Terms and conditions for copying, distribution and modification

0.- This license agreement applies to any software library or other program that contains a notice posted by the copyright holder or other interested parties stating that it can be distributed under the terms of this Lesser General Public License (also called “this License”). Each permit holder is designated by “you.” A “library” means a collection of software functions and / or data, prepared to be conveniently linked with application programs (which use some of these functions and data) to form executables. The “Library” in the following refers to any work or software library that has been distributed under these terms.

The ” source code ” for a work refers to the preferred form of the work for making modifications to it. For a Library, the complete source code means all the source codes for all the modules that the library contains, plus any associated interface definition files, and the associated scripts to control the compilation and installation of the library.

Activities other than copying, distribution and modification are not covered by this License; They are off target. The option of running a program using the Library is not restricted, and the output of such a program is covered only if its content constitutes a work based on the Library (regardless of the use of the Library as a tool for writing it). Whether this is true will depend on what the Library does and what the program that uses the Library does.

1.- You may copy and distribute verbatim copies of the complete source code of the Library as you receive it, in any medium, provided that you clearly and appropriately publish, in each of the copies, a convenient notice of rights copyright and a warranty disclaimer; keep intact all notices that refer to this License and the absence of any warranty; and distribute a copy of this License together with the Bookstore.

You may charge a fee for the physical act of transferring a copy and may, at your option, offer warranty protection in exchange for a fee.

2.- You can modify your copy or copies of the Library or any part 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 these conditions: a) The modified work must itself be a library. b) You must make the modified files carry conspicuous notices, stating that you changed the files and the date of any changes. c) You must have all work licensed, free of charge to third parties, under the terms of this License. d) If a facility in the modified Library refers to a function or a data table, that must be supplied by an application program that uses the facility other than as a passed argument when the facility is invoked, then you must make a good faith effort to ensure that in case an application does not supply such a function or table, the facility still works and keeps any part of its purpose meaningful. (For example, a function in a library for computing square roots has a purpose that is completely well defined, regardless of the application. Therefore, Subsection 2d requires that any function or table supplied by the application and used by that function must be optional: if the application does not supply it, the square root function should continue to compute square roots). then you must make a good faith effort to ensure that, in the event that an application does not provide such a function or table, the facility still works and makes any part of its purpose meaningful. (For example, a function in a library for computing square roots has a purpose that is completely well defined, regardless of the application. Therefore, Subsection 2d requires that any function or table supplied by the application and used by that function must be optional: if the application does not supply it, the square root function should continue to compute square roots). then you must make a good faith effort to ensure that, in the event that an application does not provide such a function or table, the facility still works and makes any part of its purpose meaningful. (For example, a function in a library for computing square roots has a purpose that is completely well defined, regardless of the application. Therefore, Subsection 2d requires that any function or table supplied by the application and used by that function must be optional: if the application does not supply it, the square root function should continue to compute square roots). a function in a library to compute square roots has a purpose that is completely well defined, regardless of the application. Therefore, Subsection 2d requires that any function or table supplied by the application and used by that function must be optional: if the application does not supply it, the square root function must continue to compute square roots.) a function in a library to compute square roots has a purpose that is completely well defined, regardless of the application. Therefore, Subsection 2d requires that any function or table supplied by the application and used by that function must be optional: if the application does not supply it, the square root function must continue to compute square roots.)

These requirements apply to modified work as a whole. If there are identifiable sections of that work that are not derived from the Library, and can be reasonably considered independent and separate works, by themselves, then this License and its terms will not apply to those sections when you distribute them as separate works. But when you distribute these same sections as part of a whole, which is a work based on the Library, the distribution of the whole must be under the terms of this License whose permissions for other licenses extend to the whole set, and therefore to each and every one of the parts, regardless of who wrote it.

Thus, the intent of this section is not to demand rights or to dispute the rights of a work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. Furthermore, the mere aggregation of another non-Library-based work with the Library (or with a Library-based work) on a storage volume or distribution medium does not bring the other work under the scope of this License.

3.- You can choose to apply to a certain copy of the Library, the terms of the ordinary GNU General Public License instead of those of this License. To do this, you must alter all notices that refer to this License so that they refer to the ordinary GNU General Public License, version 2, instead of this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that new version if you wish.)

Do not make any other changes to these notifications.

Once this change has been made to a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy.

This option is useful when you want to copy part of the Library code into a non-library program.

4.-You can copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above, provided that it is accompanied by the corresponding source code fully machine readable, which must be distributed under the terms of Sections 1 and 2 above, on a medium commonly used for software exchange.

If the distribution of the object code is done by offering access to its copy from a designated place, then offering equivalent access to the copy of the source code from the same site satisfies the requirements for the distribution of the source code, although third parties do not. are obliged to copy the source code together with the object code.

5.-A program that does not contain derivatives of any portion of the Library, but is designed to work with the Library when compiled or linked to it, is called a “work that uses the Library”. Such work, separately, is not a derivative work of the Library, and therefore falls outside the scope of this License.

However, linking a “work that uses the Library” to the Library creates an executable that is a derivative of the Library (because it contains portions of the Library). The executable is therefore covered by this License. Section 6 sets out the terms for the distribution of such executables.

When a “work using the Library” uses material from a header file that is part of the Library, the object code of the work may be a derivative work of the Library even if the source code is not. That this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The limit for this to be true is not precisely defined by law.

If said object file uses only numerical parameters, data structure schema, and small macros and small inline functions (ten lines or less in length), then the use of the object file is not restricted, regardless of whether this is legally a derivative work. (Executables containing this object code and portions of the Library will still be under Section 6). Otherwise, if the work is a derivative of the Library, you may distribute the object code of the work under the terms of Section 6. Any executable containing that work also falls under Section 6, whether or not linked to the work. Library.

6.- As an exception to the previous sections, you can also combine or link a “work that uses the Library” with the Library to produce a work that contains portions of the Library, and distribute that work under the terms of your choice, provided that the terms allow the modification of the work for the client’s own use and reverse engineering for the debugging of such modifications.

You must include with each copy of the work a notice that the Library is used in it, and that the Library and its use are covered by this License. You must supply a copy of this License. If the work, during its execution, shows copyright notices, you must include among them the copyright notices of the Library, as well as a reference that directs the user to the copy of this License. In addition, you must do one of these things:

  1. a) Accompany the work with the corresponding complete machine-readable source code from the Library, including any changes that were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked to 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 re-link then to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of the definition files in the Library will not necessarily be able to recompile the application to use the modified definitions).
  2. b) Use a suitable shared library mechanism to link to the Library. A suitable mechanism is one that (1) uses at runtime a copy of the library that is already present on the user’s computer, instead of copying library functions within the executable, and (2) will work correctly with a modified version of the library, if the user installs one, as long as the modified version is interface compatible with the version with which the work was done.
  3. c) Accompany the work with a written offer, valid for at least three years, to provide said user with the materials specified in Subsection 6a above, for a price not exceeding the cost of making this distribution.
  4. d) If the distribution of the work is done by offering access to the copy from a specific place, offer an equivalent access for the copy of the materials specified above from the same place.
  5. e) Verify that the user has already received a copy of these materials or that you have already sent a copy to this user.

For an executable, the required form of the “work using the Library” must include all the data programs and utilities needed to reproduce the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (either in binary or source form) with the main components (compiler, kernel, and so on) of the operating system on which it runs. the executable, unless the component itself accompanies the executable.

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 that you cannot use these and the Library together in an executable that you distribute.

Note: according to ABBREVIATIONFINDER, GPL stands for General Public License.

General Public License GPL