Steve Hay wrote:
[...]
What other misleading parts are we talking about?


I'm just getting confused with changes in Apache itself, I think. Apache 1 used to have "lib", "libexec" and "modules": "lib" stored the static .lib's, "libexec" stored the import libraries for various dll's, and "modules" stored the .so (aka .dll) files for Apache modules.

But with Apache 2, I have only "lib" and "modules". The latter still (rightly) contains just the .so files for Apache modules, so presumably all the static *and* import libraries are thrown together into "lib" now?

Now, my mp2's Apache::BuildConfig contains this:

                'MODPERL_AP_LIBDIR' => 'C:\\apache2/lib',
                'MODPERL_AP_LIBEXECDIR' => 'C:\\apache2/modules',

which I find confusing. The first line there is fine, but the second line seems wrong. One would think that MODPERL_AP_LIBEXECDIR specifies where Apache's "libexec" directory is, but there isn't one any more! Furthermore, it seems that the files that would have been in it are now in "lib"?

So maybe MODPERL_AP_LIBEXECDIR should say "C:\\apache2/lib" (that's an ugly mess of back- and forward slashes too), and that should be used as the location to install mod_perl.lib into (since mod_perl.lib is one of these import library things). That would be wrong as things stand, though, because MODPERL_AP_LIBEXECDIR seems to be used as the location to install mod_perl.so, which should indeed be "C:\\apache2/modules".

Perhaps the simplest thing would be to rename MODPERL_AP_LIBEXECDIR to MODPERL_AP_MODDIR since it specifies where Apache's "modules" directory is and there isn't a "libexec" anymore?

It's the problem with apxs then, since mp2 just uses the same names as apxs:


~/httpd/prefork/bin/apxs -q LIBEXECDIR
/home/stas/httpd/prefork/modules

~/httpd/prefork/bin/apxs -q LIBDIR
/home/stas/httpd/prefork/lib

I'm not sure if we want to contradict apxs on that.

My suggestion is to remove the need for developers to know about those dirs/vars and have it all abstracted behind ModPerl::MM (which already does most of it). If it gets ported to mp1 and uses the same API then no matter what happens behind the scenes it'll do the right thing for the developer.

__________________________________________________________________
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



Reply via email to