2003-11-10 20:14:51 +00:00
|
|
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<!--
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-20 11:32:09 +00:00
|
|
|
The version history of this document, along with the comments are at the
|
|
|
|
end of the file. Last modification history is ...
|
|
|
|
|
|
|
|
$Id$
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
-->
|
|
|
|
|
|
|
|
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
|
2003-11-11 16:45:35 +00:00
|
|
|
"/usr/share/sgml/docbook/xml-dtd-4.1.2/docbookx.dtd" [
|
|
|
|
|
2003-11-20 10:39:14 +00:00
|
|
|
<!ENTITY make "<command>make</command>">
|
|
|
|
<!ENTITY autoconf "<command>autoconf</command>">
|
|
|
|
<!ENTITY automake "<command>automake</command>">
|
|
|
|
<!ENTITY libtool "<command>libtool</command>">
|
|
|
|
<!ENTITY libtoolize "<command>libtoolize</command>">
|
|
|
|
<!ENTITY configure "<command>configure</command>">
|
2003-11-11 16:45:35 +00:00
|
|
|
|
2003-11-20 10:39:14 +00:00
|
|
|
<!ENTITY makefile "<filename>Makefile</filename>">
|
|
|
|
<!ENTITY makefile_in "<filename>Makefile.in</filename>">
|
|
|
|
<!ENTITY makefile_am "<filename>Makefile.am</filename>">
|
|
|
|
<!ENTITY configure_in "<filename>confgure.in</filename>">
|
2003-11-11 16:45:35 +00:00
|
|
|
|
|
|
|
]>
|
2003-11-10 20:14:51 +00:00
|
|
|
|
|
|
|
<article>
|
|
|
|
|
|
|
|
<articleinfo>
|
|
|
|
|
|
|
|
<!-- Use "HOWTO", "mini HOWTO", "FAQ" in title, if appropriate -->
|
|
|
|
<title>GNU-Build-System HOWTO</title>
|
|
|
|
<titleabbrev>GBS-HOWTO</titleabbrev>
|
|
|
|
|
|
|
|
<author>
|
|
|
|
<firstname>Giridhar</firstname>
|
|
|
|
<othername>Appaji Nag</othername>
|
|
|
|
<surname>Y</surname>
|
|
|
|
<affiliation>
|
|
|
|
<address>
|
|
|
|
<email>yganag{at}users{dot}sf{dot}net</email>
|
|
|
|
</address>
|
|
|
|
</affiliation>
|
|
|
|
</author>
|
|
|
|
|
2003-11-20 10:39:14 +00:00
|
|
|
<author>
|
|
|
|
<firstname>Mark</firstname>
|
|
|
|
<othername></othername>
|
|
|
|
<surname>Hoebeke</surname>
|
|
|
|
<affiliation>
|
|
|
|
<address>
|
|
|
|
<email>mark{dot}hoebeke{at}orange{dot}fr</email>
|
|
|
|
</address>
|
|
|
|
</affiliation>
|
|
|
|
</author>
|
2003-11-10 20:14:51 +00:00
|
|
|
|
|
|
|
<!-- All dates specified in ISO "YYYY-MM-DD" format -->
|
|
|
|
<pubdate>None Yet!</pubdate>
|
|
|
|
|
|
|
|
<!-- Most recent revision goes at the top; list in descending order -->
|
|
|
|
<revhistory>
|
2003-11-20 11:32:09 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<revision>
|
2003-11-20 11:32:09 +00:00
|
|
|
<revnumber>0.1</revnumber>
|
|
|
|
<date>2003-11-05</date>
|
|
|
|
<authorinitials>mh</authorinitials>
|
|
|
|
<revremark>first formatting of consensus TOC</revremark>
|
2003-11-10 20:14:51 +00:00
|
|
|
</revision>
|
2003-11-20 11:32:09 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</revhistory>
|
|
|
|
|
|
|
|
<!-- Provide a good abstract; a couple of sentences is sufficient -->
|
|
|
|
<abstract>
|
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
This HOWTO aims to help beginning developers to leverage the
|
|
|
|
power the the GNU Build System (GBS); The GBS is composed of
|
|
|
|
well-known tools such as &make; and of less-used utilities
|
|
|
|
such as &autoconf;, &automake; or &libtool;. The primary goal
|
|
|
|
of the HOWTO is to ring developers up to speed with each of
|
|
|
|
these tools, and, at another level to explain some of their
|
|
|
|
inner workings.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 11:32:09 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Document last updated $Date$.
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</abstract>
|
|
|
|
|
|
|
|
</articleinfo>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Content follows...include introduction, license information, feedback -->
|
|
|
|
|
|
|
|
<sect1 id="intro">
|
|
|
|
<title>Introduction</title>
|
|
|
|
|
2003-11-11 16:45:35 +00:00
|
|
|
<sect2 id="overview">
|
|
|
|
<title>The GBS-HOWTO at a glance</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
The GNU Build System encompasses a vast number of components
|
|
|
|
assisting the developer in every stage of the
|
|
|
|
compile/configure/distribute process. Projects using the whole
|
|
|
|
suite of the GBS are recognizable by the ease with which they
|
|
|
|
are installed. Basically the ubiquitous "<command>./configure &&
|
|
|
|
make && make install</command>" triplet does the trick. This
|
|
|
|
HOWTO aims to take the reader step by step through the stages
|
|
|
|
turning a set of source files into a "project" conforming to
|
|
|
|
this GBS mantra. To be able to follow the explanations given in
|
|
|
|
this HOWTO, the reader is expected to be familiar with the
|
|
|
|
basics of using a compiler to build executables from source
|
|
|
|
files.
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
A first part of this HOWTO (<xref linkend="using"/>) will work
|
|
|
|
through each of these components in turn using a toy example.
|
|
|
|
This will acquaint the reader with the basic usage patterns of
|
|
|
|
building &makefile;s to automate most if not all of a project's
|
|
|
|
source code compilation thanks to the &make; command. This will
|
|
|
|
also highlight the need to rely on other tools to ensure that
|
|
|
|
compilation will perform correctly on most flavors of Unix
|
|
|
|
(including Linux of course). Hence, the first step is to let
|
|
|
|
Autoconf take care of platform-specific parameters by building
|
|
|
|
an appropriate &configure; script by the &autoconf; command.
|
|
|
|
We'll also transform our &makefile; into a &makefile_in; which
|
|
|
|
abstracts away the platform related compilation issues. Though
|
|
|
|
greatly automated, this step still requires some tweaking, but
|
|
|
|
that's what this HOWTO's been made for after all. The final step
|
|
|
|
to build a well-behaved and distributable software project is to
|
|
|
|
supply &make; with a set of standard targets and to use a set of
|
|
|
|
thoroughly tested recipes to build them. This is where
|
|
|
|
&automake; comes into play. Starting from a high-level
|
|
|
|
description of the project's components (source files, binaries
|
|
|
|
to be built, documentation, additional data files) found in a
|
|
|
|
&makefile_am;, &automake; is capable of generating a suitable
|
|
|
|
&makefile_in;. So that's it? Now we've got our GBS compliant
|
|
|
|
project architecture, isn't it? Indeed, but our toolkit would be
|
|
|
|
incomplete if we omitted to mention &libtool;. This last
|
|
|
|
component favours the use of program libraries (sets of related
|
|
|
|
object files grouped into a single archive). These libraries can
|
|
|
|
the be used by all executables of a project, and in some cases,
|
|
|
|
without being copied in every single executable. Ways of
|
|
|
|
building these libraries vary much from platform to platform,
|
|
|
|
but luckily, &libtool; now greatly simplifies this process,
|
|
|
|
lifting this burden from the programmer.
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
After this entry-level guided tour, a real world programming
|
|
|
|
project will be subjected to the whole slew of procedures just
|
|
|
|
described (<xref linkend="realworld"/>). There's no such thing
|
|
|
|
as a real world example to expose some of the hurdles that
|
|
|
|
inevitably show up when things get a bit more complex.
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
To the survivors of the former section, we recommend the more
|
|
|
|
in-depth look at the inner workings of all the GBS components
|
|
|
|
provided in <xref linkend="inside"/>. Just for starters, it
|
|
|
|
describes the innards of the &make; before covering a rather
|
|
|
|
ill-known macro programming language, <command>m4</command> upon
|
|
|
|
which several of the GBS tools are built. It then scrutinises
|
|
|
|
&autoconf;, &automake; and &libtool; to explain their what's and
|
|
|
|
how's.
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
The last section of the HOWTO covers the installation of the GBS
|
|
|
|
components, either from pre-packaged files specific to Linux
|
|
|
|
distributions, or from source <filename>.tar.gz</filename>
|
|
|
|
archives (also called <emphasis>tarballs</emphasis>).
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2003-11-11 16:45:35 +00:00
|
|
|
</sect2>
|
2003-11-10 20:14:51 +00:00
|
|
|
|
|
|
|
<sect2 id="about">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>About this HOWTO</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>About this HOWTO.</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="getting">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Keeping up to date</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-20 11:32:09 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
New versions of this document that are released would be
|
|
|
|
available from The LDP website and its mirrors. Since a few
|
|
|
|
mirrors are broken or not up-to-date, it is highly recommended
|
|
|
|
that the latest released version be accessed from <ulink
|
|
|
|
url="http://www.tldp.org/HOWTO/GNU-Build-System-HOWTO/">
|
|
|
|
http://www.tldp.org/HOWTO/GNU-Build-System-HOWTO/</ulink>. The
|
|
|
|
latest in-progress version of this document is available at
|
|
|
|
the <ulink
|
|
|
|
url="http://www.pratapgarh.com/appaji/interests/freedom-sw/gbsh.html">
|
|
|
|
GNU-Build-System HOWTO home page</ulink>.
|
|
|
|
|
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<!-- Legal Sections -->
|
|
|
|
<sect2 id="copyright">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-20 11:32:09 +00:00
|
|
|
<title>Copyright and license</title>
|
2003-11-10 20:14:51 +00:00
|
|
|
|
|
|
|
<!-- The LDP recommends, but doesn't require, the GFDL -->
|
|
|
|
<para>
|
|
|
|
|
2003-11-20 10:39:14 +00:00
|
|
|
This document, the <emphasis>GNU-Build-System HOWTO</emphasis>, is
|
2003-11-20 11:32:09 +00:00
|
|
|
Copyright © 2003, <emphasis>Mark Hoebeke</emphasis> and
|
|
|
|
<emphasis>Y Giridhar Appaji Nag</emphasis>, and is distributed
|
|
|
|
under the terms of the <citetitle>GNU General Public
|
|
|
|
License</citetitle>. The word <emphasis>program</emphasis> in the
|
|
|
|
license is to be interpreted as <emphasis>document</emphasis>.
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
|
|
modify it under the terms of the <link linkend="gpl">
|
|
|
|
<citetitle>GNU General Public License</citetitle></link> as
|
|
|
|
published by the Free Software Foundation; either version 2 of the
|
|
|
|
License, or (at your option) any later version. A copy of the
|
2003-11-20 10:39:14 +00:00
|
|
|
license is available at <ulink
|
|
|
|
url="http://www.gnu.org/licenses/gpl.txt">
|
|
|
|
http://www.gnu.org/licenses/gpl.txt</ulink> and can be found in
|
|
|
|
<xref linkend="gpl"/>.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-20 11:32:09 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
|
|
along with this program; if not, write to the Free Software
|
|
|
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
|
|
|
02111-1307 USA
|
|
|
|
|
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="disclaimer">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Disclaimer</title>
|
|
|
|
|
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-20 11:32:09 +00:00
|
|
|
This program 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.
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
All copyrights are held by their by their respective owners,
|
|
|
|
unless specifically noted otherwise. Use of a term in this
|
|
|
|
document should not be regarded as affecting the validity of any
|
|
|
|
trademark or service mark. Naming of particular products or
|
|
|
|
brands should not be seen as endorsements.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<!-- Give credit where credit is due...very important -->
|
|
|
|
<sect2 id="credits">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Credits / Contributors</title>
|
|
|
|
|
2003-11-20 10:39:14 +00:00
|
|
|
<para>In this document, I have the pleasure of acknowledging:
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Please scramble addresses; help prevent spam/email harvesting -->
|
|
|
|
<!--
|
|
|
|
<itemizedlist>
|
|
|
|
<listitem>
|
|
|
|
<para>Individual 1 <email>someone1 (at) somewhere.org</email></para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>Individual 2 <email>someone2 (at) somewhere.org</email></para>
|
|
|
|
</listitem>
|
|
|
|
</itemizedlist>
|
|
|
|
-->
|
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<!-- Feedback -->
|
|
|
|
<sect2 id="feedback">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Feedback</title>
|
|
|
|
|
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-20 11:32:09 +00:00
|
|
|
Comments and suggestions for improvement (including patches to the
|
|
|
|
original DocBook/XML sources) are welcome. Send your comments to
|
|
|
|
the following email address:
|
|
|
|
<email>mark{dot}hoebeke{at}orange{dot}fr</email> and
|
|
|
|
<email>yganag{at}users{dot}sf{dot}net</email>.
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<!-- Translations -->
|
|
|
|
<sect2 id="translations">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Translations</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
|
|
|
|
|
|
|
<!--
|
|
|
|
<para>
|
|
|
|
Pointers to available translations are nice.
|
|
|
|
Also your translators tend to give very important inputs.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<itemizedlist>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
<ulink url="http://tldp.org/">French Translation</ulink>
|
|
|
|
provided by Individual <email>someone (at) somewhere.fr</email>
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
<ulink url="http://tlpd.org/">German Translation</ulink>
|
|
|
|
provided by Individual <email>someone (at) somewhere.de</email>
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
</itemizedlist>
|
|
|
|
-->
|
|
|
|
</sect2>
|
|
|
|
|
|
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1 id="using">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Using the GNU-Build System</title>
|
|
|
|
|
|
|
|
<sect2 id="whatismake">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>What is GNU Make?</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="whatisautoconf">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>What is GNU Autoconf?</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="whatisautomake">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>What is GNU Automake?</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="whatislibtool">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>What is GNU Libtool?</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1 id="realworld">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Back to the Real World</title>
|
|
|
|
|
|
|
|
<sect2 id="rwmake">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>GNU Make</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="rwautoconf">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>GNU Autoconf</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="rwautomake">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>GNU Automake</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="rwlibtool">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>GNU Libtool</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1 id="inside">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>An inside look</title>
|
|
|
|
|
|
|
|
<sect2 id="insidemake">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Inside GNU Make</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="insidem4">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Inside the m4 macro language</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="insideautoconf">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Inside GNU Autoconf</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="insideautomake">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Inside GNU Automake</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="insidelibtool">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Inside GNU Libtool</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
</sect1>
|
|
|
|
|
|
|
|
<sect1 id="appinstall">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Installation of the GNU-Build-System Tools</title>
|
|
|
|
|
|
|
|
<sect2 id="distinstall">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Installing from GNU/Linux distribution packages</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
|
|
|
|
|
|
|
<sect2 id="srcinstall">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Installing for source tarballs</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para></para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect1>
|
|
|
|
|
2003-11-20 10:39:14 +00:00
|
|
|
<appendix id="gpl">
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<appendixinfo>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>GNU General Public License</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<pubdate>Version 2, June 1991</pubdate>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<copyright>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<year>1989, 1991</year>
|
|
|
|
<holder>Free Software Foundation, Inc.</holder>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</copyright>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<legalnotice>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
<address>
|
|
|
|
Free Software Foundation, Inc.
|
|
|
|
<street>59 Temple Place, Suite 330</street>,
|
|
|
|
<city>Boston</city>,
|
|
|
|
<state>MA</state>
|
|
|
|
<postcode>02111-1307</postcode>
|
|
|
|
<country>USA</country>
|
|
|
|
</address>.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Everyone is permitted to copy and distribute verbatim copies of
|
|
|
|
this license document, but changing it is not allowed.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</legalnotice>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<releaseinfo>Version 2, June 1991</releaseinfo>
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</appendixinfo>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>GNU General Public License</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect1>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Preamble</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
The licenses for most software are designed to take away your
|
|
|
|
freedom to share and change it. By contrast, the GNU General
|
|
|
|
Public License is intended to guarantee your freedom to share and
|
|
|
|
change free software - to make sure the software is free for all
|
|
|
|
its users. This General Public License applies to most of the
|
|
|
|
Free Software Foundation's software and to any other program whose
|
|
|
|
authors commit to using it. (Some other Free Software Foundation
|
|
|
|
software is covered by the GNU Library General Public License
|
|
|
|
instead.) You can apply it to your programs, too.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
When we speak of free software, we are referring to freedom, not
|
|
|
|
price. Our General Public Licenses are designed to make sure that
|
|
|
|
you have the freedom to distribute copies of free software (and
|
|
|
|
charge for this service if you wish), that you receive source code
|
|
|
|
or can get it if you want it, that you can change the software or
|
|
|
|
use pieces of it in new free programs; and that you know you can
|
|
|
|
do these things.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
To protect your rights, we need to make restrictions that forbid
|
|
|
|
anyone to deny you these rights or to ask you to surrender the
|
|
|
|
rights. These restrictions translate to certain responsibilities
|
|
|
|
for you if you distribute copies of the software, or if you modify
|
|
|
|
it.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
For example, if you distribute copies of such a program, whether
|
|
|
|
gratis or for a fee, you must give the recipients all the rights
|
|
|
|
that you have. You must make sure that they, too, receive or can
|
|
|
|
get the source code. And you must show them these terms so they
|
|
|
|
know their rights.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
We protect your rights with two steps:
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<orderedlist>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
|
|
|
<para>copyright the software, and </para>
|
|
|
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
offer you this license which gives you legal permission to
|
|
|
|
copy, distribute and/or modify the software.
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
</orderedlist>
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Also, for each author's protection and ours, we want to make
|
|
|
|
certain that everyone understands that there is no warranty for
|
|
|
|
this free software. If the software is modified by someone else
|
|
|
|
and passed on, we want its recipients to know that what they have
|
|
|
|
is not the original, so that any problems introduced by others
|
|
|
|
will not reflect on the original authors' reputations.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Finally, any free program is threatened constantly by software
|
|
|
|
patents. We wish to avoid the danger that redistributors of a
|
|
|
|
free program will individually obtain patent licenses, in effect
|
|
|
|
making the program proprietary. To prevent this, we have made it
|
|
|
|
clear that any patent must be licensed for everyone's free use or
|
|
|
|
not licensed at all.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
The precise terms and conditions for copying, distribution and
|
|
|
|
modification follow.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect1>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect1>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION</title>
|
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Section 0</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
This License applies to any program or other work which contains
|
|
|
|
a notice placed by the copyright holder saying it may be
|
|
|
|
distributed under the terms of this General Public License. The
|
|
|
|
"Program", below, refers to any such program or work, and a
|
|
|
|
<quote>work based on the Program </quote> means either the
|
|
|
|
Program or any derivative work under copyright law: that is to
|
|
|
|
say, a work containing the Program or a portion of it, either
|
|
|
|
verbatim or with modifications and/or translated into another
|
|
|
|
language. (Hereinafter, translation is included without
|
|
|
|
limitation in the term <quote>modification </quote>.) Each
|
|
|
|
licensee is addressed as <quote>you</quote>.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Activities other than copying, distribution and modification are
|
|
|
|
not covered by this License; they are outside its scope. The
|
|
|
|
act of running the Program is not restricted, and the output
|
|
|
|
from the Program is covered only if its contents constitute a
|
|
|
|
work based on the Program (independent of having been made by
|
|
|
|
running the Program). Whether that is true depends on what the
|
|
|
|
Program does.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2 id="sect1">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Section 1</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
You may copy and distribute verbatim copies of the Program's
|
|
|
|
source code as you receive it, in any medium, provided that you
|
|
|
|
conspicuously and appropriately publish on each copy an
|
|
|
|
appropriate copyright notice and disclaimer of warranty; keep
|
|
|
|
intact all the notices that refer to this License and to the
|
|
|
|
absence of any warranty; and give any other recipients of the
|
|
|
|
Program a copy of this License along with the Program.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
You may charge a fee for the physical act of transferring a
|
|
|
|
copy, and you may at your option offer warranty protection in
|
|
|
|
exchange for a fee.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2 id="sect2">
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<title>Section 2</title>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
You may modify your copy or copies of the Program or any portion
|
|
|
|
of it, thus forming a work based on the Program, and copy and
|
|
|
|
distribute such modifications or work under the terms of <link
|
|
|
|
linkend="sect1">Section 1 </link> above, provided that you also
|
|
|
|
meet all of these conditions:
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
You must cause the modified files to carry prominent
|
|
|
|
notices stating that you changed the files and the date of
|
|
|
|
any change.
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
You must cause any work that you distribute or publish,
|
|
|
|
that in whole or in part contains or is derived from the
|
|
|
|
Program or any part thereof, to be licensed as a whole at
|
|
|
|
no charge to all third parties under the terms of this
|
|
|
|
License.
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
If the modified program normally reads commands
|
|
|
|
interactively when run, you must cause it, when started
|
|
|
|
running for such interactive use in the most ordinary way,
|
|
|
|
to print or display an announcement including an appropriate
|
|
|
|
copyright notice and a notice that there is no warranty (or
|
|
|
|
else, saying that you provide a warranty) and that users may
|
|
|
|
redistribute the program under these conditions, and telling
|
|
|
|
the user how to view a copy of this License.
|
|
|
|
|
|
|
|
<note>
|
|
|
|
|
|
|
|
<title>Exception:</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
If the Program itself is interactive but does not
|
|
|
|
normally print such an announcement, your work based
|
|
|
|
on the Program is not required to print an
|
|
|
|
announcement.)
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</note>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</listitem>
|
|
|
|
</orderedlist>
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
These requirements apply to the modified work as a whole. If
|
|
|
|
identifiable sections of that work are not derived from the
|
|
|
|
Program, and can be reasonably considered independent and
|
|
|
|
separate works in themselves, then this License, and its terms,
|
|
|
|
do not apply to those sections when you distribute them as
|
|
|
|
separate works. But when you distribute the same sections as
|
|
|
|
part of a whole which is a work based on the Program, the
|
|
|
|
distribution of the whole must be on the terms of this License,
|
|
|
|
whose permissions for other licensees extend to the entire
|
|
|
|
whole, and thus to each and every part regardless of who wrote
|
|
|
|
it.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Thus, it is not the intent of this section to claim rights or
|
|
|
|
contest your rights to work written entirely by you; rather, the
|
|
|
|
intent is to exercise the right to control the distribution of
|
|
|
|
derivative or collective works based on the Program.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
In addition, mere aggregation of another work not based on the
|
|
|
|
Program with the Program (or with a work based on the Program)
|
|
|
|
on a volume of a storage or distribution medium does not bring
|
|
|
|
the other work under the scope of this License.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>Section 3</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
You may copy and distribute the Program (or a work based on it,
|
|
|
|
under <link linkend="sect2">Section 2 </link> in object code or
|
|
|
|
executable form under the terms of <link
|
|
|
|
linkend="sect1">Sections 1 </link> and <link linkend="sect2">2
|
|
|
|
</link> above provided that you also do one of the following:
|
|
|
|
|
|
|
|
<orderedlist>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Accompany it with the complete corresponding
|
|
|
|
machine-readable source code, which must be distributed
|
|
|
|
under the terms of Sections 1 and 2 above on a medium
|
|
|
|
customarily used for software interchange; or,
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Accompany it with a written offer, valid for at least
|
|
|
|
three years, to give any third party, for a charge no more
|
|
|
|
than your cost of physically performing source
|
|
|
|
distribution, a complete machine-readable copy of the
|
|
|
|
corresponding source code, to be distributed under the
|
|
|
|
terms of Sections 1 and 2 above on a medium customarily
|
|
|
|
used for software interchange; or,
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
<listitem>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Accompany it with the information you received as to the
|
|
|
|
offer to distribute corresponding source code. (This
|
|
|
|
alternative is allowed only for noncommercial distribution
|
|
|
|
and only if you received the program in object code or
|
|
|
|
executable form with such an offer, in accord with
|
|
|
|
Subsection b above.)
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
</listitem>
|
|
|
|
|
|
|
|
</orderedlist>
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
The source code for a work means the preferred form of the work
|
|
|
|
for making modifications to it. For an executable work, complete
|
|
|
|
source code means all the source code for all modules it
|
|
|
|
contains, plus any associated interface definition files, plus
|
|
|
|
the scripts used to control compilation and installation of the
|
|
|
|
executable. However, as a special exception, the source code
|
|
|
|
distributed need not include anything that is normally
|
|
|
|
distributed (in either source or binary form) with the major
|
|
|
|
components (compiler, kernel, and so on) of the operating system
|
|
|
|
on which the executable runs, unless that component itself
|
|
|
|
accompanies the executable.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
If distribution of executable or object code is made by offering
|
|
|
|
access to copy from a designated place, then offering equivalent
|
|
|
|
access to copy the source code from the same place counts as
|
|
|
|
distribution of the source code, even though third parties are
|
|
|
|
not compelled to copy the source along with the object code.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>Section 4</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
You may not copy, modify, sublicense, or distribute the Program
|
|
|
|
except as expressly provided under this License. Any attempt
|
|
|
|
otherwise to copy, modify, sublicense or distribute the Program
|
|
|
|
is void, and will automatically terminate your rights under this
|
|
|
|
License. However, parties who have received copies, or rights,
|
|
|
|
from you under this License will not have their licenses
|
|
|
|
terminated so long as such parties remain in full compliance.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>Section 5</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
You are not required to accept this License, since you have not
|
|
|
|
signed it. However, nothing else grants you permission to modify
|
|
|
|
or distribute the Program or its derivative works. These
|
|
|
|
actions are prohibited by law if you do not accept this License.
|
|
|
|
Therefore, by modifying or distributing the Program (or any work
|
|
|
|
based on the Program), you indicate your acceptance of this
|
|
|
|
License to do so, and all its terms and conditions for copying,
|
|
|
|
distributing or modifying the Program or works based on it.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>Section 6</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Each time you redistribute the Program (or any work based on the
|
|
|
|
Program), the recipient automatically receives a license from
|
|
|
|
the original licensor to copy, distribute or modify the Program
|
|
|
|
subject to these terms and conditions. You may not impose any
|
|
|
|
further restrictions on the recipients' exercise of the rights
|
|
|
|
granted herein. You are not responsible for enforcing compliance
|
|
|
|
by third parties to this License.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>Section 7</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
If, as a consequence of a court judgment or allegation of patent
|
|
|
|
infringement or for any other reason (not limited to patent
|
|
|
|
issues), conditions are imposed on you (whether by court order,
|
|
|
|
agreement or otherwise) that contradict the conditions of this
|
|
|
|
License, they do not excuse you from the conditions of this
|
|
|
|
License. If you cannot distribute so as to satisfy
|
|
|
|
simultaneously your obligations under this License and any other
|
|
|
|
pertinent obligations, then as a consequence you may not
|
|
|
|
distribute the Program at all. For example, if a patent license
|
|
|
|
would not permit royalty-free redistribution of the Program by
|
|
|
|
all those who receive copies directly or indirectly through you,
|
|
|
|
then the only way you could satisfy both it and this License
|
|
|
|
would be to refrain entirely from distribution of the Program.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
If any portion of this section is held invalid or unenforceable
|
|
|
|
under any particular circumstance, the balance of the section is
|
|
|
|
intended to apply and the section as a whole is intended to
|
|
|
|
apply in other circumstances.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
It is not the purpose of this section to induce you to infringe
|
|
|
|
any patents or other property right claims or to contest
|
|
|
|
validity of any such claims; this section has the sole purpose
|
|
|
|
of protecting the integrity of the free software distribution
|
|
|
|
system, which is implemented by public license practices. Many
|
|
|
|
people have made generous contributions to the wide range of
|
|
|
|
software distributed through that system in reliance on
|
|
|
|
consistent application of that system; it is up to the
|
|
|
|
author/donor to decide if he or she is willing to distribute
|
|
|
|
software through any other system and a licensee cannot impose
|
|
|
|
that choice.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
This section is intended to make thoroughly clear what is
|
|
|
|
believed to be a consequence of the rest of this License.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>Section 8</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
If the distribution and/or use of the Program is restricted in
|
|
|
|
certain countries either by patents or by copyrighted
|
|
|
|
interfaces, the original copyright holder who places the Program
|
|
|
|
under this License may add an explicit geographical distribution
|
|
|
|
limitation excluding those countries, so that distribution is
|
|
|
|
permitted only in or among countries not thus excluded. In such
|
|
|
|
case, this License incorporates the limitation as if written in
|
|
|
|
the body of this License.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>Section 9</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
The Free Software Foundation may publish revised and/or new
|
|
|
|
versions of the General Public License from time to time. Such
|
|
|
|
new versions will be similar in spirit to the present version,
|
|
|
|
but may differ in detail to address new problems or concerns.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
Each version is given a distinguishing version number. If the
|
|
|
|
Program specifies a version number of this License which applies
|
|
|
|
to it and "any later version", you have the option of following
|
|
|
|
the terms and conditions either of that version or of any later
|
|
|
|
version published by the Free Software Foundation. If the
|
|
|
|
Program does not specify a version number of this License, you
|
|
|
|
may choose any version ever published by the Free Software
|
|
|
|
Foundation.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>Section 10</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
If you wish to incorporate parts of the Program into other free
|
|
|
|
programs whose distribution conditions are different, write to
|
|
|
|
the author to ask for permission. For software which is
|
|
|
|
copyrighted by the Free Software Foundation, write to the Free
|
|
|
|
Software Foundation; we sometimes make exceptions for this. Our
|
|
|
|
decision will be guided by the two goals of preserving the free
|
|
|
|
status of all derivatives of our free software and of promoting
|
|
|
|
the sharing and reuse of software generally.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>NO WARRANTY Section 11</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
|
|
|
|
WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE
|
|
|
|
LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
|
|
|
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT
|
|
|
|
WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
|
|
|
|
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
|
|
AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE
|
|
|
|
QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
|
|
|
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY
|
|
|
|
SERVICING, REPAIR OR CORRECTION.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>Section 12</title>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
|
|
|
|
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
|
|
|
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY
|
|
|
|
MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE
|
|
|
|
LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
|
|
|
|
INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
|
|
|
|
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS
|
|
|
|
OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
|
|
|
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH
|
|
|
|
ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN
|
|
|
|
ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<para>END OF TERMS AND CONDITIONS</para>
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect2>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect1>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<sect1>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<title>How to Apply These Terms to Your New Programs</title>
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
If you develop a new program, and you want it to be of the
|
|
|
|
greatest possible use to the public, the best way to achieve this
|
|
|
|
is to make it free software which everyone can redistribute and
|
|
|
|
change under these terms.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
To do so, attach the following notices to the program. It is
|
|
|
|
safest to attach them to the start of each source file to most
|
|
|
|
effectively convey the exclusion of warranty; and each file should
|
|
|
|
have at least the "copyright" line and a pointer to where the full
|
|
|
|
notice is found.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<one line to give the program's name and a brief idea of what
|
|
|
|
it does.> Copyright (C) <year> <name of author>
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
This program 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 of the
|
|
|
|
License, or (at your option) any later version.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
This program is distributed in the hope that it will be useful,
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
2003-11-20 10:39:14 +00:00
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
General Public License for more details.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
You should have received a copy of the GNU General Public License
|
|
|
|
along with this program; if not, write to the Free Software
|
2003-11-20 10:39:14 +00:00
|
|
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
|
|
|
02111-1307 USA
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
Also add information on how to contact you by electronic and paper
|
|
|
|
mail.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
If the program is interactive, make it output a short notice like
|
|
|
|
this when it starts in an interactive mode:
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
Gnomovision version 69, Copyright (C) year name of author
|
2003-11-20 10:39:14 +00:00
|
|
|
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type
|
|
|
|
`show w'. This is free software, and you are welcome to
|
|
|
|
redistribute it under certain conditions; type `show c' for
|
|
|
|
details.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
The hypothetical commands `show w' and `show c' should show the
|
|
|
|
appropriate parts of the General Public License. Of course, the
|
|
|
|
commands you use may be called something other than `show w' and
|
|
|
|
`show c'; they could even be mouse-clicks or menu items--whatever
|
|
|
|
suits your program.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
You should also get your employer (if you work as a programmer) or
|
|
|
|
your school, if any, to sign a "copyright disclaimer" for the
|
|
|
|
program, if necessary. Here is a sample; alter the names:
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
|
|
|
program `Gnomovision' (which makes passes at compilers) written by
|
|
|
|
James Hacker.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
<signature of Ty Coon>, 1 April 1989 Ty Coon, President of
|
|
|
|
Vice
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
<para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
|
|
|
This General Public License does not permit incorporating your
|
|
|
|
program into proprietary programs. If your program is a
|
|
|
|
subroutine library, you may consider it more useful to permit
|
|
|
|
linking proprietary applications with the library. If this is
|
|
|
|
what you want to do, use the GNU Library General Public License
|
|
|
|
instead of this License.
|
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</para>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</sect1>
|
2003-11-20 10:39:14 +00:00
|
|
|
|
2003-11-10 20:14:51 +00:00
|
|
|
</appendix>
|
|
|
|
|
2003-11-20 10:39:14 +00:00
|
|
|
</article>
|
2003-11-20 11:32:09 +00:00
|
|
|
|
|
|
|
<!--
|
|
|
|
|
|
|
|
$Log$
|
|
|
|
Revision 1.6 2003/11/20 10:40:17 appaji
|
|
|
|
Remove Id CVS keyword, Log CVS keyword to take care of history in the sources
|
|
|
|
|
|
|
|
Revision 1.5 2003/11/20 10:39:14 appaji
|
|
|
|
Format for 72 character lines
|
|
|
|
|
|
|
|
-->
|
|
|
|
|