Using `autoscan' to Create `configure.ac'
=========================================
The `autoscan' program can help you create and/or maintain a
`configure.ac' file for a software package. `autoscan' examines source
files in the directory tree rooted at a directory given as a command
line argument, or the current directory if none is given. It searches
the source files for common portability problems and creates a file
`configure.scan' which is a preliminary `configure.ac' for that
package, and checks a possibly existing `configure.ac' for completeness.
When using `autoscan' to create a `configure.ac', you should
manually examine `configure.scan' before renaming it to `configure.ac';
it will probably need some adjustments. Occasionally, `autoscan'
outputs a macro in the wrong order relative to another macro, so that
`autoconf' produces a warning; you need to move such macros manually.
Also, if you want the package to use a configuration header file, you
must add a call to `AC_CONFIG_HEADERS' (Note:Configuration Headers).
You might also have to change or add some `#if' directives to your
program in order to make it work with Autoconf (Note:ifnames
Invocation, for information about a program that can help with that
job).
When using `autoscan' to maintain a `configure.ac', simply consider
adding its suggestions. The file `autoscan.log' will contain detailed
information on why a macro is requested.
`autoscan' uses several data files (installed along with Autoconf)
to determine which macros to output when it finds particular symbols in
a package's source files. These data files all have the same format:
each line consists of a symbol, whitespace, and the Autoconf macro to
output if that symbol is encountered. Lines starting with `#' are
comments.
`autoscan' accepts the following options:
`--help'
`-h'
Print a summary of the command line options and exit.
`--version'
`-V'
Print the version number of Autoconf and exit.
`--verbose'
`-v'
Print the names of the files it examines and the potentially
interesting symbols it finds in them. This output can be
voluminous.
`--include=DIR'
`-I DIR'
Also look for input files in DIR. Multiple invocations
accumulate. Directories are browsed from last to first.