Add 2008 to copyright years.
[bpt/emacs.git] / admin / notes / copyright
Content-type: text/html HCoop Git - bpt/emacs.git/blame - admin/notes/copyright


500 - Internal Server Error

Malformed UTF-8 character (fatal) at (eval 8) line 1, <$fd> line 1349.
CommitLineData
b9b14d13 1Copyright (C) 2007, 2008 Free Software Foundation, Inc.
e3e14128 2See the end of the file for license conditions.
b05db979
GM
3
4
571975c0
GM
5NOTES ON COPYRIGHTS AND LICENSES
6
7Some terminology:
8
9A "copyright notice" consists of one or a few lines of this format:
10"Copyright (C) 2006, 2007 Free Software Foundation, Inc."
11
12A "license notice" is a statement of permissions, and is usually much
13longer, eg the text "GNU Emacs is free software...".
14
15
71428fe7
GM
16Summary for the impatient:
17
a4734fbd 181. Don't add code to Emacs written by someone other than yourself
c6fe6289
GM
19without thinking about the legal aspect. Even if the changes are
20trivial, consider if they combine with previous changes by the same
21author to make a non-trivial total. If so, make sure they have an
22assignment. If adding a whole file adjust the copyright statements in
23the file.
24
252. When installing code written by someone else, the ChangeLog entry
26should be in the name of the author of the code, not the person who
27installs it. I think it is helpful to put the author (if not yourself)
28in the CVS log as well; and to not install any of your own changes in
29the same commit.
a4734fbd
GM
30
313. With images, add the legal info to a README file in the directory
71428fe7
GM
32containing the image.
33
a4734fbd 344. If you add a lot of text to a previously trivial file that had no
71428fe7
GM
35legal notices, consider if you should add a copyright statement.
36
a4734fbd 375. Please don't just add an FSF copyright without checking that is the
f199f76c
GM
38right thing to do.
39
71428fe7 40
571975c0
GM
41Every non-trivial file distributed through the Emacs CVS should be
42self-explanatory in terms of copyright and license. This includes
43files that are not distributed in Emacs releases (for example, the
44admin/ directory), because the whole Emacs CVS is publicly
45available.
46
47The definition of triviality is a little vague, but a rule of thumb is
48that any file with less than 15 lines of actual content is trivial. If
49a file is auto-generated (eg ldefs-boot.el) from another one in the
50CVS, then it does not really matter about adding a copyright statement
51to the generated file.
52
d502a3da
GM
53Legal advice says that we could, if we wished, put a license notice
54even in trivial files, because copyright law in general looks at the
55overall work as a whole. It is not _necessary_ to do so, and rms
56prefers that we do not. This means one needs to take care that trivial
57files do not grow and become non-trivial without having a license
58added. NB consequently, if you add a lot of text to a small file,
59consider whether your changes have made the file worthy of a copyright
60notice, and if so, please add one.
c320d3b8 61
9bfceb2b
GM
62It can be helpful to put a reminder comment at the start of a trivial
63file, eg: "add a license notice if this grows to > 10 lines of code".
64
571975c0
GM
65The years in the copyright notice should be updated every year (see
66file "years" in this directory). The PS versions of refcards etc
67should display copyright notices (an exception to the rule about
68"generated" files), but these can just display the latest year. The
69full list of years should be kept in comments in the source file. If
70these are distributed in CVS, check in a regenerated version when the
71tex files are updated.
72
73Copyright changes should be propagated to any associated repositories
74(eg Gnus, MH-E), but I think in every case this happens automatically
75(?).
76
e3e14128
GM
77All README (and other such text files) that are non-trivial should
78contain copyright statements and GPL license notices, exactly as .el
bf5e9393 79files do (see e.g. README in the top-level directory). Before 2007,
e3e14128
GM
80we used a simple, short statement permitting copying and modification
81provided legal notices were retained. In Feb 2007 we switched to the
bf5e9393
GM
82standard GPL text, on legal advice. Some older text files in etc/
83should, however, keep their current licenses (see below for list).
571975c0 84
e3e14128
GM
85For image files, the copyright and license details should be recorded
86in a README file in each directory with images. (Legal advice says
87that we need not add notices to each image file individually, if they
5aa27cc9
GM
88allow for that.). It is recommended to use the word "convert" to
89describe the automatic process of changing an image from one format to
90another (http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00618.html).
91
571975c0
GM
92
93When installing a file with an "unusual" license (after checking first
94it is ok), put a copy of the copyright and license in the file (if
95possible. It's ok if this makes the file incompatible with its
96original format, if it can still be used by Emacs), or in a README
97file in the relevant directory.
98
99The vast majority of files are copyright FSF and distributed under the
100GPL. A few files (mainly related to language and charset support) are
101copyright AIST alone, or both AIST and FSF. (Contact Kenichi Handa
102with questions about legal issues in such files.) In all these cases,
103the copyright years in each file should be updated each year.
104
105There are some exceptions to the points in the previous paragraph, and
106these are listed below for reference, together with any files where
107the copyright needs to be updated in "unusual" ways.
108
109If you find any other such cases, please consult to check they are ok,
110and note them in this file. This includes missing copyright notices,
111and "odd" copyright holders. In most cases, individual authors should
112not appear in copyright statements. Either the copyright has been
113assigned (check copyright.list) to the FSF (in which case the original
114author should be removed and the year(s) transferred to the FSF); or
115else it is possible the file should not be in Emacs at all (please
116report!).
117
c14dd816
GM
118Note that it seems painfully clear that one cannot rely on CVS logs,
119or even ChangeLogs, for older changes. People often installed changes
120from others, without recording the true authorship.
121
571975c0
GM
122[For reference, most of these points were established via email with
123rms, 2007/1, "Copyright years".]
124
125
b05db979
GM
126lib-src/etags.c # print_version
127lib-src/rcs2log # Copyright
128lisp/calc/calc-help.el # calc-full-help
129lisp/startup.el # fancy-splash-tail
130mac/Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings
131mac/src/Emacs.r # resource 'vers'
132src/emacs.c
133 - remember to change the latest copyright year in the --version output.
134 [Post-release, will automate this like set-version does for version.]
135
571975c0
GM
136<top-level>/install-sh
137lispintro/install-sh
138 - this file is copyright MIT, which is OK. Leave the copyright alone.
139
c320d3b8 140src/m/news-r6.h
5aa27cc9
GM
141 public domain, leave alone.
142
6f242663
GM
143etc/BABYL, ms-kermit
144 no notices (see below).
145
571975c0
GM
146etc/edt-user.doc
147 - update BOTH notices in this file
148
d502a3da 149etc/emacs.csh
dc9332a6
GM
150 - written by Michael DeCorte, who has no assignment. But trivial
151 enough to not need license.
d502a3da 152
fb89a85b
GM
153etc/future-bug
154 - doesn't need a humourless disclaimer, because Karl Fogel says we
155 can consider it part of Emacs, and he has a blanker disclaimer for
156 Emacs changes. (email to rgm "[Emacs-commit] emacs/etc future-bug",
157 2007028)
158
5aa27cc9 159etc/letter.pbm,letter.xpm
c14dd816 160 - trivial, no notice needed.
5aa27cc9
GM
161<http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00324.html>
162
c320d3b8
GM
163etc/FTP, ORDERS
164 - trivial (at time of writing), no license needed
165
5aa27cc9
GM
166etc/GNU, INTERVIEW, LINUX-GNU, MOTIVATION, SERVICE, THE-GNU-PROJECT,
167WHY-FREE
168 rms: "These are statements of opinion or testimony. Their licenses
169 should permit verbatim copying only. Please don't change the
170 licenses that they have. They are distributed with Emacs but they
171 are not part of Emacs."
172
8d54e3a1
GM
173etc/HELLO
174 standard notices. Just a note that although the file itself is not
f23764dc 175 really copyrightable, in the wider context of it being part of
8d54e3a1
GM
176 Emacs (and written by those with assignments), a standard notice is
177 fine.
178
5aa27cc9
GM
179etc/MAILINGLISTS
180 rms: simple license is fine for this file
c14dd816 181
d4c2a0cc
GM
182leim/CXTERM-DIC/4Corner.tit, ARRAY30.tit, CCDOSPY.tit, ECDICT.tit,
183ETZY.tit, PY-b5.tit, Punct-b5.tit, Punct.tit, QJ-b5.tit, QJ.tit,
184SW.tit, TONEPY.tit, ZOZY.tit
571975c0
GM
185 - leave the copyrights alone.
186
187leim/MISC-DIC/CTLau-b5.html, CTLau.html, cangjie-table.b5, cangjie-table.cns,
d4c2a0cc 188pinyin.map, ziranma.cin
571975c0 189 - leave the copyright alone.
fb89a85b
GM
190Note that pinyin.map, ziranma.cin (and hence the generated
191leim/quail/PY.el, ZIRANMA.el) are under GPLv1 or later.
571975c0
GM
192
193leim/SKK-DIC/SKK-JISYO.L
194ja-dic/ja-dic.el
195 (the latter is auto-generated from the former). Leave the copyright alone.
196
197lib-src/etags.c
f199f76c
GM
198 Copyright information is duplicated in etc/ETAGS.README. Update that
199 file too.
200
201 Until 2007 etags.c was described as being copyright FSF and Ken Arnold.
202 After some investigation in Feb 2007, then to the best of our
203 knowledge we believe that the original 1984 Emacs version was based
204 on the version in BSD4.2. See for example this 1985 post from Ken Arnold:
205 <http://groups.google.com/group/mod.sources/browse_thread/thread/ffe5c55845a640a9>
206 I have received enough requests for the current source to ctags
207 to post it. Here is the latest version (what will go out with
208 4.3, modulo any bugs fixed during the beta period). It is the
209 4.2 ctags with recognition of yacc and lex tags added.
210
211 See also a 1984 version of ctags (no copyright) posted to net.sources:
212 <http://groups.google.com/group/net.sources/msg/a21b6c21be12a98d>
213 Version of etags.c in emacs-16.56 duplicates comment typos.
214
215 Accordingly, in Feb 2007 we added a 1984 copyright for the
216 University of California and a revised BSD license. The terms of
217 this require that the full license details be available in binary
018a95ed
GM
218 distributions - hence the file etc/ETAGS.README. The fact that the
219 --version output just says "Copyright <year> FSF" is apparently OK
220 from a legal point of view.
571975c0
GM
221
222lib-src/getopt1.c, getopt_int.h
223 - these are from the GNU C library. Leave the copyrights alone.
224
1fbfb0b5
GM
225lisp/play/tetris.el
226 - no special rules about the copyright. We note here that we believe
227 (2007/1) there is no problem with our use of the name "tetris" or
228 the concept.
229 rms: "My understanding is that game rules as such are not copyrightable."
230 <http://lists.gnu.org/archive/html/emacs-devel/2007-01/msg00960.html>
c927bd84 231 rms: Legal advice is that we are ok and need not worry about this.
1fbfb0b5 232
571975c0
GM
233lispref/doclicense.texi
234man/doclicense.texi
235 - leave the copyright alone in this imported file.
236
237lisp/net/tramp.el
238 - there are also copyrights in the body of the file. Update these too.
239
f199f76c 240
59098cd6
GM
241lwlib/
242rms (2007/02/17): "lwlib is not assigned to the FSF; we don't consider
243it part of Emacs. [...] Therefore non-FSF copyrights are ok in lwlib."
244
6b00dced
GM
245NB don't change the GPL version used for lwlib .c and .h files (see
246below).
247
f199f76c
GM
248FSF copyrights should only appear in files which have undergone
249non-trivial cumulative changes from the original versions in the Lucid
250Widget Library. NB this means that if you make non-trivial changes to
251a file with no FSF copyright, you should add one. Also, if changes are
252reverted to the extent that a file becomes basically the same as the
253original version, the FSF copyright should be removed.
254
255In my (rgm) opinion, as of Feb 2007, all the non-trivial files differ
256significantly from the original versions, with the exception of
257lwlib-Xm.h. Most of the changes that were made to this file have
258subsequently been reverted. Therefore I removed the FSF copyright from
259this file (which is arguably too trivial to merit a notice anyway). I
260added FSF copyright to the following files which did not have them
261already: Makefile.in, lwlib-Xaw.c, lwlib-int.h (borderline),
262lwlib-utils.c (borderline), lwlib.c, lwlib.h.
263
264Copyright years before the advent of public CVS in 2001 were those
265when I judged (from the CVS logs) that non-trivial amounts of change
266had taken place. I also adjusted the existing FSF years in xlwmenu.c,
267xlwmenu.h, and xlwmenuP.h on the same basis.
268
269Note that until Feb 2007, the following files in lwlib were lacking
270notices: lwlib-int.h, lwlib.h, lwlib-Xaw.h, lwlib-Xlw.h, lwlib-utils.h
271
272The following files did not list a Lucid copyright: xlwmenu.h,
273xlwmenuP.h.
274
275To the best of our knowledge, all the code files in lwlib were
276originally part of the Lucid Widget Library, even if they did not say
277so explicitly. For example, they were all present in Lucid Emacs 19.1
278in 1992. The exceptions are the two Xaw files, which did not appear
279till Lucid Emacs 19.9 in 1994. The file lwlib-Xaw.h is too trivial to
280merit a copyright notice, but would presumably have the same one as
281lwlib-Xaw.c. We have been unable to find a true standalone version of
282LWL, if there was such a thing, to check definitively.
283
284To clarify the situation, in Feb 2007 we added Lucid copyrights and
285GPL notices to those files lacking either that were non-trivial,
286namely: lwlib-int.h, lwlib.h, xlwmenu.h, xlwmenuP.h. This represents
287our best understanding of the legal status of these files. We also
288clarified the notices in Makefile.in, which was originally the
289Makefile auto-generated from Lucid's Imakefile.
290
291As of Feb 2007, the following files are considered too trivial for
292notices: lwlib-Xaw.h, lwlib-Xlw.h, lwlib-utils.h.
293
6b00dced
GM
294The version of lwlib/ first installed in Emacs seems to be the same as
295that used in Lucid Emacs 19.8 (released 6-sep-93); except the two Xaw
296files, which did not appear till Athena support was added in Lucid
297Emacs 19.9. In Lucid Emacs 19.1, all files were under GPLv1 or later,
298but by Lucid Emacs 19.8, lwlib.c and xlwmenu.c had been switched to v2
299or later. These are the versions that were first installed in Emacs.
300So in GNU Emacs, these two files have been under v2 or later since
3011994.
302
303It seems that it was the intention of Lucid to use v1 or later
304(excepting the two files mentioned previously); so this is the license
305we have used when adding notices to code that did not have notices
306originally. Although we have the legal right to switch to v2 or later,
307rms prefers that we do not do so.
308
f199f76c 309
a20becf3
GM
310man/*.texi - All manuals should be under GFDL, and should include a
311copy of it, so that they can be distributed separately. faq.texi has
312a different license, for some reason no-one can remember.
313http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg00583.html
314http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg00618.html
315
316
6b00dced
GM
317msdos/is_exec.c, sigaction.c - these files are copyright DJ Delorie.
318Leave the copyrights alone. Leave the Eli Zaretskii copyright in
319is_exec.c alone. See the msdos/README file for the legal history of
320these files.
571975c0 321
f199f76c
GM
322
323oldXMenu/
324 Keep the "copyright.h" method used by X11, rather than moving the
325 licenses into the files. Note that the original X10.h did not use
326 copyright.h, but had an explicit notice, which we retain.
327
328If you make non-trivial changes to a file which does not have an FSF
329notice, add one and a GPL notice (as per Activate.c). If changes to a
330file are reverted such that it becomes essentially the same as the
331original X11 version, remove the FSF notice and GPL.
332
333Only the files which differ significantly from the original X11
334versions should have FSF copyright and GPL notices. At time of writing
335(Feb 2007), this is: Activate.c, Create.c, Internal.c. I (rgm)
336established this by diff'ing the current files against those in X11R1,
337and when I found significant differences looking in the ChangeLog for
338the years they originated (the CVS logs are truncated before 1999). I
339therefore removed the FSF notices (added in 200x) from the other
340files. There are some borderline cases IMO: AddSel.c, InsSel.c,
341XMakeAssoc.c, XMenu.h. For these I erred on the side of NOT adding FSF
342notices.
343
344With regards to whether the files we have changed should have GPL
345added or not, rms says (2007-02-25, "oldXmenu issues"):
346
347 It does not make much difference, because oldXmenu is obsolete
348 except for use in Emacs (and it is not normally used in Emacs any
349 more either).
350
351 So, to make things simple, please put our changes under the GPL.
352
353insque.c had no copyright notice until 2005. The version of insque.c
354added to Emacs 1992-01-27 is essentially the same as insremque.c added
355to glic three days later by Roland McGrath, with an FSF copyright and
356GPL, but no ChangeLog entry:
357<http://sources.redhat.com/cgi-bin/cvsweb.cgi/~checkout~/libc/misc/insremque.c?\
358rev=1.1&cvsroot=glibc>
359To the best of his recollection, McGrath (who has a copyright
360assignment) was the author of this file (email from roland at frob.com
361to rms, 2007-02-23, "Where did insque.c come from?"). The FSF
362copyright and GPL in this file are therefore correct as far as we
363understand it.
364
365Imakefile had no legal info in Feb 2007, but was obviously based on
366the X11 version (which also had no explicit legal info). As it was
367unused, I removed it. It would have the same MIT copyright as
368Makefile.in does now.
369
370
571975c0 371src/gmalloc.c
d4c2a0cc
GM
372 - contains numerous copyrights from the GNU C library. Leave them alone.
373
448adfb9 374src/acldef.h, chpdef.h, ndir.h
f5f4e20d
GM
375 - see comments below. These files are OK to be released with Emacs
376 22, but we may want to revisit them afterwards.
377
571975c0 378
c320d3b8
GM
379** Some notes on resolved issues, for historical information only
380
dc9332a6
GM
381etc/TERMS
382rms: "surely written either by me or by ESR. (If you can figure out
383which year, I can probably tell you which.) Either way, we have papers
bcc21331
CY
384for it." It was present in Emacs-16.56 (15-jul-85). rms: "Then I
385conclude it was written by me."
dc9332a6
GM
386
387etc/ulimit.hack
388 Very obsolete file removed March 2007. Doesn't say who the author
389is, but web-search suggests Karl Kleinpaste, who has no Emacs
390assignment. Trivial anyway.
391http://groups.google.com/group/comp.unix.shell/browse_thread/thread/bf3df496994\
3929f1df/7e5922c67b3a98fb
393http://groups.google.com/group/comp.unix.questions/msg/cc7e49cacfd1ccb4
394 (original 1987 source)
395
bf5e9393
GM
396lisp/term/README
397 - had no copyright notice till Feb 2007. ChangeLog.3 suggests it was
398 written by Eric Raymond. When asked by rms on 14 Feb 2007 he said:
399
400 I don't remember writing it, but it reads like my prose and I believe
401 I wrote the feature(s) it's describing. So I would have been the
402 likeliest person to write it.
403
404 Odds are that I did, but I'm not certain.
405
406 Accordingly, FSF copyright was added.
407
deac6bc5 408src/unexhp9k800.c (and dependent src/m/sr2k.h)
c927bd84 409 http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00138.html
deac6bc5
GM
410 - briefly removed due to legal uncertainly Jan-Mar 2007. The
411 relevant assignment is under "hp9k800" in copyright.list. File was
412 written by John V. Morris at HP, and disclaimed by the author and
413 HP. So this file is public domain.
414
c320d3b8 415
88b27a03
GM
416K Rodgers changes
417 It was pointed out that K Rodgers only had assigments for VC and
418 ps-print, but had changed several other files. We tried to contact
419 him for a general assignment, but he proved uncommunicative (despite
420 initially indicating to rms he would sign an assignment). As a result, his
421 changes were removed and/or rewritten independently. For details, see
422 threads:
423http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg00225.html
424http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg00257.html
425
5fed56d6
GM
426 But then an assignment arrived before the release of Emacs 22:
427http://lists.gnu.org/archive/html/emacs-devel/2007-04/msg01427.html
428
88b27a03 429
c927bd84
GM
430lisp/progmodes/python.el
431Dave Love alerted us to a potential legal problem:
432http://lists.gnu.org/archive/html/emacs-pretest-bug/2007-04/msg00459.html
433
434On consultation with a lawyer, we found there was no problem:
435http://lists.gnu.org/archive/html/emacs-devel/2007-05/msg00466.html
436
437
1354eff6
GM
438** Issues that are "fixed" for the release of Emacs 22, but we may
439 wish to revisit later in more detail
440
441
474d2d60
GM
442admin/check-doc-strings
443 File says it's in the public domain, but that might not make it so.
444
8d54e3a1
GM
445etc/BABYL
446 File written long ago by authors with no assignment. Keep them
6f242663
GM
447 without notices for now, try and contact authors if possible. Be
448 ready to remove these files if the authors ever object.
474d2d60 449
8d54e3a1 450etc/ms-kermit
b83813ec 451etc/e/eterm-color.ti
1354eff6
GM
452src/acldef.h, chpdef.h, ndir.h
453 On legal advice from Matt Norwood, the following comment was added
8d54e3a1 454 to these files in Feb/Mar 2007:
1354eff6
GM
455
456 The code here is forced by the interface, and is not subject to
457 copyright, constituting the only possible expression of the
458 algorithm in this format.
459
460 With the addition of this notice, these files are OK for the
461 upcoming Emacs-22 release. Post-release, we can revisit this issue
462 and possibly add a list of all authors who have changed these files.
463 (details in email from Matt Norwood to rms, 2007/02/03).
464
dc9332a6
GM
465etc/ms-7bkermit
466 Says it was written by Andy Lowry and Joel Spolsky. No entry for
467either in copyright.list. NB this file is not "constrained" like
468ms-kermit (rms: "We know it isn't. A comment at the front says it has
469other bindings which might be handy."). File removed March 2007.
470Re-add if clear up status at some point.
471
472etc/Xkeymap.txt
473 No info on author. File removed March 2007. rms: "It says it is
474RLK's way of remapping his keyboard, so it is not constrained. I think
475it was written by RLK. Let's delete it; if we contact RLK again, we
bcc21331 476can put it back." Actually, RLK == Robert Krawitz has an Emacs
b537c2a9
GM
477