Stas Bekman wrote:

Steve Hay wrote:
[...]

Having a pointer to where the mod_perl.lib library was
installed would be useful. I'm not sure calling it
MODPERL_STATIC_LIB_LOCATION would be the best thing on
Win32, as it's not a static library as such, but something
could be come up with ...




Well, if ModPerl::MM does the right thing, a developer will not even need to know where it is located. So probably leaving it as it's now is fine. The only misleading part is that MODPERL_LIB_LOCATION points to the build dir, so it should probably be renamed to reflect that.



I'm not sure that's the *only* mis-leading part, but, as you say, if it all works then it shouldn't really matter too much.


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?

- Steve



Reply via email to