1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../general.ent">
8 <sect1 id="ch-system-autoconf" role="wrap">
9 <?dbhtml filename="autoconf.html"?>
11 <sect1info condition="script">
12 <productname>autoconf</productname>
13 <productnumber>&autoconf-version;</productnumber>
14 <address>&autoconf-url;</address>
17 <title>Autoconf-&autoconf-version;</title>
19 <indexterm zone="ch-system-autoconf">
20 <primary sortas="a-Autoconf">Autoconf</primary>
23 <sect2 role="package">
26 <para>The Autoconf package contains programs for producing shell scripts that
27 can automatically configure source code.</para>
30 <segtitle>&buildtime;</segtitle>
31 <segtitle>&diskspace;</segtitle>
34 <seg>&autoconf-ch6-sbu;</seg>
35 <seg>&autoconf-ch6-du;</seg>
41 <sect2 role="installation">
42 <title>Installation of Autoconf</title>
44 <para>First, fix a bug generated by Perl 5.28.</para>
46 <screen><userinput remap="pre">sed '361 s/{/\\{/' -i bin/autoscan.in</userinput></screen>
48 <para>Prepare Autoconf for compilation:</para>
50 <screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>
52 <para>Compile the package:</para>
54 <screen><userinput remap="make">make</userinput></screen>
56 <para>To test the results, issue:</para>-->
57 <para>The test suite is currently broken by bash-5 and libtool-2.4.3.
58 To run the tests anyway, issue:</para>
60 <screen><userinput remap="test">make check</userinput></screen>
62 <para>This takes a long time, about &autoconf-ch6-sbu-tests; SBUs. In addition,
63 several tests are skipped that use Automake. For full test coverage,
64 Autoconf can be re-tested after Automake has been installed. In addition,
65 two tests fail due to changes in libtool-2.4.3 and later.</para>
67 <note><para>The test time for autoconf can be reduced significantly on a
68 system with multiple cores. To do this, append
69 <command>TESTSUITEFLAGS=-j<N></command> to the line above. For
70 instance, using -j4 can reduce the test time by over 60
71 percent.</para></note>
73 <para>Install the package:</para>
75 <screen><userinput remap="install">make install</userinput></screen>
79 <sect2 id="contents-autoconf" role="content">
80 <title>Contents of Autoconf</title>
83 <segtitle>Installed programs</segtitle>
84 <segtitle>Installed directory</segtitle>
87 <seg>autoconf, autoheader, autom4te, autoreconf, autoscan, autoupdate,
89 <seg>/usr/share/autoconf</seg>
94 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
95 <?dbfo list-presentation="list"?>
96 <?dbhtml list-presentation="table"?>
98 <varlistentry id="autoconf">
99 <term><command>autoconf</command></term>
101 <para>Produces shell scripts that automatically configure software
102 source code packages to adapt to many kinds of Unix-like systems;
103 the configuration scripts it produces are independent—running
104 them does not require the <command>autoconf</command> program</para>
105 <indexterm zone="ch-system-autoconf autoconf">
106 <primary sortas="b-autoconf">autoconf</primary>
111 <varlistentry id="autoheader">
112 <term><command>autoheader</command> </term>
114 <para>A tool for creating template files of C
115 <emphasis>#define</emphasis> statements for configure to use</para>
116 <indexterm zone="ch-system-autoconf autoheader">
117 <primary sortas="b-autoheader">autoheader</primary>
122 <varlistentry id="autom4te">
123 <term><command>autom4te</command></term>
125 <para>A wrapper for the M4 macro processor</para>
126 <indexterm zone="ch-system-autoconf autom4te">
127 <primary sortas="b-autom4te">autom4te</primary>
132 <varlistentry id="autoreconf">
133 <term><command>autoreconf</command></term>
135 <para>Automatically runs <command>autoconf</command>,
136 <command>autoheader</command>, <command>aclocal</command>,
137 <command>automake</command>, <command>gettextize</command>, and
138 <command>libtoolize</command> in the correct order to save time
139 when changes are made to <command>autoconf</command> and
140 <command>automake</command> template files</para>
141 <indexterm zone="ch-system-autoconf autoreconf">
142 <primary sortas="b-autoreconf">autoreconf</primary>
147 <varlistentry id="autoscan">
148 <term><command>autoscan</command> </term>
150 <para>Helps to create a <filename>configure.in</filename> file for a
151 software package; it examines the source files in a directory tree,
152 searching them for common portability issues, and creates a
153 <filename>configure.scan</filename> file that serves as as a
154 preliminary <filename>configure.in</filename> file for the
156 <indexterm zone="ch-system-autoconf autoscan">
157 <primary sortas="b-autoscan">autoscan</primary>
162 <varlistentry id="autoupdate">
163 <term><command>autoupdate</command></term>
165 <para>Modifies a <filename>configure.in</filename> file that still
166 calls <command>autoconf</command> macros by their old names to use the
167 current macro names</para>
168 <indexterm zone="ch-system-autoconf autoupdate">
169 <primary sortas="b-autoupdate">autoupdate</primary>
174 <varlistentry id="ifnames">
175 <term><command>ifnames</command> </term>
177 <para>Helps when writing <filename>configure.in</filename> files
178 for a software package; it prints the identifiers that the package
179 uses in C preprocessor conditionals [If a package has already been set
180 up to have some portability, this program can help determine what
181 <command>configure</command> needs to check for. It can also fill in
182 gaps in a <filename>configure.in</filename> file generated by
183 <command>autoscan</command>.]</para>
184 <indexterm zone="ch-system-autoconf ifnames">
185 <primary sortas="b-ifnames">ifnames</primary>