On Thu, 23 Aug 2007, Steve Hay wrote:
The problem is solved when I manually embed the manifest file for
mod_perl.so (right after "nmake", and before "nmake test" or "nmake
install").
Does the attached diff work for you? I installed VC++ 8,
and it worked for me in calling mt to embed the manifest
file, but I haven't tested it out yet, as I haven't
recompiled Perl and Apache.
--
best regards,
Randy
Index: lib/Apache2/Build.pm
===================================================================
--- lib/Apache2/Build.pm (revision 569691)
+++ lib/Apache2/Build.pm (working copy)
@@ -1592,7 +1592,10 @@
return $self->dynamic_link_header_default .
"\t$defs" .
($symbols ? ' \\' . "\n\t-pdb:$symbols" : '') .
- ' -out:$@' . "\n\n";
+ ' -out:$@' . "\n\t" .
+ 'if exist $(MODPERL_MANIFEST_LOCATION)' . " \\\n\t" .
+ 'mt /nologo /manifest $(MODPERL_MANIFEST_LOCATION)' . " \\\n\t" .
+ '/outputresource:$@;2' . "\n\n";
}
sub dynamic_link_aix {
@@ -1838,6 +1841,12 @@
if ($self->is_dynamic && (my $libs = $self->modperl_libpath)) {
print $fh $self->canon_make_attr('lib_location', $libs);
+ # Visual Studio 8 on Win32 uses manifest files
+ if (WIN32) {
+ (my $manifest = $libs) =~ s/\.lib$/.so.manifest/;
+ print $fh $self->canon_make_attr('manifest_location', $manifest);
+ }
+
print $fh $self->canon_make_attr('ap_libdir',
$self->ap_destdir(catdir $self->{MP_AP_PREFIX}, 'lib')
);
@@ -1938,7 +1947,7 @@
clean:
$(MODPERL_RM_F) *.a *.so *.xsc \
$(MODPERL_LIBNAME).exp $(MODPERL_LIBNAME).lib \
- *$(MODPERL_OBJ_EXT) *.lo *.i *.s *.pdb \
+ *$(MODPERL_OBJ_EXT) *.lo *.i *.s *.pdb *.manifest \
$(MODPERL_CLEAN_FILES) \
$(MODPERL_XS_CLEAN_FILES)
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]