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#ifndef _SDL_config_h 23#define _SDL_config_h 24 25/** 26 * \file SDL_config.h.in 27 * 28 * This is a set of defines to configure the SDL features 29 */ 30 31/* General platform specific identifiers */ 32#include "SDL_platform.h" 33 34/* Make sure that this isn't included by Visual C++ */ 35#ifdef _MSC_VER 36#error You should run hg revert SDL_config.h 37#endif 38 39/* C language features */ 40#undef const 41#undef inline 42#undef volatile 43 44/* C datatypes */ 45#ifdef __LP64__ 46#define SIZEOF_VOIDP 8 47#else 48#define SIZEOF_VOIDP 4 49#endif 50#undef HAVE_GCC_ATOMICS 51#undef HAVE_GCC_SYNC_LOCK_TEST_AND_SET 52#undef HAVE_PTHREAD_SPINLOCK 53 54/* Comment this if you want to build without any C library requirements */ 55#undef HAVE_LIBC 56#if HAVE_LIBC 57 58/* Useful headers */ 59#undef HAVE_ALLOCA_H 60#undef HAVE_SYS_TYPES_H 61#undef HAVE_STDIO_H 62#undef STDC_HEADERS 63#undef HAVE_STDLIB_H 64#undef HAVE_STDARG_H 65#undef HAVE_MALLOC_H 66#undef HAVE_MEMORY_H 67#undef HAVE_STRING_H 68#undef HAVE_STRINGS_H 69#undef HAVE_INTTYPES_H 70#undef HAVE_STDINT_H 71#undef HAVE_CTYPE_H 72#undef HAVE_MATH_H 73#undef HAVE_ICONV_H 74#undef HAVE_SIGNAL_H 75#undef HAVE_ALTIVEC_H 76#undef HAVE_PTHREAD_NP_H 77#undef HAVE_LIBUDEV_H 78#undef HAVE_DBUS_DBUS_H 79 80/* C library functions */ 81#undef HAVE_MALLOC 82#undef HAVE_CALLOC 83#undef HAVE_REALLOC 84#undef HAVE_FREE 85#undef HAVE_ALLOCA 86#ifndef __WIN32__ /* Don't use C runtime versions of these on Windows */ 87#undef HAVE_GETENV 88#undef HAVE_SETENV 89#undef HAVE_PUTENV 90#undef HAVE_UNSETENV 91#endif 92#undef HAVE_QSORT 93#undef HAVE_ABS 94#undef HAVE_BCOPY 95#undef HAVE_MEMSET 96#undef HAVE_MEMCPY 97#undef HAVE_MEMMOVE 98#undef HAVE_MEMCMP 99#undef HAVE_STRLEN 100#undef HAVE_STRLCPY 101#undef HAVE_STRLCAT 102#undef HAVE_STRDUP 103#undef HAVE__STRREV 104#undef HAVE__STRUPR 105#undef HAVE__STRLWR 106#undef HAVE_INDEX 107#undef HAVE_RINDEX 108#undef HAVE_STRCHR 109#undef HAVE_STRRCHR 110#undef HAVE_STRSTR 111#undef HAVE_ITOA 112#undef HAVE__LTOA 113#undef HAVE__UITOA 114#undef HAVE__ULTOA 115#undef HAVE_STRTOL 116#undef HAVE_STRTOUL 117#undef HAVE__I64TOA 118#undef HAVE__UI64TOA 119#undef HAVE_STRTOLL 120#undef HAVE_STRTOULL 121#undef HAVE_STRTOD 122#undef HAVE_ATOI 123#undef HAVE_ATOF 124#undef HAVE_STRCMP 125#undef HAVE_STRNCMP 126#undef HAVE__STRICMP 127#undef HAVE_STRCASECMP 128#undef HAVE__STRNICMP 129#undef HAVE_STRNCASECMP 130#undef HAVE_SSCANF 131#undef HAVE_SNPRINTF 132#undef HAVE_VSNPRINTF 133#undef HAVE_M_PI 134#undef HAVE_ATAN 135#undef HAVE_ATAN2 136#undef HAVE_CEIL 137#undef HAVE_COPYSIGN 138#undef HAVE_COS 139#undef HAVE_COSF 140#undef HAVE_FABS 141#undef HAVE_FLOOR 142#undef HAVE_LOG 143#undef HAVE_POW 144#undef HAVE_SCALBN 145#undef HAVE_SIN 146#undef HAVE_SINF 147#undef HAVE_SQRT 148#undef HAVE_FSEEKO 149#undef HAVE_FSEEKO64 150#undef HAVE_SIGACTION 151#undef HAVE_SA_SIGACTION 152#undef HAVE_SETJMP 153#undef HAVE_NANOSLEEP 154#undef HAVE_SYSCONF 155#undef HAVE_SYSCTLBYNAME 156#undef HAVE_CLOCK_GETTIME 157#undef HAVE_GETPAGESIZE 158#undef HAVE_MPROTECT 159#undef HAVE_ICONV 160#undef HAVE_PTHREAD_SETNAME_NP 161#undef HAVE_PTHREAD_SET_NAME_NP 162#undef HAVE_SEM_TIMEDWAIT 163 164#else 165#define HAVE_STDARG_H 1 166#define HAVE_STDDEF_H 1 167#define HAVE_STDINT_H 1 168#endif /* HAVE_LIBC */ 169 170/* SDL internal assertion support */ 171#undef SDL_DEFAULT_ASSERT_LEVEL 172 173/* Allow disabling of core subsystems */ 174#undef SDL_ATOMIC_DISABLED 175#undef SDL_AUDIO_DISABLED 176#undef SDL_CPUINFO_DISABLED 177#undef SDL_EVENTS_DISABLED 178#undef SDL_FILE_DISABLED 179#undef SDL_JOYSTICK_DISABLED 180#undef SDL_HAPTIC_DISABLED 181#undef SDL_LOADSO_DISABLED 182#undef SDL_RENDER_DISABLED 183#undef SDL_THREADS_DISABLED 184#undef SDL_TIMERS_DISABLED 185#undef SDL_VIDEO_DISABLED 186#undef SDL_POWER_DISABLED 187#undef SDL_FILESYSTEM_DISABLED 188 189/* Enable various audio drivers */ 190#undef SDL_AUDIO_DRIVER_ALSA 191#undef SDL_AUDIO_DRIVER_ALSA_DYNAMIC 192#undef SDL_AUDIO_DRIVER_ARTS 193#undef SDL_AUDIO_DRIVER_ARTS_DYNAMIC 194#undef SDL_AUDIO_DRIVER_PULSEAUDIO 195#undef SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC 196#undef SDL_AUDIO_DRIVER_BEOSAUDIO 197#undef SDL_AUDIO_DRIVER_BSD 198#undef SDL_AUDIO_DRIVER_COREAUDIO 199#undef SDL_AUDIO_DRIVER_DISK 200#undef SDL_AUDIO_DRIVER_DUMMY 201#undef SDL_AUDIO_DRIVER_XAUDIO2 202#undef SDL_AUDIO_DRIVER_DSOUND 203#undef SDL_AUDIO_DRIVER_ESD 204#undef SDL_AUDIO_DRIVER_ESD_DYNAMIC 205#undef SDL_AUDIO_DRIVER_NAS 206#undef SDL_AUDIO_DRIVER_NAS_DYNAMIC 207#undef SDL_AUDIO_DRIVER_SNDIO 208#undef SDL_AUDIO_DRIVER_SNDIO_DYNAMIC 209#undef SDL_AUDIO_DRIVER_OSS 210#undef SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H 211#undef SDL_AUDIO_DRIVER_PAUDIO 212#undef SDL_AUDIO_DRIVER_QSA 213#undef SDL_AUDIO_DRIVER_SUNAUDIO 214#undef SDL_AUDIO_DRIVER_WINMM 215#undef SDL_AUDIO_DRIVER_FUSIONSOUND 216#undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC 217 218/* Enable various input drivers */ 219#undef SDL_INPUT_LINUXEV 220#undef SDL_INPUT_LINUXKD 221#undef SDL_INPUT_TSLIB 222#undef SDL_JOYSTICK_BEOS 223#undef SDL_JOYSTICK_DINPUT 224#undef SDL_JOYSTICK_DUMMY 225#undef SDL_JOYSTICK_IOKIT 226#undef SDL_JOYSTICK_LINUX 227#undef SDL_JOYSTICK_WINMM 228#undef SDL_JOYSTICK_USBHID 229#undef SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H 230#undef SDL_HAPTIC_DUMMY 231#undef SDL_HAPTIC_LINUX 232#undef SDL_HAPTIC_IOKIT 233#undef SDL_HAPTIC_DINPUT 234 235/* Enable various shared object loading systems */ 236#undef SDL_LOADSO_BEOS 237#undef SDL_LOADSO_DLOPEN 238#undef SDL_LOADSO_DUMMY 239#undef SDL_LOADSO_LDG 240#undef SDL_LOADSO_WINDOWS 241 242/* Enable various threading systems */ 243#undef SDL_THREAD_BEOS 244#undef SDL_THREAD_PTHREAD 245#undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 246#undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP 247#undef SDL_THREAD_WINDOWS 248 249/* Enable various timer systems */ 250#undef SDL_TIMER_BEOS 251#undef SDL_TIMER_DUMMY 252#undef SDL_TIMER_UNIX 253#undef SDL_TIMER_WINDOWS 254 255/* Enable various video drivers */ 256#undef SDL_VIDEO_DRIVER_BWINDOW 257#undef SDL_VIDEO_DRIVER_COCOA 258#undef SDL_VIDEO_DRIVER_DIRECTFB 259#undef SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC 260#undef SDL_VIDEO_DRIVER_DUMMY 261#undef SDL_VIDEO_DRIVER_WINDOWS 262#undef SDL_VIDEO_DRIVER_X11 263#undef SDL_VIDEO_DRIVER_RPI 264#undef SDL_VIDEO_DRIVER_X11_DYNAMIC 265#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT 266#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR 267#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA 268#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 269#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR 270#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS 271#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE 272#undef SDL_VIDEO_DRIVER_X11_XCURSOR 273#undef SDL_VIDEO_DRIVER_X11_XINERAMA 274#undef SDL_VIDEO_DRIVER_X11_XINPUT2 275#undef SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH 276#undef SDL_VIDEO_DRIVER_X11_XRANDR 277#undef SDL_VIDEO_DRIVER_X11_XSCRNSAVER 278#undef SDL_VIDEO_DRIVER_X11_XSHAPE 279#undef SDL_VIDEO_DRIVER_X11_XVIDMODE 280#undef SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS 281#undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32 282#undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY 283#undef SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM 284 285#undef SDL_VIDEO_RENDER_D3D 286#undef SDL_VIDEO_RENDER_OGL 287#undef SDL_VIDEO_RENDER_OGL_ES 288#undef SDL_VIDEO_RENDER_OGL_ES2 289#undef SDL_VIDEO_RENDER_DIRECTFB 290 291/* Enable OpenGL support */ 292#undef SDL_VIDEO_OPENGL 293#undef SDL_VIDEO_OPENGL_ES 294#undef SDL_VIDEO_OPENGL_ES2 295#undef SDL_VIDEO_OPENGL_BGL 296#undef SDL_VIDEO_OPENGL_CGL 297#undef SDL_VIDEO_OPENGL_EGL 298#undef SDL_VIDEO_OPENGL_GLX 299#undef SDL_VIDEO_OPENGL_WGL 300#undef SDL_VIDEO_OPENGL_OSMESA 301#undef SDL_VIDEO_OPENGL_OSMESA_DYNAMIC 302 303/* Enable system power support */ 304#undef SDL_POWER_LINUX 305#undef SDL_POWER_WINDOWS 306#undef SDL_POWER_MACOSX 307#undef SDL_POWER_BEOS 308#undef SDL_POWER_HARDWIRED 309 310/* Enable system filesystem support */ 311#undef SDL_FILESYSTEM_BEOS 312#undef SDL_FILESYSTEM_COCOA 313#undef SDL_FILESYSTEM_DUMMY 314#undef SDL_FILESYSTEM_UNIX 315#undef SDL_FILESYSTEM_WINDOWS 316 317/* Enable assembly routines */ 318#undef SDL_ASSEMBLY_ROUTINES 319#undef SDL_ALTIVEC_BLITTERS 320 321#endif /* _SDL_config_h */ 322