autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: specifying multiple with arguments


From: Dan Manthey
Subject: Re: specifying multiple with arguments
Date: Tue, 15 Mar 2005 17:59:34 -0500



On Tue, 15 Mar 2005, Braden McDaniel wrote:

> On Tue, 2005-03-15 at 16:25 -0500, Dan Manthey wrote:
> > You're confusing the semantics of --enable-* and --with-*.
>
> I'm not.

Okay.  It just seemed that --enable-foo=a --enable-foo=b setting
$enable_foo to only 'b' makes a lot more sense to me than the
corresponding use of --with-*.

>
> >   --with-* is
> > intended to specify use of an optional external package and as such often
> > needs to have the external package's location specified (e.g.
> > --with-X=/usr/local/X11R6).
>
> CPPFLAGS, LDFLAGS are generally better for that.

Quoth the AC manual (node: External Software):

Some packages require, or can optionally use, other software packages
that are already installed.
[...]
   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 you consider a "package" to instead be an
> > interface, say to a set of functions, it becomes sensible to specify
> > multiple implementing packages that each provide the interface (e.g.
> > --with-line-ui=readline,some-other-thing).  I don't know if such an
> > interpretation is sanctioned by Autoconf, but it's well within the scope
> > of --with-*, in which case, it may be reasonable for --with-foo=bar,quux
> > to also be expressed as --with-foo=bar --with-foo=quux.
>
> Better, IMO, to provide mutually exclusive options and emit an error
> message if they are used together.
>

My point was specifially about situations in which the specfied packages
are _not_ mutually exclusive, so that doesn't pertain.

-Dan





reply via email to

[Prev in Thread] Current Thread [Next in Thread]