aboutsummaryrefslogtreecommitdiffstats
path: root/chapter08/autoconf.xml
diff options
context:
space:
mode:
authorBruce Dubbs <bdubbs@linuxfromscratch.org>2020-06-07 20:16:00 +0000
committerBruce Dubbs <bdubbs@linuxfromscratch.org>2020-06-07 20:16:00 +0000
commitfcc027677da55c41dcaea045f5b9ff8b088e6495 (patch)
tree42500a7858959695b971e7f28f1d0bf33185db2e /chapter08/autoconf.xml
parentd53fefab5a6772fef606392a61608fc290e6a7ae (diff)
Initial commit of alternative cross LFS
git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/cross2@11897 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'chapter08/autoconf.xml')
-rw-r--r--chapter08/autoconf.xml194
1 files changed, 194 insertions, 0 deletions
diff --git a/chapter08/autoconf.xml b/chapter08/autoconf.xml
new file mode 100644
index 000000000..6652747fd
--- /dev/null
+++ b/chapter08/autoconf.xml
@@ -0,0 +1,194 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!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-autoconf" role="wrap">
+ <?dbhtml filename="autoconf.html"?>
+
+ <sect1info condition="script">
+ <productname>autoconf</productname>
+ <productnumber>&autoconf-version;</productnumber>
+ <address>&autoconf-url;</address>
+ </sect1info>
+
+ <title>Autoconf-&autoconf-version;</title>
+
+ <indexterm zone="ch-system-autoconf">
+ <primary sortas="a-Autoconf">Autoconf</primary>
+ </indexterm>
+
+ <sect2 role="package">
+ <title/>
+
+ <para>The Autoconf package contains programs for producing shell scripts that
+ can automatically configure source code.</para>
+
+ <segmentedlist>
+ <segtitle>&buildtime;</segtitle>
+ <segtitle>&diskspace;</segtitle>
+
+ <seglistitem>
+ <seg>&autoconf-ch6-sbu;</seg>
+ <seg>&autoconf-ch6-du;</seg>
+ </seglistitem>
+ </segmentedlist>
+
+ </sect2>
+
+ <sect2 role="installation">
+ <title>Installation of Autoconf</title>
+
+ <para>First, fix a bug generated by Perl 5.28.</para>
+
+<screen><userinput remap="pre">sed '361 s/{/\\{/' -i bin/autoscan.in</userinput></screen>
+
+ <para>Prepare Autoconf 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>-->
+ <para>The test suite is currently broken by bash-5 and libtool-2.4.3.
+ To run the tests anyway, issue:</para>
+
+<screen><userinput remap="test">make check</userinput></screen>
+<!--
+ <para>This takes a long time, about &autoconf-ch6-sbu-tests; SBUs. In addition,
+ several tests are skipped that use Automake. For full test coverage,
+ Autoconf can be re-tested after Automake has been installed. In addition,
+ two tests fail due to changes in libtool-2.4.3 and later.</para>
+
+ <note><para>The test time for autoconf can be reduced significantly on a
+ system with multiple cores. To do this, append
+ <command>TESTSUITEFLAGS=-j&lt;N&gt;</command> to the line above. For
+ instance, using -j4 can reduce the test time by over 60
+ percent.</para></note>
+-->
+ <para>Install the package:</para>
+
+<screen><userinput remap="install">make install</userinput></screen>
+
+ </sect2>
+
+ <sect2 id="contents-autoconf" role="content">
+ <title>Contents of Autoconf</title>
+
+ <segmentedlist>
+ <segtitle>Installed programs</segtitle>
+ <segtitle>Installed directory</segtitle>
+
+ <seglistitem>
+ <seg>autoconf, autoheader, autom4te, autoreconf, autoscan, autoupdate,
+ and ifnames</seg>
+ <seg>/usr/share/autoconf</seg>
+ </seglistitem>
+ </segmentedlist>
+
+ <variablelist>
+ <bridgehead renderas="sect3">Short Descriptions</bridgehead>
+ <?dbfo list-presentation="list"?>
+ <?dbhtml list-presentation="table"?>
+
+ <varlistentry id="autoconf">
+ <term><command>autoconf</command></term>
+ <listitem>
+ <para>Produces shell scripts that automatically configure software
+ source code packages to adapt to many kinds of Unix-like systems;
+ the configuration scripts it produces are independent&mdash;running
+ them does not require the <command>autoconf</command> program</para>
+ <indexterm zone="ch-system-autoconf autoconf">
+ <primary sortas="b-autoconf">autoconf</primary>
+ </indexterm>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry id="autoheader">
+ <term><command>autoheader</command> </term>
+ <listitem>
+ <para>A tool for creating template files of C
+ <emphasis>#define</emphasis> statements for configure to use</para>
+ <indexterm zone="ch-system-autoconf autoheader">
+ <primary sortas="b-autoheader">autoheader</primary>
+ </indexterm>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry id="autom4te">
+ <term><command>autom4te</command></term>
+ <listitem>
+ <para>A wrapper for the M4 macro processor</para>
+ <indexterm zone="ch-system-autoconf autom4te">
+ <primary sortas="b-autom4te">autom4te</primary>
+ </indexterm>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry id="autoreconf">
+ <term><command>autoreconf</command></term>
+ <listitem>
+ <para>Automatically runs <command>autoconf</command>,
+ <command>autoheader</command>, <command>aclocal</command>,
+ <command>automake</command>, <command>gettextize</command>, and
+ <command>libtoolize</command> in the correct order to save time
+ when changes are made to <command>autoconf</command> and
+ <command>automake</command> template files</para>
+ <indexterm zone="ch-system-autoconf autoreconf">
+ <primary sortas="b-autoreconf">autoreconf</primary>
+ </indexterm>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry id="autoscan">
+ <term><command>autoscan</command> </term>
+ <listitem>
+ <para>Helps to create a <filename>configure.in</filename> file for a
+ software package; it examines the source files in a directory tree,
+ searching them for common portability issues, and creates a
+ <filename>configure.scan</filename> file that serves as as a
+ preliminary <filename>configure.in</filename> file for the
+ package</para>
+ <indexterm zone="ch-system-autoconf autoscan">
+ <primary sortas="b-autoscan">autoscan</primary>
+ </indexterm>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry id="autoupdate">
+ <term><command>autoupdate</command></term>
+ <listitem>
+ <para>Modifies a <filename>configure.in</filename> file that still
+ calls <command>autoconf</command> macros by their old names to use the
+ current macro names</para>
+ <indexterm zone="ch-system-autoconf autoupdate">
+ <primary sortas="b-autoupdate">autoupdate</primary>
+ </indexterm>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry id="ifnames">
+ <term><command>ifnames</command> </term>
+ <listitem>
+ <para>Helps when writing <filename>configure.in</filename> files
+ for a software package; it prints the identifiers that the package
+ uses in C preprocessor conditionals [If a package has already been set
+ up to have some portability, this program can help determine what
+ <command>configure</command> needs to check for. It can also fill in
+ gaps in a <filename>configure.in</filename> file generated by
+ <command>autoscan</command>.]</para>
+ <indexterm zone="ch-system-autoconf ifnames">
+ <primary sortas="b-ifnames">ifnames</primary>
+ </indexterm>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+
+ </sect2>
+
+</sect1>