Changeset - 0f2818563588
[Not reviewed]
0 1 0
Bradley Kuhn (bkuhn) - 10 years ago 2014-10-15 23:03:50
bkuhn@ebb.org
Wordsmith this sentence fragment a bit.
1 file changed with 1 insertions and 1 deletions:
0 comments (0 inline, 0 general)
compliance-guide.tex
Show inline comments
...
 
@@ -103,97 +103,97 @@ when a violation occurs.
 

	
 
\chapter{Best Practices to Avoid Common Violations}
 
\label{best-practices}
 

	
 
Unlike highly permissive licenses (such as the ISC license), which
 
typically only require preservation of copyright notices, licensees face many
 
important requirements from the GPL.  These requirements are
 
carefully designed to uphold certain values and standards of the software
 
freedom community.  While the GPL's requirements may initially appear
 
counter-intuitive to those more familiar with proprietary software
 
licenses, by comparison, its terms are in fact clear and quite favorable to
 
licensees.  Indeed, the GPL's terms actually simplify compliance when
 
violations occur.
 

	
 
GPL violations occur (or, are compounded) most often when companies lack sound
 
practices for the incorporation of GPL'd components into their
 
internal development environment.  This section introduces some best
 
practices for software tool selection, integration and distribution,
 
inspired by and congruent with software freedom methodologies.  Companies should
 
establish such practices before building a product based on GPL'd
 
software.\footnote{This document addresses compliance with GPLv2,
 
  GPLv3, LGPLv2, and LGPLv3.  Advice on avoiding the most common
 
  errors differs little for compliance with these four licenses.
 
  \S~\ref{lgpl} discusses the key differences between GPL and LGPL
 
  compliance.}
 

	
 
\section{Evaluate License Applicability}
 
\label{derivative-works}
 
Political discussion about the GPL often centers around the ``copyleft''
 
requirements of the license.  Indeed, the license was designed primarily
 
to embody this licensing feature.  Most companies adding non-trivial
 
features (beyond mere porting and bug-fixing) to GPL'd software (and
 
thereby invoking these requirements) are already well aware of their
 
more complex obligations under the license.\footnote{There has been much legal
 
  discussion regarding copyleft and derivative works.  In practical
 
  reality, this issue is not relevant to the vast majority of companies
 
  distributing GPL'd software.  Those interested in this issue should study
 
  \tutorialpartsplit{\textit{Detailed Analysis of the GNU GPL and Related
 
      Licenses}'s Section on derivative works}{\S~\ref{derivative-works} of
 
    this tutorial}.}
 

	
 
However, experienced  GPL enforcers find that few redistributors'
 
compliance challenges relate directly to combined work issues in copyleft.
 
Instead, the distributions of GPL'd
 
systems most often encountered typically consist of a full operating system
 
including components under the GPL (e.g., Linux, BusyBox) and components
 
under the LGPL (e.g., the GNU C Library).  Sometimes, these programs have
 
been patched or slightly improved by direct modification of their sources,
 
resulting unequivocally in a derivative work.  Alongside these programs,
 
and thus the result is unequivocally a derivative work.  Alongside these programs,
 
companies often distribute fully independent, proprietary programs,
 
developed from scratch, which are designed to run on the Free Software operating
 
system but do not combine with, link to, modify, derive from, or otherwise
 
create a combined work with
 
the GPL'd components.\footnote{However, these programs do often combine
 
  with LGPL'd libraries. This is discussed in detail in \S~\ref{lgpl}.}
 
In the latter case, where the work is unquestionably a separate work of
 
creative expression, no copyleft provisions are invoked.
 
The core compliance issue faced, thus, in such a situation, is not an discussion of what is or is not a
 
combined or derivative work, but rather, issues related to distribution and
 
conveyance of binary works based on GPL'd source, but without Complete,
 
Corresponding Source.  This tutorial therefore focuses primarily on that issue.
 

	
 
Admittedly, a tiny
 
minority of compliance situations relate to question of derivative and
 
combined words.  Those
 
situations are so rare, and the details from situation to situation differ
 
greatly.  Thus, such situations require a highly
 
fact-dependent analysis and cannot be addressed in a general-purpose
 
document such as this one.
 

	
 
\medskip
 

	
 
Most companies accused of violations lack a basic understanding
 
of how to comply even in the straightforward scenario.  This document
 
provides those companies with the fundamental and generally applicable prerequisite knowledge.
 
For answers to rarer and more complicated legal questions, such as whether
 
your software is a derivative or combined work of some copylefted software, consult
 
with an attorney.\footnote{If you would like more information on the
 
  application of derivative works doctrine to software, a detailed legal
 
  discussion is presented in our colleague Dan Ravicher's article,
 
  \textit{Software Derivative Work: A Circuit Dependent Determination} and in
 
  \tutorialpartsplit{\textit{Detailed Analysis of the GNU GPL and Related
 
      Licenses}'s Section on derivative works}{\S~\ref{derivative-works} of
 
    this tutorial}.}
 

	
 
This discussion thus assumes that you have already identified the
 
``work'' covered by the license, and that any components not under the GPL
 
(e.g., applications written entirely by your developers that merely happen
 
to run on a Linux-based operating system) distributed in conjunction with
 
those works are separate works within the meaning of copyright law and the GPL\@.  In
 
such a case, the GPL requires you to provide complete corresponding
 
source (CCS)\footnote{For more on CCS,  see
 
\tutorialpartsplit{\textit{Detailed Analysis of the GNU GPL and Related
 
      Licenses}'s Section on GPLv2~\S2 and GPLv3~\S1.}{\S~\ref{GPLv2s2} and \S~\ref{GPLv3s1} of
 
    this tutorial}.}
 
for the GPL'd components and your modifications thereto, but not
 
for independent proprietary applications.  The procedures described in
0 comments (0 inline, 0 general)