Philippe M. Chiasson wrote:
After thinkering about all the problems with my initial solutions
and looking a bit more closely at httpd's build system, I've come
up with a solution that doesn't involve any patching.

It would be used like this

$> perl Makefile.PL \
    MP_USE_STATIC=1 \
    MP_AP_CONFIGURE="--with-mpm=prefork --enable-debug [...]"
$> make

The Makefile.PL runs httpd's ./configure and enables mod_perl
The make command will build httpd first and then mod_perl (a required
order)

Excellent. That's very much like mp1 did it.


Should we think right away about how to do the flexible build, ala mp1? So one can link httpd statically with mod_perl and other 3rd party modules which require a separate build (php?). Or should we handle that one later?

There are 2 small issues left that I can think of.

First, should make install also install httpd ? Or maybe use another
configurable option MP_AP_INSTALL=1 to control it

Second, right now, make test will only work if called like

$> make test APACHE_TEST_HTTPD=/path/to/httpd/src/httpd

I can't figure out how to pass this httpd location to t/TEST at
configure time to avoid this. Stas ?

I guess the two are somewhat related. It has been ages since I last tried to test against uninstalled httpd. Does it still work at all? If I remember correctly there were too many problems with that approach. And if that's the case. We may need to first install httpd, then test modperl and then install modperl. If there are no problems, then modperl's make install should install httpd as well, as it did in mp1 (plus note my question above regarding the flexible build).


If we go with 'make test' against the source, then it's easy - we know the location of the source dir and we know the relative location of httpd executable. So just set -httpd /path/to/httpd from Makefile.PL, before creating t/TEST. Actually I think that we already handle that case internally (at least we did when we tried to make 'make test' work against the source).

If we go with 'make test' against the post-install httpd, then we have no idea what's the location, besides snooping on some httpd config files or using apxs if available. i.e. apachectl knows where httpd is located, so we should look at how apachectl finds it out and do the same.

+ if ($build->do_httpd) {

can this be $build->should_configure_httpd?


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

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to