httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject Re: new /usr/local/apache2 usage, --prefix, and make install
Date Mon, 09 Apr 2001 18:54:08 GMT
On Tue, Apr 03, 2001 at 01:42:17PM -0700, Marc Slemko wrote:
> Hmm.  It is a bit of a mess trying to figure out how autoconf's
> installation prefixes and stuff like config.layout should play together
> nicely.  Note that I'm pretty sure they didn't work "right" before either,
> it just wasn't wrong in such a visible way...

Working with autoconf is indeed somewhat unpleasant.  I've spent some
time looking around (.in and .m4 files spread out all over), and testing
various things.  After all this, I'm still somewhat of the opinion that
the layout system and the autoconf directories stuff conflict ... they
shouldn't, but the way autoconf deals with those, it's hard to fix the
interactions to work as you described.

The basic problem is that the autoconf directories stuff comes from
/usr/share/autoconf/autoconf.m4f (in my system; I'm guessing the name
may vary, though the contents are likely to be similar if so).  It seems
to go into the generated configure file before anything which you
specify, and it both assigns defaults and then takes arguments on the
command line.  Here are the variables in question:


(We add a few others, which are easier to deal with).  I'm not even sure
these defaults will be the same on all OSes, let alone all releases of
autoconf.  AFAICT, no record is stored of which ones were overridden on
the command line.

So -- I see the following options (of them, I dislike 2a the least):

1) We could have layout override options specified on the command line
   (excepting prefix and exec_prefix, whose defaults are such that it's
   easy to tell if they were overridden)

2) We could attempt to use layout as a default, overriding values as
   specified on the command line.  Determining which values were
   overridden is annoying; I see the following possibilities, all of
   which are ugly:
   a) parse ac_options ourselves -- probably using the exact same logic
      that the autoconf stuff does is too painful (it'd require
      duplicating all the information about which options take
      arguments) -- but the naive approach would probably suffice:if
      we see --foo[=bar], strip [=bar] and say foo was set
   b) compare the values with the defaults above, or check to see if the
      values start with ${...} -- so that it'd not be valid to specify
      an option w/ ${prefix} or ${exec_prefix} at the begining

I'm willing to talk w/ the autoconf folks about adding add'l features,
but I'd be much more leary of suggesting that we require a more recent
version of autoconf for this alone.  If anyone has any suggestions (or
if I'm missing a simple way to tell if a variable has been set -- I
tried ${foo+set}, and I know that won't work), I'd love to hear them.

Oh, lastly -- it's easy to fix configure so that overridding prefix
and/or exec prefix can be done within the context of the layouts system.
That doesn't address all the issues, but if folks we like, I can post a
patch which does that.

thanks --


View raw message