include/SDL_config_windowsrt.h
changeset 8316 88f011703f39
child 8326 22db28fb8099
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/include/SDL_config_windowsrt.h	Wed Oct 17 21:43:20 2012 -0400
     1.3 @@ -0,0 +1,182 @@
     1.4 +/*
     1.5 +  Simple DirectMedia Layer
     1.6 +  Copyright (C) 1997-2012 Sam Lantinga <slouken@libsdl.org>
     1.7 +
     1.8 +  This software is provided 'as-is', without any express or implied
     1.9 +  warranty.  In no event will the authors be held liable for any damages
    1.10 +  arising from the use of this software.
    1.11 +
    1.12 +  Permission is granted to anyone to use this software for any purpose,
    1.13 +  including commercial applications, and to alter it and redistribute it
    1.14 +  freely, subject to the following restrictions:
    1.15 +
    1.16 +  1. The origin of this software must not be misrepresented; you must not
    1.17 +     claim that you wrote the original software. If you use this software
    1.18 +     in a product, an acknowledgment in the product documentation would be
    1.19 +     appreciated but is not required.
    1.20 +  2. Altered source versions must be plainly marked as such, and must not be
    1.21 +     misrepresented as being the original software.
    1.22 +  3. This notice may not be removed or altered from any source distribution.
    1.23 +*/
    1.24 +
    1.25 +#ifndef _SDL_config_windows_h
    1.26 +#define _SDL_config_windows_h
    1.27 +
    1.28 +#include "SDL_platform.h"
    1.29 +
    1.30 +/* This is a set of defines to configure the SDL features */
    1.31 +
    1.32 +#if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H)
    1.33 +#if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__)
    1.34 +#define HAVE_STDINT_H	1
    1.35 +#elif defined(_MSC_VER)
    1.36 +typedef signed __int8 int8_t;
    1.37 +typedef unsigned __int8 uint8_t;
    1.38 +typedef signed __int16 int16_t;
    1.39 +typedef unsigned __int16 uint16_t;
    1.40 +typedef signed __int32 int32_t;
    1.41 +typedef unsigned __int32 uint32_t;
    1.42 +typedef signed __int64 int64_t;
    1.43 +typedef unsigned __int64 uint64_t;
    1.44 +#ifndef _UINTPTR_T_DEFINED
    1.45 +#ifdef  _WIN64
    1.46 +typedef unsigned __int64 uintptr_t;
    1.47 +#else
    1.48 +typedef unsigned int uintptr_t;
    1.49 +#endif
    1.50 +#define _UINTPTR_T_DEFINED
    1.51 +#endif
    1.52 +/* Older Visual C++ headers don't have the Win64-compatible typedefs... */
    1.53 +#if ((_MSC_VER <= 1200) && (!defined(DWORD_PTR)))
    1.54 +#define DWORD_PTR DWORD
    1.55 +#endif
    1.56 +#if ((_MSC_VER <= 1200) && (!defined(LONG_PTR)))
    1.57 +#define LONG_PTR LONG
    1.58 +#endif
    1.59 +#else /* !__GNUC__ && !_MSC_VER */
    1.60 +typedef signed char int8_t;
    1.61 +typedef unsigned char uint8_t;
    1.62 +typedef signed short int16_t;
    1.63 +typedef unsigned short uint16_t;
    1.64 +typedef signed int int32_t;
    1.65 +typedef unsigned int uint32_t;
    1.66 +typedef signed long long int64_t;
    1.67 +typedef unsigned long long uint64_t;
    1.68 +#ifndef _SIZE_T_DEFINED_
    1.69 +#define _SIZE_T_DEFINED_
    1.70 +typedef unsigned int size_t;
    1.71 +#endif
    1.72 +typedef unsigned int uintptr_t;
    1.73 +#endif /* __GNUC__ || _MSC_VER */
    1.74 +#endif /* !_STDINT_H_ && !HAVE_STDINT_H */
    1.75 +
    1.76 +#ifdef _WIN64
    1.77 +# define SIZEOF_VOIDP 8
    1.78 +#else
    1.79 +# define SIZEOF_VOIDP 4
    1.80 +#endif
    1.81 +
    1.82 +/* Enabled for SDL 1.2 (binary compatibility) */
    1.83 +#define HAVE_LIBC     1
    1.84 +#ifdef HAVE_LIBC
    1.85 +/* Useful headers */
    1.86 +#define HAVE_STDIO_H 1
    1.87 +#define STDC_HEADERS 1
    1.88 +#define HAVE_STRING_H 1
    1.89 +#define HAVE_CTYPE_H 1
    1.90 +#define HAVE_MATH_H 1
    1.91 +#define HAVE_SIGNAL_H 1
    1.92 +
    1.93 +/* C library functions */
    1.94 +#define HAVE_MALLOC 1
    1.95 +#define HAVE_CALLOC 1
    1.96 +#define HAVE_REALLOC 1
    1.97 +#define HAVE_FREE 1
    1.98 +#define HAVE_ALLOCA 1
    1.99 +#define HAVE_QSORT 1
   1.100 +#define HAVE_ABS 1
   1.101 +#define HAVE_MEMSET 1
   1.102 +#define HAVE_MEMCPY 1
   1.103 +#define HAVE_MEMMOVE 1
   1.104 +#define HAVE_MEMCMP 1
   1.105 +#define HAVE_STRLEN 1
   1.106 +#define HAVE__STRREV 1
   1.107 +#define HAVE__STRUPR 1
   1.108 +//#define HAVE__STRLWR 1	// TODO, WinRT: use _strlwr_s instead
   1.109 +#define HAVE_STRCHR 1
   1.110 +#define HAVE_STRRCHR 1
   1.111 +#define HAVE_STRSTR 1
   1.112 +#define HAVE_ITOA 1
   1.113 +//#define HAVE__LTOA 1	// TODO, WinRT: use _ltoa_s instead
   1.114 +//#define HAVE__ULTOA 1	// TODO, WinRT: use _ultoa_s instead
   1.115 +#define HAVE_STRTOL 1
   1.116 +#define HAVE_STRTOUL 1
   1.117 +#define HAVE_STRTOLL 1
   1.118 +#define HAVE_STRTOD 1
   1.119 +#define HAVE_ATOI 1
   1.120 +#define HAVE_ATOF 1
   1.121 +#define HAVE_STRCMP 1
   1.122 +#define HAVE_STRNCMP 1
   1.123 +#define HAVE__STRICMP 1
   1.124 +#define HAVE__STRNICMP 1
   1.125 +//#define HAVE_SSCANF 1	// TODO, WinRT: use sscanf_s instead
   1.126 +#define HAVE_M_PI 1
   1.127 +#define HAVE_ATAN 1
   1.128 +#define HAVE_ATAN2 1
   1.129 +#define HAVE_CEIL 1
   1.130 +#define HAVE_COPYSIGN 1
   1.131 +#define HAVE_COS 1
   1.132 +#define HAVE_COSF 1
   1.133 +#define HAVE_FABS 1
   1.134 +#define HAVE_FLOOR 1
   1.135 +#define HAVE_LOG 1
   1.136 +#define HAVE_POW 1
   1.137 +#define HAVE_SCALBN 1
   1.138 +#define HAVE_SIN 1
   1.139 +#define HAVE_SINF 1
   1.140 +#define HAVE_SQRT 1
   1.141 +#else
   1.142 +#define HAVE_STDARG_H	1
   1.143 +#define HAVE_STDDEF_H	1
   1.144 +//#define HAVE_STDLIB_H	1
   1.145 +//#define HAVE_MALLOC		1
   1.146 +//#define HAVE_FREE 1
   1.147 +#endif
   1.148 +
   1.149 +/* Enable various audio drivers */
   1.150 +//#define SDL_AUDIO_DRIVER_XAUDIO2	1	// TODO, WinRT: see if SDL's XAudio2 driver can compile
   1.151 +#define SDL_AUDIO_DRIVER_DISK	1
   1.152 +#define SDL_AUDIO_DRIVER_DUMMY	1
   1.153 +
   1.154 +/* Enable various input drivers */
   1.155 +// TODO, WinRT: Get haptic support working
   1.156 +#define SDL_HAPTIC_DISABLED	1
   1.157 +// TODO, WinRT: Get joystick support working
   1.158 +#define SDL_JOYSTICK_DISABLED	1
   1.159 +
   1.160 +/* Enable various shared object loading systems */
   1.161 +#define SDL_LOADSO_WINDOWS	1
   1.162 +
   1.163 +/* Enable various threading systems */
   1.164 +#define SDL_THREAD_WINDOWS	1
   1.165 +
   1.166 +/* Enable various timer systems */
   1.167 +// TODO, WinRT: look into getting SDL's pre-WinRT timers working.
   1.168 +// Some functions there are supported in WinRT, others are not.
   1.169 +//#define SDL_TIMER_WINDOWS	1
   1.170 +#define SDL_TIMERS_DISABLED	1
   1.171 +
   1.172 +/* Enable various video drivers */
   1.173 +#define SDL_VIDEO_DRIVER_DUMMY	1
   1.174 +
   1.175 +// TODO, WinRT: Get a Direct3D 11 based renderer working in SDL.
   1.176 +
   1.177 +/* Enable system power support */
   1.178 +#define SDL_POWER_WINDOWS 1
   1.179 +
   1.180 +/* Enable assembly routines (Win64 doesn't have inline asm) */
   1.181 +#ifndef _WIN64
   1.182 +#define SDL_ASSEMBLY_ROUTINES	1
   1.183 +#endif
   1.184 +
   1.185 +#endif /* _SDL_config_windows_h */