Some packages require, or can optionally use, other software packages
which are already installed. The user can give configure
command line options to specify which such external software to use.
The options have one of these forms:
--with-package[=arg] --without-package
For example, `--with-gnu-ld' means work with the GNU linker instead of some other linker. `--with-x' means work with The X Window System.
The user can give an argument by following the package name with `=' and the argument. Giving an argument of `no' is for packages that are used by default; it says to not use the package. An argument that is neither `yes' nor `no' could include a name or number of a version of the other package, to specify more precisely which other package this program is supposed to work with. If no argument is given, it defaults to `yes'. `--without-package' is equivalent to `--with-package=no'.
configure
scripts do not complain about
`--with-package' options that they do not support.
This behavior permits configuring a source tree containing multiple
packages with a top-level configure
script when the packages
support different options, without spurious error messages about options
that some of the packages support.
An unfortunate side effect is that option spelling errors are not diagnosed.
No better approach to this problem has been suggested so far.
For each external software package that may be used, `configure.in'
should call AC_ARG_WITH
to detect whether the configure
user asked to use it. Whether each package is used or not by
default, and which arguments are valid, is up to you.
configure
the option `--with-package'
or `--without-package', run shell commands
action-if-given. If neither option was given, run shell commands
action-if-not-given. The name package indicates another
software package that this program should work with. It should consist
only of alphanumeric characters and dashes.
The option's argument is available to the shell commands
action-if-given in the shell variable withval
, which is
actually just the value of the shell variable with_package
,
with any `-' characters changed into `_'.
You may use that variable instead, if you wish.
The argument help-string is a description of the option which looks like this:
--with-readline support fancy command line editing
help-string may be more than one line long, if more detail is needed. Just make sure the columns line up in `configure --help'. Avoid tabs in the help string. You'll need to enclose it in `[' and `]' in order to produce the leading spaces.
AC_ARG_WITH
that does not
support providing a help string.
Go to the first, previous, next, last section, table of contents.