Move putchar_filtered() to utils.c.
[platform/upstream/binutils.git] / gdb / copying.c
1 /* ==> Do not modify this file!!  It is created automatically
2    by copying.awk.  Modify copying.awk instead.  <== */
3
4 #include "defs.h"
5 #include "command.h"
6 #include "gdbcmd.h"
7
8 static void show_copying_command (char *, int);
9
10 static void show_warranty_command (char *, int);
11
12 void _initialize_copying (void);
13
14 extern int immediate_quit;
15 static void
16 show_copying_command (char *ignore, int from_tty)
17 {
18   immediate_quit++;
19   printf_filtered ("                GNU GENERAL PUBLIC LICENSE\n");
20   printf_filtered ("                   Version 2, June 1991\n");
21   printf_filtered ("\n");
22   printf_filtered (" Copyright (C) 1989, 1991 Free Software Foundation, Inc.\n");
23   printf_filtered ("                       59 Temple Place, Suite 330, Boston, MA  02111-1307  USA\n");
24   printf_filtered (" Everyone is permitted to copy and distribute verbatim copies\n");
25   printf_filtered (" of this license document, but changing it is not allowed.\n");
26   printf_filtered ("\n");
27   printf_filtered ("                        Preamble\n");
28   printf_filtered ("\n");
29   printf_filtered ("  The licenses for most software are designed to take away your\n");
30   printf_filtered ("freedom to share and change it.  By contrast, the GNU General Public\n");
31   printf_filtered ("License is intended to guarantee your freedom to share and change free\n");
32   printf_filtered ("software--to make sure the software is free for all its users.  This\n");
33   printf_filtered ("General Public License applies to most of the Free Software\n");
34   printf_filtered ("Foundation's software and to any other program whose authors commit to\n");
35   printf_filtered ("using it.  (Some other Free Software Foundation software is covered by\n");
36   printf_filtered ("the GNU Library General Public License instead.)  You can apply it to\n");
37   printf_filtered ("your programs, too.\n");
38   printf_filtered ("\n");
39   printf_filtered ("  When we speak of free software, we are referring to freedom, not\n");
40   printf_filtered ("price.  Our General Public Licenses are designed to make sure that you\n");
41   printf_filtered ("have the freedom to distribute copies of free software (and charge for\n");
42   printf_filtered ("this service if you wish), that you receive source code or can get it\n");
43   printf_filtered ("if you want it, that you can change the software or use pieces of it\n");
44   printf_filtered ("in new free programs; and that you know you can do these things.\n");
45   printf_filtered ("\n");
46   printf_filtered ("  To protect your rights, we need to make restrictions that forbid\n");
47   printf_filtered ("anyone to deny you these rights or to ask you to surrender the rights.\n");
48   printf_filtered ("These restrictions translate to certain responsibilities for you if you\n");
49   printf_filtered ("distribute copies of the software, or if you modify it.\n");
50   printf_filtered ("\n");
51   printf_filtered ("  For example, if you distribute copies of such a program, whether\n");
52   printf_filtered ("gratis or for a fee, you must give the recipients all the rights that\n");
53   printf_filtered ("you have.  You must make sure that they, too, receive or can get the\n");
54   printf_filtered ("source code.  And you must show them these terms so they know their\n");
55   printf_filtered ("rights.\n");
56   printf_filtered ("\n");
57   printf_filtered ("  We protect your rights with two steps: (1) copyright the software, and\n");
58   printf_filtered ("(2) offer you this license which gives you legal permission to copy,\n");
59   printf_filtered ("distribute and/or modify the software.\n");
60   printf_filtered ("\n");
61   printf_filtered ("  Also, for each author's protection and ours, we want to make certain\n");
62   printf_filtered ("that everyone understands that there is no warranty for this free\n");
63   printf_filtered ("software.  If the software is modified by someone else and passed on, we\n");
64   printf_filtered ("want its recipients to know that what they have is not the original, so\n");
65   printf_filtered ("that any problems introduced by others will not reflect on the original\n");
66   printf_filtered ("authors' reputations.\n");
67   printf_filtered ("\n");
68   printf_filtered ("  Finally, any free program is threatened constantly by software\n");
69   printf_filtered ("patents.  We wish to avoid the danger that redistributors of a free\n");
70   printf_filtered ("program will individually obtain patent licenses, in effect making the\n");
71   printf_filtered ("program proprietary.  To prevent this, we have made it clear that any\n");
72   printf_filtered ("patent must be licensed for everyone's free use or not licensed at all.\n");
73   printf_filtered ("\n");
74   printf_filtered ("  The precise terms and conditions for copying, distribution and\n");
75   printf_filtered ("modification follow.\n");
76   printf_filtered ("\n");
77   printf_filtered ("                GNU GENERAL PUBLIC LICENSE\n");
78   printf_filtered ("   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\n");
79   printf_filtered ("\n");
80   printf_filtered ("  0. This License applies to any program or other work which contains\n");
81   printf_filtered ("a notice placed by the copyright holder saying it may be distributed\n");
82   printf_filtered ("under the terms of this General Public License.  The \"Program\", below,\n");
83   printf_filtered ("refers to any such program or work, and a \"work based on the Program\"\n");
84   printf_filtered ("means either the Program or any derivative work under copyright law:\n");
85   printf_filtered ("that is to say, a work containing the Program or a portion of it,\n");
86   printf_filtered ("either verbatim or with modifications and/or translated into another\n");
87   printf_filtered ("language.  (Hereinafter, translation is included without limitation in\n");
88   printf_filtered ("the term \"modification\".)  Each licensee is addressed as \"you\".\n");
89   printf_filtered ("\n");
90   printf_filtered ("Activities other than copying, distribution and modification are not\n");
91   printf_filtered ("covered by this License; they are outside its scope.  The act of\n");
92   printf_filtered ("running the Program is not restricted, and the output from the Program\n");
93   printf_filtered ("is covered only if its contents constitute a work based on the\n");
94   printf_filtered ("Program (independent of having been made by running the Program).\n");
95   printf_filtered ("Whether that is true depends on what the Program does.\n");
96   printf_filtered ("\n");
97   printf_filtered ("  1. You may copy and distribute verbatim copies of the Program's\n");
98   printf_filtered ("source code as you receive it, in any medium, provided that you\n");
99   printf_filtered ("conspicuously and appropriately publish on each copy an appropriate\n");
100   printf_filtered ("copyright notice and disclaimer of warranty; keep intact all the\n");
101   printf_filtered ("notices that refer to this License and to the absence of any warranty;\n");
102   printf_filtered ("and give any other recipients of the Program a copy of this License\n");
103   printf_filtered ("along with the Program.\n");
104   printf_filtered ("\n");
105   printf_filtered ("You may charge a fee for the physical act of transferring a copy, and\n");
106   printf_filtered ("you may at your option offer warranty protection in exchange for a fee.\n");
107   printf_filtered ("\n");
108   printf_filtered ("  2. You may modify your copy or copies of the Program or any portion\n");
109   printf_filtered ("of it, thus forming a work based on the Program, and copy and\n");
110   printf_filtered ("distribute such modifications or work under the terms of Section 1\n");
111   printf_filtered ("above, provided that you also meet all of these conditions:\n");
112   printf_filtered ("\n");
113   printf_filtered ("    a) You must cause the modified files to carry prominent notices\n");
114   printf_filtered ("    stating that you changed the files and the date of any change.\n");
115   printf_filtered ("\n");
116   printf_filtered ("    b) You must cause any work that you distribute or publish, that in\n");
117   printf_filtered ("    whole or in part contains or is derived from the Program or any\n");
118   printf_filtered ("    part thereof, to be licensed as a whole at no charge to all third\n");
119   printf_filtered ("    parties under the terms of this License.\n");
120   printf_filtered ("\n");
121   printf_filtered ("    c) If the modified program normally reads commands interactively\n");
122   printf_filtered ("    when run, you must cause it, when started running for such\n");
123   printf_filtered ("    interactive use in the most ordinary way, to print or display an\n");
124   printf_filtered ("    announcement including an appropriate copyright notice and a\n");
125   printf_filtered ("    notice that there is no warranty (or else, saying that you provide\n");
126   printf_filtered ("    a warranty) and that users may redistribute the program under\n");
127   printf_filtered ("    these conditions, and telling the user how to view a copy of this\n");
128   printf_filtered ("    License.  (Exception: if the Program itself is interactive but\n");
129   printf_filtered ("    does not normally print such an announcement, your work based on\n");
130   printf_filtered ("    the Program is not required to print an announcement.)\n");
131   printf_filtered ("\n");
132   printf_filtered ("These requirements apply to the modified work as a whole.  If\n");
133   printf_filtered ("identifiable sections of that work are not derived from the Program,\n");
134   printf_filtered ("and can be reasonably considered independent and separate works in\n");
135   printf_filtered ("themselves, then this License, and its terms, do not apply to those\n");
136   printf_filtered ("sections when you distribute them as separate works.  But when you\n");
137   printf_filtered ("distribute the same sections as part of a whole which is a work based\n");
138   printf_filtered ("on the Program, the distribution of the whole must be on the terms of\n");
139   printf_filtered ("this License, whose permissions for other licensees extend to the\n");
140   printf_filtered ("entire whole, and thus to each and every part regardless of who wrote it.\n");
141   printf_filtered ("\n");
142   printf_filtered ("Thus, it is not the intent of this section to claim rights or contest\n");
143   printf_filtered ("your rights to work written entirely by you; rather, the intent is to\n");
144   printf_filtered ("exercise the right to control the distribution of derivative or\n");
145   printf_filtered ("collective works based on the Program.\n");
146   printf_filtered ("\n");
147   printf_filtered ("In addition, mere aggregation of another work not based on the Program\n");
148   printf_filtered ("with the Program (or with a work based on the Program) on a volume of\n");
149   printf_filtered ("a storage or distribution medium does not bring the other work under\n");
150   printf_filtered ("the scope of this License.\n");
151   printf_filtered ("\n");
152   printf_filtered ("  3. You may copy and distribute the Program (or a work based on it,\n");
153   printf_filtered ("under Section 2) in object code or executable form under the terms of\n");
154   printf_filtered ("Sections 1 and 2 above provided that you also do one of the following:\n");
155   printf_filtered ("\n");
156   printf_filtered ("    a) Accompany it with the complete corresponding machine-readable\n");
157   printf_filtered ("    source code, which must be distributed under the terms of Sections\n");
158   printf_filtered ("    1 and 2 above on a medium customarily used for software interchange; or,\n");
159   printf_filtered ("\n");
160   printf_filtered ("    b) Accompany it with a written offer, valid for at least three\n");
161   printf_filtered ("    years, to give any third party, for a charge no more than your\n");
162   printf_filtered ("    cost of physically performing source distribution, a complete\n");
163   printf_filtered ("    machine-readable copy of the corresponding source code, to be\n");
164   printf_filtered ("    distributed under the terms of Sections 1 and 2 above on a medium\n");
165   printf_filtered ("    customarily used for software interchange; or,\n");
166   printf_filtered ("\n");
167   printf_filtered ("    c) Accompany it with the information you received as to the offer\n");
168   printf_filtered ("    to distribute corresponding source code.  (This alternative is\n");
169   printf_filtered ("    allowed only for noncommercial distribution and only if you\n");
170   printf_filtered ("    received the program in object code or executable form with such\n");
171   printf_filtered ("    an offer, in accord with Subsection b above.)\n");
172   printf_filtered ("\n");
173   printf_filtered ("The source code for a work means the preferred form of the work for\n");
174   printf_filtered ("making modifications to it.  For an executable work, complete source\n");
175   printf_filtered ("code means all the source code for all modules it contains, plus any\n");
176   printf_filtered ("associated interface definition files, plus the scripts used to\n");
177   printf_filtered ("control compilation and installation of the executable.  However, as a\n");
178   printf_filtered ("special exception, the source code distributed need not include\n");
179   printf_filtered ("anything that is normally distributed (in either source or binary\n");
180   printf_filtered ("form) with the major components (compiler, kernel, and so on) of the\n");
181   printf_filtered ("operating system on which the executable runs, unless that component\n");
182   printf_filtered ("itself accompanies the executable.\n");
183   printf_filtered ("\n");
184   printf_filtered ("If distribution of executable or object code is made by offering\n");
185   printf_filtered ("access to copy from a designated place, then offering equivalent\n");
186   printf_filtered ("access to copy the source code from the same place counts as\n");
187   printf_filtered ("distribution of the source code, even though third parties are not\n");
188   printf_filtered ("compelled to copy the source along with the object code.\n");
189   printf_filtered ("\n");
190   printf_filtered ("  4. You may not copy, modify, sublicense, or distribute the Program\n");
191   printf_filtered ("except as expressly provided under this License.  Any attempt\n");
192   printf_filtered ("otherwise to copy, modify, sublicense or distribute the Program is\n");
193   printf_filtered ("void, and will automatically terminate your rights under this License.\n");
194   printf_filtered ("However, parties who have received copies, or rights, from you under\n");
195   printf_filtered ("this License will not have their licenses terminated so long as such\n");
196   printf_filtered ("parties remain in full compliance.\n");
197   printf_filtered ("\n");
198   printf_filtered ("  5. You are not required to accept this License, since you have not\n");
199   printf_filtered ("signed it.  However, nothing else grants you permission to modify or\n");
200   printf_filtered ("distribute the Program or its derivative works.  These actions are\n");
201   printf_filtered ("prohibited by law if you do not accept this License.  Therefore, by\n");
202   printf_filtered ("modifying or distributing the Program (or any work based on the\n");
203   printf_filtered ("Program), you indicate your acceptance of this License to do so, and\n");
204   printf_filtered ("all its terms and conditions for copying, distributing or modifying\n");
205   printf_filtered ("the Program or works based on it.\n");
206   printf_filtered ("\n");
207   printf_filtered ("  6. Each time you redistribute the Program (or any work based on the\n");
208   printf_filtered ("Program), the recipient automatically receives a license from the\n");
209   printf_filtered ("original licensor to copy, distribute or modify the Program subject to\n");
210   printf_filtered ("these terms and conditions.  You may not impose any further\n");
211   printf_filtered ("restrictions on the recipients' exercise of the rights granted herein.\n");
212   printf_filtered ("You are not responsible for enforcing compliance by third parties to\n");
213   printf_filtered ("this License.\n");
214   printf_filtered ("\n");
215   printf_filtered ("  7. If, as a consequence of a court judgment or allegation of patent\n");
216   printf_filtered ("infringement or for any other reason (not limited to patent issues),\n");
217   printf_filtered ("conditions are imposed on you (whether by court order, agreement or\n");
218   printf_filtered ("otherwise) that contradict the conditions of this License, they do not\n");
219   printf_filtered ("excuse you from the conditions of this License.  If you cannot\n");
220   printf_filtered ("distribute so as to satisfy simultaneously your obligations under this\n");
221   printf_filtered ("License and any other pertinent obligations, then as a consequence you\n");
222   printf_filtered ("may not distribute the Program at all.  For example, if a patent\n");
223   printf_filtered ("license would not permit royalty-free redistribution of the Program by\n");
224   printf_filtered ("all those who receive copies directly or indirectly through you, then\n");
225   printf_filtered ("the only way you could satisfy both it and this License would be to\n");
226   printf_filtered ("refrain entirely from distribution of the Program.\n");
227   printf_filtered ("\n");
228   printf_filtered ("If any portion of this section is held invalid or unenforceable under\n");
229   printf_filtered ("any particular circumstance, the balance of the section is intended to\n");
230   printf_filtered ("apply and the section as a whole is intended to apply in other\n");
231   printf_filtered ("circumstances.\n");
232   printf_filtered ("\n");
233   printf_filtered ("It is not the purpose of this section to induce you to infringe any\n");
234   printf_filtered ("patents or other property right claims or to contest validity of any\n");
235   printf_filtered ("such claims; this section has the sole purpose of protecting the\n");
236   printf_filtered ("integrity of the free software distribution system, which is\n");
237   printf_filtered ("implemented by public license practices.  Many people have made\n");
238   printf_filtered ("generous contributions to the wide range of software distributed\n");
239   printf_filtered ("through that system in reliance on consistent application of that\n");
240   printf_filtered ("system; it is up to the author/donor to decide if he or she is willing\n");
241   printf_filtered ("to distribute software through any other system and a licensee cannot\n");
242   printf_filtered ("impose that choice.\n");
243   printf_filtered ("\n");
244   printf_filtered ("This section is intended to make thoroughly clear what is believed to\n");
245   printf_filtered ("be a consequence of the rest of this License.\n");
246   printf_filtered ("\n");
247   printf_filtered ("  8. If the distribution and/or use of the Program is restricted in\n");
248   printf_filtered ("certain countries either by patents or by copyrighted interfaces, the\n");
249   printf_filtered ("original copyright holder who places the Program under this License\n");
250   printf_filtered ("may add an explicit geographical distribution limitation excluding\n");
251   printf_filtered ("those countries, so that distribution is permitted only in or among\n");
252   printf_filtered ("countries not thus excluded.  In such case, this License incorporates\n");
253   printf_filtered ("the limitation as if written in the body of this License.\n");
254   printf_filtered ("\n");
255   printf_filtered ("  9. The Free Software Foundation may publish revised and/or new versions\n");
256   printf_filtered ("of the General Public License from time to time.  Such new versions will\n");
257   printf_filtered ("be similar in spirit to the present version, but may differ in detail to\n");
258   printf_filtered ("address new problems or concerns.\n");
259   printf_filtered ("\n");
260   printf_filtered ("Each version is given a distinguishing version number.  If the Program\n");
261   printf_filtered ("specifies a version number of this License which applies to it and \"any\n");
262   printf_filtered ("later version\", you have the option of following the terms and conditions\n");
263   printf_filtered ("either of that version or of any later version published by the Free\n");
264   printf_filtered ("Software Foundation.  If the Program does not specify a version number of\n");
265   printf_filtered ("this License, you may choose any version ever published by the Free Software\n");
266   printf_filtered ("Foundation.\n");
267   printf_filtered ("\n");
268   printf_filtered ("  10. If you wish to incorporate parts of the Program into other free\n");
269   printf_filtered ("programs whose distribution conditions are different, write to the author\n");
270   printf_filtered ("to ask for permission.  For software which is copyrighted by the Free\n");
271   printf_filtered ("Software Foundation, write to the Free Software Foundation; we sometimes\n");
272   printf_filtered ("make exceptions for this.  Our decision will be guided by the two goals\n");
273   printf_filtered ("of preserving the free status of all derivatives of our free software and\n");
274   printf_filtered ("of promoting the sharing and reuse of software generally.\n");
275   printf_filtered ("\n");
276   immediate_quit--;
277 }
278
279 static void
280 show_warranty_command (char *ignore, int from_tty)
281 {
282   immediate_quit++;
283   printf_filtered ("                        NO WARRANTY\n");
284   printf_filtered ("\n");
285   printf_filtered ("  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY\n");
286   printf_filtered ("FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN\n");
287   printf_filtered ("OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES\n");
288   printf_filtered ("PROVIDE THE PROGRAM \"AS IS\" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED\n");
289   printf_filtered ("OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n");
290   printf_filtered ("MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS\n");
291   printf_filtered ("TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE\n");
292   printf_filtered ("PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,\n");
293   printf_filtered ("REPAIR OR CORRECTION.\n");
294   printf_filtered ("\n");
295   printf_filtered ("  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING\n");
296   printf_filtered ("WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR\n");
297   printf_filtered ("REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,\n");
298   printf_filtered ("INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING\n");
299   printf_filtered ("OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED\n");
300   printf_filtered ("TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY\n");
301   printf_filtered ("YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER\n");
302   printf_filtered ("PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE\n");
303   printf_filtered ("POSSIBILITY OF SUCH DAMAGES.\n");
304   printf_filtered ("\n");
305   immediate_quit--;
306 }
307
308 void
309 _initialize_copying (void)
310 {
311   add_cmd ("copying", no_class, show_copying_command,
312            "Conditions for redistributing copies of GDB.",
313            &showlist);
314   add_cmd ("warranty", no_class, show_warranty_command,
315            "Various kinds of warranty you do not have.",
316            &showlist);
317
318   /* For old-timers, allow "info copying", etc.  */
319   add_info ("copying", show_copying_command,
320             "Conditions for redistributing copies of GDB.");
321   add_info ("warranty", show_warranty_command,
322             "Various kinds of warranty you do not have.");
323 }