\chapentry {Introduction}{1}{1} \chapentry {General ideas}{2}{1} \secentry {General Operation}{2}{1}{1} \secentry {Depth}{2}{2}{2} \secentry {Strictness}{2}{3}{2} \secentry {The Uniform Naming Scheme}{2}{4}{3} \secentry {How derived variables are named}{2}{5}{4} \chapentry {Some example packages}{3}{4} \secentry {A simple example, start to finish}{3}{1}{4} \secentry {A classic program}{3}{2}{5} \secentry {Building etags and ctags}{3}{3}{6} \chapentry {Creating a \file {Makefile.in}}{4}{7} \chapentry {Scanning \file {configure.in}}{5}{9} \secentry {Configuration requirements}{5}{1}{9} \secentry {Other things Automake recognizes}{5}{2}{10} \secentry {Auto-generating aclocal.m4}{5}{3}{12} \secentry {Autoconf macros supplied with Automake}{5}{4}{12} \secentry {Writing your own aclocal macros}{5}{5}{14} \chapentry {The top-level \file {Makefile.am}}{6}{14} \chapentry {Building Programs and Libraries}{7}{15} \secentry {Building a program}{7}{1}{15} \secentry {Building a library}{7}{2}{17} \secentry {Special handling for LIBOBJS and ALLOCA}{7}{3}{17} \secentry {Building a Shared Library}{7}{4}{17} \secentry {Variables used when building a program}{7}{5}{18} \secentry {Yacc and Lex support}{7}{6}{18} \secentry {C{\tt\char43}{\tt\char43} and other languages}{7}{7}{20} \secentry {Automatic de-ANSI-fication}{7}{8}{20} \secentry {Automatic dependency tracking}{7}{9}{21} \chapentry {Other Derived Objects}{8}{22} \secentry {Executable Scripts}{8}{1}{22} \secentry {Header files}{8}{2}{22} \secentry {Architecture-independent data files}{8}{3}{22} \secentry {Built sources}{8}{4}{23} \chapentry {Other GNU Tools}{9}{23} \secentry {Emacs Lisp}{9}{1}{23} \secentry {Gettext}{9}{2}{23} \secentry {Guile}{9}{3}{24} \secentry {Libtool}{9}{4}{24} \secentry {Java}{9}{5}{24} \chapentry {Building documentation}{10}{24} \secentry {Texinfo}{10}{1}{24} \secentry {Man pages}{10}{2}{25} \chapentry {What Gets Installed}{11}{25} \chapentry {What Gets Cleaned}{12}{26} \chapentry {What Goes in a Distribution}{13}{26} \chapentry {Support for test suites}{14}{27} \chapentry {Changing Automake's Behavior}{15}{28} \chapentry {Miscellaneous Rules}{16}{29} \secentry {Interfacing to \code {etags}}{16}{1}{29} \secentry {Handling new file extensions}{16}{2}{30} \chapentry {Conditionals}{17}{30} \chapentry {The effect of \code {--gnu} and \code {--gnits}}{18}{31} \chapentry {The effect of \code {--cygnus}}{19}{31} \chapentry {When Automake Isn't Enough}{20}{32} \chapentry {Distributing \file {Makefile.in}s}{21}{32} \chapentry {Some ideas for the future}{22}{33} \unnumbchapentry {Index}{33} .