Run make alldeps
[nasm.git] / config / msvc.h
blob756d95703c6a0b019ab818a04fa6bc1788a51f6d
1 /* ----------------------------------------------------------------------- *
3 * Copyright 2016 The NASM Authors - All Rights Reserved
4 * See the file AUTHORS included with the NASM distribution for
5 * the specific copyright holders.
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following
9 * conditions are met:
11 * * Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 * * Redistributions in binary form must reproduce the above
14 * copyright notice, this list of conditions and the following
15 * disclaimer in the documentation and/or other materials provided
16 * with the distribution.
18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
19 * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
20 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
21 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
23 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
25 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
26 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
28 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32 * ----------------------------------------------------------------------- */
35 * config/msvc.h
37 * Compiler definitions for Microsoft Visual C++;
38 * instead of config.h.in. See config.h.in for the
39 * variables which can be defined here.
41 * MSDN seems to have information back to Visual Studio 2003, so aim
42 * for compatibility that far back.
44 * Relevant _MSC_VER values:
45 * 1310 - Visual Studio 2003
46 * 1400 - Visual Studio 2005
47 * 1500 - Visual Studio 2008
48 * 1600 - Visual Studio 2010
49 * 1700 - Visual Studio 2012
50 * 1800 - Visual Studio 2013
51 * 1900 - Visual Studio 2015
54 #ifndef NASM_CONFIG_MSVC_H
55 #define NASM_CONFIG_MSVC_H
57 /* Define to 1 if you have the <fcntl.h> header file. */
58 #define HAVE_FCNTL_H 1
60 /* Define to 1 if you have the <inttypes.h> header file. */
61 #if _MSC_VER >= 1800
62 # define HAVE_INTTYPES_H 1
63 #endif
65 /* Define to 1 if you have the <io.h> header file. */
66 #define HAVE_IO_H 1
68 /* Define to 1 if you have the <stdlib.h> header file. */
69 #define HAVE_STDLIB_H 1
71 /* Define to 1 if you have the <string.h> header file. */
72 #define HAVE_STRING_H 1
74 /* Define to 1 if you have the <sys/stat.h> header file. */
75 #define HAVE_SYS_STAT_H 1
77 /* Define to 1 if you have the <sys/types.h> header file. */
78 #define HAVE_SYS_TYPES_H 1
80 /* Define to 1 if you have the <types.h> header file. */
81 #define HAVE_TYPES_H 1
83 /* Define to 1 if you have the `access' function. */
84 #define HAVE_ACCESS 1
85 #if _MSC_VER < 1400
86 # define access _access
87 #endif
89 /* Define to 1 if you have the `fileno' function. */
90 #define HAVE_FILENO 1
91 #if _MSC_VER < 1400
92 # define fileno _fileno
93 #endif
95 /* Define to 1 if you have the `snprintf' function. */
96 #define HAVE_SNPRINTF 1
97 #if _MSC_VER < 1900
98 # define snprintf _snprinf
99 #endif
101 /* Define to 1 if you have the `_chsize' function. */
102 #define HAVE__CHSIZE 1
104 /* Define to 1 if you have the `_chsize_s' function. */
105 #if _MSC_VER >= 1400
106 # define HAVE__CHSIZE_S 1
107 #endif
109 /* Define to 1 if you have the `_filelengthi64' function. */
110 #define HAVE__FILELENGTHI64 1
112 /* Define to 1 if you have the `_fseeki64' function. */
113 #define HAVE__FSEEKI64 1
115 /* Define to 1 if you have the `_fullpath' function. */
116 #define HAVE__FULLPATH 1
118 /* Define to 1 if you have the `stat' function. */
119 #define HAVE_STAT 1
120 #define stat _stati64
122 /* Define to 1 if stdbool.h conforms to C99. */
123 #if _MSC_VER >= 1800
124 # define HAVE_STDBOOL_H 1
125 #endif
127 /* Define to 1 if you have the `stricmp' function. */
128 #define HAVE_STRICMP 1
129 /* Define to 1 if you have the declaration of `stricmp', and to 0 if you
130 don't. */
131 #define HAVE_DECL_STRICMP 1
132 #if _MSC_VER < 1400
133 # define stricmp _stricmp
134 #endif
136 /* Define to 1 if you have the `strnicmp' function. */
137 #define HAVE_STRNICMP 1
138 /* Define to 1 if you have the declaration of `strnicmp', and to 0 if you
139 don't. */
140 #define HAVE_DECL_STRNICMP 1
141 #if _MSC_VER < 1400
142 # define strnicmp _strnicmp
143 #endif
145 #if _MSC_VER >= 1400
146 /* Define to 1 if you have the `strnlen' function. */
147 # define HAVE_STRNLEN 1
148 /* Define to 1 if you have the declaration of `strnlen', and to 0 if you
149 don't. */
150 # define HAVE_DECL_STRNLEN 1
151 #endif
153 /* Define to 1 if the system has the type `uintptr_t'. */
154 #if _MSC_VER >= 1900
155 # define HAVE_UINTPTR_T 1
156 #else
157 /* Define to the type of an unsigned integer type wide enough to hold a
158 pointer, if such a type exists, and if the system does not define it. */
159 # define uintptr_t size_t
160 #endif
162 /* Define to 1 if you have the `vsnprintf' function. */
163 #define HAVE_VSNPRINTF 1
164 #if _MSC_VER < 1400
165 # define vsnprint _vsnprintf
166 #endif
168 /* Define to 1 if the system has the type `_Bool'. */
169 #if _MSC_VER >= 1900
170 # define HAVE__BOOL 1
171 #endif
173 /* Define to 1 if you have the ANSI C header files. */
174 #define STDC_HEADERS 1
176 /* Define to 1 if your processor stores words with the least significant byte
177 first (like Intel and VAX, unlike Motorola and SPARC). */
178 #define WORDS_LITTLEENDIAN 1
180 /* Define to `__inline__' or `__inline' if that's what the C compiler
181 calls it, or to nothing if 'inline' is not supported under any name. */
182 #define inline __inline
184 /* Define to the equivalent of the C99 'restrict' keyword, or to
185 nothing if this is not supported. Do not define if restrict is
186 supported directly. */
187 #define restrict __restrict
189 #endif /* NASM_CONFIG_MSVC_H */