Mercurial > repos > rliterman > csp2
comparison CSP2/CSP2_env/env-d9b9114564458d9d-741b3de822f2aaca6c6caa4325c4afce/share/info/autosprintf.info @ 68:5028fdace37b
planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author | jpayne |
---|---|
date | Tue, 18 Mar 2025 16:23:26 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
67:0e9998148a16 | 68:5028fdace37b |
---|---|
1 This is autosprintf.info, produced by makeinfo version 6.8 from | |
2 autosprintf.texi. | |
3 | |
4 Copyright (C) 2002-2003, 2006-2007, 2018-2019 Free Software | |
5 Foundation, Inc. | |
6 | |
7 This manual is free documentation. It is dually licensed under the | |
8 GNU FDL and the GNU GPL. This means that you can redistribute this | |
9 manual under either of these two licenses, at your choice. | |
10 | |
11 This manual is covered by the GNU FDL. Permission is granted to copy, | |
12 distribute and/or modify this document under the terms of the GNU Free | |
13 Documentation License (FDL), either version 1.2 of the License, or (at | |
14 your option) any later version published by the Free Software Foundation | |
15 (FSF); with no Invariant Sections, with no Front-Cover Text, and with no | |
16 Back-Cover Texts. A copy of the license is at | |
17 <https://www.gnu.org/licenses/fdl.html>. | |
18 | |
19 This manual is covered by the GNU GPL. You can redistribute it and/or | |
20 modify it under the terms of the GNU General Public License (GPL), | |
21 either version 2 of the License, or (at your option) any later version | |
22 published by the Free Software Foundation (FSF). A copy of the license | |
23 is at <https://www.gnu.org/licenses/gpl.html>. | |
24 INFO-DIR-SECTION C++ libraries | |
25 START-INFO-DIR-ENTRY | |
26 * autosprintf: (autosprintf). Support for printf format strings in C++. | |
27 END-INFO-DIR-ENTRY | |
28 | |
29 This file provides documentation for GNU 'autosprintf' library. | |
30 | |
31 | |
32 File: autosprintf.info, Node: Top, Next: Introduction, Up: (dir) | |
33 | |
34 GNU autosprintf | |
35 *************** | |
36 | |
37 This manual documents the GNU autosprintf class, version 1.0. | |
38 | |
39 * Menu: | |
40 | |
41 * Introduction:: Introduction | |
42 * Class autosprintf:: The 'autosprintf' class | |
43 * Using autosprintf:: Using 'autosprintf' in own programs | |
44 * Licenses:: | |
45 | |
46 | |
47 File: autosprintf.info, Node: Introduction, Next: Class autosprintf, Prev: Top, Up: Top | |
48 | |
49 1 Introduction | |
50 ************** | |
51 | |
52 This package makes the C formatted output routines ('fprintf' et al.) | |
53 usable in C++ programs, for use with the '<string>' strings and the | |
54 '<iostream>' streams. | |
55 | |
56 It allows to write code like | |
57 | |
58 cerr << autosprintf ("syntax error in %s:%d: %s", filename, line, errstring); | |
59 | |
60 instead of | |
61 | |
62 cerr << "syntax error in " << filename << ":" << line << ": " << errstring; | |
63 | |
64 The benefits of the autosprintf syntax are: | |
65 | |
66 * It reuses the standard POSIX printf facility. Easy migration from | |
67 C to C++. | |
68 | |
69 * English sentences are kept together. | |
70 | |
71 * It makes internationalization possible. Internationalization | |
72 requires format strings, because in some cases the translator needs | |
73 to change the order of a sentence, and more generally it is easier | |
74 for the translator to work with a single string for a sentence than | |
75 with multiple string pieces. | |
76 | |
77 * It reduces the risk of programming errors due to forgotten state in | |
78 the output stream (e.g. 'cout << hex;' not followed by 'cout << | |
79 dec;'). | |
80 | |
81 | |
82 File: autosprintf.info, Node: Class autosprintf, Next: Using autosprintf, Prev: Introduction, Up: Top | |
83 | |
84 2 The 'autosprintf' class | |
85 ************************* | |
86 | |
87 An instance of class 'autosprintf' just contains a string with the | |
88 formatted output result. Such an instance is usually allocated as an | |
89 automatic storage variable, i.e. on the stack, not with 'new' on the | |
90 heap. | |
91 | |
92 The constructor 'autosprintf (const char *format, ...)' takes a | |
93 format string and additional arguments, like the C function 'printf'. | |
94 | |
95 Conversions to 'char *' and 'std::string' are defined that return the | |
96 encapsulated string. The conversion to 'char *' returns a freshly | |
97 allocated copy of the encapsulated string; it needs to be freed using | |
98 'delete[]'. The conversion to 'std::string' returns a copy of the | |
99 encapsulated string, with automatic memory management. | |
100 | |
101 The destructor '~autosprintf ()' destroys the encapsulated string. | |
102 | |
103 An 'operator <<' is provided that outputs the encapsulated string to | |
104 the given 'ostream'. | |
105 | |
106 | |
107 File: autosprintf.info, Node: Using autosprintf, Next: Licenses, Prev: Class autosprintf, Up: Top | |
108 | |
109 3 Using 'autosprintf' in own programs | |
110 ************************************* | |
111 | |
112 To use the 'autosprintf' class in your programs, you need to add | |
113 | |
114 #include "autosprintf.h" | |
115 using gnu::autosprintf; | |
116 | |
117 to your source code. The include file defines the class 'autosprintf', | |
118 in a namespace called 'gnu'. The 'using' statement makes it possible to | |
119 use the class without the (otherwise natural) 'gnu::' prefix. | |
120 | |
121 When linking your program, you need to link with 'libasprintf', | |
122 because that's where the class is defined. In projects using GNU | |
123 'autoconf', this means adding 'AC_LIB_LINKFLAGS([asprintf])' to | |
124 'configure.in' or 'configure.ac', and using the @LIBASPRINTF@ Makefile | |
125 variable that it provides. | |
126 | |
127 | |
128 File: autosprintf.info, Node: Licenses, Prev: Using autosprintf, Up: Top | |
129 | |
130 Appendix A Licenses | |
131 ******************* | |
132 | |
133 The files of this package are covered by the licenses indicated in | |
134 each particular file or directory. Here is a summary: | |
135 | |
136 * The 'libasprintf' library is covered by the GNU Lesser General | |
137 Public License (LGPL), either version 2.1 of the License, or (at | |
138 your option) any later version published by the Free Software | |
139 Foundation (FSF). A copy of the license is included in *note GNU | |
140 LGPL::. | |
141 | |
142 * This manual is free documentation. It is dually licensed under the | |
143 GNU FDL and the GNU GPL. This means that you can redistribute this | |
144 manual under either of these two licenses, at your choice. | |
145 This manual is covered by the GNU FDL. Permission is granted to | |
146 copy, distribute and/or modify this document under the terms of the | |
147 GNU Free Documentation License (FDL), either version 1.2 of the | |
148 License, or (at your option) any later version published by the | |
149 Free Software Foundation (FSF); with no Invariant Sections, with no | |
150 Front-Cover Text, and with no Back-Cover Texts. A copy of the | |
151 license is included in *note GNU FDL::. | |
152 This manual is covered by the GNU GPL. You can redistribute it | |
153 and/or modify it under the terms of the GNU General Public License | |
154 (GPL), either version 2 of the License, or (at your option) any | |
155 later version published by the Free Software Foundation (FSF). A | |
156 copy of the license is included in *note GNU GPL::. | |
157 | |
158 * Menu: | |
159 | |
160 * GNU LGPL:: GNU Lesser General Public License | |
161 * GNU GPL:: GNU General Public License | |
162 * GNU FDL:: GNU Free Documentation License | |
163 | |
164 | |
165 File: autosprintf.info, Node: GNU LGPL, Next: GNU GPL, Up: Licenses | |
166 | |
167 A.1 GNU LESSER GENERAL PUBLIC LICENSE | |
168 ===================================== | |
169 | |
170 Version 2.1, February 1999 | |
171 | |
172 Copyright (C) 1991, 1999 Free Software Foundation, Inc. | |
173 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA | |
174 | |
175 Everyone is permitted to copy and distribute verbatim copies | |
176 of this license document, but changing it is not allowed. | |
177 | |
178 [This is the first released version of the Lesser GPL. It also counts | |
179 as the successor of the GNU Library Public License, version 2, hence the | |
180 version number 2.1.] | |
181 | |
182 Preamble | |
183 -------- | |
184 | |
185 The licenses for most software are designed to take away your freedom | |
186 to share and change it. By contrast, the GNU General Public Licenses | |
187 are intended to guarantee your freedom to share and change free | |
188 software--to make sure the software is free for all its users. | |
189 | |
190 This license, the Lesser General Public License, applies to some | |
191 specially designated software--typically libraries--of the Free Software | |
192 Foundation and other authors who decide to use it. You can use it too, | |
193 but we suggest you first think carefully about whether this license or | |
194 the ordinary General Public License is the better strategy to use in any | |
195 particular case, based on the explanations below. | |
196 | |
197 When we speak of free software, we are referring to freedom of use, | |
198 not price. Our General Public Licenses are designed to make sure that | |
199 you have the freedom to distribute copies of free software (and charge | |
200 for this service if you wish); that you receive source code or can get | |
201 it if you want it; that you can change the software and use pieces of it | |
202 in new free programs; and that you are informed that you can do these | |
203 things. | |
204 | |
205 To protect your rights, we need to make restrictions that forbid | |
206 distributors to deny you these rights or to ask you to surrender these | |
207 rights. These restrictions translate to certain responsibilities for | |
208 you if you distribute copies of the library or if you modify it. | |
209 | |
210 For example, if you distribute copies of the library, whether gratis | |
211 or for a fee, you must give the recipients all the rights that we gave | |
212 you. You must make sure that they, too, receive or can get the source | |
213 code. If you link other code with the library, you must provide | |
214 complete object files to the recipients, so that they can relink them | |
215 with the library after making changes to the library and recompiling it. | |
216 And you must show them these terms so they know their rights. | |
217 | |
218 We protect your rights with a two-step method: (1) we copyright the | |
219 library, and (2) we offer you this license, which gives you legal | |
220 permission to copy, distribute and/or modify the library. | |
221 | |
222 To protect each distributor, we want to make it very clear that there | |
223 is no warranty for the free library. Also, if the library is modified | |
224 by someone else and passed on, the recipients should know that what they | |
225 have is not the original version, so that the original author's | |
226 reputation will not be affected by problems that might be introduced by | |
227 others. | |
228 | |
229 Finally, software patents pose a constant threat to the existence of | |
230 any free program. We wish to make sure that a company cannot | |
231 effectively restrict the users of a free program by obtaining a | |
232 restrictive license from a patent holder. Therefore, we insist that any | |
233 patent license obtained for a version of the library must be consistent | |
234 with the full freedom of use specified in this license. | |
235 | |
236 Most GNU software, including some libraries, is covered by the | |
237 ordinary GNU General Public License. This license, the GNU Lesser | |
238 General Public License, applies to certain designated libraries, and is | |
239 quite different from the ordinary General Public License. We use this | |
240 license for certain libraries in order to permit linking those libraries | |
241 into non-free programs. | |
242 | |
243 When a program is linked with a library, whether statically or using | |
244 a shared library, the combination of the two is legally speaking a | |
245 combined work, a derivative of the original library. The ordinary | |
246 General Public License therefore permits such linking only if the entire | |
247 combination fits its criteria of freedom. The Lesser General Public | |
248 License permits more lax criteria for linking other code with the | |
249 library. | |
250 | |
251 We call this license the "Lesser" General Public License because it | |
252 does _Less_ to protect the user's freedom than the ordinary General | |
253 Public License. It also provides other free software developers Less of | |
254 an advantage over competing non-free programs. These disadvantages are | |
255 the reason we use the ordinary General Public License for many | |
256 libraries. However, the Lesser license provides advantages in certain | |
257 special circumstances. | |
258 | |
259 For example, on rare occasions, there may be a special need to | |
260 encourage the widest possible use of a certain library, so that it | |
261 becomes a de-facto standard. To achieve this, non-free programs must be | |
262 allowed to use the library. A more frequent case is that a free library | |
263 does the same job as widely used non-free libraries. In this case, | |
264 there is little to gain by limiting the free library to free software | |
265 only, so we use the Lesser General Public License. | |
266 | |
267 In other cases, permission to use a particular library in non-free | |
268 programs enables a greater number of people to use a large body of free | |
269 software. For example, permission to use the GNU C Library in non-free | |
270 programs enables many more people to use the whole GNU operating system, | |
271 as well as its variant, the GNU/Linux operating system. | |
272 | |
273 Although the Lesser General Public License is Less protective of the | |
274 users' freedom, it does ensure that the user of a program that is linked | |
275 with the Library has the freedom and the wherewithal to run that program | |
276 using a modified version of the Library. | |
277 | |
278 The precise terms and conditions for copying, distribution and | |
279 modification follow. Pay close attention to the difference between a | |
280 "work based on the library" and a "work that uses the library". The | |
281 former contains code derived from the library, whereas the latter must | |
282 be combined with the library in order to run. | |
283 | |
284 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | |
285 --------------------------------------------------------------- | |
286 | |
287 0. This License Agreement applies to any software library or other | |
288 program which contains a notice placed by the copyright holder or | |
289 other authorized party saying it may be distributed under the terms | |
290 of this Lesser General Public License (also called "this License"). | |
291 Each licensee is addressed as "you". | |
292 | |
293 A "library" means a collection of software functions and/or data | |
294 prepared so as to be conveniently linked with application programs | |
295 (which use some of those functions and data) to form executables. | |
296 | |
297 The "Library", below, refers to any such software library or work | |
298 which has been distributed under these terms. A "work based on the | |
299 Library" means either the Library or any derivative work under | |
300 copyright law: that is to say, a work containing the Library or a | |
301 portion of it, either verbatim or with modifications and/or | |
302 translated straightforwardly into another language. (Hereinafter, | |
303 translation is included without limitation in the term | |
304 "modification".) | |
305 | |
306 "Source code" for a work means the preferred form of the work for | |
307 making modifications to it. For a library, complete source code | |
308 means all the source code for all modules it contains, plus any | |
309 associated interface definition files, plus the scripts used to | |
310 control compilation and installation of the library. | |
311 | |
312 Activities other than copying, distribution and modification are | |
313 not covered by this License; they are outside its scope. The act | |
314 of running a program using the Library is not restricted, and | |
315 output from such a program is covered only if its contents | |
316 constitute a work based on the Library (independent of the use of | |
317 the Library in a tool for writing it). Whether that is true | |
318 depends on what the Library does and what the program that uses the | |
319 Library does. | |
320 | |
321 1. You may copy and distribute verbatim copies of the Library's | |
322 complete source code as you receive it, in any medium, provided | |
323 that you conspicuously and appropriately publish on each copy an | |
324 appropriate copyright notice and disclaimer of warranty; keep | |
325 intact all the notices that refer to this License and to the | |
326 absence of any warranty; and distribute a copy of this License | |
327 along with the Library. | |
328 | |
329 You may charge a fee for the physical act of transferring a copy, | |
330 and you may at your option offer warranty protection in exchange | |
331 for a fee. | |
332 | |
333 2. You may modify your copy or copies of the Library or any portion of | |
334 it, thus forming a work based on the Library, and copy and | |
335 distribute such modifications or work under the terms of Section 1 | |
336 above, provided that you also meet all of these conditions: | |
337 | |
338 a. The modified work must itself be a software library. | |
339 | |
340 b. You must cause the files modified to carry prominent notices | |
341 stating that you changed the files and the date of any change. | |
342 | |
343 c. You must cause the whole of the work to be licensed at no | |
344 charge to all third parties under the terms of this License. | |
345 | |
346 d. If a facility in the modified Library refers to a function or | |
347 a table of data to be supplied by an application program that | |
348 uses the facility, other than as an argument passed when the | |
349 facility is invoked, then you must make a good faith effort to | |
350 ensure that, in the event an application does not supply such | |
351 function or table, the facility still operates, and performs | |
352 whatever part of its purpose remains meaningful. | |
353 | |
354 (For example, a function in a library to compute square roots | |
355 has a purpose that is entirely well-defined independent of the | |
356 application. Therefore, Subsection 2d requires that any | |
357 application-supplied function or table used by this function | |
358 must be optional: if the application does not supply it, the | |
359 square root function must still compute square roots.) | |
360 | |
361 These requirements apply to the modified work as a whole. If | |
362 identifiable sections of that work are not derived from the | |
363 Library, and can be reasonably considered independent and separate | |
364 works in themselves, then this License, and its terms, do not apply | |
365 to those sections when you distribute them as separate works. But | |
366 when you distribute the same sections as part of a whole which is a | |
367 work based on the Library, the distribution of the whole must be on | |
368 the terms of this License, whose permissions for other licensees | |
369 extend to the entire whole, and thus to each and every part | |
370 regardless of who wrote it. | |
371 | |
372 Thus, it is not the intent of this section to claim rights or | |
373 contest your rights to work written entirely by you; rather, the | |
374 intent is to exercise the right to control the distribution of | |
375 derivative or collective works based on the Library. | |
376 | |
377 In addition, mere aggregation of another work not based on the | |
378 Library with the Library (or with a work based on the Library) on a | |
379 volume of a storage or distribution medium does not bring the other | |
380 work under the scope of this License. | |
381 | |
382 3. You may opt to apply the terms of the ordinary GNU General Public | |
383 License instead of this License to a given copy of the Library. To | |
384 do this, you must alter all the notices that refer to this License, | |
385 so that they refer to the ordinary GNU General Public License, | |
386 version 2, instead of to this License. (If a newer version than | |
387 version 2 of the ordinary GNU General Public License has appeared, | |
388 then you can specify that version instead if you wish.) Do not | |
389 make any other change in these notices. | |
390 | |
391 Once this change is made in a given copy, it is irreversible for | |
392 that copy, so the ordinary GNU General Public License applies to | |
393 all subsequent copies and derivative works made from that copy. | |
394 | |
395 This option is useful when you wish to copy part of the code of the | |
396 Library into a program that is not a library. | |
397 | |
398 4. You may copy and distribute the Library (or a portion or derivative | |
399 of it, under Section 2) in object code or executable form under the | |
400 terms of Sections 1 and 2 above provided that you accompany it with | |
401 the complete corresponding machine-readable source code, which must | |
402 be distributed under the terms of Sections 1 and 2 above on a | |
403 medium customarily used for software interchange. | |
404 | |
405 If distribution of object code is made by offering access to copy | |
406 from a designated place, then offering equivalent access to copy | |
407 the source code from the same place satisfies the requirement to | |
408 distribute the source code, even though third parties are not | |
409 compelled to copy the source along with the object code. | |
410 | |
411 5. A program that contains no derivative of any portion of the | |
412 Library, but is designed to work with the Library by being compiled | |
413 or linked with it, is called a "work that uses the Library". Such | |
414 a work, in isolation, is not a derivative work of the Library, and | |
415 therefore falls outside the scope of this License. | |
416 | |
417 However, linking a "work that uses the Library" with the Library | |
418 creates an executable that is a derivative of the Library (because | |
419 it contains portions of the Library), rather than a "work that uses | |
420 the library". The executable is therefore covered by this License. | |
421 Section 6 states terms for distribution of such executables. | |
422 | |
423 When a "work that uses the Library" uses material from a header | |
424 file that is part of the Library, the object code for the work may | |
425 be a derivative work of the Library even though the source code is | |
426 not. Whether this is true is especially significant if the work | |
427 can be linked without the Library, or if the work is itself a | |
428 library. The threshold for this to be true is not precisely | |
429 defined by law. | |
430 | |
431 If such an object file uses only numerical parameters, data | |
432 structure layouts and accessors, and small macros and small inline | |
433 functions (ten lines or less in length), then the use of the object | |
434 file is unrestricted, regardless of whether it is legally a | |
435 derivative work. (Executables containing this object code plus | |
436 portions of the Library will still fall under Section 6.) | |
437 | |
438 Otherwise, if the work is a derivative of the Library, you may | |
439 distribute the object code for the work under the terms of Section | |
440 6. Any executables containing that work also fall under Section 6, | |
441 whether or not they are linked directly with the Library itself. | |
442 | |
443 6. As an exception to the Sections above, you may also combine or link | |
444 a "work that uses the Library" with the Library to produce a work | |
445 containing portions of the Library, and distribute that work under | |
446 terms of your choice, provided that the terms permit modification | |
447 of the work for the customer's own use and reverse engineering for | |
448 debugging such modifications. | |
449 | |
450 You must give prominent notice with each copy of the work that the | |
451 Library is used in it and that the Library and its use are covered | |
452 by this License. You must supply a copy of this License. If the | |
453 work during execution displays copyright notices, you must include | |
454 the copyright notice for the Library among them, as well as a | |
455 reference directing the user to the copy of this License. Also, | |
456 you must do one of these things: | |
457 | |
458 a. Accompany the work with the complete corresponding | |
459 machine-readable source code for the Library including | |
460 whatever changes were used in the work (which must be | |
461 distributed under Sections 1 and 2 above); and, if the work is | |
462 an executable linked with the Library, with the complete | |
463 machine-readable "work that uses the Library", as object code | |
464 and/or source code, so that the user can modify the Library | |
465 and then relink to produce a modified executable containing | |
466 the modified Library. (It is understood that the user who | |
467 changes the contents of definitions files in the Library will | |
468 not necessarily be able to recompile the application to use | |
469 the modified definitions.) | |
470 | |
471 b. Use a suitable shared library mechanism for linking with the | |
472 Library. A suitable mechanism is one that (1) uses at run | |
473 time a copy of the library already present on the user's | |
474 computer system, rather than copying library functions into | |
475 the executable, and (2) will operate properly with a modified | |
476 version of the library, if the user installs one, as long as | |
477 the modified version is interface-compatible with the version | |
478 that the work was made with. | |
479 | |
480 c. Accompany the work with a written offer, valid for at least | |
481 three years, to give the same user the materials specified in | |
482 Subsection 6a, above, for a charge no more than the cost of | |
483 performing this distribution. | |
484 | |
485 d. If distribution of the work is made by offering access to copy | |
486 from a designated place, offer equivalent access to copy the | |
487 above specified materials from the same place. | |
488 | |
489 e. Verify that the user has already received a copy of these | |
490 materials or that you have already sent this user a copy. | |
491 | |
492 For an executable, the required form of the "work that uses the | |
493 Library" must include any data and utility programs needed for | |
494 reproducing the executable from it. However, as a special | |
495 exception, the materials to be distributed need not include | |
496 anything that is normally distributed (in either source or binary | |
497 form) with the major components (compiler, kernel, and so on) of | |
498 the operating system on which the executable runs, unless that | |
499 component itself accompanies the executable. | |
500 | |
501 It may happen that this requirement contradicts the license | |
502 restrictions of other proprietary libraries that do not normally | |
503 accompany the operating system. Such a contradiction means you | |
504 cannot use both them and the Library together in an executable that | |
505 you distribute. | |
506 | |
507 7. You may place library facilities that are a work based on the | |
508 Library side-by-side in a single library together with other | |
509 library facilities not covered by this License, and distribute such | |
510 a combined library, provided that the separate distribution of the | |
511 work based on the Library and of the other library facilities is | |
512 otherwise permitted, and provided that you do these two things: | |
513 | |
514 a. Accompany the combined library with a copy of the same work | |
515 based on the Library, uncombined with any other library | |
516 facilities. This must be distributed under the terms of the | |
517 Sections above. | |
518 | |
519 b. Give prominent notice with the combined library of the fact | |
520 that part of it is a work based on the Library, and explaining | |
521 where to find the accompanying uncombined form of the same | |
522 work. | |
523 | |
524 8. You may not copy, modify, sublicense, link with, or distribute the | |
525 Library except as expressly provided under this License. Any | |
526 attempt otherwise to copy, modify, sublicense, link with, or | |
527 distribute the Library is void, and will automatically terminate | |
528 your rights under this License. However, parties who have received | |
529 copies, or rights, from you under this License will not have their | |
530 licenses terminated so long as such parties remain in full | |
531 compliance. | |
532 | |
533 9. You are not required to accept this License, since you have not | |
534 signed it. However, nothing else grants you permission to modify | |
535 or distribute the Library or its derivative works. These actions | |
536 are prohibited by law if you do not accept this License. | |
537 Therefore, by modifying or distributing the Library (or any work | |
538 based on the Library), you indicate your acceptance of this License | |
539 to do so, and all its terms and conditions for copying, | |
540 distributing or modifying the Library or works based on it. | |
541 | |
542 10. Each time you redistribute the Library (or any work based on the | |
543 Library), the recipient automatically receives a license from the | |
544 original licensor to copy, distribute, link with or modify the | |
545 Library subject to these terms and conditions. You may not impose | |
546 any further restrictions on the recipients' exercise of the rights | |
547 granted herein. You are not responsible for enforcing compliance | |
548 by third parties with this License. | |
549 | |
550 11. If, as a consequence of a court judgment or allegation of patent | |
551 infringement or for any other reason (not limited to patent | |
552 issues), conditions are imposed on you (whether by court order, | |
553 agreement or otherwise) that contradict the conditions of this | |
554 License, they do not excuse you from the conditions of this | |
555 License. If you cannot distribute so as to satisfy simultaneously | |
556 your obligations under this License and any other pertinent | |
557 obligations, then as a consequence you may not distribute the | |
558 Library at all. For example, if a patent license would not permit | |
559 royalty-free redistribution of the Library by all those who receive | |
560 copies directly or indirectly through you, then the only way you | |
561 could satisfy both it and this License would be to refrain entirely | |
562 from distribution of the Library. | |
563 | |
564 If any portion of this section is held invalid or unenforceable | |
565 under any particular circumstance, the balance of the section is | |
566 intended to apply, and the section as a whole is intended to apply | |
567 in other circumstances. | |
568 | |
569 It is not the purpose of this section to induce you to infringe any | |
570 patents or other property right claims or to contest validity of | |
571 any such claims; this section has the sole purpose of protecting | |
572 the integrity of the free software distribution system which is | |
573 implemented by public license practices. Many people have made | |
574 generous contributions to the wide range of software distributed | |
575 through that system in reliance on consistent application of that | |
576 system; it is up to the author/donor to decide if he or she is | |
577 willing to distribute software through any other system and a | |
578 licensee cannot impose that choice. | |
579 | |
580 This section is intended to make thoroughly clear what is believed | |
581 to be a consequence of the rest of this License. | |
582 | |
583 12. If the distribution and/or use of the Library is restricted in | |
584 certain countries either by patents or by copyrighted interfaces, | |
585 the original copyright holder who places the Library under this | |
586 License may add an explicit geographical distribution limitation | |
587 excluding those countries, so that distribution is permitted only | |
588 in or among countries not thus excluded. In such case, this | |
589 License incorporates the limitation as if written in the body of | |
590 this License. | |
591 | |
592 13. The Free Software Foundation may publish revised and/or new | |
593 versions of the Lesser General Public License from time to time. | |
594 Such new versions will be similar in spirit to the present version, | |
595 but may differ in detail to address new problems or concerns. | |
596 | |
597 Each version is given a distinguishing version number. If the | |
598 Library specifies a version number of this License which applies to | |
599 it and "any later version", you have the option of following the | |
600 terms and conditions either of that version or of any later version | |
601 published by the Free Software Foundation. If the Library does not | |
602 specify a license version number, you may choose any version ever | |
603 published by the Free Software Foundation. | |
604 | |
605 14. If you wish to incorporate parts of the Library into other free | |
606 programs whose distribution conditions are incompatible with these, | |
607 write to the author to ask for permission. For software which is | |
608 copyrighted by the Free Software Foundation, write to the Free | |
609 Software Foundation; we sometimes make exceptions for this. Our | |
610 decision will be guided by the two goals of preserving the free | |
611 status of all derivatives of our free software and of promoting the | |
612 sharing and reuse of software generally. | |
613 | |
614 NO WARRANTY | |
615 | |
616 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO | |
617 WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE | |
618 LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS | |
619 AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY | |
620 OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT | |
621 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS | |
622 FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND | |
623 PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE | |
624 DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR | |
625 OR CORRECTION. | |
626 | |
627 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN | |
628 WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY | |
629 MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE | |
630 LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, | |
631 INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR | |
632 INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF | |
633 DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU | |
634 OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY | |
635 OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN | |
636 ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. | |
637 | |
638 END OF TERMS AND CONDITIONS | |
639 --------------------------- | |
640 | |
641 How to Apply These Terms to Your New Libraries | |
642 ---------------------------------------------- | |
643 | |
644 If you develop a new library, and you want it to be of the greatest | |
645 possible use to the public, we recommend making it free software that | |
646 everyone can redistribute and change. You can do so by permitting | |
647 redistribution under these terms (or, alternatively, under the terms of | |
648 the ordinary General Public License). | |
649 | |
650 To apply these terms, attach the following notices to the library. | |
651 It is safest to attach them to the start of each source file to most | |
652 effectively convey the exclusion of warranty; and each file should have | |
653 at least the "copyright" line and a pointer to where the full notice is | |
654 found. | |
655 | |
656 ONE LINE TO GIVE THE LIBRARY'S NAME AND AN IDEA OF WHAT IT DOES. | |
657 Copyright (C) YEAR NAME OF AUTHOR | |
658 | |
659 This library is free software; you can redistribute it and/or modify it | |
660 under the terms of the GNU Lesser General Public License as published by | |
661 the Free Software Foundation; either version 2.1 of the License, or (at | |
662 your option) any later version. | |
663 | |
664 This library is distributed in the hope that it will be useful, but | |
665 WITHOUT ANY WARRANTY; without even the implied warranty of | |
666 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
667 Lesser General Public License for more details. | |
668 | |
669 You should have received a copy of the GNU Lesser General Public | |
670 License along with this library; if not, write to the Free Software | |
671 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, | |
672 USA. | |
673 | |
674 Also add information on how to contact you by electronic and paper | |
675 mail. | |
676 | |
677 You should also get your employer (if you work as a programmer) or | |
678 your school, if any, to sign a "copyright disclaimer" for the library, | |
679 if necessary. Here is a sample; alter the names: | |
680 | |
681 Yoyodyne, Inc., hereby disclaims all copyright interest in the library | |
682 `Frob' (a library for tweaking knobs) written by James Random Hacker. | |
683 | |
684 SIGNATURE OF TY COON, 1 April 1990 | |
685 Ty Coon, President of Vice | |
686 | |
687 That's all there is to it! | |
688 | |
689 | |
690 File: autosprintf.info, Node: GNU GPL, Next: GNU FDL, Prev: GNU LGPL, Up: Licenses | |
691 | |
692 A.2 GNU GENERAL PUBLIC LICENSE | |
693 ============================== | |
694 | |
695 Version 2, June 1991 | |
696 | |
697 Copyright (C) 1989, 1991 Free Software Foundation, Inc. | |
698 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA | |
699 | |
700 Everyone is permitted to copy and distribute verbatim copies | |
701 of this license document, but changing it is not allowed. | |
702 | |
703 Preamble | |
704 ======== | |
705 | |
706 The licenses for most software are designed to take away your freedom | |
707 to share and change it. By contrast, the GNU General Public License is | |
708 intended to guarantee your freedom to share and change free software--to | |
709 make sure the software is free for all its users. This General Public | |
710 License applies to most of the Free Software Foundation's software and | |
711 to any other program whose authors commit to using it. (Some other Free | |
712 Software Foundation software is covered by the GNU Lesser General Public | |
713 License instead.) You can apply it to your programs, too. | |
714 | |
715 When we speak of free software, we are referring to freedom, not | |
716 price. Our General Public Licenses are designed to make sure that you | |
717 have the freedom to distribute copies of free software (and charge for | |
718 this service if you wish), that you receive source code or can get it if | |
719 you want it, that you can change the software or use pieces of it in new | |
720 free programs; and that you know you can do these things. | |
721 | |
722 To protect your rights, we need to make restrictions that forbid | |
723 anyone to deny you these rights or to ask you to surrender the rights. | |
724 These restrictions translate to certain responsibilities for you if you | |
725 distribute copies of the software, or if you modify it. | |
726 | |
727 For example, if you distribute copies of such a program, whether | |
728 gratis or for a fee, you must give the recipients all the rights that | |
729 you have. You must make sure that they, too, receive or can get the | |
730 source code. And you must show them these terms so they know their | |
731 rights. | |
732 | |
733 We protect your rights with two steps: (1) copyright the software, | |
734 and (2) offer you this license which gives you legal permission to copy, | |
735 distribute and/or modify the software. | |
736 | |
737 Also, for each author's protection and ours, we want to make certain | |
738 that everyone understands that there is no warranty for this free | |
739 software. If the software is modified by someone else and passed on, we | |
740 want its recipients to know that what they have is not the original, so | |
741 that any problems introduced by others will not reflect on the original | |
742 authors' reputations. | |
743 | |
744 Finally, any free program is threatened constantly by software | |
745 patents. We wish to avoid the danger that redistributors of a free | |
746 program will individually obtain patent licenses, in effect making the | |
747 program proprietary. To prevent this, we have made it clear that any | |
748 patent must be licensed for everyone's free use or not licensed at all. | |
749 | |
750 The precise terms and conditions for copying, distribution and | |
751 modification follow. | |
752 | |
753 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION | |
754 =============================================================== | |
755 | |
756 0. This License applies to any program or other work which contains a | |
757 notice placed by the copyright holder saying it may be distributed | |
758 under the terms of this General Public License. The "Program", | |
759 below, refers to any such program or work, and a "work based on the | |
760 Program" means either the Program or any derivative work under | |
761 copyright law: that is to say, a work containing the Program or a | |
762 portion of it, either verbatim or with modifications and/or | |
763 translated into another language. (Hereinafter, translation is | |
764 included without limitation in the term "modification".) Each | |
765 licensee is addressed as "you". | |
766 | |
767 Activities other than copying, distribution and modification are | |
768 not covered by this License; they are outside its scope. The act | |
769 of running the Program is not restricted, and the output from the | |
770 Program is covered only if its contents constitute a work based on | |
771 the Program (independent of having been made by running the | |
772 Program). Whether that is true depends on what the Program does. | |
773 | |
774 1. You may copy and distribute verbatim copies of the Program's source | |
775 code as you receive it, in any medium, provided that you | |
776 conspicuously and appropriately publish on each copy an appropriate | |
777 copyright notice and disclaimer of warranty; keep intact all the | |
778 notices that refer to this License and to the absence of any | |
779 warranty; and give any other recipients of the Program a copy of | |
780 this License along with the Program. | |
781 | |
782 You may charge a fee for the physical act of transferring a copy, | |
783 and you may at your option offer warranty protection in exchange | |
784 for a fee. | |
785 | |
786 2. You may modify your copy or copies of the Program or any portion of | |
787 it, thus forming a work based on the Program, and copy and | |
788 distribute such modifications or work under the terms of Section 1 | |
789 above, provided that you also meet all of these conditions: | |
790 | |
791 a. You must cause the modified files to carry prominent notices | |
792 stating that you changed the files and the date of any change. | |
793 | |
794 b. You must cause any work that you distribute or publish, that | |
795 in whole or in part contains or is derived from the Program or | |
796 any part thereof, to be licensed as a whole at no charge to | |
797 all third parties under the terms of this License. | |
798 | |
799 c. If the modified program normally reads commands interactively | |
800 when run, you must cause it, when started running for such | |
801 interactive use in the most ordinary way, to print or display | |
802 an announcement including an appropriate copyright notice and | |
803 a notice that there is no warranty (or else, saying that you | |
804 provide a warranty) and that users may redistribute the | |
805 program under these conditions, and telling the user how to | |
806 view a copy of this License. (Exception: if the Program | |
807 itself is interactive but does not normally print such an | |
808 announcement, your work based on the Program is not required | |
809 to print an announcement.) | |
810 | |
811 These requirements apply to the modified work as a whole. If | |
812 identifiable sections of that work are not derived from the | |
813 Program, and can be reasonably considered independent and separate | |
814 works in themselves, then this License, and its terms, do not apply | |
815 to those sections when you distribute them as separate works. But | |
816 when you distribute the same sections as part of a whole which is a | |
817 work based on the Program, the distribution of the whole must be on | |
818 the terms of this License, whose permissions for other licensees | |
819 extend to the entire whole, and thus to each and every part | |
820 regardless of who wrote it. | |
821 | |
822 Thus, it is not the intent of this section to claim rights or | |
823 contest your rights to work written entirely by you; rather, the | |
824 intent is to exercise the right to control the distribution of | |
825 derivative or collective works based on the Program. | |
826 | |
827 In addition, mere aggregation of another work not based on the | |
828 Program with the Program (or with a work based on the Program) on a | |
829 volume of a storage or distribution medium does not bring the other | |
830 work under the scope of this License. | |
831 | |
832 3. You may copy and distribute the Program (or a work based on it, | |
833 under Section 2) in object code or executable form under the terms | |
834 of Sections 1 and 2 above provided that you also do one of the | |
835 following: | |
836 | |
837 a. Accompany it with the complete corresponding machine-readable | |
838 source code, which must be distributed under the terms of | |
839 Sections 1 and 2 above on a medium customarily used for | |
840 software interchange; or, | |
841 | |
842 b. Accompany it with a written offer, valid for at least three | |
843 years, to give any third party, for a charge no more than your | |
844 cost of physically performing source distribution, a complete | |
845 machine-readable copy of the corresponding source code, to be | |
846 distributed under the terms of Sections 1 and 2 above on a | |
847 medium customarily used for software interchange; or, | |
848 | |
849 c. Accompany it with the information you received as to the offer | |
850 to distribute corresponding source code. (This alternative is | |
851 allowed only for noncommercial distribution and only if you | |
852 received the program in object code or executable form with | |
853 such an offer, in accord with Subsection b above.) | |
854 | |
855 The source code for a work means the preferred form of the work for | |
856 making modifications to it. For an executable work, complete | |
857 source code means all the source code for all modules it contains, | |
858 plus any associated interface definition files, plus the scripts | |
859 used to control compilation and installation of the executable. | |
860 However, as a special exception, the source code distributed need | |
861 not include anything that is normally distributed (in either source | |
862 or binary form) with the major components (compiler, kernel, and so | |
863 on) of the operating system on which the executable runs, unless | |
864 that component itself accompanies the executable. | |
865 | |
866 If distribution of executable or object code is made by offering | |
867 access to copy from a designated place, then offering equivalent | |
868 access to copy the source code from the same place counts as | |
869 distribution of the source code, even though third parties are not | |
870 compelled to copy the source along with the object code. | |
871 | |
872 4. You may not copy, modify, sublicense, or distribute the Program | |
873 except as expressly provided under this License. Any attempt | |
874 otherwise to copy, modify, sublicense or distribute the Program is | |
875 void, and will automatically terminate your rights under this | |
876 License. However, parties who have received copies, or rights, | |
877 from you under this License will not have their licenses terminated | |
878 so long as such parties remain in full compliance. | |
879 | |
880 5. You are not required to accept this License, since you have not | |
881 signed it. However, nothing else grants you permission to modify | |
882 or distribute the Program or its derivative works. These actions | |
883 are prohibited by law if you do not accept this License. | |
884 Therefore, by modifying or distributing the Program (or any work | |
885 based on the Program), you indicate your acceptance of this License | |
886 to do so, and all its terms and conditions for copying, | |
887 distributing or modifying the Program or works based on it. | |
888 | |
889 6. Each time you redistribute the Program (or any work based on the | |
890 Program), the recipient automatically receives a license from the | |
891 original licensor to copy, distribute or modify the Program subject | |
892 to these terms and conditions. You may not impose any further | |
893 restrictions on the recipients' exercise of the rights granted | |
894 herein. You are not responsible for enforcing compliance by third | |
895 parties to this License. | |
896 | |
897 7. If, as a consequence of a court judgment or allegation of patent | |
898 infringement or for any other reason (not limited to patent | |
899 issues), conditions are imposed on you (whether by court order, | |
900 agreement or otherwise) that contradict the conditions of this | |
901 License, they do not excuse you from the conditions of this | |
902 License. If you cannot distribute so as to satisfy simultaneously | |
903 your obligations under this License and any other pertinent | |
904 obligations, then as a consequence you may not distribute the | |
905 Program at all. For example, if a patent license would not permit | |
906 royalty-free redistribution of the Program by all those who receive | |
907 copies directly or indirectly through you, then the only way you | |
908 could satisfy both it and this License would be to refrain entirely | |
909 from distribution of the Program. | |
910 | |
911 If any portion of this section is held invalid or unenforceable | |
912 under any particular circumstance, the balance of the section is | |
913 intended to apply and the section as a whole is intended to apply | |
914 in other circumstances. | |
915 | |
916 It is not the purpose of this section to induce you to infringe any | |
917 patents or other property right claims or to contest validity of | |
918 any such claims; this section has the sole purpose of protecting | |
919 the integrity of the free software distribution system, which is | |
920 implemented by public license practices. Many people have made | |
921 generous contributions to the wide range of software distributed | |
922 through that system in reliance on consistent application of that | |
923 system; it is up to the author/donor to decide if he or she is | |
924 willing to distribute software through any other system and a | |
925 licensee cannot impose that choice. | |
926 | |
927 This section is intended to make thoroughly clear what is believed | |
928 to be a consequence of the rest of this License. | |
929 | |
930 8. If the distribution and/or use of the Program is restricted in | |
931 certain countries either by patents or by copyrighted interfaces, | |
932 the original copyright holder who places the Program under this | |
933 License may add an explicit geographical distribution limitation | |
934 excluding those countries, so that distribution is permitted only | |
935 in or among countries not thus excluded. In such case, this | |
936 License incorporates the limitation as if written in the body of | |
937 this License. | |
938 | |
939 9. The Free Software Foundation may publish revised and/or new | |
940 versions of the General Public License from time to time. Such new | |
941 versions will be similar in spirit to the present version, but may | |
942 differ in detail to address new problems or concerns. | |
943 | |
944 Each version is given a distinguishing version number. If the | |
945 Program specifies a version number of this License which applies to | |
946 it and "any later version", you have the option of following the | |
947 terms and conditions either of that version or of any later version | |
948 published by the Free Software Foundation. If the Program does not | |
949 specify a version number of this License, you may choose any | |
950 version ever published by the Free Software Foundation. | |
951 | |
952 10. If you wish to incorporate parts of the Program into other free | |
953 programs whose distribution conditions are different, write to the | |
954 author to ask for permission. For software which is copyrighted by | |
955 the Free Software Foundation, write to the Free Software | |
956 Foundation; we sometimes make exceptions for this. Our decision | |
957 will be guided by the two goals of preserving the free status of | |
958 all derivatives of our free software and of promoting the sharing | |
959 and reuse of software generally. | |
960 | |
961 NO WARRANTY | |
962 | |
963 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO | |
964 WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE | |
965 LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS | |
966 AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY | |
967 OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT | |
968 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS | |
969 FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND | |
970 PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE | |
971 DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR | |
972 OR CORRECTION. | |
973 | |
974 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN | |
975 WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY | |
976 MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE | |
977 LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, | |
978 INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR | |
979 INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF | |
980 DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU | |
981 OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY | |
982 OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN | |
983 ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. | |
984 | |
985 END OF TERMS AND CONDITIONS | |
986 | |
987 Appendix: How to Apply These Terms to Your New Programs | |
988 ======================================================= | |
989 | |
990 If you develop a new program, and you want it to be of the greatest | |
991 possible use to the public, the best way to achieve this is to make it | |
992 free software which everyone can redistribute and change under these | |
993 terms. | |
994 | |
995 To do so, attach the following notices to the program. It is safest | |
996 to attach them to the start of each source file to most effectively | |
997 convey the exclusion of warranty; and each file should have at least the | |
998 "copyright" line and a pointer to where the full notice is found. | |
999 | |
1000 ONE LINE TO GIVE THE PROGRAM'S NAME AND A BRIEF IDEA OF WHAT IT DOES. | |
1001 Copyright (C) YYYY NAME OF AUTHOR | |
1002 | |
1003 This program is free software; you can redistribute it and/or modify | |
1004 it under the terms of the GNU General Public License as published by | |
1005 the Free Software Foundation; either version 2 of the License, or | |
1006 (at your option) any later version. | |
1007 | |
1008 This program is distributed in the hope that it will be useful, | |
1009 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
1010 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
1011 GNU General Public License for more details. | |
1012 | |
1013 You should have received a copy of the GNU General Public License | |
1014 along with this program; if not, write to the Free Software | |
1015 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. | |
1016 | |
1017 Also add information on how to contact you by electronic and paper | |
1018 mail. | |
1019 | |
1020 If the program is interactive, make it output a short notice like | |
1021 this when it starts in an interactive mode: | |
1022 | |
1023 Gnomovision version 69, Copyright (C) YEAR NAME OF AUTHOR | |
1024 Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. | |
1025 This is free software, and you are welcome to redistribute it | |
1026 under certain conditions; type `show c' for details. | |
1027 | |
1028 The hypothetical commands 'show w' and 'show c' should show the | |
1029 appropriate parts of the General Public License. Of course, the | |
1030 commands you use may be called something other than 'show w' and 'show | |
1031 c'; they could even be mouse-clicks or menu items--whatever suits your | |
1032 program. | |
1033 | |
1034 You should also get your employer (if you work as a programmer) or | |
1035 your school, if any, to sign a "copyright disclaimer" for the program, | |
1036 if necessary. Here is a sample; alter the names: | |
1037 | |
1038 Yoyodyne, Inc., hereby disclaims all copyright interest in the program | |
1039 `Gnomovision' (which makes passes at compilers) written by James Hacker. | |
1040 | |
1041 SIGNATURE OF TY COON, 1 April 1989 | |
1042 Ty Coon, President of Vice | |
1043 | |
1044 This General Public License does not permit incorporating your | |
1045 program into proprietary programs. If your program is a subroutine | |
1046 library, you may consider it more useful to permit linking proprietary | |
1047 applications with the library. If this is what you want to do, use the | |
1048 GNU Lesser General Public License instead of this License. | |
1049 | |
1050 | |
1051 File: autosprintf.info, Node: GNU FDL, Prev: GNU GPL, Up: Licenses | |
1052 | |
1053 A.3 GNU Free Documentation License | |
1054 ================================== | |
1055 | |
1056 Version 1.2, November 2002 | |
1057 | |
1058 Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. | |
1059 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA | |
1060 | |
1061 Everyone is permitted to copy and distribute verbatim copies | |
1062 of this license document, but changing it is not allowed. | |
1063 | |
1064 0. PREAMBLE | |
1065 | |
1066 The purpose of this License is to make a manual, textbook, or other | |
1067 functional and useful document "free" in the sense of freedom: to | |
1068 assure everyone the effective freedom to copy and redistribute it, | |
1069 with or without modifying it, either commercially or | |
1070 noncommercially. Secondarily, this License preserves for the | |
1071 author and publisher a way to get credit for their work, while not | |
1072 being considered responsible for modifications made by others. | |
1073 | |
1074 This License is a kind of "copyleft", which means that derivative | |
1075 works of the document must themselves be free in the same sense. | |
1076 It complements the GNU General Public License, which is a copyleft | |
1077 license designed for free software. | |
1078 | |
1079 We have designed this License in order to use it for manuals for | |
1080 free software, because free software needs free documentation: a | |
1081 free program should come with manuals providing the same freedoms | |
1082 that the software does. But this License is not limited to | |
1083 software manuals; it can be used for any textual work, regardless | |
1084 of subject matter or whether it is published as a printed book. We | |
1085 recommend this License principally for works whose purpose is | |
1086 instruction or reference. | |
1087 | |
1088 1. APPLICABILITY AND DEFINITIONS | |
1089 | |
1090 This License applies to any manual or other work, in any medium, | |
1091 that contains a notice placed by the copyright holder saying it can | |
1092 be distributed under the terms of this License. Such a notice | |
1093 grants a world-wide, royalty-free license, unlimited in duration, | |
1094 to use that work under the conditions stated herein. The | |
1095 "Document", below, refers to any such manual or work. Any member | |
1096 of the public is a licensee, and is addressed as "you". You accept | |
1097 the license if you copy, modify or distribute the work in a way | |
1098 requiring permission under copyright law. | |
1099 | |
1100 A "Modified Version" of the Document means any work containing the | |
1101 Document or a portion of it, either copied verbatim, or with | |
1102 modifications and/or translated into another language. | |
1103 | |
1104 A "Secondary Section" is a named appendix or a front-matter section | |
1105 of the Document that deals exclusively with the relationship of the | |
1106 publishers or authors of the Document to the Document's overall | |
1107 subject (or to related matters) and contains nothing that could | |
1108 fall directly within that overall subject. (Thus, if the Document | |
1109 is in part a textbook of mathematics, a Secondary Section may not | |
1110 explain any mathematics.) The relationship could be a matter of | |
1111 historical connection with the subject or with related matters, or | |
1112 of legal, commercial, philosophical, ethical or political position | |
1113 regarding them. | |
1114 | |
1115 The "Invariant Sections" are certain Secondary Sections whose | |
1116 titles are designated, as being those of Invariant Sections, in the | |
1117 notice that says that the Document is released under this License. | |
1118 If a section does not fit the above definition of Secondary then it | |
1119 is not allowed to be designated as Invariant. The Document may | |
1120 contain zero Invariant Sections. If the Document does not identify | |
1121 any Invariant Sections then there are none. | |
1122 | |
1123 The "Cover Texts" are certain short passages of text that are | |
1124 listed, as Front-Cover Texts or Back-Cover Texts, in the notice | |
1125 that says that the Document is released under this License. A | |
1126 Front-Cover Text may be at most 5 words, and a Back-Cover Text may | |
1127 be at most 25 words. | |
1128 | |
1129 A "Transparent" copy of the Document means a machine-readable copy, | |
1130 represented in a format whose specification is available to the | |
1131 general public, that is suitable for revising the document | |
1132 straightforwardly with generic text editors or (for images composed | |
1133 of pixels) generic paint programs or (for drawings) some widely | |
1134 available drawing editor, and that is suitable for input to text | |
1135 formatters or for automatic translation to a variety of formats | |
1136 suitable for input to text formatters. A copy made in an otherwise | |
1137 Transparent file format whose markup, or absence of markup, has | |
1138 been arranged to thwart or discourage subsequent modification by | |
1139 readers is not Transparent. An image format is not Transparent if | |
1140 used for any substantial amount of text. A copy that is not | |
1141 "Transparent" is called "Opaque". | |
1142 | |
1143 Examples of suitable formats for Transparent copies include plain | |
1144 ASCII without markup, Texinfo input format, LaTeX input format, | |
1145 SGML or XML using a publicly available DTD, and standard-conforming | |
1146 simple HTML, PostScript or PDF designed for human modification. | |
1147 Examples of transparent image formats include PNG, XCF and JPG. | |
1148 Opaque formats include proprietary formats that can be read and | |
1149 edited only by proprietary word processors, SGML or XML for which | |
1150 the DTD and/or processing tools are not generally available, and | |
1151 the machine-generated HTML, PostScript or PDF produced by some word | |
1152 processors for output purposes only. | |
1153 | |
1154 The "Title Page" means, for a printed book, the title page itself, | |
1155 plus such following pages as are needed to hold, legibly, the | |
1156 material this License requires to appear in the title page. For | |
1157 works in formats which do not have any title page as such, "Title | |
1158 Page" means the text near the most prominent appearance of the | |
1159 work's title, preceding the beginning of the body of the text. | |
1160 | |
1161 A section "Entitled XYZ" means a named subunit of the Document | |
1162 whose title either is precisely XYZ or contains XYZ in parentheses | |
1163 following text that translates XYZ in another language. (Here XYZ | |
1164 stands for a specific section name mentioned below, such as | |
1165 "Acknowledgements", "Dedications", "Endorsements", or "History".) | |
1166 To "Preserve the Title" of such a section when you modify the | |
1167 Document means that it remains a section "Entitled XYZ" according | |
1168 to this definition. | |
1169 | |
1170 The Document may include Warranty Disclaimers next to the notice | |
1171 which states that this License applies to the Document. These | |
1172 Warranty Disclaimers are considered to be included by reference in | |
1173 this License, but only as regards disclaiming warranties: any other | |
1174 implication that these Warranty Disclaimers may have is void and | |
1175 has no effect on the meaning of this License. | |
1176 | |
1177 2. VERBATIM COPYING | |
1178 | |
1179 You may copy and distribute the Document in any medium, either | |
1180 commercially or noncommercially, provided that this License, the | |
1181 copyright notices, and the license notice saying this License | |
1182 applies to the Document are reproduced in all copies, and that you | |
1183 add no other conditions whatsoever to those of this License. You | |
1184 may not use technical measures to obstruct or control the reading | |
1185 or further copying of the copies you make or distribute. However, | |
1186 you may accept compensation in exchange for copies. If you | |
1187 distribute a large enough number of copies you must also follow the | |
1188 conditions in section 3. | |
1189 | |
1190 You may also lend copies, under the same conditions stated above, | |
1191 and you may publicly display copies. | |
1192 | |
1193 3. COPYING IN QUANTITY | |
1194 | |
1195 If you publish printed copies (or copies in media that commonly | |
1196 have printed covers) of the Document, numbering more than 100, and | |
1197 the Document's license notice requires Cover Texts, you must | |
1198 enclose the copies in covers that carry, clearly and legibly, all | |
1199 these Cover Texts: Front-Cover Texts on the front cover, and | |
1200 Back-Cover Texts on the back cover. Both covers must also clearly | |
1201 and legibly identify you as the publisher of these copies. The | |
1202 front cover must present the full title with all words of the title | |
1203 equally prominent and visible. You may add other material on the | |
1204 covers in addition. Copying with changes limited to the covers, as | |
1205 long as they preserve the title of the Document and satisfy these | |
1206 conditions, can be treated as verbatim copying in other respects. | |
1207 | |
1208 If the required texts for either cover are too voluminous to fit | |
1209 legibly, you should put the first ones listed (as many as fit | |
1210 reasonably) on the actual cover, and continue the rest onto | |
1211 adjacent pages. | |
1212 | |
1213 If you publish or distribute Opaque copies of the Document | |
1214 numbering more than 100, you must either include a machine-readable | |
1215 Transparent copy along with each Opaque copy, or state in or with | |
1216 each Opaque copy a computer-network location from which the general | |
1217 network-using public has access to download using public-standard | |
1218 network protocols a complete Transparent copy of the Document, free | |
1219 of added material. If you use the latter option, you must take | |
1220 reasonably prudent steps, when you begin distribution of Opaque | |
1221 copies in quantity, to ensure that this Transparent copy will | |
1222 remain thus accessible at the stated location until at least one | |
1223 year after the last time you distribute an Opaque copy (directly or | |
1224 through your agents or retailers) of that edition to the public. | |
1225 | |
1226 It is requested, but not required, that you contact the authors of | |
1227 the Document well before redistributing any large number of copies, | |
1228 to give them a chance to provide you with an updated version of the | |
1229 Document. | |
1230 | |
1231 4. MODIFICATIONS | |
1232 | |
1233 You may copy and distribute a Modified Version of the Document | |
1234 under the conditions of sections 2 and 3 above, provided that you | |
1235 release the Modified Version under precisely this License, with the | |
1236 Modified Version filling the role of the Document, thus licensing | |
1237 distribution and modification of the Modified Version to whoever | |
1238 possesses a copy of it. In addition, you must do these things in | |
1239 the Modified Version: | |
1240 | |
1241 A. Use in the Title Page (and on the covers, if any) a title | |
1242 distinct from that of the Document, and from those of previous | |
1243 versions (which should, if there were any, be listed in the | |
1244 History section of the Document). You may use the same title | |
1245 as a previous version if the original publisher of that | |
1246 version gives permission. | |
1247 | |
1248 B. List on the Title Page, as authors, one or more persons or | |
1249 entities responsible for authorship of the modifications in | |
1250 the Modified Version, together with at least five of the | |
1251 principal authors of the Document (all of its principal | |
1252 authors, if it has fewer than five), unless they release you | |
1253 from this requirement. | |
1254 | |
1255 C. State on the Title page the name of the publisher of the | |
1256 Modified Version, as the publisher. | |
1257 | |
1258 D. Preserve all the copyright notices of the Document. | |
1259 | |
1260 E. Add an appropriate copyright notice for your modifications | |
1261 adjacent to the other copyright notices. | |
1262 | |
1263 F. Include, immediately after the copyright notices, a license | |
1264 notice giving the public permission to use the Modified | |
1265 Version under the terms of this License, in the form shown in | |
1266 the Addendum below. | |
1267 | |
1268 G. Preserve in that license notice the full lists of Invariant | |
1269 Sections and required Cover Texts given in the Document's | |
1270 license notice. | |
1271 | |
1272 H. Include an unaltered copy of this License. | |
1273 | |
1274 I. Preserve the section Entitled "History", Preserve its Title, | |
1275 and add to it an item stating at least the title, year, new | |
1276 authors, and publisher of the Modified Version as given on the | |
1277 Title Page. If there is no section Entitled "History" in the | |
1278 Document, create one stating the title, year, authors, and | |
1279 publisher of the Document as given on its Title Page, then add | |
1280 an item describing the Modified Version as stated in the | |
1281 previous sentence. | |
1282 | |
1283 J. Preserve the network location, if any, given in the Document | |
1284 for public access to a Transparent copy of the Document, and | |
1285 likewise the network locations given in the Document for | |
1286 previous versions it was based on. These may be placed in the | |
1287 "History" section. You may omit a network location for a work | |
1288 that was published at least four years before the Document | |
1289 itself, or if the original publisher of the version it refers | |
1290 to gives permission. | |
1291 | |
1292 K. For any section Entitled "Acknowledgements" or "Dedications", | |
1293 Preserve the Title of the section, and preserve in the section | |
1294 all the substance and tone of each of the contributor | |
1295 acknowledgements and/or dedications given therein. | |
1296 | |
1297 L. Preserve all the Invariant Sections of the Document, unaltered | |
1298 in their text and in their titles. Section numbers or the | |
1299 equivalent are not considered part of the section titles. | |
1300 | |
1301 M. Delete any section Entitled "Endorsements". Such a section | |
1302 may not be included in the Modified Version. | |
1303 | |
1304 N. Do not retitle any existing section to be Entitled | |
1305 "Endorsements" or to conflict in title with any Invariant | |
1306 Section. | |
1307 | |
1308 O. Preserve any Warranty Disclaimers. | |
1309 | |
1310 If the Modified Version includes new front-matter sections or | |
1311 appendices that qualify as Secondary Sections and contain no | |
1312 material copied from the Document, you may at your option designate | |
1313 some or all of these sections as invariant. To do this, add their | |
1314 titles to the list of Invariant Sections in the Modified Version's | |
1315 license notice. These titles must be distinct from any other | |
1316 section titles. | |
1317 | |
1318 You may add a section Entitled "Endorsements", provided it contains | |
1319 nothing but endorsements of your Modified Version by various | |
1320 parties--for example, statements of peer review or that the text | |
1321 has been approved by an organization as the authoritative | |
1322 definition of a standard. | |
1323 | |
1324 You may add a passage of up to five words as a Front-Cover Text, | |
1325 and a passage of up to 25 words as a Back-Cover Text, to the end of | |
1326 the list of Cover Texts in the Modified Version. Only one passage | |
1327 of Front-Cover Text and one of Back-Cover Text may be added by (or | |
1328 through arrangements made by) any one entity. If the Document | |
1329 already includes a cover text for the same cover, previously added | |
1330 by you or by arrangement made by the same entity you are acting on | |
1331 behalf of, you may not add another; but you may replace the old | |
1332 one, on explicit permission from the previous publisher that added | |
1333 the old one. | |
1334 | |
1335 The author(s) and publisher(s) of the Document do not by this | |
1336 License give permission to use their names for publicity for or to | |
1337 assert or imply endorsement of any Modified Version. | |
1338 | |
1339 5. COMBINING DOCUMENTS | |
1340 | |
1341 You may combine the Document with other documents released under | |
1342 this License, under the terms defined in section 4 above for | |
1343 modified versions, provided that you include in the combination all | |
1344 of the Invariant Sections of all of the original documents, | |
1345 unmodified, and list them all as Invariant Sections of your | |
1346 combined work in its license notice, and that you preserve all | |
1347 their Warranty Disclaimers. | |
1348 | |
1349 The combined work need only contain one copy of this License, and | |
1350 multiple identical Invariant Sections may be replaced with a single | |
1351 copy. If there are multiple Invariant Sections with the same name | |
1352 but different contents, make the title of each such section unique | |
1353 by adding at the end of it, in parentheses, the name of the | |
1354 original author or publisher of that section if known, or else a | |
1355 unique number. Make the same adjustment to the section titles in | |
1356 the list of Invariant Sections in the license notice of the | |
1357 combined work. | |
1358 | |
1359 In the combination, you must combine any sections Entitled | |
1360 "History" in the various original documents, forming one section | |
1361 Entitled "History"; likewise combine any sections Entitled | |
1362 "Acknowledgements", and any sections Entitled "Dedications". You | |
1363 must delete all sections Entitled "Endorsements." | |
1364 | |
1365 6. COLLECTIONS OF DOCUMENTS | |
1366 | |
1367 You may make a collection consisting of the Document and other | |
1368 documents released under this License, and replace the individual | |
1369 copies of this License in the various documents with a single copy | |
1370 that is included in the collection, provided that you follow the | |
1371 rules of this License for verbatim copying of each of the documents | |
1372 in all other respects. | |
1373 | |
1374 You may extract a single document from such a collection, and | |
1375 distribute it individually under this License, provided you insert | |
1376 a copy of this License into the extracted document, and follow this | |
1377 License in all other respects regarding verbatim copying of that | |
1378 document. | |
1379 | |
1380 7. AGGREGATION WITH INDEPENDENT WORKS | |
1381 | |
1382 A compilation of the Document or its derivatives with other | |
1383 separate and independent documents or works, in or on a volume of a | |
1384 storage or distribution medium, is called an "aggregate" if the | |
1385 copyright resulting from the compilation is not used to limit the | |
1386 legal rights of the compilation's users beyond what the individual | |
1387 works permit. When the Document is included in an aggregate, this | |
1388 License does not apply to the other works in the aggregate which | |
1389 are not themselves derivative works of the Document. | |
1390 | |
1391 If the Cover Text requirement of section 3 is applicable to these | |
1392 copies of the Document, then if the Document is less than one half | |
1393 of the entire aggregate, the Document's Cover Texts may be placed | |
1394 on covers that bracket the Document within the aggregate, or the | |
1395 electronic equivalent of covers if the Document is in electronic | |
1396 form. Otherwise they must appear on printed covers that bracket | |
1397 the whole aggregate. | |
1398 | |
1399 8. TRANSLATION | |
1400 | |
1401 Translation is considered a kind of modification, so you may | |
1402 distribute translations of the Document under the terms of section | |
1403 4. Replacing Invariant Sections with translations requires special | |
1404 permission from their copyright holders, but you may include | |
1405 translations of some or all Invariant Sections in addition to the | |
1406 original versions of these Invariant Sections. You may include a | |
1407 translation of this License, and all the license notices in the | |
1408 Document, and any Warranty Disclaimers, provided that you also | |
1409 include the original English version of this License and the | |
1410 original versions of those notices and disclaimers. In case of a | |
1411 disagreement between the translation and the original version of | |
1412 this License or a notice or disclaimer, the original version will | |
1413 prevail. | |
1414 | |
1415 If a section in the Document is Entitled "Acknowledgements", | |
1416 "Dedications", or "History", the requirement (section 4) to | |
1417 Preserve its Title (section 1) will typically require changing the | |
1418 actual title. | |
1419 | |
1420 9. TERMINATION | |
1421 | |
1422 You may not copy, modify, sublicense, or distribute the Document | |
1423 except as expressly provided for under this License. Any other | |
1424 attempt to copy, modify, sublicense or distribute the Document is | |
1425 void, and will automatically terminate your rights under this | |
1426 License. However, parties who have received copies, or rights, | |
1427 from you under this License will not have their licenses terminated | |
1428 so long as such parties remain in full compliance. | |
1429 | |
1430 10. FUTURE REVISIONS OF THIS LICENSE | |
1431 | |
1432 The Free Software Foundation may publish new, revised versions of | |
1433 the GNU Free Documentation License from time to time. Such new | |
1434 versions will be similar in spirit to the present version, but may | |
1435 differ in detail to address new problems or concerns. See | |
1436 <https://www.gnu.org/copyleft/>. | |
1437 | |
1438 Each version of the License is given a distinguishing version | |
1439 number. If the Document specifies that a particular numbered | |
1440 version of this License "or any later version" applies to it, you | |
1441 have the option of following the terms and conditions either of | |
1442 that specified version or of any later version that has been | |
1443 published (not as a draft) by the Free Software Foundation. If the | |
1444 Document does not specify a version number of this License, you may | |
1445 choose any version ever published (not as a draft) by the Free | |
1446 Software Foundation. | |
1447 | |
1448 ADDENDUM: How to use this License for your documents | |
1449 ==================================================== | |
1450 | |
1451 To use this License in a document you have written, include a copy of | |
1452 the License in the document and put the following copyright and license | |
1453 notices just after the title page: | |
1454 | |
1455 Copyright (C) YEAR YOUR NAME. | |
1456 Permission is granted to copy, distribute and/or modify this document | |
1457 under the terms of the GNU Free Documentation License, Version 1.2 | |
1458 or any later version published by the Free Software Foundation; | |
1459 with no Invariant Sections, no Front-Cover Texts, and no Back-Cover | |
1460 Texts. A copy of the license is included in the section entitled ``GNU | |
1461 Free Documentation License''. | |
1462 | |
1463 If you have Invariant Sections, Front-Cover Texts and Back-Cover | |
1464 Texts, replace the "with...Texts." line with this: | |
1465 | |
1466 with the Invariant Sections being LIST THEIR TITLES, with | |
1467 the Front-Cover Texts being LIST, and with the Back-Cover Texts | |
1468 being LIST. | |
1469 | |
1470 If you have Invariant Sections without Cover Texts, or some other | |
1471 combination of the three, merge those two alternatives to suit the | |
1472 situation. | |
1473 | |
1474 If your document contains nontrivial examples of program code, we | |
1475 recommend releasing these examples in parallel under your choice of free | |
1476 software license, such as the GNU General Public License, to permit | |
1477 their use in free software. | |
1478 | |
1479 | |
1480 | |
1481 Tag Table: | |
1482 Node: Top1355 | |
1483 Node: Introduction1717 | |
1484 Node: Class autosprintf2873 | |
1485 Node: Using autosprintf3887 | |
1486 Node: Licenses4702 | |
1487 Node: GNU LGPL6447 | |
1488 Node: GNU GPL34574 | |
1489 Node: GNU FDL53833 | |
1490 | |
1491 End Tag Table | |
1492 | |
1493 | |
1494 Local Variables: | |
1495 coding: utf-8 | |
1496 End: |