Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Latest commit

 

History

History
199 lines (177 loc) · 4.88 KB

SDL_config_win32.h

File metadata and controls

199 lines (177 loc) · 4.88 KB
 
1
2
/*
SDL - Simple DirectMedia Layer
Jan 24, 2010
Jan 24, 2010
3
Copyright (C) 1997-2010 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 */
Aug 2, 2009
Aug 2, 2009
30
#if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H)
Dec 15, 2009
Dec 15, 2009
31
#if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__)
Jun 25, 2006
Jun 25, 2006
32
33
#define HAVE_STDINT_H 1
#elif defined(_MSC_VER)
Jul 10, 2006
Jul 10, 2006
34
35
36
37
38
39
40
41
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;
Mar 4, 2006
Mar 4, 2006
42
43
#ifndef _UINTPTR_T_DEFINED
#ifdef _WIN64
Jul 10, 2006
Jul 10, 2006
44
typedef unsigned __int64 uintptr_t;
Mar 4, 2006
Mar 4, 2006
45
#else
Jul 10, 2006
Jul 10, 2006
46
typedef unsigned int uintptr_t;
Feb 24, 2006
Feb 24, 2006
47
#endif
Mar 4, 2006
Mar 4, 2006
48
#define _UINTPTR_T_DEFINED
Jun 29, 2007
Jun 29, 2007
49
#endif
Jun 21, 2007
Jun 21, 2007
50
51
52
53
54
55
56
/* 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
Jul 10, 2006
Jul 10, 2006
57
#else /* !__GNUC__ && !_MSC_VER */
Mar 4, 2006
Mar 4, 2006
58
59
60
61
62
63
64
65
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
66
67
#ifndef _SIZE_T_DEFINED_
#define _SIZE_T_DEFINED_
Mar 4, 2006
Mar 4, 2006
68
typedef unsigned int size_t;
Mar 6, 2006
Mar 6, 2006
69
#endif
Mar 6, 2006
Mar 6, 2006
70
typedef unsigned int uintptr_t;
Jun 25, 2006
Jun 25, 2006
71
#endif /* __GNUC__ || _MSC_VER */
Aug 2, 2009
Aug 2, 2009
72
#endif /* !_STDINT_H_ && !HAVE_STDINT_H */
Jun 9, 2009
Jun 9, 2009
73
74
75
76
77
78
#ifdef _WIN64
# define SIZEOF_VOIDP 8
#else
# define SIZEOF_VOIDP 4
#endif
79
80
#define SDL_HAS_64BIT_TYPE 1
Mar 6, 2006
Mar 6, 2006
81
/* Enabled for SDL 1.2 (binary compatibility) */
Aug 31, 2008
Aug 31, 2008
82
//#define HAVE_LIBC 1
Apr 13, 2006
Apr 13, 2006
83
#ifdef HAVE_LIBC
84
/* Useful headers */
Mar 6, 2006
Mar 6, 2006
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
120
121
122
123
#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
Mar 13, 2006
Mar 13, 2006
124
#define HAVE__STRICMP 1
Mar 13, 2006
Mar 13, 2006
125
#define HAVE__STRNICMP 1
Mar 6, 2006
Mar 6, 2006
126
#define HAVE_SSCANF 1
Jan 10, 2009
Jan 10, 2009
127
#define HAVE_M_PI 1
Aug 29, 2010
Aug 29, 2010
128
129
#define HAVE_ATAN 1
#define HAVE_ATAN2 1
Jan 12, 2009
Jan 12, 2009
130
#define HAVE_CEIL 1
Jan 10, 2009
Jan 10, 2009
131
132
133
134
135
136
137
138
139
140
141
#define HAVE_COPYSIGN 1
#define HAVE_COS 1
#define HAVE_COSF 1
#define HAVE_FABS 1
#define HAVE_FLOOR 1
#define HAVE_LOG 1
#define HAVE_POW 1
#define HAVE_SCALBN 1
#define HAVE_SIN 1
#define HAVE_SINF 1
#define HAVE_SQRT 1
Mar 6, 2006
Mar 6, 2006
142
#else
143
144
#define HAVE_STDARG_H 1
#define HAVE_STDDEF_H 1
Mar 6, 2006
Mar 6, 2006
145
#endif
146
147
148
149
150
/* Enable various audio drivers */
#ifndef _WIN32_WCE
#define SDL_AUDIO_DRIVER_DSOUND 1
#endif
Nov 11, 2006
Nov 11, 2006
151
#define SDL_AUDIO_DRIVER_WINWAVEOUT 1
Mar 14, 2006
Mar 14, 2006
152
153
#define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1
154
155
/* Enable various input drivers */
Mar 11, 2006
Mar 11, 2006
156
#ifdef _WIN32_WCE
Aug 26, 2008
Aug 26, 2008
157
#define SDL_JOYSTICK_DISABLED 1
Aug 25, 2008
Aug 25, 2008
158
#define SDL_HAPTIC_DUMMY 1
Mar 11, 2006
Mar 11, 2006
159
#else
Aug 26, 2008
Aug 26, 2008
160
#define SDL_JOYSTICK_DINPUT 1
Aug 25, 2008
Aug 25, 2008
161
#define SDL_HAPTIC_DINPUT 1
Mar 11, 2006
Mar 11, 2006
162
#endif
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
/* 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 */
Mar 14, 2006
Mar 14, 2006
178
#define SDL_VIDEO_DRIVER_DUMMY 1
Jul 10, 2006
Jul 10, 2006
179
180
181
182
#define SDL_VIDEO_DRIVER_WIN32 1
#define SDL_VIDEO_RENDER_D3D 1
#define SDL_VIDEO_RENDER_GDI 1
183
184
/* Enable OpenGL support */
Mar 4, 2006
Mar 4, 2006
185
#ifndef _WIN32_WCE
186
187
#define SDL_VIDEO_OPENGL 1
#define SDL_VIDEO_OPENGL_WGL 1
Jul 10, 2006
Jul 10, 2006
188
#define SDL_VIDEO_RENDER_OGL 1
Mar 4, 2006
Mar 4, 2006
189
#endif
Jun 7, 2009
Jun 7, 2009
191
192
193
/* Enable system power support */
#define SDL_POWER_WINDOWS 1
Mar 7, 2006
Mar 7, 2006
194
195
/* Enable assembly routines (Win64 doesn't have inline asm) */
#ifndef _WIN64
196
#define SDL_ASSEMBLY_ROUTINES 1
Mar 7, 2006
Mar 7, 2006
197
#endif
198
199
#endif /* _SDL_config_win32_h */