]> git.ipfire.org Git - thirdparty/cups.git/blame - LICENSE.txt
Load cups into easysw/current.
[thirdparty/cups.git] / LICENSE.txt
CommitLineData
ef416fc2 1 Common UNIX Printing System License Agreement
2
b86bc4cf 3 Copyright 1997-2007 by Easy Software Products
ef416fc2 4 44141 AIRPORT VIEW DR STE 204
5 HOLLYWOOD, MARYLAND 20636 USA
6
7 Voice: +1.301.373.9600
8 Email: cups-info@cups.org
9 WWW: http://www.cups.org
10
11
12INTRODUCTION
13
14The Common UNIX Printing System(tm), ("CUPS(tm)"), is provided
15under the GNU General Public License ("GPL") and GNU Library
16General Public License ("LGPL"), Version 2, with exceptions for
17Apple operating systems and the OpenSSL toolkit. A copy of the
18exceptions and licenses follow this introduction.
19
26d47ec6 20The GNU LGPL applies to the CUPS and CUPS Imaging libraries
21located in the "cups" and "filter" subdirectories of the CUPS
22source distribution and in the "cups" include directory and
23library files in the binary distributions. The GNU GPL applies to
24the remainder of the CUPS distribution, including the "pdftops"
25filter which is based upon Xpdf.
ef416fc2 26
27For those not familiar with the GNU GPL, the license basically
28allows you to:
29
30 - Use the CUPS software at no charge.
31 - Distribute verbatim copies of the software in source or
32 binary form.
33 - Sell verbatim copies of the software for a media fee, or
34 sell support for the software.
ef416fc2 35
36What this license *does not* allow you to do is make changes or
37add features to CUPS and then sell a binary distribution without
26d47ec6 38source code. You must provide source for any changes or additions
39to the software, and all code must be provided under the GPL or
40LGPL as appropriate. The only exceptions to this are the portions
41of the CUPS software covered by the Apple operating system
42license exceptions outlined later in this license agreement.
ef416fc2 43
44The GNU LGPL relaxes the "link-to" restriction, allowing you to
26d47ec6 45develop applications that use the CUPS and CUPS Imaging libraries
46under other licenses and/or conditions as appropriate for your
47application, driver, or filter.
ef416fc2 48
49
50LICENSE EXCEPTIONS
51
52In addition, as the copyright holder of CUPS, Easy Software
53Products grants the following special exceptions:
54
55 1. Apple Operating System Development License Exception;
56
57 a. Software that is developed by any person or entity
58 for an Apple Operating System ("Apple OS-Developed
59 Software"), including but not limited to Apple and
60 third party printer drivers, filters, and backends
61 for an Apple Operating System, that is linked to the
62 CUPS imaging library or based on any sample filters
63 or backends provided with CUPS shall not be
64 considered to be a derivative work or collective work
65 based on the CUPS program and is exempt from the
66 mandatory source code release clauses of the GNU GPL.
67 You may therefore distribute linked combinations of
68 the CUPS imaging library with Apple OS-Developed
69 Software without releasing the source code of the
70 Apple OS-Developed Software. You may also use sample
71 filters and backends provided with CUPS to develop
72 Apple OS-Developed Software without releasing the
73 source code of the Apple OS-Developed Software.
74
75 b. An Apple Operating System means any operating system
76 software developed and/or marketed by Apple Computer,
77 Inc., including but not limited to all existing
78 releases and versions of Apple's Darwin, Mac OS X,
79 and Mac OS X Server products and all follow-on
80 releases and future versions thereof.
81
82 c. This exception is only available for Apple
83 OS-Developed Software and does not apply to software
84 that is distributed for use on other operating
85 systems.
86
87 d. All CUPS software that falls under this license
88 exception have the following text at the top of each
89 source file:
90
91 This file is subject to the Apple OS-Developed
92 Software exception.
93
94 2. OpenSSL Toolkit License Exception;
95
96 a. Easy Software Products explicitly allows the
97 compilation and distribution of the CUPS software
98 with the OpenSSL Toolkit.
99
100No developer is required to provide these exceptions in a
101derived work.
102
103
f7deaa1a 104KERBEROS SUPPORT CODE
105
106The Kerberos support code ("KSC") is copyright 2006 by Jelmer
107Vernooij and is provided 'as-is', without any express or implied
108warranty. In no event will the author or Easy Software Products
109be held liable for any damages arising from the use of the KSC.
110
111Sources files containing KSC have the following text at the top
112of each source file:
113
114 This file contains Kerberos support code, copyright 2006 by
115 Jelmer Vernooij.
116
117The KSC copyright and license apply only to Kerberos-related
118feature code in CUPS. Such code is typically conditionally
119compiled based on the present of the HAVE_GSSAPI preprocessor
120definition.
121
122Permission is granted to anyone to use the KSC for any purpose,
123including commercial applications, and to alter it and
124redistribute it freely, subject to the following restrictions:
125
126 1. The origin of the KSC must not be misrepresented; you
127 must not claim that you wrote the original software. If
128 you use the KSC in a product, an acknowledgment in the
129 product documentation would be appreciated but is not
130 required.
131
132 2. Altered source versions must be plainly marked as such,
133 and must not be misrepresented as being the original
134 software.
135
136 3. This notice may not be removed or altered from any source
137 distribution.
138
139
ef416fc2 140TRADEMARKS
141
142Easy Software Products has trademarked the Common UNIX Printing
143System, CUPS, and CUPS logo. You may use these names and logos
144in any direct port or binary distribution of CUPS. Please
145contact Easy Software Products for written permission to use
146them in derivative products. Our intention is to protect the
147value of these trademarks and ensure that any derivative product
148meets the same high-quality standards as the original.
149
150
151BINARY DISTRIBUTION RIGHTS
152
153Easy Software Products also sells rights to the CUPS source code
154under a binary distribution license for vendors that are unable
26d47ec6 155to release source code for their additions and modifications to
156CUPS under the GNU GPL and LGPL. For information please contact
157us at the address shown above.
ef416fc2 158
159The Common UNIX Printing System provides a "pdftops" filter that
160is based on the Xpdf software. For binary distribution licensing
161of this software, please contact:
162
163 Derek B. Noonburg
4744bd90 164 Email: derekn@glyphandcog.com
165 WWW: http://www.glyphandcog.com/
ef416fc2 166
167
168SUPPORT
169
170Easy Software Products sells software support for CUPS as well
171as a commercial printing product based on CUPS called ESP Print
172Pro. You can find out more at our web site:
173
174 http://www.easysw.com/
175\f
176 GNU GENERAL PUBLIC LICENSE
177 Version 2, June 1991
178
179 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
180 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
181 Everyone is permitted to copy and distribute verbatim copies
182 of this license document, but changing it is not allowed.
183
184 Preamble
185
186 The licenses for most software are designed to take away your
187freedom to share and change it. By contrast, the GNU General Public
188License is intended to guarantee your freedom to share and change free
189software--to make sure the software is free for all its users. This
190General Public License applies to most of the Free Software
191Foundation's software and to any other program whose authors commit to
192using it. (Some other Free Software Foundation software is covered by
193the GNU Library General Public License instead.) You can apply it to
194your programs, too.
195
196 When we speak of free software, we are referring to freedom, not
197price. Our General Public Licenses are designed to make sure that you
198have the freedom to distribute copies of free software (and charge for
199this service if you wish), that you receive source code or can get it
200if you want it, that you can change the software or use pieces of it
201in new free programs; and that you know you can do these things.
202
203 To protect your rights, we need to make restrictions that forbid
204anyone to deny you these rights or to ask you to surrender the rights.
205These restrictions translate to certain responsibilities for you if you
206distribute copies of the software, or if you modify it.
207
208 For example, if you distribute copies of such a program, whether
209gratis or for a fee, you must give the recipients all the rights that
210you have. You must make sure that they, too, receive or can get the
211source code. And you must show them these terms so they know their
212rights.
213
214 We protect your rights with two steps: (1) copyright the software, and
215(2) offer you this license which gives you legal permission to copy,
216distribute and/or modify the software.
217
218 Also, for each author's protection and ours, we want to make certain
219that everyone understands that there is no warranty for this free
220software. If the software is modified by someone else and passed on, we
221want its recipients to know that what they have is not the original, so
222that any problems introduced by others will not reflect on the original
223authors' reputations.
224
225 Finally, any free program is threatened constantly by software
226patents. We wish to avoid the danger that redistributors of a free
227program will individually obtain patent licenses, in effect making the
228program proprietary. To prevent this, we have made it clear that any
229patent must be licensed for everyone's free use or not licensed at all.
230
231 The precise terms and conditions for copying, distribution and
232modification follow.
233\f
234 GNU GENERAL PUBLIC LICENSE
235 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
236
237 0. This License applies to any program or other work which contains
238a notice placed by the copyright holder saying it may be distributed
239under the terms of this General Public License. The "Program", below,
240refers to any such program or work, and a "work based on the Program"
241means either the Program or any derivative work under copyright law:
242that is to say, a work containing the Program or a portion of it,
243either verbatim or with modifications and/or translated into another
244language. (Hereinafter, translation is included without limitation in
245the term "modification".) Each licensee is addressed as "you".
246
247Activities other than copying, distribution and modification are not
248covered by this License; they are outside its scope. The act of
249running the Program is not restricted, and the output from the Program
250is covered only if its contents constitute a work based on the
251Program (independent of having been made by running the Program).
252Whether that is true depends on what the Program does.
253
254 1. You may copy and distribute verbatim copies of the Program's
255source code as you receive it, in any medium, provided that you
256conspicuously and appropriately publish on each copy an appropriate
257copyright notice and disclaimer of warranty; keep intact all the
258notices that refer to this License and to the absence of any warranty;
259and give any other recipients of the Program a copy of this License
260along with the Program.
261
262You may charge a fee for the physical act of transferring a copy, and
263you may at your option offer warranty protection in exchange for a fee.
264
265 2. You may modify your copy or copies of the Program or any portion
266of it, thus forming a work based on the Program, and copy and
267distribute such modifications or work under the terms of Section 1
268above, provided that you also meet all of these conditions:
269
270 a) You must cause the modified files to carry prominent notices
271 stating that you changed the files and the date of any change.
272
273 b) You must cause any work that you distribute or publish, that in
274 whole or in part contains or is derived from the Program or any
275 part thereof, to be licensed as a whole at no charge to all third
276 parties under the terms of this License.
277
278 c) If the modified program normally reads commands interactively
279 when run, you must cause it, when started running for such
280 interactive use in the most ordinary way, to print or display an
281 announcement including an appropriate copyright notice and a
282 notice that there is no warranty (or else, saying that you provide
283 a warranty) and that users may redistribute the program under
284 these conditions, and telling the user how to view a copy of this
285 License. (Exception: if the Program itself is interactive but
286 does not normally print such an announcement, your work based on
287 the Program is not required to print an announcement.)
288\f
289These requirements apply to the modified work as a whole. If
290identifiable sections of that work are not derived from the Program,
291and can be reasonably considered independent and separate works in
292themselves, then this License, and its terms, do not apply to those
293sections when you distribute them as separate works. But when you
294distribute the same sections as part of a whole which is a work based
295on the Program, the distribution of the whole must be on the terms of
296this License, whose permissions for other licensees extend to the
297entire whole, and thus to each and every part regardless of who wrote it.
298
299Thus, it is not the intent of this section to claim rights or contest
300your rights to work written entirely by you; rather, the intent is to
301exercise the right to control the distribution of derivative or
302collective works based on the Program.
303
304In addition, mere aggregation of another work not based on the Program
305with the Program (or with a work based on the Program) on a volume of
306a storage or distribution medium does not bring the other work under
307the scope of this License.
308
309 3. You may copy and distribute the Program (or a work based on it,
310under Section 2) in object code or executable form under the terms of
311Sections 1 and 2 above provided that you also do one of the following:
312
313 a) Accompany it with the complete corresponding machine-readable
314 source code, which must be distributed under the terms of Sections
315 1 and 2 above on a medium customarily used for software interchange; or,
316
317 b) Accompany it with a written offer, valid for at least three
318 years, to give any third party, for a charge no more than your
319 cost of physically performing source distribution, a complete
320 machine-readable copy of the corresponding source code, to be
321 distributed under the terms of Sections 1 and 2 above on a medium
322 customarily used for software interchange; or,
323
324 c) Accompany it with the information you received as to the offer
325 to distribute corresponding source code. (This alternative is
326 allowed only for noncommercial distribution and only if you
327 received the program in object code or executable form with such
328 an offer, in accord with Subsection b above.)
329
330The source code for a work means the preferred form of the work for
331making modifications to it. For an executable work, complete source
332code means all the source code for all modules it contains, plus any
333associated interface definition files, plus the scripts used to
334control compilation and installation of the executable. However, as a
335special exception, the source code distributed need not include
336anything that is normally distributed (in either source or binary
337form) with the major components (compiler, kernel, and so on) of the
338operating system on which the executable runs, unless that component
339itself accompanies the executable.
340
341If distribution of executable or object code is made by offering
342access to copy from a designated place, then offering equivalent
343access to copy the source code from the same place counts as
344distribution of the source code, even though third parties are not
345compelled to copy the source along with the object code.
346\f
347 4. You may not copy, modify, sublicense, or distribute the Program
348except as expressly provided under this License. Any attempt
349otherwise to copy, modify, sublicense or distribute the Program is
350void, and will automatically terminate your rights under this License.
351However, parties who have received copies, or rights, from you under
352this License will not have their licenses terminated so long as such
353parties remain in full compliance.
354
355 5. You are not required to accept this License, since you have not
356signed it. However, nothing else grants you permission to modify or
357distribute the Program or its derivative works. These actions are
358prohibited by law if you do not accept this License. Therefore, by
359modifying or distributing the Program (or any work based on the
360Program), you indicate your acceptance of this License to do so, and
361all its terms and conditions for copying, distributing or modifying
362the Program or works based on it.
363
364 6. Each time you redistribute the Program (or any work based on the
365Program), the recipient automatically receives a license from the
366original licensor to copy, distribute or modify the Program subject to
367these terms and conditions. You may not impose any further
368restrictions on the recipients' exercise of the rights granted herein.
369You are not responsible for enforcing compliance by third parties to
370this License.
371
372 7. If, as a consequence of a court judgment or allegation of patent
373infringement or for any other reason (not limited to patent issues),
374conditions are imposed on you (whether by court order, agreement or
375otherwise) that contradict the conditions of this License, they do not
376excuse you from the conditions of this License. If you cannot
377distribute so as to satisfy simultaneously your obligations under this
378License and any other pertinent obligations, then as a consequence you
379may not distribute the Program at all. For example, if a patent
380license would not permit royalty-free redistribution of the Program by
381all those who receive copies directly or indirectly through you, then
382the only way you could satisfy both it and this License would be to
383refrain entirely from distribution of the Program.
384
385If any portion of this section is held invalid or unenforceable under
386any particular circumstance, the balance of the section is intended to
387apply and the section as a whole is intended to apply in other
388circumstances.
389
390It is not the purpose of this section to induce you to infringe any
391patents or other property right claims or to contest validity of any
392such claims; this section has the sole purpose of protecting the
393integrity of the free software distribution system, which is
394implemented by public license practices. Many people have made
395generous contributions to the wide range of software distributed
396through that system in reliance on consistent application of that
397system; it is up to the author/donor to decide if he or she is willing
398to distribute software through any other system and a licensee cannot
399impose that choice.
400
401This section is intended to make thoroughly clear what is believed to
402be a consequence of the rest of this License.
403\f
404 8. If the distribution and/or use of the Program is restricted in
405certain countries either by patents or by copyrighted interfaces, the
406original copyright holder who places the Program under this License
407may add an explicit geographical distribution limitation excluding
408those countries, so that distribution is permitted only in or among
409countries not thus excluded. In such case, this License incorporates
410the limitation as if written in the body of this License.
411
412 9. The Free Software Foundation may publish revised and/or new versions
413of the General Public License from time to time. Such new versions will
414be similar in spirit to the present version, but may differ in detail to
415address new problems or concerns.
416
417Each version is given a distinguishing version number. If the Program
418specifies a version number of this License which applies to it and "any
419later version", you have the option of following the terms and conditions
420either of that version or of any later version published by the Free
421Software Foundation. If the Program does not specify a version number of
422this License, you may choose any version ever published by the Free Software
423Foundation.
424
425 10. If you wish to incorporate parts of the Program into other free
426programs whose distribution conditions are different, write to the author
427to ask for permission. For software which is copyrighted by the Free
428Software Foundation, write to the Free Software Foundation; we sometimes
429make exceptions for this. Our decision will be guided by the two goals
430of preserving the free status of all derivatives of our free software and
431of promoting the sharing and reuse of software generally.
432
433 NO WARRANTY
434
435 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
436FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
437OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
438PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
439OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
440MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
441TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
442PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
443REPAIR OR CORRECTION.
444
445 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
446WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
447REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
448INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
449OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
450TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
451YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
452PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
453POSSIBILITY OF SUCH DAMAGES.
454
455 END OF TERMS AND CONDITIONS
456\f
457 Appendix: How to Apply These Terms to Your New Programs
458
459 If you develop a new program, and you want it to be of the greatest
460possible use to the public, the best way to achieve this is to make it
461free software which everyone can redistribute and change under these terms.
462
463 To do so, attach the following notices to the program. It is safest
464to attach them to the start of each source file to most effectively
465convey the exclusion of warranty; and each file should have at least
466the "copyright" line and a pointer to where the full notice is found.
467
468 <one line to give the program's name and a brief idea of what it does.>
469 Copyright (C) 19yy <name of author>
470
471 This program is free software; you can redistribute it and/or modify
472 it under the terms of the GNU General Public License as published by
473 the Free Software Foundation; either version 2 of the License, or
474 (at your option) any later version.
475
476 This program is distributed in the hope that it will be useful,
477 but WITHOUT ANY WARRANTY; without even the implied warranty of
478 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
479 GNU General Public License for more details.
480
481 You should have received a copy of the GNU General Public License
482 along with this program; if not, write to the Free Software
483 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
484
485Also add information on how to contact you by electronic and paper mail.
486
487If the program is interactive, make it output a short notice like this
488when it starts in an interactive mode:
489
490 Gnomovision version 69, Copyright (C) 19yy name of author
491 Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
492 This is free software, and you are welcome to redistribute it
493 under certain conditions; type `show c' for details.
494
495The hypothetical commands `show w' and `show c' should show the appropriate
496parts of the General Public License. Of course, the commands you use may
497be called something other than `show w' and `show c'; they could even be
498mouse-clicks or menu items--whatever suits your program.
499
500You should also get your employer (if you work as a programmer) or your
501school, if any, to sign a "copyright disclaimer" for the program, if
502necessary. Here is a sample; alter the names:
503
504 Yoyodyne, Inc., hereby disclaims all copyright interest in the program
505 `Gnomovision' (which makes passes at compilers) written by James Hacker.
506
507 <signature of Ty Coon>, 1 April 1989
508 Ty Coon, President of Vice
509
510This General Public License does not permit incorporating your program into
511proprietary programs. If your program is a subroutine library, you may
512consider it more useful to permit linking proprietary applications with the
513library. If this is what you want to do, use the GNU Library General
514Public License instead of this License.
515\f
516 GNU LIBRARY GENERAL PUBLIC LICENSE
517 Version 2, June 1991
518
519 Copyright (C) 1991 Free Software Foundation, Inc.
520 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
521
522 Everyone is permitted to copy and distribute verbatim copies
523 of this license document, but changing it is not allowed.
524
525 [This is the first released version of the library GPL. It is
526 numbered 2 because it goes with version 2 of the ordinary GPL.]
527
528 Preamble
529
530 The licenses for most software are designed to take away your
531freedom to share and change it. By contrast, the GNU General Public
532Licenses are intended to guarantee your freedom to share and change
533free software--to make sure the software is free for all its users.
534
535 This license, the Library General Public License, applies to some
536specially designated Free Software Foundation software, and to any
537other libraries whose authors decide to use it. You can use it for
538your libraries, too.
539
540 When we speak of free software, we are referring to freedom, not
541price. Our General Public Licenses are designed to make sure that you
542have the freedom to distribute copies of free software (and charge for
543this service if you wish), that you receive source code or can get it
544if you want it, that you can change the software or use pieces of it
545in new free programs; and that you know you can do these things.
546
547 To protect your rights, we need to make restrictions that forbid
548anyone to deny you these rights or to ask you to surrender the rights.
549These restrictions translate to certain responsibilities for you if
550you distribute copies of the library, or if you modify it.
551
552 For example, if you distribute copies of the library, whether gratis
553or for a fee, you must give the recipients all the rights that we gave
554you. You must make sure that they, too, receive or can get the source
555code. If you link a program with the library, you must provide
556complete object files to the recipients so that they can relink them
557with the library, after making changes to the library and recompiling
558it. And you must show them these terms so they know their rights.
559
560 Our method of protecting your rights has two steps: (1) copyright
561the library, and (2) offer you this license which gives you legal
562permission to copy, distribute and/or modify the library.
563
564 Also, for each distributor's protection, we want to make certain
565that everyone understands that there is no warranty for this free
566library. If the library is modified by someone else and passed on, we
567want its recipients to know that what they have is not the original
568version, so that any problems introduced by others will not reflect on
569the original authors' reputations.
570\f
571 Finally, any free program is threatened constantly by software
572patents. We wish to avoid the danger that companies distributing free
573software will individually obtain patent licenses, thus in effect
574transforming the program into proprietary software. To prevent this,
575we have made it clear that any patent must be licensed for everyone's
576free use or not licensed at all.
577
578 Most GNU software, including some libraries, is covered by the ordinary
579GNU General Public License, which was designed for utility programs. This
580license, the GNU Library General Public License, applies to certain
581designated libraries. This license is quite different from the ordinary
582one; be sure to read it in full, and don't assume that anything in it is
583the same as in the ordinary license.
584
585 The reason we have a separate public license for some libraries is that
586they blur the distinction we usually make between modifying or adding to a
587program and simply using it. Linking a program with a library, without
588changing the library, is in some sense simply using the library, and is
589analogous to running a utility program or application program. However, in
590a textual and legal sense, the linked executable is a combined work, a
591derivative of the original library, and the ordinary General Public License
592treats it as such.
593
594 Because of this blurred distinction, using the ordinary General
595Public License for libraries did not effectively promote software
596sharing, because most developers did not use the libraries. We
597concluded that weaker conditions might promote sharing better.
598
599 However, unrestricted linking of non-free programs would deprive the
600users of those programs of all benefit from the free status of the
601libraries themselves. This Library General Public License is intended to
602permit developers of non-free programs to use free libraries, while
603preserving your freedom as a user of such programs to change the free
604libraries that are incorporated in them. (We have not seen how to achieve
605this as regards changes in header files, but we have achieved it as regards
606changes in the actual functions of the Library.) The hope is that this
607will lead to faster development of free libraries.
608
609 The precise terms and conditions for copying, distribution and
610modification follow. Pay close attention to the difference between a
611"work based on the library" and a "work that uses the library". The
612former contains code derived from the library, while the latter only
613works together with the library.
614
615 Note that it is possible for a library to be covered by the ordinary
616General Public License rather than by this special one.
617\f
618 GNU LIBRARY GENERAL PUBLIC LICENSE
619 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
620
621 0. This License Agreement applies to any software library which
622contains a notice placed by the copyright holder or other authorized
623party saying it may be distributed under the terms of this Library
624General Public License (also called "this License"). Each licensee is
625addressed as "you".
626
627 A "library" means a collection of software functions and/or data
628prepared so as to be conveniently linked with application programs
629(which use some of those functions and data) to form executables.
630
631 The "Library", below, refers to any such software library or work
632which has been distributed under these terms. A "work based on the
633Library" means either the Library or any derivative work under
634copyright law: that is to say, a work containing the Library or a
635portion of it, either verbatim or with modifications and/or translated
636straightforwardly into another language. (Hereinafter, translation is
637included without limitation in the term "modification".)
638
639 "Source code" for a work means the preferred form of the work for
640making modifications to it. For a library, complete source code means
641all the source code for all modules it contains, plus any associated
642interface definition files, plus the scripts used to control compilation
643and installation of the library.
644
645 Activities other than copying, distribution and modification are not
646covered by this License; they are outside its scope. The act of
647running a program using the Library is not restricted, and output from
648such a program is covered only if its contents constitute a work based
649on the Library (independent of the use of the Library in a tool for
650writing it). Whether that is true depends on what the Library does
651and what the program that uses the Library does.
652
653 1. You may copy and distribute verbatim copies of the Library's
654complete source code as you receive it, in any medium, provided that
655you conspicuously and appropriately publish on each copy an
656appropriate copyright notice and disclaimer of warranty; keep intact
657all the notices that refer to this License and to the absence of any
658warranty; and distribute a copy of this License along with the
659Library.
660
661 You may charge a fee for the physical act of transferring a copy,
662and you may at your option offer warranty protection in exchange for a
663fee.
664\f
665 2. You may modify your copy or copies of the Library or any portion
666of it, thus forming a work based on the Library, and copy and
667distribute such modifications or work under the terms of Section 1
668above, provided that you also meet all of these conditions:
669
670 a) The modified work must itself be a software library.
671
672 b) You must cause the files modified to carry prominent notices
673 stating that you changed the files and the date of any change.
674
675 c) You must cause the whole of the work to be licensed at no
676 charge to all third parties under the terms of this License.
677
678 d) If a facility in the modified Library refers to a function or a
679 table of data to be supplied by an application program that uses
680 the facility, other than as an argument passed when the facility
681 is invoked, then you must make a good faith effort to ensure that,
682 in the event an application does not supply such function or
683 table, the facility still operates, and performs whatever part of
684 its purpose remains meaningful.
685
686 (For example, a function in a library to compute square roots has
687 a purpose that is entirely well-defined independent of the
688 application. Therefore, Subsection 2d requires that any
689 application-supplied function or table used by this function must
690 be optional: if the application does not supply it, the square
691 root function must still compute square roots.)
692
693These requirements apply to the modified work as a whole. If
694identifiable sections of that work are not derived from the Library,
695and can be reasonably considered independent and separate works in
696themselves, then this License, and its terms, do not apply to those
697sections when you distribute them as separate works. But when you
698distribute the same sections as part of a whole which is a work based
699on the Library, the distribution of the whole must be on the terms of
700this License, whose permissions for other licensees extend to the
701entire whole, and thus to each and every part regardless of who wrote
702it.
703
704Thus, it is not the intent of this section to claim rights or contest
705your rights to work written entirely by you; rather, the intent is to
706exercise the right to control the distribution of derivative or
707collective works based on the Library.
708
709In addition, mere aggregation of another work not based on the Library
710with the Library (or with a work based on the Library) on a volume of
711a storage or distribution medium does not bring the other work under
712the scope of this License.
713
714 3. You may opt to apply the terms of the ordinary GNU General Public
715License instead of this License to a given copy of the Library. To do
716this, you must alter all the notices that refer to this License, so
717that they refer to the ordinary GNU General Public License, version 2,
718instead of to this License. (If a newer version than version 2 of the
719ordinary GNU General Public License has appeared, then you can specify
720that version instead if you wish.) Do not make any other change in
721these notices.
722\f
723 Once this change is made in a given copy, it is irreversible for
724that copy, so the ordinary GNU General Public License applies to all
725subsequent copies and derivative works made from that copy.
726
727 This option is useful when you wish to copy part of the code of
728the Library into a program that is not a library.
729
730 4. You may copy and distribute the Library (or a portion or
731derivative of it, under Section 2) in object code or executable form
732under the terms of Sections 1 and 2 above provided that you accompany
733it with the complete corresponding machine-readable source code, which
734must be distributed under the terms of Sections 1 and 2 above on a
735medium customarily used for software interchange.
736
737 If distribution of object code is made by offering access to copy
738from a designated place, then offering equivalent access to copy the
739source code from the same place satisfies the requirement to
740distribute the source code, even though third parties are not
741compelled to copy the source along with the object code.
742
743 5. A program that contains no derivative of any portion of the
744Library, but is designed to work with the Library by being compiled or
745linked with it, is called a "work that uses the Library". Such a
746work, in isolation, is not a derivative work of the Library, and
747therefore falls outside the scope of this License.
748
749 However, linking a "work that uses the Library" with the Library
750creates an executable that is a derivative of the Library (because it
751contains portions of the Library), rather than a "work that uses the
752library". The executable is therefore covered by this License.
753Section 6 states terms for distribution of such executables.
754
755 When a "work that uses the Library" uses material from a header file
756that is part of the Library, the object code for the work may be a
757derivative work of the Library even though the source code is not.
758Whether this is true is especially significant if the work can be
759linked without the Library, or if the work is itself a library. The
760threshold for this to be true is not precisely defined by law.
761
762 If such an object file uses only numerical parameters, data
763structure layouts and accessors, and small macros and small inline
764functions (ten lines or less in length), then the use of the object
765file is unrestricted, regardless of whether it is legally a derivative
766work. (Executables containing this object code plus portions of the
767Library will still fall under Section 6.)
768
769 Otherwise, if the work is a derivative of the Library, you may
770distribute the object code for the work under the terms of Section 6.
771Any executables containing that work also fall under Section 6,
772whether or not they are linked directly with the Library itself.
773\f
774 6. As an exception to the Sections above, you may also compile or
775link a "work that uses the Library" with the Library to produce a
776work containing portions of the Library, and distribute that work
777under terms of your choice, provided that the terms permit
778modification of the work for the customer's own use and reverse
779engineering for debugging such modifications.
780
781 You must give prominent notice with each copy of the work that the
782Library is used in it and that the Library and its use are covered by
783this License. You must supply a copy of this License. If the work
784during execution displays copyright notices, you must include the
785copyright notice for the Library among them, as well as a reference
786directing the user to the copy of this License. Also, you must do one
787of these things:
788
789 a) Accompany the work with the complete corresponding
790 machine-readable source code for the Library including whatever
791 changes were used in the work (which must be distributed under
792 Sections 1 and 2 above); and, if the work is an executable linked
793 with the Library, with the complete machine-readable "work that
794 uses the Library", as object code and/or source code, so that the
795 user can modify the Library and then relink to produce a modified
796 executable containing the modified Library. (It is understood
797 that the user who changes the contents of definitions files in the
798 Library will not necessarily be able to recompile the application
799 to use the modified definitions.)
800
801 b) Accompany the work with a written offer, valid for at
802 least three years, to give the same user the materials
803 specified in Subsection 6a, above, for a charge no more
804 than the cost of performing this distribution.
805
806 c) If distribution of the work is made by offering access to copy
807 from a designated place, offer equivalent access to copy the above
808 specified materials from the same place.
809
810 d) Verify that the user has already received a copy of these
811 materials or that you have already sent this user a copy.
812
813 For an executable, the required form of the "work that uses the
814Library" must include any data and utility programs needed for
815reproducing the executable from it. However, as a special exception,
816the source code distributed need not include anything that is normally
817distributed (in either source or binary form) with the major
818components (compiler, kernel, and so on) of the operating system on
819which the executable runs, unless that component itself accompanies
820the executable.
821
822 It may happen that this requirement contradicts the license
823restrictions of other proprietary libraries that do not normally
824accompany the operating system. Such a contradiction means you cannot
825use both them and the Library together in an executable that you
826distribute.
827\f
828 7. You may place library facilities that are a work based on the
829Library side-by-side in a single library together with other library
830facilities not covered by this License, and distribute such a combined
831library, provided that the separate distribution of the work based on
832the Library and of the other library facilities is otherwise
833permitted, and provided that you do these two things:
834
835 a) Accompany the combined library with a copy of the same work
836 based on the Library, uncombined with any other library
837 facilities. This must be distributed under the terms of the
838 Sections above.
839
840 b) Give prominent notice with the combined library of the fact
841 that part of it is a work based on the Library, and explaining
842 where to find the accompanying uncombined form of the same work.
843
844 8. You may not copy, modify, sublicense, link with, or distribute
845the Library except as expressly provided under this License. Any
846attempt otherwise to copy, modify, sublicense, link with, or
847distribute the Library is void, and will automatically terminate your
848rights under this License. However, parties who have received copies,
849or rights, from you under this License will not have their licenses
850terminated so long as such parties remain in full compliance.
851
852 9. You are not required to accept this License, since you have not
853signed it. However, nothing else grants you permission to modify or
854distribute the Library or its derivative works. These actions are
855prohibited by law if you do not accept this License. Therefore, by
856modifying or distributing the Library (or any work based on the
857Library), you indicate your acceptance of this License to do so, and
858all its terms and conditions for copying, distributing or modifying
859the Library or works based on it.
860
861 10. Each time you redistribute the Library (or any work based on the
862Library), the recipient automatically receives a license from the
863original licensor to copy, distribute, link with or modify the Library
864subject to these terms and conditions. You may not impose any further
865restrictions on the recipients' exercise of the rights granted herein.
866You are not responsible for enforcing compliance by third parties to
867this License.
868\f
869 11. If, as a consequence of a court judgment or allegation of patent
870infringement or for any other reason (not limited to patent issues),
871conditions are imposed on you (whether by court order, agreement or
872otherwise) that contradict the conditions of this License, they do not
873excuse you from the conditions of this License. If you cannot
874distribute so as to satisfy simultaneously your obligations under this
875License and any other pertinent obligations, then as a consequence you
876may not distribute the Library at all. For example, if a patent
877license would not permit royalty-free redistribution of the Library by
878all those who receive copies directly or indirectly through you, then
879the only way you could satisfy both it and this License would be to
880refrain entirely from distribution of the Library.
881
882If any portion of this section is held invalid or unenforceable under any
883particular circumstance, the balance of the section is intended to apply,
884and the section as a whole is intended to apply in other circumstances.
885
886It is not the purpose of this section to induce you to infringe any
887patents or other property right claims or to contest validity of any
888such claims; this section has the sole purpose of protecting the
889integrity of the free software distribution system which is
890implemented by public license practices. Many people have made
891generous contributions to the wide range of software distributed
892through that system in reliance on consistent application of that
893system; it is up to the author/donor to decide if he or she is willing
894to distribute software through any other system and a licensee cannot
895impose that choice.
896
897This section is intended to make thoroughly clear what is believed to
898be a consequence of the rest of this License.
899
900 12. If the distribution and/or use of the Library is restricted in
901certain countries either by patents or by copyrighted interfaces, the
902original copyright holder who places the Library under this License may add
903an explicit geographical distribution limitation excluding those countries,
904so that distribution is permitted only in or among countries not thus
905excluded. In such case, this License incorporates the limitation as if
906written in the body of this License.
907
908 13. The Free Software Foundation may publish revised and/or new
909versions of the Library General Public License from time to time.
910Such new versions will be similar in spirit to the present version,
911but may differ in detail to address new problems or concerns.
912
913Each version is given a distinguishing version number. If the Library
914specifies a version number of this License which applies to it and
915"any later version", you have the option of following the terms and
916conditions either of that version or of any later version published by
917the Free Software Foundation. If the Library does not specify a
918license version number, you may choose any version ever published by
919the Free Software Foundation.
920\f
921 14. If you wish to incorporate parts of the Library into other free
922programs whose distribution conditions are incompatible with these,
923write to the author to ask for permission. For software which is
924copyrighted by the Free Software Foundation, write to the Free
925Software Foundation; we sometimes make exceptions for this. Our
926decision will be guided by the two goals of preserving the free status
927of all derivatives of our free software and of promoting the sharing
928and reuse of software generally.
929
930 NO WARRANTY
931
932 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
933WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
934EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
935OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
936KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
937IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
938PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
939LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
940THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
941
942 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
943WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
944AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
945FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
946CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
947LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
948RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
949FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
950SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
951DAMAGES.
952
953 END OF TERMS AND CONDITIONS
954\f
955 Appendix: How to Apply These Terms to Your New Libraries
956
957 If you develop a new library, and you want it to be of the greatest
958possible use to the public, we recommend making it free software that
959everyone can redistribute and change. You can do so by permitting
960redistribution under these terms (or, alternatively, under the terms of the
961ordinary General Public License).
962
963 To apply these terms, attach the following notices to the library. It is
964safest to attach them to the start of each source file to most effectively
965convey the exclusion of warranty; and each file should have at least the
966"copyright" line and a pointer to where the full notice is found.
967
968 <one line to give the library's name and a brief idea of what it does.>
969 Copyright (C) <year> <name of author>
970
971 This library is free software; you can redistribute it and/or
972 modify it under the terms of the GNU Library General Public
973 License as published by the Free Software Foundation; either
974 version 2 of the License, or (at your option) any later version.
975
976 This library is distributed in the hope that it will be useful,
977 but WITHOUT ANY WARRANTY; without even the implied warranty of
978 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
979 Library General Public License for more details.
980
981 You should have received a copy of the GNU Library General Public
982 License along with this library; if not, write to the Free
983 Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
984
985Also add information on how to contact you by electronic and paper mail.
986
987You should also get your employer (if you work as a programmer) or your
988school, if any, to sign a "copyright disclaimer" for the library, if
989necessary. Here is a sample; alter the names:
990
991 Yoyodyne, Inc., hereby disclaims all copyright interest in the
992 library `Frob' (a library for tweaking knobs) written by James Random Hacker.
993
994 <signature of Ty Coon>, 1 April 1990
995 Ty Coon, President of Vice
996
997That's all there is to it!