Re: Recent readdir.h

From: Date: Tue, 22 Apr 2008 15:46:37 +0000
Subject: Re: Recent readdir.h
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-37176@lists.php.net to get a copy of this message
It's working fine here on VC6 and 2005 on XP. afaik the code was only there to deal with older versions of Windows that didn't have _WINNT32_WINNT defined. More investigation is needed to see what exactly is broken. We may just need to rebuild some of the things in zip.zip again. Scott Richard Quadling wrote:
Hi. The recent commit to TSRM/readdir.h isn't quite right. The later versions of the MS VC compiler set _WINNT32_WINNT to 0x600. This causes problems later on in fopen_wrappers.c fopen_wrappers.c C:\Program Files\Microsoft SDKs\Windows\v6.1\include\ws2tcpip.h(583) : error C2373: 'inet_pton' : redefinition; different type modifiers
        ..\php_build\include\arpa/inet.h(96) : see declaration of 'inet_pton'
C:\Program Files\Microsoft SDKs\Windows\v6.1\include\ws2tcpip.h(600) : error C2373: 'inet_ntop' : redefinition; different type modifiers
        ..\php_build\include\arpa/inet.h(97) : see declaration of 'inet_ntop'
Changing readdir.h so that it simply undef _WIN32_WINNT first, preserves PHP's value for this constant. I've attached patches for 5.3 and head (HEAD is untested). By adding and removing the patches, I can get 5.3 to compile or not. This will only be a problem when using a MS compiler which supplies a _WIN32_WINNT > 0x0400. And as I'm following the new PHP documentation on compiling PHP for windows, I hope this gets in. Regards, Richard.


« previous php.internals (#37176) next »