Update build doc

Signed-off-by: Tom Eastep <teastep@shorewall.net>
This commit is contained in:
Tom Eastep 2012-02-05 08:06:02 -08:00
parent 7887def6ad
commit d157025774

View File

@ -94,15 +94,6 @@
release cycle, these documents may also apply to the current
development version.</para>
</section>
<section>
<title>trunk/manpages, trunk/manpages6, trunk/manpages-lite and
trunk/manpages6-lite</title>
<para>The stable release XML manpages. Depending on the point in the
release cycle, these documents may also apply to the current
development version.</para>
</section>
</section>
<section>
@ -292,6 +283,245 @@
<para>where</para>
<variablelist>
<varlistentry>
<term>opt<emphasis>i</emphasis>ons</term>
<listitem>
<para>are one or more of the following. If no options are given
then all options are assumed</para>
<variablelist>
<varlistentry>
<term>t</term>
<listitem>
<para>build tar files</para>
</listitem>
</varlistentry>
<varlistentry>
<term>r</term>
<listitem>
<para>build RPMs</para>
</listitem>
</varlistentry>
<varlistentry>
<term>c</term>
<listitem>
<para>Build the shorewall package.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>i</term>
<listitem>
<para>Build the shorewall-init package.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>l</term>
<listitem>
<para>Build the shorewall-lite package.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>6</term>
<listitem>
<para>Build the shorewall6 package.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>L</term>
<listitem>
<para>Build the shorewall6-lite package.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>h</term>
<listitem>
<para>Build the html document package.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>x</term>
<listitem>
<para>Build the xml document package.</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
<varlistentry>
<term><emphasis>release</emphasis></term>
<listitem>
<para>The release version to build. Must match the version in the
associated Git path.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><emphasis>prior release</emphasis></term>
<listitem>
<para>The release to be used to generate patch files.</para>
</listitem>
</varlistentry>
</variablelist>
<para>Example 1 - Build Shorewall 4.4.7 and generate patches against
4.4.6:</para>
<blockquote>
<para><command>build 4.4.7 4.4.6</command></para>
</blockquote>
<para>Example 2 - Build Shorewall 4.2.7.1 Shorewall and generate patches
against 4.4.7:</para>
<blockquote>
<para><command>build -trc 4.4.7.1 4.4.7</command></para>
</blockquote>
</section>
<section>
<title>build45</title>
<para>This is the script that builds Shorewall 4.5 packages from
Git.</para>
<para>The script copies content from Git using the <command>git
archive</command> command. It then uses that content to build the
packages. In addition to the usual Gnu utilities, the following software
is required:</para>
<variablelist>
<varlistentry>
<term>rpmbuild</term>
<listitem>
<para>Required to build the RPM packages.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>xsltproc (libxslt)</term>
<listitem>
<para>Required to convert the XML documents to other
formats.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Docbook XSL Stylesheets</term>
<listitem>
<para>Required to convert the XML documents to other
formats.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Perl</term>
<listitem>
<para>Required to massage some of the config files.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>xmlto</term>
<listitem>
<para>Required to convert the XML manpages to manpages. Be sure
that you have a recent version; I use 0.0.23.</para>
</listitem>
</varlistentry>
</variablelist>
<para>You should ensure that you have the latest scripts. The scripts
change periodically as we move through the release cycles.</para>
<para>The build44 script may need to be modified to fit your particular
environment. There are a number of variables that are set near the top
of the file:</para>
<variablelist>
<varlistentry>
<term>STYLESHEET</term>
<listitem>
<para>Must point to the XHTML docbook.xsl stylesheet from your
Docbook XSL Stylesheets installation.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>LOGDIR</term>
<listitem>
<para>Directory where you want the build log placed. Defaults to
the current working directory.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>RPMDIR</term>
<listitem>
<para>Points to your RPM directory .</para>
</listitem>
</varlistentry>
<varlistentry>
<term>DIR</term>
<listitem>
<para>Directory where you want the release to be built. Defaults
to the current working directory.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>GIT</term>
<listitem>
<para>Shorewall GIT repository.</para>
</listitem>
</varlistentry>
</variablelist>
<para>The scripts assume that there will be a separate <firstterm>build
directory</firstterm> per major release. To build a release, you cd to
the appropriate directory and run the build script.</para>
<para>The general form of the build command is:</para>
<blockquote>
<para><command>build</command> [ -<replaceable>options</replaceable> ]
<replaceable>release</replaceable> [ <replaceable>prior
release</replaceable> ]</para>
</blockquote>
<para>where</para>
<variablelist>
<varlistentry>
<term>opt<emphasis>i</emphasis>ons</term>
@ -406,14 +636,14 @@
4.3.6:</para>
<blockquote>
<para><command>build 4.3.7 4.3.6</command></para>
<para><command>build45 4.5.7 4.5.6</command></para>
</blockquote>
<para>Example 2 - Build Shorewall 4.2.7.1 Shorewall and generate patches
against 4.2.7:</para>
<para>Example 2 - Build Shorewall 4.5.7.1 Shorewall-core and generate
patches against 4.5.7:</para>
<blockquote>
<para><command>build -trc 4.3.7.1 4.3.7</command></para>
<para><command>build45 -trc 4.5.7.1 4.5.7</command></para>
</blockquote>
</section>