You are viewing a plain text version of this content. The canonical link for it is here.
Posted to docs-dev@perl.apache.org by "Philip M. Gollucci" <pg...@p6m7g8.com> on 2005/04/06 11:24:21 UTC

MP_MAINTAINER=1

Hi,

setting MP_MAINTAINER=1 causes modperl2 to among other things try to 
build/test everything.

Unfortunately this doesn't work because --enable-maintainer-mode
to httpd's configure does not imply --enable-threads to apr's configure.

Therefore

you need to build apache with
./configure --enable-maintainer-mode --enable-threads

otherwise you get this

/home/pgollucci/dev/src/modperl rv=0 514 >make
cd "src/modules/perl" && make
cc -I/usr/home/pgollucci/dev/src/modperl/src/modules/perl 
-I/usr/home/pgollucci/dev/src/modperl/xs -I/usr/local/include/apr-1 
-I/usr/local/include/apr-1 -I/usr/local/include 
-I/home/pgollucci/dev/httpd/2.1.5-dev/include -pipe -DHAS_FPSETMASK 
-DHAS_FLOATINGPOINT_H -DDEBUGGING -fno-strict-aliasing 
-I/usr/local/include 
-I/home/pgollucci/dev/perl/5.9.3/lib/perl5/5.9.3/mach/CORE -DMOD_PERL 
-Wall -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations 
-Werror -DAP_DEBUG -DAP_HAVE_DESIGNATED_INITIALIZER -DMP_COMPAT_1X 
-DMP_DEBUG -DMP_TRACE -I/usr/home/pgollucci/dev/src/httpd/srclib/pcre 
-DAP_DEBUG -ggdb3 -O0 -DPIC -fPIC  -c modperl_util.c && mv 
modperl_util.o modperl_util.lo
modperl_util.c: In function `modperl_perl_call_list':
modperl_util.c:474: warning: implicit declaration of function 
`apr_os_thread_current'
*** Error code 1

Heres a patch  for that... I'm not sure about how you want to word this.
As if you install apr outside of apache... (good luck!) you can just 
pass --enable-threads and --enable-maintainer-mode to apr's configure 
and just --enable-maintainer-mode to httpd2's configure.

Index: user/install/install.pod
===================================================================
--- user/install/install.pod    (revision 160267)
+++ user/install/install.pod    (working copy)
@@ -464,9 +464,11 @@
    -Wmissing-declarations \
    -DAP_DEBUG -DAP_HAVE_DESIGNATED_INITIALIZER

-To use this mode Apache must be build with
-C<--enable-maintainer-mode>.
+To use this mode Apache and APR must be build with
+C<--enable-maintainer-mode>.  APR must also be compiled
+with C<--enable-threads>.

+
  =head4 MP_TRACE

  Enable tracing

-- 
END
------------------------------------------------------------------------------ 

Philip M. Gollucci
Consultant
E-Mail: pgollucci@p6m7g8.com
URL   : http://p6m7g8.net/Resume/resume.shtml
Phone : 301.254.5198

$Id: .signature,v 1.7 2004/09/05 23:46:37 philip Exp $


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


Re: mirroring

Posted by Stas Bekman <st...@stason.org>.
[reply-all please :)]

Philip M. Golllucci wrote:
> Stas Bekman wrote:
> 
>> Philip please see:
>> http://perl.apache.org/download/docs.html#Mirroring_the_Site
>>
> Sphew... I thought I asked an FAQ.  I read that... What I meant was
> would it actualy get any use by the community for me to put a mirror on 
> a public server?  I hope I didn't miss the answer to that 2x.
> 
> If not, I'll save my bandwithd for an FBSD mirror.

As we decided not to try to maintain a list of mirrors and advertise 
those, it's up to you. You can set up a mirror and somehow let others pick 
it over the main one.  This doc is really about just how to setup a 
mirror... At the moment perl.apache.org is not really looking for official 
mirrors :)

Thank you for offering one, Philip.


-- 
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

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


Re: mirroring

Posted by Stas Bekman <st...@stason.org>.
Philip M. Gollucci wrote:
> Hi,
> 
> I've got some servers in a coloc in Virigina that don't do much...
> would there be anypoint to me mirror the perl.apache.org site there
> other then for my own kicks ?

