Hi all,

I'm a maintainer of the Python library gevent which wraps libev. When compiling 
the latest release of libev using the relatively-recently-released Visual 
Studio 14 (aka 2015) for both 32- and 64-bit environments we got compilation 
errors like these:

C:\Program Files (x86)\Windows 
Kits\10\include\10.0.10240.0\ucrt\sys/timeb.h(25): error C2032: '__timezone': 
function cannot be member of struct '__timeb32' 
C:\Program Files (x86)\Windows 
Kits\10\include\10.0.10240.0\ucrt\sys/timeb.h(33): error C2032: '__timezone': 
function cannot be member of struct '__timeb64' 
C:\Program Files (x86)\Windows 
Kits\10\include\10.0.10240.0\ucrt\sys/timeb.h(42): error C2032: '__timezone': 
function cannot be member of struct 'timeb' 

Our solution was to remove the include of <sys/timeb.h> in ev_win32.c. (As far 
as I can tell, that hasn't been necessary since sometime in 2009 when the code 
was changed to use GetSystemTimeAsFileTime.) After that, libev compiles and 
runs using Visual Studio 14, Visual Studio C++ 9 For Python, Visual Studio 9, 
and Visual Studio 10. timeb.h is noted to contain "xsi legacy functionality", 
so I'm not sure if it's not being maintained properly anymore, or exactly what 
the issue was (I don't have access to debug on the windows virtual machine in 
use because it's a CI server, I just get the build logs)---all I know is that 
taking out the import fixed the problem.

I hope this is a helpful report.

Thanks,
Jason
_______________________________________________
libev mailing list
[email protected]
http://lists.schmorp.de/mailman/listinfo/libev

Reply via email to