annotate etc/COPYING @ 31382:cde9770b21e0

Minor doc fixes. (vc-default-mode-line-string): Show state `needs-patch' as a `-' too. (vc-after-save): Call vc-dired-resynch-file. (vc-file-not-found-hook): Ask the user whether to check out a non-existing file. (vc-find-backend-function): If function doesn't exist, return nil instead of error. (vc-call-backend): Doc fix. (vc-prefix-map): Move the autoload from vc.el. (vc-simple-command): Removed. (vc-handled-backends): Docstring change. (vc-ignore-vc-files): Mark obsolete. (vc-registered): Check vc-ignore-vc-files. (vc-find-file-hook, vc-file-not-found-hook): Don't check vc-ignore-vc-files. (vc-parse-buffer): Lobotomize the monster. (vc-simple-command): Docstring fix. (vc-registered): Align the way the file-handler is called with the way the function itself works. (vc-file-owner): Remove. (vc-header-alist): Move the dummy def from vc.el. (vc-backend-hook-functions): Remove. (vc-find-backend-function): Don't try to load vc-X-hooks anymore. (vc-backend): Reintroduce the test for `file = nil' now that I know why it was there (and added a comment to better remember). Update Copyright. (vc-backend): Don't accept a nil argument any more. (vc-up-to-date-p): Turn into a defsubst. (vc-possible-master): New function. (vc-check-master-templates): Use `vc-possible-master' and allow funs in vc-X-master-templates to return a non-existent file. (vc-loadup): Remove. (vc-find-backend-function): Use `require'. Also, handle the case where vc-BACKEND-hooks.el doesn't exist. (vc-call-backend): Cleanup. (vc-find-backend-function): Return a cons cell if using the default function. (vc-call-backend): If calling the default function, pass it the backend as first argument. Update the docstring accordingly. (vc-default-state-heuristic, vc-default-mode-line-string): Update for the new backend argument. (vc-make-backend-sym): Renamed from vc-make-backend-function. (vc-find-backend-function): Use the new name. (vc-default-registered): New function. (vc-backend-functions): Remove. (vc-loadup): Don't setup 'vc-functions. (vc-find-backend-function): New function. (vc-call-backend): Use above fun and populate 'vc-functions lazily. (vc-backend-defines): Remove. (vc-backend-hook-functions, vc-backend-functions) (vc-make-backend-function, vc-call): Pass names without leading `vc-' to vc-call-backend so we can blindly prefix them with vc-BACKEND. (vc-loadup): Don't load vc-X-hooks if vc-X is requested. (vc-call-backend): Always try to load vc-X-hooks. (vc-registered): Remove vc- in call to vc-call-backend. (vc-default-back-end, vc-buffer-backend): Remove. (vc-kill-buffer-hook): Remove `vc-buffer-backend' handling. (vc-loadup): Load files quietly. (vc-call-backend): Oops, brain fart. (vc-locking-user): If locked by the calling user, return that name. Redocumented. (vc-user-login-name): Simplify the code a tiny bit. (vc-state): Don't use 'reserved any more. Just use the same convention as the one used for vc-<backend>-state where the locking user (as a string) is returned. (vc-locking-user): Update, based on the above convention. The 'vc-locking-user property has disappeared. (vc-mode-line, vc-default-mode-line-string): Adapt to new `vc-state'. (vc-backend-functions): Removed vc-toggle-read-only. (vc-toggle-read-only): Undid prev change. (vc-master-templates): Def the obsolete var. (vc-file-prop-obarray): Use `make-vector'. (vc-backend-functions): Add new hookable functions vc-toggle-read-only, vc-record-rename and vc-merge-news. (vc-loadup): If neither backend nor default functions exist, use the backend function rather than nil. (vc-call-backend): If the function if not bound yet, try to load the non-hook file to see if it provides it. (vc-call): New macro plus use it wherever possible. (vc-backend-subdirectory-name): Use neither `vc-default-back-end' nor `vc-find-binary' since it's only called from vc-mistrust-permission which is only used once the backend is known. (vc-checkout-model): Fix parenthesis. (vc-recompute-state, vc-prefix-map): Move to vc.el. (vc-backend-functions): Renamed `vc-steal' to `vc-steal-lock'. (vc-call-backend): Changed error message. (vc-state): Added description of state `unlocked-changes'. (vc-backend-hook-functions, vc-backend-functions): Updated function lists. (vc-call-backend): Fixed typo. (vc-backend-hook-functions): Renamed vc-uses-locking to vc-checkout-model. (vc-checkout-required): Renamed to vc-checkout-model. Re-implemented and re-commented. (vc-after-save): Use vc-checkout-model. (vc-backend-functions): Added `vc-diff' to the list of functions possibly implemented in a vc-BACKEND library. (vc-checkout-required): Bug fixed that caused an error to be signaled during `vc-after-save'. (vc-backend-hook-functions): `vc-checkout-required' updated to `vc-uses-locking'. (vc-checkout-required): Call to backend function `vc-checkout-required' updated to `vc-uses-locking' instead. (vc-parse-buffer): Bug found and fixed. (vc-backend-functions): `vc-annotate-command', `vc-annotate-difference' added to supported backend functions. vc-state-heuristic added to vc-backend-hook-functions. Implemented new state model. (vc-state, vc-state-heuristic, vc-default-state-heuristic): New functions. (vc-locking-user): Simplified. Now only needed if the file is locked by somebody else. (vc-lock-from-permissions): Removed. Functionality is in vc-sccs-hooks.el and vc-rcs-hooks.el now. (vc-mode-line-string): New name for former vc-status. Adapted. (vc-mode-line): Adapted to use the above. Removed optional parameter. (vc-master-templates): Is really obsolete. Commented out the definition for now. What is the right procedure to get rid of it? (vc-registered, vc-backend, vc-buffer-backend, vc-name): Largely rewritten. (vc-default-registered): Removed. (vc-check-master-templates): New function; does mostly what the above did before. (vc-locking-user): Don't rely on the backend to set the property. (vc-latest-version, vc-your-latest-version): Removed. (vc-backend-hook-functions): Removed them from this list, too. (vc-fetch-properties): Removed. (vc-workfile-version): Doc fix. (vc-consult-rcs-headers): Moved into vc-rcs-hooks.el, under the name vc-rcs-consult-headers. (vc-master-locks, vc-master-locking-user): Moved into both vc-rcs-hooks.el and vc-sccs-hooks.el. These properties and access functions are implementation details of those two backends. (vc-parse-locks, vc-fetch-master-properties): Split into back-end specific parts and removed. Callers not updated yet; because I guess these callers will disappear into back-end specific files anyway. (vc-checkout-model): Renamed to vc-uses-locking. Store yes/no in the property, and return t/nil. Updated all callers. (vc-checkout-model): Punt to backends. (vc-default-locking-user): New function. (vc-locking-user, vc-workfile-version): Punt to backends. (vc-rcsdiff-knows-brief, vc-rcs-lock-from-diff) (vc-master-workfile-version): Moved from vc-hooks. (vc-lock-file): Moved to vc-sccs-hooks and renamed. (vc-handle-cvs, vc-cvs-parse-status, vc-cvs-status): Moved to vc-cvs-hooks. Add doc strings in various places. Simplify the minor mode setup. (vc-handled-backends): New user variable. (vc-parse-buffer, vc-insert-file, vc-default-registered): Minor simplification. (vc-backend-hook-functions, vc-backend-functions): New variable. (vc-make-backend-function, vc-loadup, vc-call-backend) (vc-backend-defines): New functions. Various doc fixes. (vc-default-back-end, vc-follow-symlinks): Custom fix. (vc-match-substring): Function removed. Callers changed to use match-string. (vc-lock-file, vc-consult-rcs-headers, vc-kill-buffer-hook): Simplify. vc-registered has been renamed vc-default-registered. Some functions have been moved to the backend specific files. they all support the vc-BACKEND-registered functions. This is 1.113 from the emacs sources
author Gerd Moellmann <gerd@gnu.org>
date Mon, 04 Sep 2000 19:47:25 +0000
parents 90595a2d3043
children d92149473c34
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26017
Dave Love <fx@gnu.org>
parents:
diff changeset
1 GNU GENERAL PUBLIC LICENSE
Dave Love <fx@gnu.org>
parents:
diff changeset
2 Version 2, June 1991
Dave Love <fx@gnu.org>
parents:
diff changeset
3
Dave Love <fx@gnu.org>
parents:
diff changeset
4 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
Dave Love <fx@gnu.org>
parents:
diff changeset
5 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Dave Love <fx@gnu.org>
parents:
diff changeset
6 Everyone is permitted to copy and distribute verbatim copies
Dave Love <fx@gnu.org>
parents:
diff changeset
7 of this license document, but changing it is not allowed.
Dave Love <fx@gnu.org>
parents:
diff changeset
8
Dave Love <fx@gnu.org>
parents:
diff changeset
9 Preamble
Dave Love <fx@gnu.org>
parents:
diff changeset
10
Dave Love <fx@gnu.org>
parents:
diff changeset
11 The licenses for most software are designed to take away your
Dave Love <fx@gnu.org>
parents:
diff changeset
12 freedom to share and change it. By contrast, the GNU General Public
Dave Love <fx@gnu.org>
parents:
diff changeset
13 License is intended to guarantee your freedom to share and change free
Dave Love <fx@gnu.org>
parents:
diff changeset
14 software--to make sure the software is free for all its users. This
Dave Love <fx@gnu.org>
parents:
diff changeset
15 General Public License applies to most of the Free Software
Dave Love <fx@gnu.org>
parents:
diff changeset
16 Foundation's software and to any other program whose authors commit to
Dave Love <fx@gnu.org>
parents:
diff changeset
17 using it. (Some other Free Software Foundation software is covered by
Dave Love <fx@gnu.org>
parents:
diff changeset
18 the GNU Library General Public License instead.) You can apply it to
Dave Love <fx@gnu.org>
parents:
diff changeset
19 your programs, too.
Dave Love <fx@gnu.org>
parents:
diff changeset
20
Dave Love <fx@gnu.org>
parents:
diff changeset
21 When we speak of free software, we are referring to freedom, not
Dave Love <fx@gnu.org>
parents:
diff changeset
22 price. Our General Public Licenses are designed to make sure that you
Dave Love <fx@gnu.org>
parents:
diff changeset
23 have the freedom to distribute copies of free software (and charge for
Dave Love <fx@gnu.org>
parents:
diff changeset
24 this service if you wish), that you receive source code or can get it
Dave Love <fx@gnu.org>
parents:
diff changeset
25 if you want it, that you can change the software or use pieces of it
Dave Love <fx@gnu.org>
parents:
diff changeset
26 in new free programs; and that you know you can do these things.
Dave Love <fx@gnu.org>
parents:
diff changeset
27
Dave Love <fx@gnu.org>
parents:
diff changeset
28 To protect your rights, we need to make restrictions that forbid
Dave Love <fx@gnu.org>
parents:
diff changeset
29 anyone to deny you these rights or to ask you to surrender the rights.
Dave Love <fx@gnu.org>
parents:
diff changeset
30 These restrictions translate to certain responsibilities for you if you
Dave Love <fx@gnu.org>
parents:
diff changeset
31 distribute copies of the software, or if you modify it.
Dave Love <fx@gnu.org>
parents:
diff changeset
32
Dave Love <fx@gnu.org>
parents:
diff changeset
33 For example, if you distribute copies of such a program, whether
Dave Love <fx@gnu.org>
parents:
diff changeset
34 gratis or for a fee, you must give the recipients all the rights that
Dave Love <fx@gnu.org>
parents:
diff changeset
35 you have. You must make sure that they, too, receive or can get the
Dave Love <fx@gnu.org>
parents:
diff changeset
36 source code. And you must show them these terms so they know their
Dave Love <fx@gnu.org>
parents:
diff changeset
37 rights.
Dave Love <fx@gnu.org>
parents:
diff changeset
38
Dave Love <fx@gnu.org>
parents:
diff changeset
39 We protect your rights with two steps: (1) copyright the software, and
Dave Love <fx@gnu.org>
parents:
diff changeset
40 (2) offer you this license which gives you legal permission to copy,
Dave Love <fx@gnu.org>
parents:
diff changeset
41 distribute and/or modify the software.
Dave Love <fx@gnu.org>
parents:
diff changeset
42
Dave Love <fx@gnu.org>
parents:
diff changeset
43 Also, for each author's protection and ours, we want to make certain
Dave Love <fx@gnu.org>
parents:
diff changeset
44 that everyone understands that there is no warranty for this free
Dave Love <fx@gnu.org>
parents:
diff changeset
45 software. If the software is modified by someone else and passed on, we
Dave Love <fx@gnu.org>
parents:
diff changeset
46 want its recipients to know that what they have is not the original, so
Dave Love <fx@gnu.org>
parents:
diff changeset
47 that any problems introduced by others will not reflect on the original
Dave Love <fx@gnu.org>
parents:
diff changeset
48 authors' reputations.
Dave Love <fx@gnu.org>
parents:
diff changeset
49
Dave Love <fx@gnu.org>
parents:
diff changeset
50 Finally, any free program is threatened constantly by software
Dave Love <fx@gnu.org>
parents:
diff changeset
51 patents. We wish to avoid the danger that redistributors of a free
Dave Love <fx@gnu.org>
parents:
diff changeset
52 program will individually obtain patent licenses, in effect making the
Dave Love <fx@gnu.org>
parents:
diff changeset
53 program proprietary. To prevent this, we have made it clear that any
Dave Love <fx@gnu.org>
parents:
diff changeset
54 patent must be licensed for everyone's free use or not licensed at all.
Dave Love <fx@gnu.org>
parents:
diff changeset
55
Dave Love <fx@gnu.org>
parents:
diff changeset
56 The precise terms and conditions for copying, distribution and
Dave Love <fx@gnu.org>
parents:
diff changeset
57 modification follow.
Dave Love <fx@gnu.org>
parents:
diff changeset
58
Dave Love <fx@gnu.org>
parents:
diff changeset
59 GNU GENERAL PUBLIC LICENSE
Dave Love <fx@gnu.org>
parents:
diff changeset
60 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
Dave Love <fx@gnu.org>
parents:
diff changeset
61
Dave Love <fx@gnu.org>
parents:
diff changeset
62 0. This License applies to any program or other work which contains
Dave Love <fx@gnu.org>
parents:
diff changeset
63 a notice placed by the copyright holder saying it may be distributed
Dave Love <fx@gnu.org>
parents:
diff changeset
64 under the terms of this General Public License. The "Program", below,
Dave Love <fx@gnu.org>
parents:
diff changeset
65 refers to any such program or work, and a "work based on the Program"
Dave Love <fx@gnu.org>
parents:
diff changeset
66 means either the Program or any derivative work under copyright law:
Dave Love <fx@gnu.org>
parents:
diff changeset
67 that is to say, a work containing the Program or a portion of it,
Dave Love <fx@gnu.org>
parents:
diff changeset
68 either verbatim or with modifications and/or translated into another
Dave Love <fx@gnu.org>
parents:
diff changeset
69 language. (Hereinafter, translation is included without limitation in
Dave Love <fx@gnu.org>
parents:
diff changeset
70 the term "modification".) Each licensee is addressed as "you".
Dave Love <fx@gnu.org>
parents:
diff changeset
71
Dave Love <fx@gnu.org>
parents:
diff changeset
72 Activities other than copying, distribution and modification are not
Dave Love <fx@gnu.org>
parents:
diff changeset
73 covered by this License; they are outside its scope. The act of
Dave Love <fx@gnu.org>
parents:
diff changeset
74 running the Program is not restricted, and the output from the Program
Dave Love <fx@gnu.org>
parents:
diff changeset
75 is covered only if its contents constitute a work based on the
Dave Love <fx@gnu.org>
parents:
diff changeset
76 Program (independent of having been made by running the Program).
Dave Love <fx@gnu.org>
parents:
diff changeset
77 Whether that is true depends on what the Program does.
Dave Love <fx@gnu.org>
parents:
diff changeset
78
Dave Love <fx@gnu.org>
parents:
diff changeset
79 1. You may copy and distribute verbatim copies of the Program's
Dave Love <fx@gnu.org>
parents:
diff changeset
80 source code as you receive it, in any medium, provided that you
Dave Love <fx@gnu.org>
parents:
diff changeset
81 conspicuously and appropriately publish on each copy an appropriate
Dave Love <fx@gnu.org>
parents:
diff changeset
82 copyright notice and disclaimer of warranty; keep intact all the
Dave Love <fx@gnu.org>
parents:
diff changeset
83 notices that refer to this License and to the absence of any warranty;
Dave Love <fx@gnu.org>
parents:
diff changeset
84 and give any other recipients of the Program a copy of this License
Dave Love <fx@gnu.org>
parents:
diff changeset
85 along with the Program.
Dave Love <fx@gnu.org>
parents:
diff changeset
86
Dave Love <fx@gnu.org>
parents:
diff changeset
87 You may charge a fee for the physical act of transferring a copy, and
Dave Love <fx@gnu.org>
parents:
diff changeset
88 you may at your option offer warranty protection in exchange for a fee.
Dave Love <fx@gnu.org>
parents:
diff changeset
89
Dave Love <fx@gnu.org>
parents:
diff changeset
90 2. You may modify your copy or copies of the Program or any portion
Dave Love <fx@gnu.org>
parents:
diff changeset
91 of it, thus forming a work based on the Program, and copy and
Dave Love <fx@gnu.org>
parents:
diff changeset
92 distribute such modifications or work under the terms of Section 1
Dave Love <fx@gnu.org>
parents:
diff changeset
93 above, provided that you also meet all of these conditions:
Dave Love <fx@gnu.org>
parents:
diff changeset
94
Dave Love <fx@gnu.org>
parents:
diff changeset
95 a) You must cause the modified files to carry prominent notices
Dave Love <fx@gnu.org>
parents:
diff changeset
96 stating that you changed the files and the date of any change.
Dave Love <fx@gnu.org>
parents:
diff changeset
97
Dave Love <fx@gnu.org>
parents:
diff changeset
98 b) You must cause any work that you distribute or publish, that in
Dave Love <fx@gnu.org>
parents:
diff changeset
99 whole or in part contains or is derived from the Program or any
Dave Love <fx@gnu.org>
parents:
diff changeset
100 part thereof, to be licensed as a whole at no charge to all third
Dave Love <fx@gnu.org>
parents:
diff changeset
101 parties under the terms of this License.
Dave Love <fx@gnu.org>
parents:
diff changeset
102
Dave Love <fx@gnu.org>
parents:
diff changeset
103 c) If the modified program normally reads commands interactively
Dave Love <fx@gnu.org>
parents:
diff changeset
104 when run, you must cause it, when started running for such
Dave Love <fx@gnu.org>
parents:
diff changeset
105 interactive use in the most ordinary way, to print or display an
Dave Love <fx@gnu.org>
parents:
diff changeset
106 announcement including an appropriate copyright notice and a
Dave Love <fx@gnu.org>
parents:
diff changeset
107 notice that there is no warranty (or else, saying that you provide
Dave Love <fx@gnu.org>
parents:
diff changeset
108 a warranty) and that users may redistribute the program under
Dave Love <fx@gnu.org>
parents:
diff changeset
109 these conditions, and telling the user how to view a copy of this
Dave Love <fx@gnu.org>
parents:
diff changeset
110 License. (Exception: if the Program itself is interactive but
Dave Love <fx@gnu.org>
parents:
diff changeset
111 does not normally print such an announcement, your work based on
Dave Love <fx@gnu.org>
parents:
diff changeset
112 the Program is not required to print an announcement.)
Dave Love <fx@gnu.org>
parents:
diff changeset
113
Dave Love <fx@gnu.org>
parents:
diff changeset
114 These requirements apply to the modified work as a whole. If
Dave Love <fx@gnu.org>
parents:
diff changeset
115 identifiable sections of that work are not derived from the Program,
Dave Love <fx@gnu.org>
parents:
diff changeset
116 and can be reasonably considered independent and separate works in
Dave Love <fx@gnu.org>
parents:
diff changeset
117 themselves, then this License, and its terms, do not apply to those
Dave Love <fx@gnu.org>
parents:
diff changeset
118 sections when you distribute them as separate works. But when you
Dave Love <fx@gnu.org>
parents:
diff changeset
119 distribute the same sections as part of a whole which is a work based
Dave Love <fx@gnu.org>
parents:
diff changeset
120 on the Program, the distribution of the whole must be on the terms of
Dave Love <fx@gnu.org>
parents:
diff changeset
121 this License, whose permissions for other licensees extend to the
Dave Love <fx@gnu.org>
parents:
diff changeset
122 entire whole, and thus to each and every part regardless of who wrote it.
Dave Love <fx@gnu.org>
parents:
diff changeset
123
Dave Love <fx@gnu.org>
parents:
diff changeset
124 Thus, it is not the intent of this section to claim rights or contest
Dave Love <fx@gnu.org>
parents:
diff changeset
125 your rights to work written entirely by you; rather, the intent is to
Dave Love <fx@gnu.org>
parents:
diff changeset
126 exercise the right to control the distribution of derivative or
Dave Love <fx@gnu.org>
parents:
diff changeset
127 collective works based on the Program.
Dave Love <fx@gnu.org>
parents:
diff changeset
128
Dave Love <fx@gnu.org>
parents:
diff changeset
129 In addition, mere aggregation of another work not based on the Program
Dave Love <fx@gnu.org>
parents:
diff changeset
130 with the Program (or with a work based on the Program) on a volume of
Dave Love <fx@gnu.org>
parents:
diff changeset
131 a storage or distribution medium does not bring the other work under
Dave Love <fx@gnu.org>
parents:
diff changeset
132 the scope of this License.
Dave Love <fx@gnu.org>
parents:
diff changeset
133
Dave Love <fx@gnu.org>
parents:
diff changeset
134 3. You may copy and distribute the Program (or a work based on it,
Dave Love <fx@gnu.org>
parents:
diff changeset
135 under Section 2) in object code or executable form under the terms of
Dave Love <fx@gnu.org>
parents:
diff changeset
136 Sections 1 and 2 above provided that you also do one of the following:
Dave Love <fx@gnu.org>
parents:
diff changeset
137
Dave Love <fx@gnu.org>
parents:
diff changeset
138 a) Accompany it with the complete corresponding machine-readable
Dave Love <fx@gnu.org>
parents:
diff changeset
139 source code, which must be distributed under the terms of Sections
Dave Love <fx@gnu.org>
parents:
diff changeset
140 1 and 2 above on a medium customarily used for software interchange; or,
Dave Love <fx@gnu.org>
parents:
diff changeset
141
Dave Love <fx@gnu.org>
parents:
diff changeset
142 b) Accompany it with a written offer, valid for at least three
Dave Love <fx@gnu.org>
parents:
diff changeset
143 years, to give any third party, for a charge no more than your
Dave Love <fx@gnu.org>
parents:
diff changeset
144 cost of physically performing source distribution, a complete
Dave Love <fx@gnu.org>
parents:
diff changeset
145 machine-readable copy of the corresponding source code, to be
Dave Love <fx@gnu.org>
parents:
diff changeset
146 distributed under the terms of Sections 1 and 2 above on a medium
Dave Love <fx@gnu.org>
parents:
diff changeset
147 customarily used for software interchange; or,
Dave Love <fx@gnu.org>
parents:
diff changeset
148
Dave Love <fx@gnu.org>
parents:
diff changeset
149 c) Accompany it with the information you received as to the offer
Dave Love <fx@gnu.org>
parents:
diff changeset
150 to distribute corresponding source code. (This alternative is
Dave Love <fx@gnu.org>
parents:
diff changeset
151 allowed only for noncommercial distribution and only if you
Dave Love <fx@gnu.org>
parents:
diff changeset
152 received the program in object code or executable form with such
Dave Love <fx@gnu.org>
parents:
diff changeset
153 an offer, in accord with Subsection b above.)
Dave Love <fx@gnu.org>
parents:
diff changeset
154
Dave Love <fx@gnu.org>
parents:
diff changeset
155 The source code for a work means the preferred form of the work for
Dave Love <fx@gnu.org>
parents:
diff changeset
156 making modifications to it. For an executable work, complete source
Dave Love <fx@gnu.org>
parents:
diff changeset
157 code means all the source code for all modules it contains, plus any
Dave Love <fx@gnu.org>
parents:
diff changeset
158 associated interface definition files, plus the scripts used to
Dave Love <fx@gnu.org>
parents:
diff changeset
159 control compilation and installation of the executable. However, as a
Dave Love <fx@gnu.org>
parents:
diff changeset
160 special exception, the source code distributed need not include
Dave Love <fx@gnu.org>
parents:
diff changeset
161 anything that is normally distributed (in either source or binary
Dave Love <fx@gnu.org>
parents:
diff changeset
162 form) with the major components (compiler, kernel, and so on) of the
Dave Love <fx@gnu.org>
parents:
diff changeset
163 operating system on which the executable runs, unless that component
Dave Love <fx@gnu.org>
parents:
diff changeset
164 itself accompanies the executable.
Dave Love <fx@gnu.org>
parents:
diff changeset
165
Dave Love <fx@gnu.org>
parents:
diff changeset
166 If distribution of executable or object code is made by offering
Dave Love <fx@gnu.org>
parents:
diff changeset
167 access to copy from a designated place, then offering equivalent
Dave Love <fx@gnu.org>
parents:
diff changeset
168 access to copy the source code from the same place counts as
Dave Love <fx@gnu.org>
parents:
diff changeset
169 distribution of the source code, even though third parties are not
Dave Love <fx@gnu.org>
parents:
diff changeset
170 compelled to copy the source along with the object code.
Dave Love <fx@gnu.org>
parents:
diff changeset
171
Dave Love <fx@gnu.org>
parents:
diff changeset
172 4. You may not copy, modify, sublicense, or distribute the Program
Dave Love <fx@gnu.org>
parents:
diff changeset
173 except as expressly provided under this License. Any attempt
Dave Love <fx@gnu.org>
parents:
diff changeset
174 otherwise to copy, modify, sublicense or distribute the Program is
Dave Love <fx@gnu.org>
parents:
diff changeset
175 void, and will automatically terminate your rights under this License.
Dave Love <fx@gnu.org>
parents:
diff changeset
176 However, parties who have received copies, or rights, from you under
Dave Love <fx@gnu.org>
parents:
diff changeset
177 this License will not have their licenses terminated so long as such
Dave Love <fx@gnu.org>
parents:
diff changeset
178 parties remain in full compliance.
Dave Love <fx@gnu.org>
parents:
diff changeset
179
Dave Love <fx@gnu.org>
parents:
diff changeset
180 5. You are not required to accept this License, since you have not
Dave Love <fx@gnu.org>
parents:
diff changeset
181 signed it. However, nothing else grants you permission to modify or
Dave Love <fx@gnu.org>
parents:
diff changeset
182 distribute the Program or its derivative works. These actions are
Dave Love <fx@gnu.org>
parents:
diff changeset
183 prohibited by law if you do not accept this License. Therefore, by
Dave Love <fx@gnu.org>
parents:
diff changeset
184 modifying or distributing the Program (or any work based on the
Dave Love <fx@gnu.org>
parents:
diff changeset
185 Program), you indicate your acceptance of this License to do so, and
Dave Love <fx@gnu.org>
parents:
diff changeset
186 all its terms and conditions for copying, distributing or modifying
Dave Love <fx@gnu.org>
parents:
diff changeset
187 the Program or works based on it.
Dave Love <fx@gnu.org>
parents:
diff changeset
188
Dave Love <fx@gnu.org>
parents:
diff changeset
189 6. Each time you redistribute the Program (or any work based on the
Dave Love <fx@gnu.org>
parents:
diff changeset
190 Program), the recipient automatically receives a license from the
Dave Love <fx@gnu.org>
parents:
diff changeset
191 original licensor to copy, distribute or modify the Program subject to
Dave Love <fx@gnu.org>
parents:
diff changeset
192 these terms and conditions. You may not impose any further
Dave Love <fx@gnu.org>
parents:
diff changeset
193 restrictions on the recipients' exercise of the rights granted herein.
Dave Love <fx@gnu.org>
parents:
diff changeset
194 You are not responsible for enforcing compliance by third parties to
Dave Love <fx@gnu.org>
parents:
diff changeset
195 this License.
Dave Love <fx@gnu.org>
parents:
diff changeset
196
Dave Love <fx@gnu.org>
parents:
diff changeset
197 7. If, as a consequence of a court judgment or allegation of patent
Dave Love <fx@gnu.org>
parents:
diff changeset
198 infringement or for any other reason (not limited to patent issues),
Dave Love <fx@gnu.org>
parents:
diff changeset
199 conditions are imposed on you (whether by court order, agreement or
Dave Love <fx@gnu.org>
parents:
diff changeset
200 otherwise) that contradict the conditions of this License, they do not
Dave Love <fx@gnu.org>
parents:
diff changeset
201 excuse you from the conditions of this License. If you cannot
Dave Love <fx@gnu.org>
parents:
diff changeset
202 distribute so as to satisfy simultaneously your obligations under this
Dave Love <fx@gnu.org>
parents:
diff changeset
203 License and any other pertinent obligations, then as a consequence you
Dave Love <fx@gnu.org>
parents:
diff changeset
204 may not distribute the Program at all. For example, if a patent
Dave Love <fx@gnu.org>
parents:
diff changeset
205 license would not permit royalty-free redistribution of the Program by
Dave Love <fx@gnu.org>
parents:
diff changeset
206 all those who receive copies directly or indirectly through you, then
Dave Love <fx@gnu.org>
parents:
diff changeset
207 the only way you could satisfy both it and this License would be to
Dave Love <fx@gnu.org>
parents:
diff changeset
208 refrain entirely from distribution of the Program.
Dave Love <fx@gnu.org>
parents:
diff changeset
209
Dave Love <fx@gnu.org>
parents:
diff changeset
210 If any portion of this section is held invalid or unenforceable under
Dave Love <fx@gnu.org>
parents:
diff changeset
211 any particular circumstance, the balance of the section is intended to
Dave Love <fx@gnu.org>
parents:
diff changeset
212 apply and the section as a whole is intended to apply in other
Dave Love <fx@gnu.org>
parents:
diff changeset
213 circumstances.
Dave Love <fx@gnu.org>
parents:
diff changeset
214
Dave Love <fx@gnu.org>
parents:
diff changeset
215 It is not the purpose of this section to induce you to infringe any
Dave Love <fx@gnu.org>
parents:
diff changeset
216 patents or other property right claims or to contest validity of any
Dave Love <fx@gnu.org>
parents:
diff changeset
217 such claims; this section has the sole purpose of protecting the
Dave Love <fx@gnu.org>
parents:
diff changeset
218 integrity of the free software distribution system, which is
Dave Love <fx@gnu.org>
parents:
diff changeset
219 implemented by public license practices. Many people have made
Dave Love <fx@gnu.org>
parents:
diff changeset
220 generous contributions to the wide range of software distributed
Dave Love <fx@gnu.org>
parents:
diff changeset
221 through that system in reliance on consistent application of that
Dave Love <fx@gnu.org>
parents:
diff changeset
222 system; it is up to the author/donor to decide if he or she is willing
Dave Love <fx@gnu.org>
parents:
diff changeset
223 to distribute software through any other system and a licensee cannot
Dave Love <fx@gnu.org>
parents:
diff changeset
224 impose that choice.
Dave Love <fx@gnu.org>
parents:
diff changeset
225
Dave Love <fx@gnu.org>
parents:
diff changeset
226 This section is intended to make thoroughly clear what is believed to
Dave Love <fx@gnu.org>
parents:
diff changeset
227 be a consequence of the rest of this License.
Dave Love <fx@gnu.org>
parents:
diff changeset
228
Dave Love <fx@gnu.org>
parents:
diff changeset
229 8. If the distribution and/or use of the Program is restricted in
Dave Love <fx@gnu.org>
parents:
diff changeset
230 certain countries either by patents or by copyrighted interfaces, the
Dave Love <fx@gnu.org>
parents:
diff changeset
231 original copyright holder who places the Program under this License
Dave Love <fx@gnu.org>
parents:
diff changeset
232 may add an explicit geographical distribution limitation excluding
Dave Love <fx@gnu.org>
parents:
diff changeset
233 those countries, so that distribution is permitted only in or among
Dave Love <fx@gnu.org>
parents:
diff changeset
234 countries not thus excluded. In such case, this License incorporates
Dave Love <fx@gnu.org>
parents:
diff changeset
235 the limitation as if written in the body of this License.
Dave Love <fx@gnu.org>
parents:
diff changeset
236
Dave Love <fx@gnu.org>
parents:
diff changeset
237 9. The Free Software Foundation may publish revised and/or new versions
Dave Love <fx@gnu.org>
parents:
diff changeset
238 of the General Public License from time to time. Such new versions will
Dave Love <fx@gnu.org>
parents:
diff changeset
239 be similar in spirit to the present version, but may differ in detail to
Dave Love <fx@gnu.org>
parents:
diff changeset
240 address new problems or concerns.
Dave Love <fx@gnu.org>
parents:
diff changeset
241
Dave Love <fx@gnu.org>
parents:
diff changeset
242 Each version is given a distinguishing version number. If the Program
Dave Love <fx@gnu.org>
parents:
diff changeset
243 specifies a version number of this License which applies to it and "any
Dave Love <fx@gnu.org>
parents:
diff changeset
244 later version", you have the option of following the terms and conditions
Dave Love <fx@gnu.org>
parents:
diff changeset
245 either of that version or of any later version published by the Free
Dave Love <fx@gnu.org>
parents:
diff changeset
246 Software Foundation. If the Program does not specify a version number of
Dave Love <fx@gnu.org>
parents:
diff changeset
247 this License, you may choose any version ever published by the Free Software
Dave Love <fx@gnu.org>
parents:
diff changeset
248 Foundation.
Dave Love <fx@gnu.org>
parents:
diff changeset
249
Dave Love <fx@gnu.org>
parents:
diff changeset
250 10. If you wish to incorporate parts of the Program into other free
Dave Love <fx@gnu.org>
parents:
diff changeset
251 programs whose distribution conditions are different, write to the author
Dave Love <fx@gnu.org>
parents:
diff changeset
252 to ask for permission. For software which is copyrighted by the Free
Dave Love <fx@gnu.org>
parents:
diff changeset
253 Software Foundation, write to the Free Software Foundation; we sometimes
Dave Love <fx@gnu.org>
parents:
diff changeset
254 make exceptions for this. Our decision will be guided by the two goals
Dave Love <fx@gnu.org>
parents:
diff changeset
255 of preserving the free status of all derivatives of our free software and
Dave Love <fx@gnu.org>
parents:
diff changeset
256 of promoting the sharing and reuse of software generally.
Dave Love <fx@gnu.org>
parents:
diff changeset
257
Dave Love <fx@gnu.org>
parents:
diff changeset
258 NO WARRANTY
Dave Love <fx@gnu.org>
parents:
diff changeset
259
Dave Love <fx@gnu.org>
parents:
diff changeset
260 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
Dave Love <fx@gnu.org>
parents:
diff changeset
261 FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
Dave Love <fx@gnu.org>
parents:
diff changeset
262 OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
Dave Love <fx@gnu.org>
parents:
diff changeset
263 PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
Dave Love <fx@gnu.org>
parents:
diff changeset
264 OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
Dave Love <fx@gnu.org>
parents:
diff changeset
265 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
Dave Love <fx@gnu.org>
parents:
diff changeset
266 TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
Dave Love <fx@gnu.org>
parents:
diff changeset
267 PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
Dave Love <fx@gnu.org>
parents:
diff changeset
268 REPAIR OR CORRECTION.
Dave Love <fx@gnu.org>
parents:
diff changeset
269
Dave Love <fx@gnu.org>
parents:
diff changeset
270 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
Dave Love <fx@gnu.org>
parents:
diff changeset
271 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
Dave Love <fx@gnu.org>
parents:
diff changeset
272 REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
Dave Love <fx@gnu.org>
parents:
diff changeset
273 INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
Dave Love <fx@gnu.org>
parents:
diff changeset
274 OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
Dave Love <fx@gnu.org>
parents:
diff changeset
275 TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
Dave Love <fx@gnu.org>
parents:
diff changeset
276 YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
Dave Love <fx@gnu.org>
parents:
diff changeset
277 PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
Dave Love <fx@gnu.org>
parents:
diff changeset
278 POSSIBILITY OF SUCH DAMAGES.
Dave Love <fx@gnu.org>
parents:
diff changeset
279
Dave Love <fx@gnu.org>
parents:
diff changeset
280 END OF TERMS AND CONDITIONS
Dave Love <fx@gnu.org>
parents:
diff changeset
281
Dave Love <fx@gnu.org>
parents:
diff changeset
282 How to Apply These Terms to Your New Programs
Dave Love <fx@gnu.org>
parents:
diff changeset
283
Dave Love <fx@gnu.org>
parents:
diff changeset
284 If you develop a new program, and you want it to be of the greatest
Dave Love <fx@gnu.org>
parents:
diff changeset
285 possible use to the public, the best way to achieve this is to make it
Dave Love <fx@gnu.org>
parents:
diff changeset
286 free software which everyone can redistribute and change under these terms.
Dave Love <fx@gnu.org>
parents:
diff changeset
287
Dave Love <fx@gnu.org>
parents:
diff changeset
288 To do so, attach the following notices to the program. It is safest
Dave Love <fx@gnu.org>
parents:
diff changeset
289 to attach them to the start of each source file to most effectively
Dave Love <fx@gnu.org>
parents:
diff changeset
290 convey the exclusion of warranty; and each file should have at least
Dave Love <fx@gnu.org>
parents:
diff changeset
291 the "copyright" line and a pointer to where the full notice is found.
Dave Love <fx@gnu.org>
parents:
diff changeset
292
Dave Love <fx@gnu.org>
parents:
diff changeset
293 <one line to give the program's name and a brief idea of what it does.>
Dave Love <fx@gnu.org>
parents:
diff changeset
294 Copyright (C) <year> <name of author>
Dave Love <fx@gnu.org>
parents:
diff changeset
295
Dave Love <fx@gnu.org>
parents:
diff changeset
296 This program is free software; you can redistribute it and/or modify
Dave Love <fx@gnu.org>
parents:
diff changeset
297 it under the terms of the GNU General Public License as published by
Dave Love <fx@gnu.org>
parents:
diff changeset
298 the Free Software Foundation; either version 2 of the License, or
Dave Love <fx@gnu.org>
parents:
diff changeset
299 (at your option) any later version.
Dave Love <fx@gnu.org>
parents:
diff changeset
300
Dave Love <fx@gnu.org>
parents:
diff changeset
301 This program is distributed in the hope that it will be useful,
Dave Love <fx@gnu.org>
parents:
diff changeset
302 but WITHOUT ANY WARRANTY; without even the implied warranty of
Dave Love <fx@gnu.org>
parents:
diff changeset
303 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
Dave Love <fx@gnu.org>
parents:
diff changeset
304 GNU General Public License for more details.
Dave Love <fx@gnu.org>
parents:
diff changeset
305
Dave Love <fx@gnu.org>
parents:
diff changeset
306 You should have received a copy of the GNU General Public License
Dave Love <fx@gnu.org>
parents:
diff changeset
307 along with this program; if not, write to the Free Software
Dave Love <fx@gnu.org>
parents:
diff changeset
308 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Dave Love <fx@gnu.org>
parents:
diff changeset
309
Dave Love <fx@gnu.org>
parents:
diff changeset
310
Dave Love <fx@gnu.org>
parents:
diff changeset
311 Also add information on how to contact you by electronic and paper mail.
Dave Love <fx@gnu.org>
parents:
diff changeset
312
Dave Love <fx@gnu.org>
parents:
diff changeset
313 If the program is interactive, make it output a short notice like this
Dave Love <fx@gnu.org>
parents:
diff changeset
314 when it starts in an interactive mode:
Dave Love <fx@gnu.org>
parents:
diff changeset
315
Dave Love <fx@gnu.org>
parents:
diff changeset
316 Gnomovision version 69, Copyright (C) year name of author
Dave Love <fx@gnu.org>
parents:
diff changeset
317 Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
Dave Love <fx@gnu.org>
parents:
diff changeset
318 This is free software, and you are welcome to redistribute it
Dave Love <fx@gnu.org>
parents:
diff changeset
319 under certain conditions; type `show c' for details.
Dave Love <fx@gnu.org>
parents:
diff changeset
320
Dave Love <fx@gnu.org>
parents:
diff changeset
321 The hypothetical commands `show w' and `show c' should show the appropriate
Dave Love <fx@gnu.org>
parents:
diff changeset
322 parts of the General Public License. Of course, the commands you use may
Dave Love <fx@gnu.org>
parents:
diff changeset
323 be called something other than `show w' and `show c'; they could even be
Dave Love <fx@gnu.org>
parents:
diff changeset
324 mouse-clicks or menu items--whatever suits your program.
Dave Love <fx@gnu.org>
parents:
diff changeset
325
Dave Love <fx@gnu.org>
parents:
diff changeset
326 You should also get your employer (if you work as a programmer) or your
Dave Love <fx@gnu.org>
parents:
diff changeset
327 school, if any, to sign a "copyright disclaimer" for the program, if
Dave Love <fx@gnu.org>
parents:
diff changeset
328 necessary. Here is a sample; alter the names:
Dave Love <fx@gnu.org>
parents:
diff changeset
329
Dave Love <fx@gnu.org>
parents:
diff changeset
330 Yoyodyne, Inc., hereby disclaims all copyright interest in the program
Dave Love <fx@gnu.org>
parents:
diff changeset
331 `Gnomovision' (which makes passes at compilers) written by James Hacker.
Dave Love <fx@gnu.org>
parents:
diff changeset
332
Dave Love <fx@gnu.org>
parents:
diff changeset
333 <signature of Ty Coon>, 1 April 1989
Dave Love <fx@gnu.org>
parents:
diff changeset
334 Ty Coon, President of Vice
Dave Love <fx@gnu.org>
parents:
diff changeset
335
Dave Love <fx@gnu.org>
parents:
diff changeset
336 This General Public License does not permit incorporating your program into
Dave Love <fx@gnu.org>
parents:
diff changeset
337 proprietary programs. If your program is a subroutine library, you may
Dave Love <fx@gnu.org>
parents:
diff changeset
338 consider it more useful to permit linking proprietary applications with the
Dave Love <fx@gnu.org>
parents:
diff changeset
339 library. If this is what you want to do, use the GNU Library General
Dave Love <fx@gnu.org>
parents:
diff changeset
340 Public License instead of this License.