New comit of SDL2
[supertux.git] / src / SDL2 / SDL_platform.h
1 /*
2   Simple DirectMedia Layer
3   Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
4
5   This software is provided 'as-is', without any express or implied
6   warranty.  In no event will the authors be held liable for any damages
7   arising from the use of this software.
8
9   Permission is granted to anyone to use this software for any purpose,
10   including commercial applications, and to alter it and redistribute it
11   freely, subject to the following restrictions:
12
13   1. The origin of this software must not be misrepresented; you must not
14      claim that you wrote the original software. If you use this software
15      in a product, an acknowledgment in the product documentation would be
16      appreciated but is not required.
17   2. Altered source versions must be plainly marked as such, and must not be
18      misrepresented as being the original software.
19   3. This notice may not be removed or altered from any source distribution.
20 */
21
22 /**
23  *  \file SDL_platform.h
24  *
25  *  Try to get a standard set of platform defines.
26  */
27
28 #ifndef _SDL_platform_h
29 #define _SDL_platform_h
30
31 #if defined(_AIX)
32 #undef __AIX__
33 #define __AIX__     1
34 #endif
35 #if defined(__BEOS__)
36 #undef __BEOS__
37 #define __BEOS__    1
38 #endif
39 #if defined(__HAIKU__)
40 #undef __HAIKU__
41 #define __HAIKU__   1
42 #endif
43 #if defined(bsdi) || defined(__bsdi) || defined(__bsdi__)
44 #undef __BSDI__
45 #define __BSDI__    1
46 #endif
47 #if defined(_arch_dreamcast)
48 #undef __DREAMCAST__
49 #define __DREAMCAST__   1
50 #endif
51 #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
52 #undef __FREEBSD__
53 #define __FREEBSD__ 1
54 #endif
55 #if defined(hpux) || defined(__hpux) || defined(__hpux__)
56 #undef __HPUX__
57 #define __HPUX__    1
58 #endif
59 #if defined(sgi) || defined(__sgi) || defined(__sgi__) || defined(_SGI_SOURCE)
60 #undef __IRIX__
61 #define __IRIX__    1
62 #endif
63 #if defined(linux) || defined(__linux) || defined(__linux__)
64 #undef __LINUX__
65 #define __LINUX__   1
66 #endif
67 #if defined(ANDROID)
68 #undef __ANDROID__
69 #undef __LINUX__ /*do we need to do this?*/
70 #define __ANDROID__ 1
71 #endif
72
73 #if defined(__APPLE__)
74 /* lets us know what version of Mac OS X we're compiling on */
75 #include "AvailabilityMacros.h"
76 #include "TargetConditionals.h"
77 #if TARGET_OS_IPHONE
78 /* if compiling for iPhone */
79 #undef __IPHONEOS__
80 #define __IPHONEOS__ 1
81 #undef __MACOSX__
82 #else
83 /* if not compiling for iPhone */
84 #undef __MACOSX__
85 #define __MACOSX__  1
86 #if MAC_OS_X_VERSION_MIN_REQUIRED < 1050
87 # error SDL for Mac OS X only supports deploying on 10.5 and above.
88 #endif /* MAC_OS_X_VERSION_MIN_REQUIRED < 1050 */
89 #if MAC_OS_X_VERSION_MAX_ALLOWED < 1060
90 # error SDL for Mac OS X must be built with a 10.6 SDK or above.
91 #endif /* MAC_OS_X_VERSION_MAX_ALLOWED < 1060 */
92 #endif /* TARGET_OS_IPHONE */
93 #endif /* defined(__APPLE__) */
94
95 #if defined(__NetBSD__)
96 #undef __NETBSD__
97 #define __NETBSD__  1
98 #endif
99 #if defined(__OpenBSD__)
100 #undef __OPENBSD__
101 #define __OPENBSD__ 1
102 #endif
103 #if defined(__OS2__)
104 #undef __OS2__
105 #define __OS2__     1
106 #endif
107 #if defined(osf) || defined(__osf) || defined(__osf__) || defined(_OSF_SOURCE)
108 #undef __OSF__
109 #define __OSF__     1
110 #endif
111 #if defined(__QNXNTO__)
112 #undef __QNXNTO__
113 #define __QNXNTO__  1
114 #endif
115 #if defined(riscos) || defined(__riscos) || defined(__riscos__)
116 #undef __RISCOS__
117 #define __RISCOS__  1
118 #endif
119 #if defined(__SVR4)
120 #undef __SOLARIS__
121 #define __SOLARIS__ 1
122 #endif
123 #if defined(WIN32) || defined(_WIN32) || defined(__CYGWIN__)
124 #undef __WIN32__
125 #define __WIN32__   1
126 #endif
127 #if defined(__PSP__)
128 #undef __PSP__
129 #define __PSP__ 1
130 #endif
131
132 #include "begin_code.h"
133 /* Set up for C function definitions, even when using C++ */
134 #ifdef __cplusplus
135 extern "C" {
136 #endif
137
138 /**
139  *  \brief Gets the name of the platform.
140  */
141 extern DECLSPEC const char * SDLCALL SDL_GetPlatform (void);
142
143 /* Ends C function definitions when using C++ */
144 #ifdef __cplusplus
145 }
146 #endif
147 #include "close_code.h"
148
149 #endif /* _SDL_platform_h */
150
151 /* vi: set ts=4 sw=4 expandtab: */