Unfortunately, I'm still stuck in mod_perl-1.0 world and have just found that it doesn't build with perl-5.8.8 on Win32.

The reason is this change in perl-5.8.8:

http://public.activestate.com/cgi-bin/perlbrowse?patch=26189

(Perl switched from Winsock1 to Winsock2 a while ago (change 23200), but carried on accidentally loading the Winsock1 headers in some cases. Change 26189 does its best to prevent this.)

The reason that change breaks mod_perl-1.29 is that mp1 evidently still believes that perl is using Winsock1 and includes "-D _WINSOCK2API_" in its compile flags in order to stop Winsock2 from being loaded!

Well, now that perl is using Winsock2, that's not such a great idea: I find that the mod_perl.dsp part of the build process now bombs out with hundreds of errors relating to SOCKET etc being undefined because perl's sys/socket.h doesn't actually load <winsock2.h> because _WINSOCK2API_ is already defined.

So, the attached patch fixes all this.

It works in perl-5.8.8, and also seems to work with 5.8.7 (which doesn't have 26189, but is still really using Winsock2). I haven't found time to try with 5.8.5 or earlier yet: these perls don't have change 23200 (it was integrated into 5.8.6) so they're using Winsock1, which may or may cause a problem.

Do you want me to test with 5.8.5 to see if that still works?


------------------------------------------------
Radan Computational Ltd.

The information contained in this message and any files transmitted with it are 
confidential and intended for the addressee(s) only. If you have received this 
message in error or there are any problems, please notify the sender 
immediately. The unauthorized use, disclosure, copying or alteration of this 
message is strictly forbidden. Note that any views or opinions presented in 
this email are solely those of the author and do not necessarily represent 
those of Radan Computational Ltd. The recipient(s) of this message should check 
it and any attached files for viruses: Radan Computational will accept no 
liability for any damage caused by any virus transmitted by this email.
diff -ruN mod_perl-1.29.orig/src/modules/win32/mod_perl.dsp 
mod_perl-1.29/src/modules/win32/mod_perl.dsp
--- mod_perl-1.29.orig/src/modules/win32/mod_perl.dsp   2001-07-09 
17:03:18.000000000 +0100
+++ mod_perl-1.29/src/modules/win32/mod_perl.dsp        2006-02-15 
09:10:02.631850900 +0000
@@ -42,7 +42,7 @@
 # PROP Intermediate_Dir "Release"
 # PROP Target_Dir ""
 # ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" 
/YX /FD /c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "\Perl\lib\CORE" /D "WIN32" /D "NDEBUG" 
/D "_WINSOCK2API_" /D "_MSWSOCK_" /D "_WINDOWS" /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GX /O2 /I "\Perl\lib\CORE" /D "WIN32" /D "NDEBUG" 
/D "_MSWSOCK_" /D "_WINDOWS" /YX /FD /c
 # ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
 # ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
 # ADD BASE RSC /l 0x409 /d "NDEBUG"
@@ -67,7 +67,7 @@
 # PROP Intermediate_Dir "Debug"
 # PROP Target_Dir ""
 # ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D 
"_WINDOWS" /YX /FD /c
-# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "\Perl\lib\CORE" /D "WIN32" /D 
"_DEBUG" /D "_WINSOCK2API_" /D "_MSWSOCK_" /D "_WINDOWS" /FR /YX /FD /c
+# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "\Perl\lib\CORE" /D "WIN32" /D 
"_DEBUG" /D "_MSWSOCK_" /D "_WINDOWS" /FR /YX /FD /c
 # ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
 # ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
 # ADD BASE RSC /l 0x409 /d "_DEBUG"

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

Reply via email to