Philip please see:
http://perl.apache.org/download/docs.html#Mirroring_the_Site

-- 
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org 
mailto:stas@stason.org http://use.perl.org http://apacheweek.com  
http://modperlbook.org http://apache.org   http://ticketmaster.com

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


mirroring

Posted by "Philip M. Gollucci" <pg...@p6m7g8.com>.
Hi,

I've got some servers in a coloc in Virigina that don't do much...
would there be anypoint to me mirror the perl.apache.org site there
other then for my own kicks ?



END
------------------------------------------------------
Philip M. Gollucci (pgollucci@p6m7g8.com) 301.254.5198
Consultant / http://p6m7g8.net/Resume/resume.shtml

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


Re: MP_MAINTAINER=1

Posted by "Philip M. Gollucci" <pg...@p6m7g8.com>.
 > I seem to recall that apr inherited some foo from prior builds such
 > that I couldn't 'make realclean' and start over in the same httpd
 > directory and go from worker to prefork and _not_ get a threaded apr. 
  > but that was a long time ago, so who knows.  but regardless, make 
sure > you try with a fresh heckout of httpd and apr, just in case it's
 > something similar that's tripping you up.
 > --Geoff
Thanks Geoff.

I'm looking into this currently.

P.S.
I think you want run in httpd2's directory
make distclean

END
------------------------------------------------------
Philip M. Gollucci (pgollucci@p6m7g8.com) 301.254.5198
Consultant / http://p6m7g8.net/Resume/resume.shtml

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


Re: MP_MAINTAINER=1

Posted by Geoffrey Young <ge...@modperlcookbook.org>.

Philip M. Gollucci wrote:
> Hi,
> 
> setting MP_MAINTAINER=1 causes modperl2 to among other things try to
> build/test everything.
> 
> Unfortunately this doesn't work because --enable-maintainer-mode
> to httpd's configure does not imply --enable-threads to apr's configure.
> 
> Therefore
> 
> you need to build apache with
> ./configure --enable-maintainer-mode --enable-threads
> 

stas probably has a better idea about this than I do, but I build with
--enable-maintainer and MP_MAINTAINER=1 every night without issue.  the
matrix of what I build is this

  perl-threaded   + prefork
  perl-threaded   + worker
  perl-unthreaded + prefork

each with a separate httpd checkout so apr doesn't inherit flags from prior
builds.  my exact httpd build-line is this:

NOTEST_CFLAGS="-Werror"  CFLAGS="-DAP_UNSAFE_ERROR_LOG_UNESCAPED"
./configure --prefix=$target --with-mpm=$mpm --enable-maintainer-mode
--enable-mods-shared=all --without-execstrip --enable-modules=all
--enable-deflate=shared  --enable-proxy=shared --disable-log-forensic

I seem to recall that apr inherited some foo from prior builds such that I
couldn't 'make realclean' and start over in the same httpd directory and go
from worker to prefork and _not_ get a threaded apr.  but that was a long
time ago, so who knows.  but regardless, make sure you try with a fresh
checkout of httpd and apr, just in case it's something similar that's
tripping you up.

--Geoff

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


Re: MP_MAINTAINER=1

Posted by "Philip M. Gollucci" <pg...@p6m7g8.com>.
 >No, it's just that we always have to #if APR_HAS_THREADS any apr 
threads functions. And that wasn't >the case with that tracing function.
Actually I'm not sure... I discovered that even if you pass --with-apr 
and --with-apr-util
to ./configure for httpd2 the full paths to already installed 
apr-1-config and apu-1-config it will still find and use the one in your 
path first...

I installed svn via ports tree originally with installed a non-threaded 
apr in my /usr/local/lib
which was being linked against despite my configure args.  -- Thus the 
whole reason I rebuilt
svn (first with https support)

I'm not entirely sure your patch is neccessary; but thats for the quick 
feedback.

 I'll retest.... Probably Thursday night.



-- 
END
-----------------------------------------------------------------------------
Philip M. Gollucci
Senior Developer - Liquidity Services Inc.
Phone:  202.568.6268 (Direct)
E-Mail: pgollucci@liquidation.com
Web:    http://www.liquidation.com


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


