@unnchapentry{Foreword}{10001}{}{1} @unnchapentry{{Part I}}{10002}{}{5} @numchapentry{Introduction}{1}{Introduction}{7} @numsecentry{What this book is}{1.1}{What this book is}{7} @numsecentry{What the book is not}{1.2}{What the book is not}{7} @numsecentry{Who should read this book}{1.3}{Who should read this book}{8} @numsecentry{How this book is organized}{1.4}{How this book is organized}{8} @numchapentry{History}{2}{History}{9} @numsecentry{The Diversity of Unix Systems}{2.1}{Unix Diversity}{9} @numsecentry{The First Configure Programs}{2.2}{First Configure Programs}{9} @numsecentry{Configure Development}{2.3}{Configure Development}{11} @numsecentry{Automake Development}{2.4}{Automake Development}{11} @numsecentry{Libtool Development}{2.5}{Libtool Development}{12} @numsecentry{Microsoft Windows}{2.6}{Microsoft Windows Development}{12} @unnchapentry{{Part II}}{10003}{}{15} @numchapentry{How to run configure and make}{3}{Invoking configure}{17} @numsecentry{Configuring}{3.1}{Configuring}{17} @numsecentry{Files generated by configure}{3.2}{Files generated by configure}{21} @numsecentry{The most useful Makefile targets}{3.3}{The most useful Makefile targets}{22} @numsecentry{Configuration Names}{3.4}{Configuration Names}{23} @numchapentry{Introducing @file {Makefile}s}{4}{Introducing Makefiles}{25} @numsecentry{Targets and dependencies}{4.1}{Targets and dependencies}{25} @numsecentry{Makefile syntax}{4.2}{Makefile syntax}{26} @numsecentry{Macros}{4.3}{Macros}{26} @numsecentry{Suffix rules}{4.4}{Suffix rules}{27} @numchapentry{A Minimal GNU Autotools Project}{5}{A Minimal GNU Autotools Project}{29} @numsecentry{User-Provided Input Files}{5.1}{User-Provided Input Files}{29} @numsecentry{Generated Output Files}{5.2}{Generated Output Files}{30} @numsecentry{Maintaining Input Files}{5.3}{Maintaining Input Files}{32} @numsecentry{Packaging Generated Files}{5.4}{Packaging Generated Files}{33} @numsecentry{Documentation and ChangeLogs}{5.5}{Documentation and ChangeLogs}{33} @numchapentry{Writing @file {configure.in}}{6}{Writing configure.in}{35} @numsecentry{What is Portability?}{6.1}{What is Portability?}{35} @numsecentry{Brief introduction to portable sh}{6.2}{Brief introduction to portable sh}{35} @numsecentry{Ordering Tests}{6.3}{Ordering Tests}{36} @numsecentry{What to check for}{6.4}{What to check for}{37} @numsecentry{Using Configuration Names}{6.5}{Using Configuration Names}{39} @numchapentry{Introducing GNU Automake}{7}{Introducing GNU Automake}{41} @numsecentry{General Automake principles}{7.1}{General Automake principles}{41} @numsecentry{Introduction to Primaries}{7.2}{Introduction to Primaries}{42} @numsecentry{The easy primaries}{7.3}{The easy primaries}{42} @numsecentry{Programs and libraries}{7.4}{Programs and libraries}{43} @numsecentry{Frequently Asked Questions}{7.5}{Frequently Asked Questions}{45} @numsecentry{Multiple directories}{7.6}{Multiple directories}{46} @numsecentry{Testing}{7.7}{Testing}{46} @numchapentry{Bootstrapping}{8}{Bootstrapping}{49} @numchapentry{A Small GNU Autotools Project}{9}{A Small GNU Autotools Project}{51} @numsecentry{GNU Autotools in Practice}{9.1}{GNU Autotools in Practice}{51} @numsubsecentry{Project Directory Structure}{9.1.1}{Project Directory Structure}{51} @numsubsecentry{C Header Files}{9.1.2}{C Header Files}{52} @numsubsecentry{C++ Compilers}{9.1.3}{C++ Compilers}{53} @numsubsecentry{Function Definitions}{9.1.4}{Function Definitions}{53} @numsubsecentry{Fallback Function Implementations}{9.1.5}{Fallback Function Implementations}{54} @numsubsecentry{K&R Compilers}{9.1.6}{K&R Compilers}{55} @numsecentry{A Simple Shell Builders Library}{9.2}{A Simple Shell Builders Library}{59} @numsubsecentry{Portability Infrastructure}{9.2.1}{Portability Infrastructure}{59} @numsubsubsecentry{Error Management}{9.2.1.1}{Error Management}{59} @numsubsubsecentry{Memory Management}{9.2.1.2}{Memory Management}{62} @numsubsubsecentry{Generalised List Data Type}{9.2.1.3}{Generalised List Data Type}{64} @numsubsecentry{Library Implementation}{9.2.2}{Library Implementation}{66} @numsubsubsecentry{@file {sic.c} & @file {sic.h}}{9.2.2.1}{sic.c & sic.h}{66} @numsubsubsecentry{@file {builtin.c} & @file {builtin.h}}{9.2.2.2}{builtin.c & builtin.h}{67} @numsubsubsecentry{@file {eval.c} & @file {eval.h}}{9.2.2.3}{eval.c & eval.h}{67} @numsubsubsecentry{@file {syntax.c} & @file {syntax.h}}{9.2.2.4}{syntax.c & syntax.h}{68} @numsubsecentry{Beginnings of a @file {configure.in}}{9.2.3}{Beginnings of a configure.in for Small Project}{68} @numsecentry{A Sample Shell Application}{9.3}{A Sample Shell Application}{74} @numsubsecentry{@file {sic_repl.c}}{9.3.1}{sic_repl.c}{74} @numsubsecentry{@file {sic_syntax.c}}{9.3.2}{sic_syntax.c}{75} @numsubsecentry{@file {sic_builtin.c}}{9.3.3}{sic_builtin.c}{76} @numsubsecentry{@file {sic.c} & @file {sic.h}}{9.3.4}{sic.c & sic.h (again)}{79} @numchapentry{Introducing GNU Libtool}{10}{Introducing GNU Libtool}{83} @numsecentry{Creating @command {libtool}}{10.1}{Creating libtool}{84} @numsecentry{The Libtool Library}{10.2}{The Libtool Library}{85} @numsubsecentry{Position Independent Code}{10.2.1}{Position Independent Code}{86} @numsubsecentry{Creating Shared Libraries}{10.2.2}{Creating Shared Libraries with libtool}{87} @numsubsecentry{Creating Static Libraries}{10.2.3}{Creating Static Libraries with libtool}{89} @numsubsecentry{Creating Convenience Libraries}{10.2.4}{Creating Convenience Libraries with libtool}{89} @numsecentry{Linking an Executable}{10.3}{Linking an Executable}{90} @numsecentry{Linking a Library}{10.4}{Linking a Library}{92} @numsubsecentry{Inter-library Dependencies}{10.4.1}{Inter-library Dependencies}{94} @numsubsecentry{Using Convenience Libraries}{10.4.2}{Using Convenience Libraries}{95} @numsecentry{Executing Uninstalled Binaries}{10.5}{Executing Uninstalled Binaries}{97} @numsecentry{Installing a Library}{10.6}{Installing a Library}{97} @numsecentry{Installing an Executable}{10.7}{Installing an Executable}{100} @numsecentry{Uninstalling}{10.8}{Uninstalling}{101} @numchapentry{Using GNU Libtool with @file {configure.in} and @file {Makefile.am}}{11}{Using GNU Libtool}{103} @numsecentry{Integration with @file {configure.in}}{11.1}{Integration with configure.in}{103} @numsubsecentry{Extra Configure Options}{11.1.1}{Extra Configure Options}{104} @numsubsecentry{Extra Macros for Libtool}{11.1.2}{Extra Macros for Libtool}{106} @numsecentry{Integration with @file {Makefile.am}}{11.2}{Integration with Makefile.am}{107} @numsubsecentry{Creating Libtool Libraries with Automake}{11.2.1}{Creating Libtool Libraries with Automake}{107} @numsubsecentry{Linking against Libtool Libraries with Automake}{11.2.2}{Linking against Libtool Libraries with Automake}{110} @numsecentry{Using libtoolize}{11.3}{Using libtoolize}{111} @numsecentry{Library Versioning}{11.4}{Library Versioning}{112} @numsecentry{Convenience Libraries}{11.5}{Convenience Libraries}{114} @numchapentry{A Large GNU Autotools Project}{12}{A Large GNU Autotools Project}{125} @numsecentry{Using Libtool Libraries}{12.1}{Using Libtool Libraries}{125} @numsecentry{Removing @option {--foreign}}{12.2}{Removing --foreign}{128} @numsecentry{Installing Header Files}{12.3}{Installing Header Files}{128} @numsecentry{Including Texinfo Documentation}{12.4}{Including Texinfo Documentation}{133} @numsecentry{Adding a Test Suite}{12.5}{Adding a Test Suite}{135} @numchapentry{Rolling Distribution Tarballs}{13}{Rolling Distribution Tarballs}{141} @numsecentry{Introduction to Distributions}{13.1}{Introduction to Distributions}{141} @numsecentry{What goes in}{13.2}{What goes in}{142} @numsecentry{The distcheck rule}{13.3}{The distcheck rule}{143} @numsecentry{Some caveats}{13.4}{Some caveats}{143} @numsecentry{Implementation}{13.5}{Implementation}{143} @numchapentry{Installing and Uninstalling Configured Packages}{14}{Installing and Uninstalling}{145} @numsecentry{Where files are installed}{14.1}{}{145} @numsecentry{Fine-grained control of install}{14.2}{}{147} @numsecentry{Install hooks}{14.3}{}{148} @numsecentry{Uninstall}{14.4}{}{149} @numchapentry{Writing Portable C with GNU Autotools}{15}{Writing Portable C}{151} @numsecentry{C Language Portability}{15.1}{C Language Portability}{151} @numsubsecentry{ISO C}{15.1.1}{ISO C}{151} @numsubsecentry{C Data Type Sizes}{15.1.2}{C Data Type Sizes}{151} @numsubsecentry{C Endianness}{15.1.3}{C Endianness}{152} @numsubsecentry{C Structure Layout}{15.1.4}{C Structure Layout}{153} @numsubsecentry{C Floating Point}{15.1.5}{C Floating Point}{153} @numsubsecentry{@sc {gnu} cc Extensions}{15.1.6}{GNU cc Extensions}{154} @numsecentry{Cross-Unix Portability}{15.2}{Cross-Unix Portability}{154} @numsubsecentry{Cross-Unix Function Calls}{15.2.1}{Cross-Unix Function Calls}{154} @numsubsecentry{Cross-Unix System Interfaces}{15.2.2}{Cross-Unix System Interfaces}{156} @numsecentry{Unix/Windows Portability}{15.3}{Unix/Windows Portability}{157} @numsubsecentry{Unix/Windows Emulation}{15.3.1}{Unix/Windows Emulation}{157} @numsubsecentry{Unix/Windows Portable Scripting Language}{15.3.2}{Unix/Windows Portable Scripting Language}{157} @numsubsecentry{Unix/Windows User Interface Library}{15.3.3}{Unix/Windows User Interface Library}{158} @numsubsecentry{Unix/Windows Specific Code}{15.3.4}{Unix/Windows Specific Code}{158} @numsubsecentry{Unix/Windows Issues}{15.3.5}{Unix/Windows Issues}{158} @numsubsubsecentry{Text and Binary Files}{15.3.5.1}{Unix/Windows Text/Binary}{158} @numsubsubsecentry{File system Issues}{15.3.5.2}{Unix/Windows Filesystems}{159} @numsubsubsecentry{DOS Filename Restrictions}{15.3.5.3}{DOS Filename Restrictions}{159} @numsubsubsecentry{Windows File Name Case}{15.3.5.4}{Windows File Name Case}{159} @numsubsubsecentry{Whitespace in File Names}{15.3.5.5}{Windows Whitespace in File Names}{159} @numsubsubsecentry{Windows Separators and Drive Letters}{15.3.5.6}{Windows Separators and Drive Letters}{159} @numsubsubsecentry{Miscellaneous Issues}{15.3.5.7}{Unix/Windows Miscellaneous}{160} @numchapentry{Writing Portable C++ with GNU Autotools}{16}{Writing Portable C++}{161} @numsecentry{Brief History of C++}{16.1}{Brief History of C++}{161} @numsecentry{Changeable C++}{16.2}{Changeable C++}{162} @numsubsecentry{Built-in bool type}{16.2.1}{Built-in bool type}{162} @numsubsecentry{Exceptions}{16.2.2}{Exceptions}{163} @numsubsecentry{Casts}{16.2.3}{Casts}{163} @numsubsecentry{Variable Scoping in For Loops}{16.2.4}{Variable Scoping in For Loops}{164} @numsubsecentry{Namespaces}{16.2.5}{Namespaces}{164} @numsubsecentry{The @code {explicit} Keyword}{16.2.6}{The explicit Keyword}{165} @numsubsecentry{The @code {mutable} Keyword}{16.2.7}{The mutable Keyword}{165} @numsubsecentry{The @code {typename} Keyword}{16.2.8}{The typename Keyword}{166} @numsubsecentry{Runtime Type Identification (@sc {rtti})}{16.2.9}{Runtime Type Identification (RTTI)}{167} @numsubsecentry{Templates}{16.2.10}{Templates}{168} @numsubsecentry{Default template arguments}{16.2.11}{Default template arguments}{169} @numsubsecentry{Standard library headers}{16.2.12}{Standard library headers}{169} @numsubsecentry{Standard Template Library}{16.2.13}{Standard Template Library}{170} @numsecentry{Compiler Quirks}{16.3}{Compiler Quirks}{170} @numsubsecentry{Template Instantiation}{16.3.1}{Template Instantiation}{170} @numsubsecentry{Name Mangling}{16.3.2}{Name Mangling}{171} @numsecentry{How GNU Autotools Can Help}{16.4}{How GNU Autotools Can Help}{173} @numsubsecentry{Testing C++ Implementations with Autoconf}{16.4.1}{Testing C++ Implementations with Autoconf}{173} @numsubsecentry{Automake C++ support}{16.4.2}{Automake C++ support}{174} @numsubsecentry{Libtool C++ support}{16.4.3}{Libtool C++ support}{174} @numsecentry{Further Reading}{16.5}{Further Reading}{175} @numchapentry{Dynamic Loading}{17}{Dynamic Loading}{177} @numsecentry{Dynamic Modules}{17.1}{Dynamic Modules}{177} @numsecentry{Module Access Functions}{17.2}{Module Access Functions}{178} @numsecentry{Finding a Module}{17.3}{Finding a Module}{179} @numsecentry{A Simple GNU/Linux Module Loader}{17.4}{A Simple GNU/Linux Module Loader}{179} @numsecentry{A Simple GNU/Linux Dynamic Module}{17.5}{A Simple GNU/Linux Dynamic Module}{183} @numchapentry{Using GNU libltdl}{18}{Using GNU libltdl}{185} @numsecentry{Introducing libltdl}{18.1}{Introducing libltdl}{185} @numsecentry{Using libltdl}{18.2}{Using libltdl}{187} @numsubsecentry{Configury}{18.2.1}{libltdl Configury}{187} @numsubsecentry{Memory Management}{18.2.2}{libltdl Memory Management}{190} @numsubsecentry{Module Loader}{18.2.3}{libltdl Module Loader}{190} @numsubsecentry{Dependent Libraries}{18.2.4}{libltdl Dependent Libraries}{194} @numsubsecentry{Dynamic Module}{18.2.5}{libltdl Dynamic Module}{195} @numsecentry{Portable Library Design}{18.3}{Portable Library Design}{196} @numsecentry{dlpreopen Loading}{18.4}{dlpreopen Loading}{198} @numsecentry{User Module Loaders}{18.5}{User Module Loaders}{200} @numsubsecentry{Loader Mechanism}{18.5.1}{libltdl Loader Mechanism}{201} @numsubsecentry{Loader Management}{18.5.2}{libltdl Loader Management}{202} @numsubsecentry{Loader Errors}{18.5.3}{libltdl Loader Errors}{203} @numchapentry{Advanced GNU Automake Usage}{19}{Advanced GNU Automake Usage}{205} @numsecentry{Conditionals}{19.1}{Automake Conditionals}{205} @numsecentry{Language support}{19.2}{Language support}{206} @numsecentry{Automatic dependency tracking}{19.3}{Automatic dependency tracking}{207} @numchapentry{A Complex GNU Autotools Project}{20}{A Complex GNU Autotools Project}{209} @numsecentry{A Module Loading Subsystem}{20.1}{A Module Loading Subsystem}{209} @numsubsecentry{Initialising the Module Loader}{20.1.1}{Initialising the Module Loader}{209} @numsubsecentry{Managing Module Loader Errors}{20.1.2}{Managing Module Loader Errors}{211} @numsubsecentry{Loading a Module}{20.1.3}{Loading a Module}{212} @numsubsecentry{Unloading a Module}{20.1.4}{Unloading a Module}{214} @numsecentry{A Loadable Module}{20.2}{A Loadable Module}{219} @numsecentry{Interpreting Commands from a File}{20.3}{Interpreting Commands from a File}{222} @numsecentry{Integrating Dmalloc}{20.4}{Integrating Dmalloc}{224} @unnchapentry{{Part III}}{10004}{}{227} @numchapentry{M4}{21}{M4}{229} @numsecentry{What does M4 do?}{21.1}{What does M4 do?}{229} @numsecentry{How GNU Autotools uses M4}{21.2}{How GNU Autotools uses M4}{229} @numsecentry{Fundamentals of M4 processing}{21.3}{Fundamentals of M4 processing}{230} @numsubsecentry{Token scanning}{21.3.1}{Token scanning}{230} @numsubsecentry{Macros and macro expansion}{21.3.2}{Macros and macro expansion}{231} @numsubsecentry{Quoting}{21.3.3}{Quoting}{233} @numsecentry{Features of M4}{21.4}{Features of M4}{234} @numsubsecentry{Discarding input}{21.4.1}{Discarding input}{234} @numsubsecentry{Macro management}{21.4.2}{Macro management}{235} @numsubsecentry{Conditionals}{21.4.3}{Conditionals}{236} @numsubsecentry{Looping}{21.4.4}{Looping}{236} @numsubsecentry{Diversions}{21.4.5}{Diversions}{237} @numsubsecentry{Including files}{21.4.6}{Including files}{237} @numsecentry{Writing macros within the GNU Autotools framework}{21.5}{Writing macros within the GNU Autotools framework}{237} @numsubsecentry{Syntactic conventions}{21.5.1}{Syntactic conventions}{238} @numsubsecentry{Debugging with M4}{21.5.2}{Debugging with M4}{238} @numchapentry{Writing Portable Bourne Shell}{22}{Writing Portable Bourne Shell}{241} @numsecentry{Why Use the Bourne Shell?}{22.1}{Why Use the Bourne Shell?}{241} @numsecentry{Implementation}{22.2}{Sh Implementation}{241} @numsubsecentry{Size Limitations}{22.2.1}{Size Limitations}{242} @numsubsecentry{#!}{22.2.2}{Magic Numbers}{242} @numsubsecentry{:}{22.2.3}{Colon}{243} @numsubsecentry{()}{22.2.4}{Functions}{244} @numsubsecentry{.}{22.2.5}{Source}{245} @numsubsecentry{[}{22.2.6}{Test}{246} @numsubsecentry{$}{22.2.7}{Variables}{248} @numsubsecentry{* versus .*}{22.2.8}{Pattern Matching}{249} @numsecentry{Environment}{22.3}{Environment}{250} @numsecentry{Utilities}{22.4}{Utilities}{251} @numchapentry{Writing New Macros for Autoconf}{23}{Writing New Macros for Autoconf}{255} @numsecentry{Autoconf Preliminaries}{23.1}{Autoconf Preliminaries}{255} @numsecentry{Reusing Existing Macros}{23.2}{Reusing Existing Macros}{255} @numsecentry{Guidelines for writing macros}{23.3}{Guidelines for writing macros}{256} @numsubsecentry{Non-interactive behavior}{23.3.1}{Non-interactive behavior}{256} @numsubsecentry{Testing system features at application runtime}{23.3.2}{Testing system features at application runtime}{256} @numsubsecentry{Output from macros}{23.3.3}{Output from macros}{256} @numsubsecentry{Naming macros}{23.3.4}{Naming macros}{257} @numsubsecentry{Macro interface}{23.3.5}{Macro interface}{258} @numsecentry{Implementation specifics}{23.4}{Implementation specifics}{259} @numsubsecentry{Writing shell code}{23.4.1}{Writing shell code}{259} @numsubsecentry{Using M4 correctly}{23.4.2}{Using M4 correctly}{259} @numsubsecentry{Caching results}{23.4.3}{Caching results}{259} @numsecentry{Future directions for macro writers}{23.5}{Future directions for macro writers}{260} @numsubsecentry{Autoconf macro archive}{23.5.1}{Autoconf macro archive}{260} @numsubsecentry{Primitive macros to aid in building macros}{23.5.2}{Primitive macros to aid in building macros}{260} @numchapentry{Migrating an Existing Package to GNU Autotools}{24}{Migrating Existing Packages}{263} @numsecentry{Why autconfiscate}{24.1}{}{263} @numsecentry{Overview of the Two Approaches}{24.2}{}{263} @numsecentry{Example: Quick And Dirty}{24.3}{}{264} @numsecentry{Example: The Full Pull}{24.4}{}{265} @numchapentry{Using GNU Autotools with Cygnus Cygwin}{25}{Integration with Cygnus Cygwin}{269} @numsecentry{Preliminaries}{25.1}{Preliminaries}{269} @numsecentry{Installing GNU Autotools on Cygwin}{25.2}{Installing GNU Autotools on Cygwin}{270} @numsecentry{Writing A Cygwin Friendly Package}{25.3}{Writing A Cygwin Friendly Package}{271} @numsubsecentry{Text vs Binary Modes}{25.3.1}{Text vs Binary Modes}{272} @numsubsecentry{File System Limitations}{25.3.2}{File System Limitations}{278} @numsubsubsecentry{8.3 Filenames}{25.3.2.1}{8.3 Filenames}{278} @numsubsubsecentry{Separators and Drive Letters}{25.3.2.2}{Separators and Drive Letters}{279} @numsubsecentry{Executable Filename Extensions}{25.3.3}{Executable Filename Extensions}{281} @numsecentry{DLLs with Libtool}{25.4}{DLLs with Libtool}{282} @numsubsecentry{DLL Support with GNU Autotools}{25.4.1}{DLL Support with GNU Autotools}{283} @numsubsecentry{A Makefile.am for DLLs}{25.4.2}{A Makefile.am for DLLs}{284} @numsubsecentry{A configure.in for DLLs}{25.4.3}{A configure.in for DLLs}{285} @numsubsecentry{Handling Data Exports from DLLs}{25.4.4}{Handling Data Exports from DLLs}{287} @numsubsecentry{Runtime Loading of DLLs}{25.4.5}{Runtime Loading of DLLs}{292} @numsecentry{Package Installation}{25.5}{Package Installation}{292} @numchapentry{Cross Compilation with GNU Autotools}{26}{Cross Compilation}{295} @numsecentry{Host and Target}{26.1}{Host and Target}{295} @numsecentry{Specifying the Target}{26.2}{Specifying the Target}{296} @numsecentry{Using the Target Type}{26.3}{Using the Target Type}{296} @numsecentry{Building with a Cross Compiler}{26.4}{Building with a Cross Compiler}{298} @numsubsecentry{Canadian Cross Example}{26.4.1}{Canadian Cross Example}{298} @numsubsecentry{Canadian Cross Concepts}{26.4.2}{Canadian Cross Concepts}{298} @numsubsecentry{Build Cross Host Tools}{26.4.3}{Build Cross Host Tools}{299} @numsubsecentry{Build and Host Options}{26.4.4}{Build and Host Options}{299} @numsubsecentry{Canadian Cross Tools}{26.4.5}{Canadian Cross Tools}{299} @numsubsecentry{Supporting Building with a Cross Compiler}{26.4.6}{Supporting Cross Compiler}{300} @numsubsubsecentry{Supporting Building with a Cross Compiler in Configure Scripts}{26.4.6.1}{Supporting Cross Compiler in Configure}{300} @numsubsubsecentry{Supporting Building with a Cross Compiler in Makefiles}{26.4.6.2}{Supporting Cross Compiler in Make}{301} @unnchapentry{{Appendices}}{10005}{}{303} @appentry{Installing GNU Autotools}{A}{Installing GNU Autotools}{305} @appsecentry{Prerequisite tools}{A.1}{Prerequisite tools}{305} @appsecentry{Downloading GNU Autotools}{A.2}{Downloading GNU Autotools}{305} @appsecentry{Installing the tools}{A.3}{Installing the tools}{306} @appentry{PLATFORMS}{B}{PLATFORMS}{307} @appentry{Generated File Dependencies}{C}{Generated File Dependencies}{313} @appsecentry{aclocal}{C.1}{aclocal process}{313} @appsecentry{autoheader}{C.2}{autoheader process}{314} @appsecentry{automake and libtoolize}{C.3}{automake and libtoolize process}{314} @appsecentry{autoconf}{C.4}{autoconf process}{314} @appsecentry{configure}{C.5}{configure process}{315} @appsecentry{make}{C.6}{make process}{315} @appentry{Autoconf Macro Reference}{D}{Autoconf Macro Reference}{317} @appentry{OPL}{E}{OPL}{327} @unnchapentry{Index}{10006}{Index}{331}