autoconf.xml 4.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
  3. <!ENTITY % general-entities SYSTEM "../general.ent">
  4. %general-entities;
  5. ]>
  6. <sect1 id="ch-system-autoconf" xreflabel="Autoconf">
  7. <title>Autoconf-&autoconf-version;</title>
  8. <?dbhtml filename="autoconf.html"?>
  9. <indexterm zone="ch-system-autoconf"><primary sortas="a-Autoconf">Autoconf</primary></indexterm>
  10. <para>The Autoconf package contains programs for producing shell scripts that
  11. can automatically configure source code.</para>
  12. <screen>&buildtime; 0.5 SBU
  13. &diskspace; 7.7 MB</screen>
  14. <para>Autoconf installation depends on: Bash, Coreutils, Diffutils, Grep,
  15. M4, Make, Perl, Sed.</para>
  16. <sect2>
  17. <title>Installation of Autoconf</title>
  18. <para>Prepare Autoconf for compilation:</para>
  19. <screen><userinput>./configure --prefix=/usr</userinput></screen>
  20. <para>Compile the package:</para>
  21. <screen><userinput>make</userinput></screen>
  22. <para>To test the results, issue:
  23. <userinput>make check</userinput>. This takes a long time, about 2 SBUs.</para>
  24. <para>Install the package:</para>
  25. <screen><userinput>make install</userinput></screen>
  26. </sect2>
  27. <sect2 id="contents-autoconf"><title>Contents of Autoconf</title>
  28. <para><emphasis>Installed programs</emphasis>: autoconf, autoheader, autom4te,
  29. autoreconf, autoscan, autoupdate and ifnames</para>
  30. </sect2>
  31. <sect2><title>Short descriptions</title>
  32. <indexterm zone="ch-system-autoconf autoconf"><primary sortas="b-autoconf">autoconf</primary></indexterm>
  33. <para id="autoconf"><command>autoconf</command> is a tool for producing shell scripts
  34. that automatically configure software source code packages to adapt to many
  35. kinds of Unix-like systems. The configuration scripts it produces are
  36. independent -- running them does not require the autoconf program.</para>
  37. <indexterm zone="ch-system-autoconf autoheader"><primary sortas="b-autoheader">autoheader</primary></indexterm>
  38. <para id="autoheader"><command>autoheader</command> is a tool for creating template files
  39. of C #define statements for configure to use.</para>
  40. <indexterm zone="ch-system-autoconf autom4te"><primary sortas="b-autom4te">autom4te</primary></indexterm>
  41. <para id="autom4te"><command>autom4te</command> is a wrapper for the M4 macro
  42. processor.</para>
  43. <indexterm zone="ch-system-autoconf autoreconf"><primary sortas="b-autoreconf">autoreconf</primary></indexterm>
  44. <para id="autoreconf"><command>autoreconf</command> comes in handy when there are a lot
  45. of autoconf-generated configure scripts around. The program runs autoconf and
  46. autoheader repeatedly (where appropriate) to remake the autoconf configure
  47. scripts and configuration header templates in a given directory tree.</para>
  48. <indexterm zone="ch-system-autoconf autoscan"><primary sortas="b-autoscan">autoscan</primary></indexterm>
  49. <para id="autoscan"><command>autoscan</command> can help to create a
  50. <filename>configure.in</filename> file for a software package. It examines
  51. the source files in a directory tree, searching them for common portability
  52. problems and creates a <filename>configure.scan</filename> file that serves as
  53. as a preliminary <filename>configure.in</filename> for the package.</para>
  54. <indexterm zone="ch-system-autoconf autoupdate"><primary sortas="b-autoupdate">autoupdate</primary></indexterm>
  55. <para id="autoupdate"><command>autoupdate</command> modifies a
  56. <filename>configure.in</filename> file that still calls autoconf macros
  57. by their old names to use the current macro names.</para>
  58. <indexterm zone="ch-system-autoconf ifnames"><primary sortas="b-ifnames">ifnames</primary></indexterm>
  59. <para id="ifnames"><command>ifnames</command> can be helpful when writing a
  60. <filename>configure.in</filename> for a software package. It prints the
  61. identifiers that the package uses in C preprocessor conditionals. If a package
  62. has already been set up to have some portability, this program can help to
  63. determine what <command>configure</command> needs to check. It can fill
  64. in some gaps in a <filename>configure.in</filename> file generated by
  65. autoscan.</para>
  66. </sect2>
  67. </sect1>