perl-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stas Bekman <>
Subject Re: Some small fixes...
Date Thu, 12 May 2005 21:56:59 GMT
Nick *** wrote:
>  >> Why MP_AP_PREFIX and MP_APR_CONFIG cannot be used together? I guess 
>  >> this is valid only when MP_AP_PREFIX is pointing to an installed httpd,
>  >>  because when MP_AP_PREFIX is pointing to a source tree, I can get
>  >> around this check by adding MP_AP_CONFIGURE="--with-apr=...". It's
>  >> logical to me that this check should work only when MP_AP_PREFIX is not
>  >> pointing to a source tree, because, I think, it shouldn't be possible
>  >> to build mod_perl with different apr than the one httpd was build with.
>  >> But then again, if the above is true, there should be the same check
>  >> for MP_APR_CONFIG and MP_APXS, because as I see in Apache2::Build,
>  >> MP_APR_CONFIG will take precedence over the value supplied by apxs. Is
>  >> my guess a good one?
>  >
>  >While MP_AP_PREFIX originally was used to point to the install tree, it's 
>  >no longer the case. MP_AP_PREFIX should only be used when building a 
>  >statically linked httpd/mod_perl. In which case you don't need 
>  >MP_APR_CONFIG, since all the needed sources live under MP_AP_PREFIX.
> But if I have previously installed apr in /usr/apr,
> and when I want to build a static MP and want both apache and MP to use /usr/apr instead
of srclib/apr, I'd like to use
> perl Makefile.PL MP_AP_PREFIX=../httpd MP_APR_CONFIG=/usr/apr/apr-config

Hmm. So are you saying that if mod_perl builds against source it won't be 
using the right apr? Philippe, what are you saying about this? I'd expect 
that once the static httpd+mod_perl are installed the apr stuff is 
installed too and the everybody uses that installed apr. Isn't that the case?

>  >Why would you want to use a different libapr? If you do that you will end 
>  >up with Apache linking against one libapr and mod_perl against another, 
>  >which is a certain way to get things crashed.
> Yes, the following patch fixes that. What it does is:
> 1. Allow the use of both MP_AP_PREFIX and MP_AP(R|U)_CONFIG when MP_AP_PREFIX is pointing
to a source tree.
> 2. Currently, if it's a static build and MP_AP(R|U)_CONFIG is set, mod_perl will use
it, but apache won't. It's fixed now. Note that
> if both MP_APR_CONFIG and MP_AP_CONFIGURE="--with-apr=..." are set, MP_APR_CONFIG will
take precedence.

Let's discuss this some more, since I think we make things too complicated.

> 3. A better check whether --with-apr=/path is a file

> Index: lib/Apache2/
> ===================================================================
> @@ -1116,7 +1127,7 @@
>              if ($self->{MP_AP_CONFIGURE} &&
>                  $self->{MP_AP_CONFIGURE} =~ /--with-${what_long}=(\S+)/) {
>                  my $dir = $1;
> -                $dir =~ s/$config$// unless -d $dir;
> +                $dir = dirname($dir) if -e $dir and !-d $dir;
>                  push @tries, grep -d $_, $dir, catdir $dir, 'bin';

may be just this?

   $dir = dirname $dir if -f $dir;

Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker     mod_perl Guide --->

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message