Re: MP_MAINTAINER=1

Posted by Stas Bekman <st...@stason.org>.
Geoffrey Young wrote:
>>>modperl_util.c: In function `modperl_perl_call_list':
>>>modperl_util.c:474: warning: implicit declaration of function
>>>`apr_os_thread_current'
>>>*** Error code 1
>>
>>
>>This should fix the problem, Philip:
> 
> 
> as usual, stas is all over things :)
> 
> is/was this a platform issue?  I'm a little boggled why we all didn't see
> it, so the only thing that comes to mind is that apr chooses some parts of
> it's threading api based on your platform (linux, bsd, whatever).  at least
> that's what comes to mind through the cobwebs...

No, it's just that we always have to #if APR_HAS_THREADS any apr threads 
functions. And that wasn't the case with that tracing function.


-- 
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

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


Re: MP_MAINTAINER=1

Posted by Geoffrey Young <ge...@modperlcookbook.org>.
>> modperl_util.c: In function `modperl_perl_call_list':
>> modperl_util.c:474: warning: implicit declaration of function
>> `apr_os_thread_current'
>> *** Error code 1
> 
> 
> This should fix the problem, Philip:

as usual, stas is all over things :)

is/was this a platform issue?  I'm a little boggled why we all didn't see
it, so the only thing that comes to mind is that apr chooses some parts of
it's threading api based on your platform (linux, bsd, whatever).  at least
that's what comes to mind through the cobwebs...

--Geoff

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


Re: MP_MAINTAINER=1

Posted by Stas Bekman <st...@stason.org>.
Philip M. Gollucci wrote:
> Hi,
> 
> setting MP_MAINTAINER=1 causes modperl2 to among other things try to 
> build/test everything.
> 
> Unfortunately this doesn't work because --enable-maintainer-mode
> to httpd's configure does not imply --enable-threads to apr's configure.
> 
> Therefore
> 
> you need to build apache with
> ./configure --enable-maintainer-mode --enable-threads
> 
> otherwise you get this
> 
> /home/pgollucci/dev/src/modperl rv=0 514 >make
> cd "src/modules/perl" && make
> cc -I/usr/home/pgollucci/dev/src/modperl/src/modules/perl 
> -I/usr/home/pgollucci/dev/src/modperl/xs -I/usr/local/include/apr-1 
> -I/usr/local/include/apr-1 -I/usr/local/include 
> -I/home/pgollucci/dev/httpd/2.1.5-dev/include -pipe -DHAS_FPSETMASK 
> -DHAS_FLOATINGPOINT_H -DDEBUGGING -fno-strict-aliasing 
> -I/usr/local/include 
> -I/home/pgollucci/dev/perl/5.9.3/lib/perl5/5.9.3/mach/CORE -DMOD_PERL 
> -Wall -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations 
> -Werror -DAP_DEBUG -DAP_HAVE_DESIGNATED_INITIALIZER -DMP_COMPAT_1X 
> -DMP_DEBUG -DMP_TRACE -I/usr/home/pgollucci/dev/src/httpd/srclib/pcre 
> -DAP_DEBUG -ggdb3 -O0 -DPIC -fPIC  -c modperl_util.c && mv 
> modperl_util.o modperl_util.lo
> modperl_util.c: In function `modperl_perl_call_list':
> modperl_util.c:474: warning: implicit declaration of function 
> `apr_os_thread_current'
> *** Error code 1

This should fix the problem, Philip:

Index: src/modules/perl/modperl_util.h
===================================================================
--- src/modules/perl/modperl_util.h     (revision 160192)
+++ src/modules/perl/modperl_util.h     (working copy)
@@ -102,7 +102,11 @@
  void modperl_package_unload(pTHX_ const char *package);
  #if defined(MP_TRACE) && defined(APR_HAS_THREADS)
  #define MP_TRACEf_TID   "/tid 0x%lx"
+#if APR_HAS_THREADS
  #define MP_TRACEv_TID   (unsigned long)apr_os_thread_current()
+#else
+#define MP_TRACEv_TID   0
+#endif
  #define MP_TRACEv_TID_  MP_TRACEv_TID,
  #define MP_TRACEv__TID  ,MP_TRACEv_TID
  #else


-- 
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

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