Ben Wing <ben(a)666.com> writes:
There is absolutely no logic to whether an option is with-FOO or
enable-FOO. This should be fixed.
The logic is supposed to be the following:
--with-foo:
Require (or disable with --require) the use of external software
that XEmacs can link with and/or interface to. Hypothetical
examples: --with-berkeley-db, --with-gnome, --with-ssl, --with-tiff
These are typically turned off to reduce the number of dependencies of
the resulting XEmacs, or sometimes to suppress autodetection of those
libraries when such autodetection is buggy.
--enable-foo:
Gives user the choice whether to include "optional compile-time
features" into his XEmacs. Hypothetical examples: --enable-md5,
--enable-optimization, --enable-bignum, --enable-error-checking,
--enable-mule
These feaures are typically turned off to reduce code size or to
remove unnecessary (error-checking), experimental (bignum) or
untrusted (mule) features from the executable.
If a feature includes both interfacing to external software and
considerable amounts of internal code, `--with' is a safe choice.
When the software is internal or must be present in the source tree,
`--enable' should be used; it should have been `--enable-infodock'.
Some options don't follow in any of those two categories, and I'm not
sure how those are "supposed" to be handled.
Why don't we just dump this distinction entirely and have
everything
be with-FOO?
The idea is that people familiar with the Autoconf conventions find
XEmacs's configure easy to use. While those conventions do not bind
us, it's a good thing to respect them when possible.