This repository has been archived by the owner on Feb 11, 2021. It is now read-only.
/
SDL_config_win32.h
180 lines (159 loc) · 4.43 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
34
35
36
37
38
39
40
typedef signed __int8 int8_t;
typedef unsigned __int8 uint8_t;
typedef signed __int16 int16_t;
typedef unsigned __int16 uint16_t;
typedef signed __int32 int32_t;
typedef unsigned __int32 uint32_t;
typedef signed __int64 int64_t;
typedef unsigned __int64 uint64_t;
41
42
#ifndef _UINTPTR_T_DEFINED
#ifdef _WIN64
43
typedef unsigned __int64 uintptr_t;
44
#else
45
typedef unsigned int uintptr_t;
46
#endif
47
#define _UINTPTR_T_DEFINED
48
#endif
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
56
#else /* !__GNUC__ && !_MSC_VER */
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;
65
66
#ifndef _SIZE_T_DEFINED_
#define _SIZE_T_DEFINED_
67
typedef unsigned int size_t;
68
#endif
69
typedef unsigned int uintptr_t;
70
#endif /* __GNUC__ || _MSC_VER */
71
72
#define SDL_HAS_64BIT_TYPE 1
73
/* Enabled for SDL 1.2 (binary compatibility) */
74
//#define HAVE_LIBC 1
75
#ifdef HAVE_LIBC
76
/* Useful headers */
77
78
79
80
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
#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
116
#define HAVE__STRICMP 1
117
#define HAVE__STRNICMP 1
118
119
#define HAVE_SSCANF 1
#else
120
121
#define HAVE_STDARG_H 1
#define HAVE_STDDEF_H 1
122
#endif
123
124
125
126
127
/* Enable various audio drivers */
#ifndef _WIN32_WCE
#define SDL_AUDIO_DRIVER_DSOUND 1
#endif
128
#define SDL_AUDIO_DRIVER_WINWAVEOUT 1
129
130
#define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1
131
132
/* Enable various cdrom drivers */
133
134
135
136
137
#ifdef _WIN32_WCE
#define SDL_CDROM_DISABLED 1
#else
#define SDL_CDROM_WIN32 1
#endif
138
139
/* Enable various input drivers */
140
141
#ifdef _WIN32_WCE
#define SDL_JOYSTICK_DISABLED 1
142
#define SDL_HAPTIC_DUMMY 1
143
#else
144
145
#define SDL_JOYSTICK_DINPUT 1
#define SDL_HAPTIC_DINPUT 1
146
#endif
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
/* 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 */
162
#define SDL_VIDEO_DRIVER_DUMMY 1
163
164
165
166
#define SDL_VIDEO_DRIVER_WIN32 1
#define SDL_VIDEO_RENDER_D3D 1
#define SDL_VIDEO_RENDER_GDI 1
167
168
/* Enable OpenGL support */
169
#ifndef _WIN32_WCE
170
171
#define SDL_VIDEO_OPENGL 1
#define SDL_VIDEO_OPENGL_WGL 1
172
#define SDL_VIDEO_RENDER_OGL 1
173
#endif
174
175
176
/* Enable assembly routines (Win64 doesn't have inline asm) */
#ifndef _WIN64
177
#define SDL_ASSEMBLY_ROUTINES 1
178
#endif
179
180
#endif /* _SDL_config_win32_h */