<ArtHeader>
-<Title>Building and Installing the Glasgow Functional Programming Tools Suite</Title>
+<Title>Building the Glasgow Functional Programming Tools Suite</Title>
<Author><OtherName>The GHC Team</OtherName></Author>
<Address><Email>glasgow-haskell-{users,bugs}@haskell.org</Email></Address>
<PubDate>January 2000</PubDate>
processed using the <ULink
URL="http://sourceware.cygnus.com/docbook-tools/">Cygnus DocBook
tools</ULink>, which is the most shrink-wrapped SGML suite that we
-could find. Unfortunately, it's only packaged as RPMs. You can use it
-to generate HTML, DVI (and hence PDF and Postscript) and RTF from any
-DocBook source file (including this manual). N.B. The <Emphasis>Cygnus</Emphasis> version of the tools is assumed. Others, such as the SuSE version, may not work.
+could find. You need all the RPMs except for psgml (i.e. docbook, jade,
+jadetex, sgmlcommon and stylesheets). Unfortunately, it's only packaged as
+RPMs. You can use it to generate HTML, DVI (and hence PDF and Postscript)
+and RTF from any DocBook source file (including this manual). N.B. The
+<Emphasis>Cygnus</Emphasis> version of the tools is assumed. Others, such as
+the SuSE version, may not work. Note that most of these RPMs are
+architecture neutral, so are likely to be found in a <file>noarch</file>
+directory.
</Para>
</ListItem></VarListEntry>
<VarListEntry>
reverses the effect of <Literal>install</Literal>.
</Para>
</ListItem></VarListEntry>
+
<VarListEntry>
<Term><Literal>clean</Literal>:</Term>
<ListItem>
<Para>
-remove all easily-rebuilt files.
-</Para>
+Delete all files from the current directory that are normally
+created by building the program. Don't delete the files that
+record the configuration. Also preserve files that could be made
+by building, but normally aren't because the distribution comes
+with them.</para>
</ListItem></VarListEntry>
+
+<varlistentry>
+<term><literal>distclean</literal>:</term>
+<listitem>
+<para>Delete all files from the current directory that are created by
+configuring or building the program. If you have unpacked the source
+and built the program without creating any other files, <literal>make
+distclean</literal> should leave only the files that were in the
+distribution.</para>
+</listitem>
+</varlistentry>
+
+<varlistentry>
+<term><literal>mostlyclean</literal>:</term>
+<listitem>
+<para>Like <literal>clean</literal>, but may refrain from deleting a
+few files that people normally don't want to recompile.</para>
+</listitem>
+</varlistentry>
+
<VarListEntry>
-<Term><Literal>veryclean</Literal>:</Term>
+<Term><Literal>maintainer-clean</Literal>:</Term>
<ListItem>
<Para>
-remove all files that can be rebuilt at all.
-There's a danger here that you may remove a file that needs a more
-obscure utility to rebuild it (especially if you started from a source
-distribution).
-</Para>
-</ListItem></VarListEntry>
+Delete everything from the current directory that can be reconstructed
+with this Makefile. This typically includes everything deleted by
+<literal>distclean</literal>, plus more: C source files produced by
+Bison, tags tables, Info files, and so on.</para>
+
+<para>One exception, however: <literal>make maintainer-clean</literal>
+should not delete <filename>configure</filename> even if
+<filename>configure</filename> can be remade using a rule in the
+<filename>Makefile</filename>. More generally, <literal>make
+maintainer-clean</literal> should not delete anything that needs to
+exist in order to run <filename>configure</filename> and then begin to
+build the program.</para>
+</listitem>
+</varlistentry>
+
<VarListEntry>
<Term><Literal>check</Literal>:</Term>
<ListItem>