1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 #ifndef ZEND_CONFIG_W32_H
23 #define ZEND_CONFIG_W32_H
24
25 #include <../main/config.w32.h>
26
27 #define _CRTDBG_MAP_ALLOC
28
29 #include <malloc.h>
30 #include <stdlib.h>
31 #include <crtdbg.h>
32
33 #include <string.h>
34
35 #ifndef ZEND_INCLUDE_FULL_WINDOWS_HEADERS
36 #define WIN32_LEAN_AND_MEAN
37 #endif
38 #include <winsock2.h>
39 #include <windows.h>
40
41 #include <float.h>
42
43 typedef unsigned long ulong;
44 typedef unsigned int uint;
45
46 #define HAVE_STDIOSTR_H 1
47 #define HAVE_CLASS_ISTDIOSTREAM
48 #define istdiostream stdiostream
49
50 #if _MSC_VER < 1900
51 #define snprintf _snprintf
52 #endif
53 #define strcasecmp(s1, s2) _stricmp(s1, s2)
54 #define strncasecmp(s1, s2, n) _strnicmp(s1, s2, n)
55 #define zend_isinf(a) ((_fpclass(a) == _FPCLASS_PINF) || (_fpclass(a) == _FPCLASS_NINF))
56 #define zend_finite(x) _finite(x)
57 #define zend_isnan(x) _isnan(x)
58
59 #define zend_sprintf sprintf
60
61
62
63
64 #ifdef ZEND_WIN32_FORCE_INLINE
65
66 # ifndef _ALLOW_KEYWORD_MACROS
67 # define _ALLOW_KEYWORD_MACROS
68 # endif
69 # undef inline
70 # define inline __forceinline
71 #elif !defined(ZEND_WIN32_KEEP_INLINE)
72 # undef inline
73 # define inline
74 #endif
75
76 #ifdef LIBZEND_EXPORTS
77 # define ZEND_API __declspec(dllexport)
78 #else
79 # define ZEND_API __declspec(dllimport)
80 #endif
81
82 #define ZEND_DLEXPORT __declspec(dllexport)
83 #define ZEND_DLIMPORT __declspec(dllimport)
84
85 #endif
86
87
88
89
90
91
92
93