Copyright (C) 2007 Free Software Foundation, Inc. See the end of the file for license conditions. NOTES ON COPYRIGHTS AND LICENSES Some terminology: A "copyright notice" consists of one or a few lines of this format: "Copyright (C) 2006, 2007 Free Software Foundation, Inc." A "license notice" is a statement of permissions, and is usually much longer, eg the text "GNU Emacs is free software...". Summary for the impatient: 1. Don't add a file to Emacs written by someone other than yourself without thinking about the legal aspect (make sure they have an assignment, adjust the copyright statements in the file). 2. With images, add the legal info to a README file in the directory containing the image. 3. If you add a lot of text to a previously trivial file that had no legal notices, consider if you should add a copyright statement. Every non-trivial file distributed through the Emacs CVS should be self-explanatory in terms of copyright and license. This includes files that are not distributed in Emacs releases (for example, the admin/ directory), because the whole Emacs CVS is publicly available. The definition of triviality is a little vague, but a rule of thumb is that any file with less than 15 lines of actual content is trivial. If a file is auto-generated (eg ldefs-boot.el) from another one in the CVS, then it does not really matter about adding a copyright statement to the generated file. However, here is a quote from Matt Norwood (Software Freedom Law Center) that suggests we should revise the above policy about trivial files: If FSF has a strong policy reason notices off of files it considers "trivial", this will take a lot more bookkeeping; it also runs the risk of these "trivial" files later growing into non-trivial files, and being in the tree without any record of authorship. All in all, I think it's a better policy to attach the notice and let future authors decide if something is trivial when they want to reuse it elsewhere. [...] In general, copyright law will step back and look at the overall "work" consisting of all the assembled components working together as a system; it will apply protection and permissions to this system, not to its subcomponents. If parts of it are recombined into another system, it will consider the protections and permissions for each of the source components only in order to assess the overall status of the work again. The assessment of whether a set of components is entitled to copyright protection is the degree to which they display "creativity": not as atomic units, but as parts of a system working in concert. Thus, several "trivial" components working together in some coherent system might be protectible. RMS feels, though, that in trivial files (eg etc/FTP), having a license notice looks odd. Matt Norwood has confirmed it is not _necessary_ to have licenses in such files, so we are sticking with the policy of no licenses in "trivial" files. NB consequently, if you add a lot of text to a small file, consider whether your changes have made the file worthy of a copyright notice, and if so, please add one. The years in the copyright notice should be updated every year (see file "years" in this directory). The PS versions of refcards etc should display copyright notices (an exception to the rule about "generated" files), but these can just display the latest year. The full list of years should be kept in comments in the source file. If these are distributed in CVS, check in a regenerated version when the tex files are updated. Copyright changes should be propagated to any associated repositories (eg Gnus, MH-E), but I think in every case this happens automatically (?). All README (and other such text files) that are non-trivial should contain copyright statements and GPL license notices, exactly as .el files do (see e.g. README in the top-level directory). Before 2007, we used a simple, short statement permitting copying and modification provided legal notices were retained. In Feb 2007 we switched to the standard GPL text, on legal advice. Some older text files in etc/ should, however, keep their current licenses (see below for list). For image files, the copyright and license details should be recorded in a README file in each directory with images. (Legal advice says that we need not add notices to each image file individually, if they allow for that.). It is recommended to use the word "convert" to describe the automatic process of changing an image from one format to another (http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00618.html). When installing a file with an "unusual" license (after checking first it is ok), put a copy of the copyright and license in the file (if possible. It's ok if this makes the file incompatible with its original format, if it can still be used by Emacs), or in a README file in the relevant directory. The vast majority of files are copyright FSF and distributed under the GPL. A few files (mainly related to language and charset support) are copyright AIST alone, or both AIST and FSF. (Contact Kenichi Handa with questions about legal issues in such files.) In all these cases, the copyright years in each file should be updated each year. There are some exceptions to the points in the previous paragraph, and these are listed below for reference, together with any files where the copyright needs to be updated in "unusual" ways. If you find any other such cases, please consult to check they are ok, and note them in this file. This includes missing copyright notices, and "odd" copyright holders. In most cases, individual authors should not appear in copyright statements. Either the copyright has been assigned (check copyright.list) to the FSF (in which case the original author should be removed and the year(s) transferred to the FSF); or else it is possible the file should not be in Emacs at all (please report!). Note that it seems painfully clear that one cannot rely on CVS logs, or even ChangeLogs, for older changes. People often installed changes from others, without recording the true authorship. [For reference, most of these points were established via email with rms, 2007/1, "Copyright years".] lib-src/etags.c # print_version lib-src/rcs2log # Copyright lisp/calc/calc-help.el # calc-full-help lisp/startup.el # fancy-splash-tail mac/Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings mac/src/Emacs.r # resource 'vers' src/emacs.c - remember to change the latest copyright year in the --version output. [Post-release, will automate this like set-version does for version.] /install-sh lispintro/install-sh - this file is copyright MIT, which is OK. Leave the copyright alone. admin/check-doc-strings src/m/news-r6.h public domain, leave alone. etc/edt-user.doc - update BOTH notices in this file etc/letter.pbm,letter.xpm - trivial, no notice needed. etc/FTP, ORDERS - trivial (at time of writing), no license needed etc/GNU, INTERVIEW, LINUX-GNU, MOTIVATION, SERVICE, THE-GNU-PROJECT, WHY-FREE rms: "These are statements of opinion or testimony. Their licenses should permit verbatim copying only. Please don't change the licenses that they have. They are distributed with Emacs but they are not part of Emacs." etc/MAILINGLISTS rms: simple license is fine for this file etc/images/icons/* nt/icons/emacs21.ico src/gnu.h Note that Andrew Zhilin has a copyright assignment on file (confirmed by fsf-records), even though it doesn't seem to show up in copyright.list for some reason (at time of writing, 2007/02). http://lists.gnu.org/archive/html/emacs-devel/2005-11/msg00349.html leim/CXTERM-DIC/4Corner.tit, ARRAY30.tit, CCDOSPY.tit, ECDICT.tit, ETZY.tit, PY-b5.tit, Punct-b5.tit, Punct.tit, QJ-b5.tit, QJ.tit, SW.tit, TONEPY.tit, ZOZY.tit - leave the copyrights alone. leim/MISC-DIC/CTLau-b5.html, CTLau.html, cangjie-table.b5, cangjie-table.cns, pinyin.map, ziranma.cin - leave the copyright alone. leim/SKK-DIC/SKK-JISYO.L ja-dic/ja-dic.el (the latter is auto-generated from the former). Leave the copyright alone. lib-src/etags.c - this has a copyright Ken Arnold. We are still deciding what should be done here (see below). lib-src/getopt1.c, getopt_int.h - these are from the GNU C library. Leave the copyrights alone. lisp/play/tetris.el - no special rules about the copyright. We note here that we believe (2007/1) there is no problem with our use of the name "tetris" or the concept. rms: "My understanding is that game rules as such are not copyrightable." lispref/doclicense.texi man/doclicense.texi - leave the copyright alone in this imported file. lisp/net/tramp.el - there are also copyrights in the body of the file. Update these too. msdos/is_exec.c, sigaction.c - these files are copyright DJ Delorie. Leave the copyrights alone. Leave the Eli Zaretskii copyright in is_exec.c alone. See the msdos/README file for the legal history of these files. src/gmalloc.c - contains numerous copyrights from the GNU C library. Leave them alone. src/acldef.h, chpdef.h, ndir.h - see comments below. These files are OK to be released with Emacs 22, but we may want to revisit them afterwards. [src/unexhp9k800.c - removed 2007/1/27] [src/m/sr2k.h - removed 2007/1/27] - First file removed due to legal uncertainties; second file removed due to dependency on first. Note that src/m/hp800.h is still needed on hp800 arch. NB we would like to re-add this file if we can. Please let us know if you can clarify its legal status. ** Some notes on resolved issues, for historical information only lisp/term/README - had no copyright notice till Feb 2007. ChangeLog.3 suggests it was written by Eric Raymond. When asked by rms on 14 Feb 2007 he said: I don't remember writing it, but it reads like my prose and I believe I wrote the feature(s) it's describing. So I would have been the likeliest person to write it. Odds are that I did, but I'm not certain. Accordingly, FSF copyright was added. ** Issues that are "fixed" for the release of Emacs 22, but we may wish to revisit later in more detail src/acldef.h, chpdef.h, ndir.h On legal advice from Matt Norwood, the following comment was added to these files in Feb 2007: The code here is forced by the interface, and is not subject to copyright, constituting the only possible expression of the algorithm in this format. With the addition of this notice, these files are OK for the upcoming Emacs-22 release. Post-release, we can revisit this issue and possibly add a list of all authors who have changed these files. (details in email from Matt Norwood to rms, 2007/02/03). src/m/mips4.h, news-risc.h, pmax.h src/s/aix3-2.h, bsd386.h, hpux8.h, hpux9.h, irix4-0.h, irix5-0.h, isc2-2.h, netbsd.h, osf1.h, sol2-3.h, sunos4-0.h, usg5-4-2.h - all these (not obviously trivial) files were missing copyrights till Feb 2007, when FSF copyright was added. Matt Norwood advised: For now, I think the best policy is to assume that we do have assignments from the authors (I recall many of these header files as having been originally written by rms), and to attach an FSF copyright with GPL notice. We can amend this if and when we complete the code audit. Any additions to these files by non-assigned authors are arguably "de minimis" contributions to Emacs: small changes or suggestions to a work that are subsumed in the main authors' copyright in the entire work. Here is my (rgm) take on the details of the above files: mips4.h might be trivial? started trivial, been added to in tiny changes by those with FSF assignment, often result of email suggestions by others. news-risc.h started trivial. Grown by tiny additions, plus chunk from mips.h, which was and is Copyright FSF pmax.h started trivial. grown in tiny changes, except for maybe Jim Wilson's comment. ? irix4-0.h I would say started non-trivial (1992, rms). only tiny changes since installed. ? irix5-0.h I would say started non-trivial (1993, jimb, heavily based on irix4-0.h). A few borderline non-tiny changes since. ? isc2-2.h started trivial. 2 non-tiny change, in 1993. looks to be made up of several small tweaks from various sources. maybe non-tiny total changes from Karl Berry (no emacs assignment). osf1.h started trivial. grown in tiny changes (one borderline tiny change by fx in 2000, but most code was later removed). non-tiny addition in 2002 from m/alpha.h, but that was and is copyright FSF. usg5-4-2.h started non-trivial, but was heavily based on usg5-4.h, which was and is copyright FSF. only tiny changes since installed. sol2-3.h started trivial. only non-tiny change (1994) incorporated code from usg5-4.h, which was and is copyright FSF. aix3-2.h, bsd386.h, hpux8.h, hpux9.h, netbsd.h, sunos4-0.h started trivial, grown in tiny changes. Someone might want to tweak the copyright years (for dates before 2001) that I used in all these files. Note: erring on the side of caution, I also added notices to some files I thought might be considered non-trivial (if one includes comment) in s/: aix4-1.h hiuxmpp.h hiuxwe2.h hpux10.h irix6-0.h irix6-5.h isc3-0.h ptx4.h sol2.h sunos4-0.h (everything with > 30 non-blank lines, which at least is _some_ kind of system) *** These are copyright issues that need not be fixed until after Emacs 22 is released (though if they can be fixed before, that is obviously good): Is it OK to just `cvs remove' a file for legal reasons, or is something more drastic needed? A removed file is still available from CVS, if suitable options are applied. (This CVS issue obviously does not affect a release). rms: will ask lawyer Make sure that all files with non-standard copyrights or licenses are noted in this file. etc/BABYL File says it was written in 1983 by Eugene Ciccarelli, who has no assignment. RMS: "The lawyer said we can keep BABYL." REMOVED etc/orgcard.tex, orgcard.ps Re-add these files if an assignment is received from Rooke. etc/images Image files from GTK, Gnome are under GPLv2 (no "or later"?). RMS will contact image authors in regards to future switch to v3. REMOVED src/unexhp9k800.c - we would like to re-add this file if possible. Please let us know if you can clarify its legal status. http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00138.html *** These are copyright issues still to be addressed: NB apart from switching the TUTORIALs to GPL, I think there is nothing here that anyone can work on without further input from rms. Maybe some relevant comments here? etc/gnus-logo.eps, gnus-booklet.ps, gnus-refcard.ps just to be safe, papers are on the way for the "Gnus logo", even though it is very similar to the already-assigned "Emacs logo". etc/emacs.csh does rms want simple license restored for this? etc/ms-kermit - no copyright, but ms-7bkermit has one etc/e/eterm-color.ti - no copyright rms: "I think that is not copyrightable under the merger doctrine because the entries are all forced. At least that is the case in the US; I am not sure whether we can rely on that in general." etc/TUTORIAL* (translations) switch to GPL (see english TUTORIAL) rms: "We can leave the TUTORIAL translations alone until their maintainers update them." lib-src/etags.c - no 'k.* arnold' in copyright.list' rms: "That is ok, in principle. I used free code released by Ken Arnold as the starting point. However, it may be that we need to get and insert whatever his license was for his code." under GPL, so OK? - 1984 version of ctags, with no copyright, posted to net.sources: http://groups.google.com/group/net.sources/msg/a21b6c21be12a98d lwlib/lwlib-Xaw.c copyright Chuck Thompson; but under GPL, so OK? lwlib/lwlib-Xlw.c, lwlib-Xm.c, lwlib-Xm.h, xlwmenu.c copyright lucid and FSF, but under GPL, so OK? FSF copyrights were added in 200x, was that right? lwlib/lwlib-int.h, lwlib.h, lwlib-Xaw.h, lwlib-Xlw.h, lwlib-utils.h no copyright. last three trivial? suspect these must have been part of the "Lucid Widget Library", which is under GPL. Can't find an original version of this to check. lwlib/Makefile.in "some parts" copyright Lucid, no license lwlib/lwlib-utils.c, lwlib.c copyright Lucid, Inc; but under GPL, so OK? lwlib/xlwmenu.h, xlwmenuP.h part of 'Lucid Widget Library', but only FSF copyright (when files were first checked into RCS, there were no copyrights). Was it right to add FSF copyright? should we add a 1992 Lucid copyright? lwlib/* should we: 1) ensure all files that were originally in the "Lucid Widget Library" have 1992 Lucid copyright? 2) add or remove FSF copyrights to any files we have made non-trivial changes to since 1992? oldXMenu/ - should there be any FSF copyrights at all in here? Some were added in 2005, without licence notices. Was this right? Eg don't think copyright.h should have FSF copyright! Should add copyright details for X11R1 to the README file. (see copyright.h). I suggest we remove copyright.h and add the notices directly into the files. The general issue is, as with some of the Lucid code in lwlib, suppose file foo.c is Copyright (C) 2000 John Smith, and released under the GPL. We check it into Emacs CVS and make non-trivial changes to it. Should we add a FSF copyright or not? Can we add such a notice as soon as we check it check it in to CVS? oldXMenu/Makefile.in, Makefile, Imakefile, descrip.mms, insque.c - issues described in mail to rms, 2006/12/17. rms: "I have asked for lawyer's advice about these." This file is part of GNU Emacs. GNU Emacs is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.