You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@perl.apache.org by Geoffrey Young <ge...@modperlcookbook.org> on 2004/09/02 23:44:19 UTC

Re: cvs commit: modperl-2.0 Changes


stas@apache.org wrote:
> stas        2004/08/25 10:20:11
> 
>   Modified:    lib/Apache Build.pm
>                .        Changes
>   Log:
>   fix the modperl build, where httpd has been built against separate
>   installations of apr-util and apr, where apr-util has been installed
>   with a different includedir to apr.
>   Submitted by:	Joe Orton

hey joe :)

did this patch alone really solve the problem for you?  I can't get mod_perl
to compile against httpd-2.1-rc1 with an external apr/apu.

here's what I did (which sounds exactly like what you described in the other
thread):

build apr and apr-util from cvs HEAD an install to:
  /apr/1.0/bin/apr-1-config
  /apr-util/1.0/bin/apr-1-config

build httpd-2.1.0-rc1 with the following:

 NOTEST_CFLAGS="-Werror"  CFLAGS="-DAP_UNSAFE_ERROR_LOG_UNESCAPED"
./configure --with-mpm=worker --enable-maintainer-mode
--enable-mods-shared=all --without-execstrip --enable-modules=all
--enable-deflate=shared  --enable-proxy=shared --disable-log-forensic
--prefix=/apache/2.1.0-rc1 --with-apr=/apr/1.0/bin/apr-1-config
--with-apr-util=/apr-util/1.0/bin/apu-1-config

the point mod_perl cvs against that apache:

   $ perl Makefile.PL MP_APXS=/apache/2.1.0-rc1/bin/apxs

mod_perl eventually errors out on make with:

cc -I/src/mod_perl-2.0/src/modules/perl -I/src/mod_perl-2.0/xs
-I/apr/1.0/include/apr-1 -I/apache/2.1.0-rc1/include -D_REENTRANT
-D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe
-I/usr/local/include -I/usr/include/gdbm
-I/perl/perl-5.8.5/lib/5.8.5/i686-linux-thread-multi/CORE -DMOD_PERL -Wall
-Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations -Werror
-DAP_DEBUG -DAP_HAVE_DESIGNATED_INITIALIZER -DMP_DEBUG -DMP_TRACE -DLINUX=2
-D_LARGEFILE64_SOURCE -DAP_DEBUG -g -fpic \
-c mod_perl.c && mv mod_perl.o mod_perl.lo
In file included from /apache/2.1.0-rc1/include/httpd.h:29,
                 from modperl_apache_includes.h:26,
                 from mod_perl.h:19,
                 from mod_perl.c:16:
/apache/2.1.0-rc1/include/ap_config.h:20:23: apr_hooks.h: No such file or
directory

so it looks like /apr-util/1.0/include/apr-1/ and /apr/1.0/include/apr-1/
are still both missing.

--Geoff

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: cvs commit: modperl-2.0 Changes

Posted by Geoffrey Young <ge...@modperlcookbook.org>.
> Oh, no, it doesn't work :(.  I swear I tested this, but I guess I forgot
> to revert the other changes in the patch properly.
> 
> It's not picking up apu-config properly because it looks in APR_BINDIR
> rather than APU_BINDIR.  This *really* fixes it:

yup, that did the trick - committed.  thanks joe!

--Geoff

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Re: cvs commit: modperl-2.0 Changes

Posted by Joe Orton <jo...@redhat.com>.
On Thu, Sep 02, 2004 at 05:44:19PM -0400, Geoffrey Young wrote:
> 
> 
> stas@apache.org wrote:
> > stas        2004/08/25 10:20:11
> > 
> >   Modified:    lib/Apache Build.pm
> >                .        Changes
> >   Log:
> >   fix the modperl build, where httpd has been built against separate
> >   installations of apr-util and apr, where apr-util has been installed
> >   with a different includedir to apr.
> >   Submitted by:	Joe Orton
> 
> hey joe :)
> 
> did this patch alone really solve the problem for you?  I can't get mod_perl
> to compile against httpd-2.1-rc1 with an external apr/apu.

Oh, no, it doesn't work :(.  I swear I tested this, but I guess I forgot
to revert the other changes in the patch properly.

It's not picking up apu-config properly because it looks in APR_BINDIR
rather than APU_BINDIR.  This *really* fixes it:

Index: lib/Apache/Build.pm
===================================================================
RCS file: /home/cvspublic/modperl-2.0/lib/Apache/Build.pm,v
retrieving revision 1.172
diff -u -r1.172 Build.pm
--- lib/Apache/Build.pm	25 Aug 2004 17:20:00 -0000	1.172
+++ lib/Apache/Build.pm	3 Sep 2004 06:01:50 -0000
@@ -975,6 +975,7 @@
 
     my $key = "${what}_config_path"; # apr_config_path
     my $mp_key = "MP_" . uc($what) . "_CONFIG"; # MP_APR_CONFIG
+    my $bindir = uc($what) . "_BINDIR"; # APR_BINDIR
 
     return $self->{$key} if $self->{$key} and -x $self->{$key};
 
@@ -993,7 +994,7 @@
         }
         else {
             push @tries, grep length,
-                map $self->apxs(-q => $_), qw(APR_BINDIR BINDIR);
+                map $self->apxs(-q => $_), $bindir, "BINDIR";
             push @tries, catdir $self->{MP_AP_PREFIX}, "bin"
                 if exists $self->{MP_AP_PREFIX} and -d $self->{MP_AP_PREFIX};
         }

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org