lfs/chapter08/gawk.xml
Xi Ruoyao 9c73d91186
Remove -v from "chown -R tester" commands
It does no good: normally we have -v for chown so once it no longer has
an effect we can know, but in this case these chown commands will never
have no effect.  And a huge amount of output with -v wastes the server
storage and bandwidth (for both the server and the people reading the
build logs).
2024-02-02 15:19:41 +08:00

151 lines
4.7 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
<sect1 id="ch-system-gawk" role="wrap">
<?dbhtml filename="gawk.html"?>
<sect1info condition="script">
<productname>gawk</productname>
<productnumber>&gawk-version;</productnumber>
<address>&gawk-url;</address>
</sect1info>
<title>Gawk-&gawk-version;</title>
<indexterm zone="ch-system-gawk">
<primary sortas="a-Gawk">Gawk</primary>
</indexterm>
<sect2 role="package">
<title/>
<para>The Gawk package contains programs for manipulating text files.</para>
<segmentedlist>
<segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle>
<seglistitem>
<seg>&gawk-fin-sbu;</seg>
<seg>&gawk-fin-du;</seg>
</seglistitem>
</segmentedlist>
</sect2>
<sect2 role="installation">
<title>Installation of Gawk</title>
<para>First, ensure some unneeded files are not installed:</para>
<screen><userinput remap="pre">sed -i 's/extras//' Makefile.in</userinput></screen>
<para>Prepare Gawk for compilation:</para>
<screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>
<para>Compile the package:</para>
<screen><userinput remap="make">make</userinput></screen>
<para>To test the results, issue:</para>
<screen><userinput remap="test">chown -R tester .
su tester -c "PATH=$PATH make check"</userinput></screen>
<para>Install the package:</para>
<screen><userinput remap="install">rm -f /usr/bin/gawk-&gawk-version;
make install</userinput></screen>
<variablelist>
<title>The meaning of the command:</title>
<varlistentry>
<term><command>rm -f /usr/bin/gawk-&gawk-version;</command></term>
<listitem>
<para>The building system will not recreate the hard link
<filename>gawk-&gawk-version;</filename> if it already exists.
Remove it to ensure that the previous hard link installed
in <xref linkend='ch-tools-gawk'/> is updated here.</para>
</listitem>
</varlistentry>
</variablelist>
<para>The installation process already created <command>awk</command>
as a symlink to <command>gawk</command>, create its man page as a
symlink as well:</para>
<screen><userinput remap="install">ln -sv gawk.1 /usr/share/man/man1/awk.1</userinput></screen>
<para>If desired, install the documentation:</para>
<screen><userinput remap="install">mkdir -pv /usr/share/doc/gawk-&gawk-version;
cp -v doc/{awkforai.txt,*.{eps,pdf,jpg}} /usr/share/doc/gawk-&gawk-version;</userinput></screen>
</sect2>
<sect2 id="contents-gawk" role="content">
<title>Contents of Gawk</title>
<segmentedlist>
<segtitle>Installed programs</segtitle>
<segtitle>Installed libraries</segtitle>
<segtitle>Installed directories</segtitle>
<seglistitem>
<seg>awk (link to gawk), gawk, and gawk-&gawk-version;</seg>
<seg>filefuncs.so, fnmatch.so, fork.so, inplace.so, intdiv.so, ordchr.so,
readdir.so, readfile.so, revoutput.so, revtwoway.so, rwarray.so,
and time.so (all in /usr/lib/gawk)</seg>
<seg>/usr/lib/gawk, /usr/libexec/awk, /usr/share/awk, and
/usr/share/doc/gawk-&gawk-version;</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="awk">
<term><command>awk</command></term>
<listitem>
<para>A link to <command>gawk</command></para>
<indexterm zone="ch-system-gawk awk">
<primary sortas="b-awk">awk</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gawk">
<term><command>gawk</command></term>
<listitem>
<para>A program for manipulating text files; it is the GNU
implementation of <command>awk</command></para>
<indexterm zone="ch-system-gawk gawk">
<primary sortas="b-gawk">gawk</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="gawk-version">
<term><command>gawk-&gawk-version;</command></term>
<listitem>
<para>A hard link to <command>gawk</command></para>
<indexterm zone="ch-system-gawk gawk-version">
<primary sortas="b-gawk-&gawk-version;">gawk-&gawk-version;</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>