Skip to content

Latest commit

 

History

History
193 lines (172 loc) · 4.78 KB

SDL_config_win32.h

File metadata and controls

193 lines (172 loc) · 4.78 KB
 
1
2
/*
SDL - Simple DirectMedia Layer
Dec 31, 2011
Dec 31, 2011
3
Copyright (C) 1997-2012 Sam Lantinga
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Sam Lantinga
slouken@libsdl.org
*/
#ifndef _SDL_config_win32_h
#define _SDL_config_win32_h
Mar 23, 2006
Mar 23, 2006
25
26
#include "SDL_platform.h"
27
28
29
/* This is a set of defines to configure the SDL features */
Mar 24, 2018
Mar 24, 2018
30
#if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__)
Jun 25, 2006
Jun 25, 2006
31
32
#define HAVE_STDINT_H 1
#elif defined(_MSC_VER)
Mar 4, 2006
Mar 4, 2006
33
typedef signed __int8 int8_t;
Feb 24, 2006
Feb 24, 2006
34
typedef unsigned __int8 uint8_t;
Mar 4, 2006
Mar 4, 2006
35
typedef signed __int16 int16_t;
Feb 24, 2006
Feb 24, 2006
36
typedef unsigned __int16 uint16_t;
Mar 4, 2006
Mar 4, 2006
37
typedef signed __int32 int32_t;
Feb 24, 2006
Feb 24, 2006
38
typedef unsigned __int32 uint32_t;
Mar 4, 2006
Mar 4, 2006
39
typedef signed __int64 int64_t;
Feb 24, 2006
Feb 24, 2006
40
typedef unsigned __int64 uint64_t;
Mar 4, 2006
Mar 4, 2006
41
42
43
44
45
#ifndef _UINTPTR_T_DEFINED
#ifdef _WIN64
typedef unsigned __int64 uintptr_t;
#else
typedef unsigned int uintptr_t;
Feb 24, 2006
Feb 24, 2006
46
#endif
Mar 4, 2006
Mar 4, 2006
47
#define _UINTPTR_T_DEFINED
Feb 24, 2006
Feb 24, 2006
48
#endif
Jun 21, 2007
Jun 21, 2007
49
50
51
52
53
54
55
/* Older Visual C++ headers don't have the Win64-compatible typedefs... */
#if ((_MSC_VER <= 1200) && (!defined(DWORD_PTR)))
#define DWORD_PTR DWORD
#endif
#if ((_MSC_VER <= 1200) && (!defined(LONG_PTR)))
#define LONG_PTR LONG
#endif
Jun 25, 2006
Jun 25, 2006
56
#else /* !__GNUC__ && !_MSC_VER */
Mar 4, 2006
Mar 4, 2006
57
58
59
60
61
62
63
64
typedef signed char int8_t;
typedef unsigned char uint8_t;
typedef signed short int16_t;
typedef unsigned short uint16_t;
typedef signed int int32_t;
typedef unsigned int uint32_t;
typedef signed long long int64_t;
typedef unsigned long long uint64_t;
Mar 6, 2006
Mar 6, 2006
65
66
#ifndef _SIZE_T_DEFINED_
#define _SIZE_T_DEFINED_
Mar 4, 2006
Mar 4, 2006
67
typedef unsigned int size_t;
Mar 6, 2006
Mar 6, 2006
68
#endif
Mar 6, 2006
Mar 6, 2006
69
typedef unsigned int uintptr_t;
Jun 25, 2006
Jun 25, 2006
70
#endif /* __GNUC__ || _MSC_VER */
71
72
#define SDL_HAS_64BIT_TYPE 1
Mar 6, 2006
Mar 6, 2006
73
/* Enabled for SDL 1.2 (binary compatibility) */
Mar 6, 2006
Mar 6, 2006
74
#define HAVE_LIBC 1
Apr 13, 2006
Apr 13, 2006
75
#ifdef HAVE_LIBC
76
/* Useful headers */
Mar 6, 2006
Mar 6, 2006
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#define HAVE_STDIO_H 1
#define STDC_HEADERS 1
#define HAVE_STRING_H 1
#define HAVE_CTYPE_H 1
#define HAVE_MATH_H 1
#ifndef _WIN32_WCE
#define HAVE_SIGNAL_H 1
#endif
/* C library functions */
#define HAVE_MALLOC 1
#define HAVE_CALLOC 1
#define HAVE_REALLOC 1
#define HAVE_FREE 1
#define HAVE_ALLOCA 1
#define HAVE_QSORT 1
#define HAVE_ABS 1
#define HAVE_MEMSET 1
#define HAVE_MEMCPY 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMCMP 1
#define HAVE_STRLEN 1
Mar 24, 2018
Mar 24, 2018
99
#define HAVE_STRDUP 1
Mar 6, 2006
Mar 6, 2006
100
101
102
103
104
105
106
107
108
#define HAVE__STRREV 1
#define HAVE__STRUPR 1
#define HAVE__STRLWR 1
#define HAVE_STRCHR 1
#define HAVE_STRRCHR 1
#define HAVE_STRSTR 1
#define HAVE_ITOA 1
#define HAVE__LTOA 1
#define HAVE__ULTOA 1
Mar 24, 2018
Mar 24, 2018
109
110
#define HAVE__I64TOA 1
#define HAVE__UI64TOA 1
Mar 6, 2006
Mar 6, 2006
111
112
#define HAVE_STRTOL 1
#define HAVE_STRTOUL 1
Mar 24, 2018
Mar 24, 2018
113
#if defined(__MINGW32__) || defined(__WATCOMC__)
Mar 6, 2006
Mar 6, 2006
114
#define HAVE_STRTOLL 1
Mar 24, 2018
Mar 24, 2018
115
116
#define HAVE_STRTOULL 1
#endif
Mar 24, 2018
Mar 24, 2018
117
118
119
120
#if defined(__WATCOMC__) || (defined(_MSC_VER) && (_MSC_VER >= 1300)) || defined(_WIN64)
#define HAVE__STRTOI64 1
#define HAVE__STRTOUI64 1
#endif
Mar 6, 2006
Mar 6, 2006
121
122
123
124
125
#define HAVE_STRTOD 1
#define HAVE_ATOI 1
#define HAVE_ATOF 1
#define HAVE_STRCMP 1
#define HAVE_STRNCMP 1
Mar 13, 2006
Mar 13, 2006
126
#define HAVE__STRICMP 1
Mar 13, 2006
Mar 13, 2006
127
#define HAVE__STRNICMP 1
Mar 6, 2006
Mar 6, 2006
128
129
#define HAVE_SSCANF 1
#else
130
131
#define HAVE_STDARG_H 1
#define HAVE_STDDEF_H 1
Mar 6, 2006
Mar 6, 2006
132
#endif
133
134
135
136
137
138
/* Enable various audio drivers */
#ifndef _WIN32_WCE
#define SDL_AUDIO_DRIVER_DSOUND 1
#endif
#define SDL_AUDIO_DRIVER_WAVEOUT 1
Mar 14, 2006
Mar 14, 2006
139
140
#define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1
141
142
/* Enable various cdrom drivers */
Mar 11, 2006
Mar 11, 2006
143
144
145
146
147
#ifdef _WIN32_WCE
#define SDL_CDROM_DISABLED 1
#else
#define SDL_CDROM_WIN32 1
#endif
148
149
/* Enable various input drivers */
Mar 11, 2006
Mar 11, 2006
150
151
152
#ifdef _WIN32_WCE
#define SDL_JOYSTICK_DISABLED 1
#else
May 21, 2006
May 21, 2006
153
#define SDL_JOYSTICK_WINMM 1
Mar 11, 2006
Mar 11, 2006
154
#endif
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
/* Enable various shared object loading systems */
#define SDL_LOADSO_WIN32 1
/* Enable various threading systems */
#define SDL_THREAD_WIN32 1
/* Enable various timer systems */
#ifdef _WIN32_WCE
#define SDL_TIMER_WINCE 1
#else
#define SDL_TIMER_WIN32 1
#endif
/* Enable various video drivers */
#ifdef _WIN32_WCE
#define SDL_VIDEO_DRIVER_GAPI 1
#endif
Mar 11, 2006
Mar 11, 2006
173
174
175
#ifndef _WIN32_WCE
#define SDL_VIDEO_DRIVER_DDRAW 1
#endif
Mar 14, 2006
Mar 14, 2006
176
#define SDL_VIDEO_DRIVER_DUMMY 1
177
178
179
#define SDL_VIDEO_DRIVER_WINDIB 1
/* Enable OpenGL support */
Mar 4, 2006
Mar 4, 2006
180
#ifndef _WIN32_WCE
181
182
#define SDL_VIDEO_OPENGL 1
#define SDL_VIDEO_OPENGL_WGL 1
Mar 4, 2006
Mar 4, 2006
183
#endif
Feb 29, 2008
Feb 29, 2008
185
186
187
/* Disable screensaver */
#define SDL_VIDEO_DISABLE_SCREENSAVER 1
Mar 7, 2006
Mar 7, 2006
188
189
/* Enable assembly routines (Win64 doesn't have inline asm) */
#ifndef _WIN64
190
#define SDL_ASSEMBLY_ROUTINES 1
Mar 7, 2006
Mar 7, 2006
191
#endif
192
193
#endif /* _SDL_config_win32_h */