/
SDL_config_win32.h
184 lines (164 loc) · 4.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*
SDL - Simple DirectMedia Layer
Copyright (C) 1997-2006 Sam Lantinga
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
25
26
#include "SDL_platform.h"
27
28
29
/* This is a set of defines to configure the SDL features */
30
#if defined(__GNUC__) || defined(__DMC__)
31
32
#define HAVE_STDINT_H 1
#elif defined(_MSC_VER)
33
typedef signed __int8 int8_t;
34
typedef unsigned __int8 uint8_t;
35
typedef signed __int16 int16_t;
36
typedef unsigned __int16 uint16_t;
37
typedef signed __int32 int32_t;
38
typedef unsigned __int32 uint32_t;
39
typedef signed __int64 int64_t;
40
typedef unsigned __int64 uint64_t;
41
42
43
44
45
#ifndef _UINTPTR_T_DEFINED
#ifdef _WIN64
typedef unsigned __int64 uintptr_t;
#else
typedef unsigned int uintptr_t;
46
#endif
47
#define _UINTPTR_T_DEFINED
48
#endif
49
50
51
52
53
54
55
56
57
58
59
/* 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
#ifndef GWLP_HINSTANCE
#define GWLP_HINSTANCE GWL_HINSTANCE
#endif
#endif
60
#else /* !__GNUC__ && !_MSC_VER */
61
62
63
64
65
66
67
68
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;
69
70
#ifndef _SIZE_T_DEFINED_
#define _SIZE_T_DEFINED_
71
typedef unsigned int size_t;
72
#endif
73
typedef unsigned int uintptr_t;
74
#endif /* __GNUC__ || _MSC_VER */
75
76
#define SDL_HAS_64BIT_TYPE 1
77
/* Enabled for SDL 1.2 (binary compatibility) */
78
#define HAVE_LIBC 1
79
#ifdef HAVE_LIBC
80
/* Useful headers */
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
#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
#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
#define HAVE_STRTOL 1
#define HAVE_STRTOUL 1
#define HAVE_STRTOLL 1
#define HAVE_STRTOD 1
#define HAVE_ATOI 1
#define HAVE_ATOF 1
#define HAVE_STRCMP 1
#define HAVE_STRNCMP 1
120
#define HAVE__STRICMP 1
121
#define HAVE__STRNICMP 1
122
123
#define HAVE_SSCANF 1
#else
124
125
#define HAVE_STDARG_H 1
#define HAVE_STDDEF_H 1
126
#endif
127
128
129
130
131
132
/* Enable various audio drivers */
#ifndef _WIN32_WCE
#define SDL_AUDIO_DRIVER_DSOUND 1
#endif
#define SDL_AUDIO_DRIVER_WAVEOUT 1
133
134
#define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1
135
136
/* Enable various cdrom drivers */
137
138
139
140
141
#ifdef _WIN32_WCE
#define SDL_CDROM_DISABLED 1
#else
#define SDL_CDROM_WIN32 1
#endif
142
143
/* Enable various input drivers */
144
145
146
#ifdef _WIN32_WCE
#define SDL_JOYSTICK_DISABLED 1
#else
147
#define SDL_JOYSTICK_WINMM 1
148
#endif
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
/* 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
167
168
169
#ifndef _WIN32_WCE
#define SDL_VIDEO_DRIVER_DDRAW 1
#endif
170
#define SDL_VIDEO_DRIVER_DUMMY 1
171
172
173
#define SDL_VIDEO_DRIVER_WINDIB 1
/* Enable OpenGL support */
174
#ifndef _WIN32_WCE
175
176
#define SDL_VIDEO_OPENGL 1
#define SDL_VIDEO_OPENGL_WGL 1
177
#endif
178
179
180
/* Enable assembly routines (Win64 doesn't have inline asm) */
#ifndef _WIN64
181
#define SDL_ASSEMBLY_ROUTINES 1
182
#endif
183
184
#endif /* _SDL_config_win32_h */