@@ -228,29 +228,30 @@ Such a situation often requires use of a tool to ``catch up'' your knowledge
about what software your product includes. Most commonly, companies choose
some software licensing scanning tool to inspect the codebase. However,
there are few tools that are themselves Free Software. Thus, GPL enforcers
usually recommend the GPL'd
\href{http://fossology.org/}{Fossology system}, which analyzes a
source code base and produces a list of Free Software licenses that may apply to
the code. Fossology can help you build a catalog of the sources you have
already used to build your product. You can then expand that into a more
structured inventory and process.
\section{Track Your Changes and Releases}
As we will explain in further detail below, the most important component
to maintaining GPL compliance is inclusion of the complete and
corresponding source code in any distributions that you make of GPL'd
software. Knowing at all times what sources generated a given binary
distribution is paramount.
As explained in further detail below, the most important component of GPL
compliance is the one most often ignored: proper inclusion of CCS in all
distributions of GPL'd
software. To comply with GPL's CCS requirements, the distributor
\textit{must} always know precisely what sources generated a given binary
distribution.
In an unfortunately large number of our enforcement cases, the violating
company's engineering team had difficulty reconstructing the precise
sources for a given binary distributed by the company. Ensure that your
developers are using revision control systems properly. Have them mark or
tag the full source tree corresponding to builds distributed to customers.
Finally, check that your developers store all parts of the software
development in the revision control system, including {\sc readme}s, build
scripts, engineers' notes, and documentation. Your developers will also
benefit from a system that tracks the precise version of source that
corresponds to any deployed binary.