*** empty log message ***
[bpt/emacs.git] / admin / notes / copyright
1 Copyright (C) 2007 Free Software Foundation, Inc.
2 See the end of the file for license conditions.
3
4
5 NOTES ON COPYRIGHTS AND LICENSES
6
7 Some terminology:
8
9 A "copyright notice" consists of one or a few lines of this format:
10 "Copyright (C) 2006, 2007 Free Software Foundation, Inc."
11
12 A "license notice" is a statement of permissions, and is usually much
13 longer, eg the text "GNU Emacs is free software...".
14
15
16 Summary for the impatient:
17
18 1. Don't add a file to Emacs written by someone other than yourself
19 without thinking about the legal aspect (make sure they have an
20 assignment, adjust the copyright statements in the file). NB the
21 ChangeLog entry should be in the name of the author of the code, not
22 the person who installs it.
23
24 2. With images, add the legal info to a README file in the directory
25 containing the image.
26
27 3. If you add a lot of text to a previously trivial file that had no
28 legal notices, consider if you should add a copyright statement.
29
30
31 Every non-trivial file distributed through the Emacs CVS should be
32 self-explanatory in terms of copyright and license. This includes
33 files that are not distributed in Emacs releases (for example, the
34 admin/ directory), because the whole Emacs CVS is publicly
35 available.
36
37 The definition of triviality is a little vague, but a rule of thumb is
38 that any file with less than 15 lines of actual content is trivial. If
39 a file is auto-generated (eg ldefs-boot.el) from another one in the
40 CVS, then it does not really matter about adding a copyright statement
41 to the generated file.
42
43 Legal advice says that we could, if we wished, put a license notice
44 even in trivial files, because copyright law in general looks at the
45 overall work as a whole. It is not _necessary_ to do so, and rms
46 prefers that we do not. This means one needs to take care that trivial
47 files do not grow and become non-trivial without having a license
48 added. NB consequently, if you add a lot of text to a small file,
49 consider whether your changes have made the file worthy of a copyright
50 notice, and if so, please add one.
51
52 The years in the copyright notice should be updated every year (see
53 file "years" in this directory). The PS versions of refcards etc
54 should display copyright notices (an exception to the rule about
55 "generated" files), but these can just display the latest year. The
56 full list of years should be kept in comments in the source file. If
57 these are distributed in CVS, check in a regenerated version when the
58 tex files are updated.
59
60 Copyright changes should be propagated to any associated repositories
61 (eg Gnus, MH-E), but I think in every case this happens automatically
62 (?).
63
64 All README (and other such text files) that are non-trivial should
65 contain copyright statements and GPL license notices, exactly as .el
66 files do (see e.g. README in the top-level directory). Before 2007,
67 we used a simple, short statement permitting copying and modification
68 provided legal notices were retained. In Feb 2007 we switched to the
69 standard GPL text, on legal advice. Some older text files in etc/
70 should, however, keep their current licenses (see below for list).
71
72 For image files, the copyright and license details should be recorded
73 in a README file in each directory with images. (Legal advice says
74 that we need not add notices to each image file individually, if they
75 allow for that.). It is recommended to use the word "convert" to
76 describe the automatic process of changing an image from one format to
77 another (http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00618.html).
78
79
80 When installing a file with an "unusual" license (after checking first
81 it is ok), put a copy of the copyright and license in the file (if
82 possible. It's ok if this makes the file incompatible with its
83 original format, if it can still be used by Emacs), or in a README
84 file in the relevant directory.
85
86 The vast majority of files are copyright FSF and distributed under the
87 GPL. A few files (mainly related to language and charset support) are
88 copyright AIST alone, or both AIST and FSF. (Contact Kenichi Handa
89 with questions about legal issues in such files.) In all these cases,
90 the copyright years in each file should be updated each year.
91
92 There are some exceptions to the points in the previous paragraph, and
93 these are listed below for reference, together with any files where
94 the copyright needs to be updated in "unusual" ways.
95
96 If you find any other such cases, please consult to check they are ok,
97 and note them in this file. This includes missing copyright notices,
98 and "odd" copyright holders. In most cases, individual authors should
99 not appear in copyright statements. Either the copyright has been
100 assigned (check copyright.list) to the FSF (in which case the original
101 author should be removed and the year(s) transferred to the FSF); or
102 else it is possible the file should not be in Emacs at all (please
103 report!).
104
105 Note that it seems painfully clear that one cannot rely on CVS logs,
106 or even ChangeLogs, for older changes. People often installed changes
107 from others, without recording the true authorship.
108
109 [For reference, most of these points were established via email with
110 rms, 2007/1, "Copyright years".]
111
112
113 lib-src/etags.c # print_version
114 lib-src/rcs2log # Copyright
115 lisp/calc/calc-help.el # calc-full-help
116 lisp/startup.el # fancy-splash-tail
117 mac/Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings
118 mac/src/Emacs.r # resource 'vers'
119 src/emacs.c
120 - remember to change the latest copyright year in the --version output.
121 [Post-release, will automate this like set-version does for version.]
122
123 <top-level>/install-sh
124 lispintro/install-sh
125 - this file is copyright MIT, which is OK. Leave the copyright alone.
126
127 admin/check-doc-strings
128 src/m/news-r6.h
129 public domain, leave alone.
130
131 etc/edt-user.doc
132 - update BOTH notices in this file
133
134 etc/emacs.csh
135 - keep simple license for this simple file
136
137 etc/letter.pbm,letter.xpm
138 - trivial, no notice needed.
139 <http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00324.html>
140
141 etc/FTP, ORDERS
142 - trivial (at time of writing), no license needed
143
144 etc/GNU, INTERVIEW, LINUX-GNU, MOTIVATION, SERVICE, THE-GNU-PROJECT,
145 WHY-FREE
146 rms: "These are statements of opinion or testimony. Their licenses
147 should permit verbatim copying only. Please don't change the
148 licenses that they have. They are distributed with Emacs but they
149 are not part of Emacs."
150
151 etc/MAILINGLISTS
152 rms: simple license is fine for this file
153
154 leim/CXTERM-DIC/4Corner.tit, ARRAY30.tit, CCDOSPY.tit, ECDICT.tit,
155 ETZY.tit, PY-b5.tit, Punct-b5.tit, Punct.tit, QJ-b5.tit, QJ.tit,
156 SW.tit, TONEPY.tit, ZOZY.tit
157 - leave the copyrights alone.
158
159 leim/MISC-DIC/CTLau-b5.html, CTLau.html, cangjie-table.b5, cangjie-table.cns,
160 pinyin.map, ziranma.cin
161 - leave the copyright alone.
162
163 leim/SKK-DIC/SKK-JISYO.L
164 ja-dic/ja-dic.el
165 (the latter is auto-generated from the former). Leave the copyright alone.
166
167 lib-src/etags.c
168 - this has a copyright Ken Arnold. We are still deciding what should
169 be done here (see below).
170
171 lib-src/getopt1.c, getopt_int.h
172 - these are from the GNU C library. Leave the copyrights alone.
173
174 lisp/play/tetris.el
175 - no special rules about the copyright. We note here that we believe
176 (2007/1) there is no problem with our use of the name "tetris" or
177 the concept.
178 rms: "My understanding is that game rules as such are not copyrightable."
179 <http://lists.gnu.org/archive/html/emacs-devel/2007-01/msg00960.html>
180
181 lispref/doclicense.texi
182 man/doclicense.texi
183 - leave the copyright alone in this imported file.
184
185 lisp/net/tramp.el
186 - there are also copyrights in the body of the file. Update these too.
187
188 lwlib/
189 rms (2007/02/17): "lwlib is not assigned to the FSF; we don't consider
190 it part of Emacs. [...] Therefore non-FSF copyrights are ok in lwlib."
191
192 msdos/is_exec.c, sigaction.c
193 - these files are copyright DJ Delorie. Leave the copyrights alone.
194 Leave the Eli Zaretskii copyright in is_exec.c alone. See the
195 msdos/README file for the legal history of these files.
196
197 src/gmalloc.c
198 - contains numerous copyrights from the GNU C library. Leave them alone.
199
200 src/acldef.h, chpdef.h, ndir.h
201 - see comments below. These files are OK to be released with Emacs
202 22, but we may want to revisit them afterwards.
203
204 [src/unexhp9k800.c - removed 2007/1/27]
205 [src/m/sr2k.h - removed 2007/1/27]
206 - First file removed due to legal uncertainties; second file removed
207 due to dependency on first. Note that src/m/hp800.h is still needed on
208 hp800 arch.
209 NB we would like to re-add this file if we can. Please let us know
210 if you can clarify its legal status.
211
212
213 ** Some notes on resolved issues, for historical information only
214
215 lisp/term/README
216 - had no copyright notice till Feb 2007. ChangeLog.3 suggests it was
217 written by Eric Raymond. When asked by rms on 14 Feb 2007 he said:
218
219 I don't remember writing it, but it reads like my prose and I believe
220 I wrote the feature(s) it's describing. So I would have been the
221 likeliest person to write it.
222
223 Odds are that I did, but I'm not certain.
224
225 Accordingly, FSF copyright was added.
226
227
228 ** Issues that are "fixed" for the release of Emacs 22, but we may
229 wish to revisit later in more detail
230
231
232 etc/e/eterm-color.ti
233 src/acldef.h, chpdef.h, ndir.h
234 On legal advice from Matt Norwood, the following comment was added
235 to these files in Feb 2007:
236
237 The code here is forced by the interface, and is not subject to
238 copyright, constituting the only possible expression of the
239 algorithm in this format.
240
241 With the addition of this notice, these files are OK for the
242 upcoming Emacs-22 release. Post-release, we can revisit this issue
243 and possibly add a list of all authors who have changed these files.
244 (details in email from Matt Norwood to rms, 2007/02/03).
245
246
247 src/m/mips4.h, news-risc.h, pmax.h
248 src/s/aix3-2.h, bsd386.h, hpux8.h, hpux9.h, irix4-0.h, irix5-0.h,
249 isc2-2.h, netbsd.h, osf1.h, sol2-3.h, sunos4-0.h, usg5-4-2.h
250 - all these (not obviously trivial) files were missing copyrights
251 till Feb 2007, when FSF copyright was added. Matt Norwood advised:
252
253 For now, I think the best policy is to assume that we do have
254 assignments from the authors (I recall many of these header files
255 as having been originally written by rms), and to attach an FSF
256 copyright with GPL notice. We can amend this if and when we
257 complete the code audit. Any additions to these files by
258 non-assigned authors are arguably "de minimis" contributions to
259 Emacs: small changes or suggestions to a work that are subsumed in
260 the main authors' copyright in the entire work.
261
262 Here is my (rgm) take on the details of the above files:
263
264 mips4.h
265 might be trivial? started trivial, been added to in tiny changes by
266 those with FSF assignment, often result of email suggestions by others.
267
268 news-risc.h
269 started trivial. Grown by tiny additions, plus chunk
270 from mips.h, which was and is Copyright FSF
271
272 pmax.h
273 started trivial. grown in tiny changes, except for maybe Jim Wilson's
274 comment.
275
276 ? irix4-0.h
277 I would say started non-trivial (1992, rms). only tiny changes since
278 installed.
279
280 ? irix5-0.h
281 I would say started non-trivial (1993, jimb, heavily based
282 on irix4-0.h). A few borderline non-tiny changes since.
283
284 ? isc2-2.h
285 started trivial. 2 non-tiny change, in 1993. looks to
286 be made up of several small tweaks from various sources. maybe
287 non-tiny total changes from Karl Berry (no emacs assignment).
288
289 osf1.h
290 started trivial. grown in tiny changes (one borderline tiny change
291 by fx in 2000, but most code was later removed). non-tiny addition
292 in 2002 from m/alpha.h, but that was and is copyright FSF.
293
294 usg5-4-2.h
295 started non-trivial, but was heavily based on usg5-4.h, which was and is
296 copyright FSF. only tiny changes since installed.
297
298 sol2-3.h
299 started trivial. only non-tiny change (1994) incorporated code from
300 usg5-4.h, which was and is copyright FSF.
301
302 aix3-2.h, bsd386.h, hpux8.h, hpux9.h, netbsd.h, sunos4-0.h
303 started trivial, grown in tiny changes.
304
305 netbsd.h:
306 Roland McGrath said to rms (2007/02/17): "I don't really remember
307 anything about it. If I put it in without other comment, then probably
308 I wrote it myself."
309
310
311 Someone might want to tweak the copyright years (for dates before
312 2001) that I used in all these files.
313
314 Note: erring on the side of caution, I also added notices to some
315 files I thought might be considered non-trivial (if one includes
316 comment) in s/:
317 aix4-1.h hiuxmpp.h hiuxwe2.h hpux10.h irix6-0.h irix6-5.h isc3-0.h
318 ptx4.h sol2.h sunos4-0.h
319
320 (everything with > 30 non-blank lines, which at least is _some_ kind of
321 system)
322
323
324 *** These are copyright issues that need not be fixed until after
325 Emacs 22 is released (though if they can be fixed before, that is
326 obviously good):
327
328
329 Is it OK to just `cvs remove' a file for legal reasons, or is
330 something more drastic needed? A removed file is still available from
331 CVS, if suitable options are applied. (This CVS issue obviously does
332 not affect a release).
333 rms: will ask lawyer
334
335
336 Make sure that all files with non-standard copyrights or licenses are
337 noted in this file.
338
339
340 etc/BABYL
341 File says it was written in 1983 by Eugene Ciccarelli, who has no
342 assignment. RMS: "The lawyer said we can keep BABYL."
343
344
345 REMOVED etc/gnu.xpm, nt/icons/emacs21.ico, nt/icons/sink.ico
346 - Restore if find legal info. emacs21.ico is not due to Davenport.
347 Asked Voelker, no answer yet.
348
349 REMOVED etc/orgcard.tex, orgcard.ps
350 Re-add these files if an assignment is received from Rooke.
351
352
353 etc/images
354 Image files from GTK, Gnome are under GPLv2 (no "or later"?). RMS will
355 contact image authors in regards to future switch to v3.
356
357
358 REMOVED src/unexhp9k800.c
359 - we would like to re-add this file if possible. Please let us know
360 if you can clarify its legal status.
361 http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00138.html
362
363
364 *** These are copyright issues still to be addressed:
365
366 NB apart from switching the TUTORIALs to GPL, I think there is nothing
367 here that anyone can work on without further input from rms.
368
369
370 Maybe some relevant comments here?
371 <http://groups.google.com/group/linux.debian.legal/browse_thread/thread/123547ea95437a1f>
372
373
374 etc/gnus-logo.eps, gnus-booklet.ps, gnus-refcard.ps
375 just to be safe, papers are on the way for the "Gnus logo", even
376 though it is very similar to the already-assigned "Emacs logo".
377
378
379 etc/ms-kermit - no copyright, but ms-7bkermit has one
380
381
382 etc/TUTORIAL* (translations)
383 switch to GPL (see english TUTORIAL)
384 rms: "We can leave the TUTORIAL translations alone until their
385 maintainers update them."
386 Can adapt short license text from end of GPL translations at:
387 http://www.gnu.org/licenses/translations.html
388 Only a few sentences around the license notice need changing from
389 previous version.
390 Done: TUTORIAL.eo
391
392 [waiting for legal advice]
393 lib-src/etags.c
394 - was it ok to use Ken Arnold's code as a basis?
395 1984 version of ctags, with no copyright, posted to net.sources:
396 http://groups.google.com/group/net.sources/msg/a21b6c21be12a98d)
397 version of etags.c in emacs-16.56 seems to be derived from this
398 (duplicate typos in comments).
399
400
401 [waiting for legal advice on lwlib/*]
402 lwlib/lwlib-Xaw.c
403 copyright Chuck Thompson; but under GPL, so OK?
404
405 lwlib/lwlib-Xlw.c, lwlib-Xm.c, lwlib-Xm.h, xlwmenu.c
406 copyright lucid and FSF, but under GPL, so OK?
407 FSF copyrights were added in 200x, was that right?
408
409 lwlib/lwlib-int.h, lwlib.h, lwlib-Xaw.h, lwlib-Xlw.h, lwlib-utils.h
410 no copyright. last three trivial?
411 suspect these must have been part of the "Lucid Widget Library",
412 which is under GPL. Can't find an original version of this to check.
413
414 lwlib/Makefile.in
415 "some parts" copyright Lucid, no license
416
417 lwlib/lwlib-utils.c, lwlib.c
418 copyright Lucid, Inc; but under GPL, so OK?
419
420 lwlib/xlwmenu.h, xlwmenuP.h
421 part of 'Lucid Widget Library', but only FSF copyright (when files
422 were first checked into RCS, there were no copyrights). Was it right
423 to add FSF copyright?
424 should we add a 1992 Lucid copyright?
425
426 lwlib/*
427 should we:
428 1) ensure all files that were originally in the "Lucid Widget
429 Library" have 1992 Lucid copyright?
430 2) add or remove FSF copyrights to any files we have made non-trivial
431 changes to since 1992?
432
433
434 [waiting for legal advice]
435 oldXMenu/
436 - should there be any FSF copyrights at all in here? Some were added
437 in 2005, without licence notices. Was this right?
438 Eg don't think copyright.h should have FSF copyright!
439 Should add copyright details for X11R1 to the README file. (see
440 copyright.h). I suggest we remove copyright.h and add the notices
441 directly into the files.
442
443
444 The general issue is, as with some of the Lucid code in lwlib, suppose
445 file foo.c is Copyright (C) 2000 John Smith, and released under the
446 GPL. We check it into Emacs CVS and make non-trivial changes to it.
447 Should we add a FSF copyright or not? Can we add such a notice as soon
448 as we check it check it in to CVS?
449
450
451 [waiting for legal advice]
452 oldXMenu/Makefile.in, Makefile, Imakefile, descrip.mms, insque.c
453 - issues described in mail to rms, 2006/12/17.
454 rms: "I have asked for lawyer's advice about these."
455
456 \f
457 This file is part of GNU Emacs.
458
459 GNU Emacs is free software; you can redistribute it and/or modify
460 it under the terms of the GNU General Public License as published by
461 the Free Software Foundation; either version 2, or (at your option)
462 any later version.
463
464 GNU Emacs is distributed in the hope that it will be useful,
465 but WITHOUT ANY WARRANTY; without even the implied warranty of
466 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
467 GNU General Public License for more details.
468
469 You should have received a copy of the GNU General Public License
470 along with GNU Emacs; see the file COPYING. If not, write to the
471 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
472 Boston, MA 02110-1301, USA.