xref: /PHP-7.3/Zend/zend_config.w32.h (revision 9afce019)
1 /*
2    +----------------------------------------------------------------------+
3    | Zend Engine                                                          |
4    +----------------------------------------------------------------------+
5    | Copyright (c) 1998-2018 Zend Technologies Ltd. (http://www.zend.com) |
6    +----------------------------------------------------------------------+
7    | This source file is subject to version 2.00 of the Zend license,     |
8    | that is bundled with this package in the file LICENSE, and is        |
9    | available through the world-wide-web at the following url:           |
10    | http://www.zend.com/license/2_00.txt.                                |
11    | If you did not receive a copy of the Zend license and are unable to  |
12    | obtain it through the world-wide-web, please send a note to          |
13    | license@zend.com so we can mail you a copy immediately.              |
14    +----------------------------------------------------------------------+
15    | Authors: Andi Gutmans <andi@php.net>                                 |
16    |          Zeev Suraski <zeev@php.net>                                 |
17    +----------------------------------------------------------------------+
18 */
19 
20 #ifndef ZEND_CONFIG_W32_H
21 #define ZEND_CONFIG_W32_H
22 
23 #include <../main/config.w32.h>
24 
25 #define _CRTDBG_MAP_ALLOC
26 
27 #include <malloc.h>
28 #include <stdlib.h>
29 #include <crtdbg.h>
30 
31 #include <string.h>
32 
33 #ifndef ZEND_INCLUDE_FULL_WINDOWS_HEADERS
34 #define WIN32_LEAN_AND_MEAN
35 #endif
36 #include <winsock2.h>
37 #include <windows.h>
38 
39 #include <float.h>
40 
41 typedef unsigned long ulong;
42 typedef unsigned int uint;
43 
44 #define HAVE_STDIOSTR_H 1
45 #define HAVE_CLASS_ISTDIOSTREAM
46 #define istdiostream stdiostream
47 
48 #if _MSC_VER < 1900
49 #define snprintf _snprintf
50 #endif
51 #define strcasecmp(s1, s2) _stricmp(s1, s2)
52 #define strncasecmp(s1, s2, n) _strnicmp(s1, s2, n)
53 #define zend_isinf(a)	((_fpclass(a) == _FPCLASS_PINF) || (_fpclass(a) == _FPCLASS_NINF))
54 #define zend_finite(x)	_finite(x)
55 #define zend_isnan(x)	_isnan(x)
56 
57 #define zend_sprintf sprintf
58 
59 #ifndef __cplusplus
60 /* This will cause the compilation process to be MUCH longer, but will generate
61  * a much quicker PHP binary
62  */
63 #ifdef ZEND_WIN32_FORCE_INLINE
64 # undef inline
65 # define inline __forceinline
66 #endif
67 #endif
68 
69 #ifdef LIBZEND_EXPORTS
70 #	define ZEND_API __declspec(dllexport)
71 #else
72 #	define ZEND_API __declspec(dllimport)
73 #endif
74 
75 #define ZEND_DLEXPORT		__declspec(dllexport)
76 #define ZEND_DLIMPORT		__declspec(dllimport)
77 
78 #endif /* ZEND_CONFIG_W32_H */
79 
80 /*
81  * Local variables:
82  * tab-width: 4
83  * c-basic-offset: 4
84  * indent-tabs-mode: t
85  * End:
86  * vim600: sw=4 ts=4 fdm=marker
87  * vim<600: sw=4 ts=4
88  */
89