emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Simpler rules for copyright notices


From: Richard M. Stallman
Subject: Simpler rules for copyright notices
Date: Wed, 07 Dec 2005 17:58:24 -0500

After more discussions with Eben Moglen, we finalized the new
rules for years in copyright notices.  They are pretty simple.


@node Copyright Notices
@section Copyright Notices
@cindex copyright notices in program files

You should maintain a proper copyright notice and a license
notice in each nontrivial file in the package.  (Any file more than ten
lines long is nontrivial for this purpose.)  This includes header files
and interface definitions for
building or running the program, documentation files, and any supporting
files.  If a file has been explicitly placed in the public domain, then
instead of a copyright notice, it should have a notice saying explicitly
that it is in the public domain.

Even image files and sound files should contain copyright notices and
license notices, if they can.  Some formats do not have room for textual
annotations; for these files, state the copyright and copying
permissions in a README file in the same directory.

Change log files should have a copyright notice and license notice at
the end, since new material is added at the beginning but the end
remains the end.

When a file is automatically generated from some other file in the
distribution, it is useful for the automatic procedure to copy the
copyright notice and permission notice of the file it is generated
from, if possible.  Alternatively, put a notice at the beginning saying
which file it is generated from.

A copyright notice looks like this:

@example
Copyright (C) @var{year1}, @var{year2}, @var{year3}  @var{copyright-holder}
@end example

The @var{copyright-holder} may be the Free Software Foundation, Inc., or
someone else; you should know who is the copyright holder for your
package.

Replace the @samp{(C)} with a C-in-a-circle symbol if it is available.
For example, use @samp{@@address@hidden@}} in a Texinfo file.  However,
stick with parenthesized @samp{C} unless you know that C-in-a-circle
will work.  For example, a program's standard @option{--version}
message should use parenthesized @samp{C} by default, though message
translations may use C-in-a-circle in locales where that symbol is
known to work.

To update the list of year numbers, add each year in which you change
the package.  (Here we assume you're using a publicly accessible
revision control server, so that every revision installed is also
immediately and automatically published.)

Don't delete old year numbers, though; they can indicate when older
versions might theoretically go into the public domain.  If you copy a
file into the package from some other program, keep the copyright
years that come with the file.

Do not abbreviate the year list using a range; for instance, do not
write @samp{1996--1998}; instead, write @samp{1996, 1997, 1998}.

For an FSF-copyrighted package, if you have followed the procedures to
obtain legal papers, each file should have just one copyright holder:
the Free Software Foundation, Inc.  You should edit the file's
copyright notice to list that name and only that name.

But if contributors are not all assigning their copyrights to a single
copyright holder, it can easily happen that one file has several
copyright holders.  Each contributor of nontrivial text is a copyright
holder.

In that case, you should always include a copyright notice in the name
of main copyright holder of the file.  You can also include copyright
notices for other copyright holders as well, and this is a good idea
for those who have contributed a large amount and for those who
specifically ask for notices in their names.  (Sometimes the license
on code that you copy in may require preserving certain copyright
notices.)  But you don't have to include a notice for everyone who
contributed to the file (which would be rather inconvenient).

Sometimes a program has an overall copyright notice that refers to the
whole program.  It might be in the @file{README} file, or it might be
displayed when the program starts up.  This copyright notice should
mention the year of completion of the most recent major version; it
can mention years of completion of previous major versions, but that
is optional.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]