update COPYRIGHT file to clarify that permissions apply for all files

these changes are the outcome of a long mailing list thread that took
place March 2016, "musl licensing". among minor other issues,
prospective users were not confident that the whole-project MIT
license would grant permission for files to which the COPYRIGHT file
expressed a belief that copyright not apply, if it turned out that
these files were actually subject to copyright.

in accordance with the original intent of applying a permissive
license to the project, which was that license issues not be an
obstacle to use, the text which was causing confusion is removed. no
new claims of copyright are made, but new text is added to clarify
that the grant of permissions applies to all files, and an explicit
grant of permission to use public headers and crt files without
attribution has been made.

this patch was reviewed and approved by all substantial contributors
to the affected files: Bobby Bingham, John Spencer (rofl0r), Nicholas
J. Kain, Rich Felker, Richard Pennington, Stefan Kristiansson, and
Szabolcs Nagy.
This commit is contained in:
Rich Felker 2016-04-28 20:41:45 -04:00
parent 6ed791e768
commit f0a6139933
1 changed files with 23 additions and 14 deletions

View File

@ -115,10 +115,8 @@ licensed under following terms: "Permission to use, copy, modify,
and/or distribute this code for any purpose with or without fee is and/or distribute this code for any purpose with or without fee is
hereby granted. There is no warranty." hereby granted. There is no warranty."
The x86_64 port was written by Nicholas J. Kain. Several files (crt) The x86_64 port was written by Nicholas J. Kain and is licensed under
were released into the public domain; others are licensed under the the standard MIT terms.
standard MIT license terms at the top of this file. See individual
files for their copyright status.
The mips and microblaze ports were originally written by Richard The mips and microblaze ports were originally written by Richard
Pennington for use in the ellcc project. The original code was adapted Pennington for use in the ellcc project. The original code was adapted
@ -140,15 +138,26 @@ can be found in the git version control history of the project. The
omission of copyright and license comments in each file is in the omission of copyright and license comments in each file is in the
interest of source tree size. interest of source tree size.
All public header files (include/* and arch/*/bits/*) should be In addition, permission is hereby granted for all public header files
treated as Public Domain as they intentionally contain no content (include/* and arch/*/bits/*) and crt files intended to be linked into
which can be covered by copyright. Some source modules may fall in applications (crt/*, ldso/dlstart.c, and arch/*/crt_arch.h) to omit
this category as well. If you believe that a file is so trivial that the copyright notice and permission notice otherwise required by the
it should be in the Public Domain, please contact the authors and license, and to use these files without any requirement of
request an explicit statement releasing it from copyright. attribution. These files include substantial contributions from:
The following files are trivial, believed not to be copyrightable in Bobby Bingham
the first place, and hereby explicitly released to the Public Domain: John Spencer
Nicholas J. Kain
Rich Felker
Richard Pennington
Stefan Kristiansson
Szabolcs Nagy
All public headers: include/*, arch/*/bits/* all of whom have explicitly granted such permission.
Startup files: crt/*
This file previously contained text expressing a belief that most of
the files covered by the above exception were sufficiently trivial not
to be subject to copyright, resulting in confusion over whether it
negated the permissions granted in the license. In the spirit of
permissive licensing, and of not having licensing issues being an
obstacle to adoption, that text has been removed.