1/* 2 SDL - Simple DirectMedia Layer 3 Copyright (C) 1997-2006 Sam Lantinga 4 5 This library is free software; you can redistribute it and/or 6 modify it under the terms of the GNU Lesser General Public 7 License as published by the Free Software Foundation; either 8 version 2.1 of the License, or (at your option) any later version. 9 10 This library is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Lesser General Public License for more details. 14 15 You should have received a copy of the GNU Lesser General Public 16 License along with this library; if not, write to the Free Software 17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 18 19 Sam Lantinga 20 slouken@libsdl.org 21*/ 22 23#ifndef _SDL_config_h 24#define _SDL_config_h 25 26/* This is a set of defines to configure the SDL features */ 27 28/* General platform specific identifiers */ 29#include "SDL_platform.h" 30 31/* Make sure that this isn't included by Visual C++ */ 32#ifdef _MSC_VER 33#error You should copy include/SDL_config.h.default to include/SDL_config.h 34#endif 35 36/* C language features */ 37#undef const 38#undef inline 39#undef volatile 40 41/* C datatypes */ 42#undef size_t 43#undef int8_t 44#undef uint8_t 45#undef int16_t 46#undef uint16_t 47#undef int32_t 48#undef uint32_t 49#undef int64_t 50#undef uint64_t 51#undef uintptr_t 52#undef SDL_HAS_64BIT_TYPE 53 54/* Endianness */ 55#undef SDL_BYTEORDER 56 57/* Comment this if you want to build without any C library requirements */ 58#undef HAVE_LIBC 59#if HAVE_LIBC 60 61/* Useful headers */ 62#undef HAVE_ALLOCA_H 63#undef HAVE_SYS_TYPES_H 64#undef HAVE_STDIO_H 65#undef STDC_HEADERS 66#undef HAVE_STDLIB_H 67#undef HAVE_STDARG_H 68#undef HAVE_MALLOC_H 69#undef HAVE_MEMORY_H 70#undef HAVE_STRING_H 71#undef HAVE_STRINGS_H 72#undef HAVE_INTTYPES_H 73#undef HAVE_STDINT_H 74#undef HAVE_CTYPE_H 75#undef HAVE_MATH_H 76#undef HAVE_ICONV_H 77#undef HAVE_SIGNAL_H 78#undef HAVE_ALTIVEC_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_PUTENV 89#undef HAVE_UNSETENV 90#endif 91#undef HAVE_QSORT 92#undef HAVE_ABS 93#undef HAVE_BCOPY 94#undef HAVE_MEMSET 95#undef HAVE_MEMCPY 96#undef HAVE_MEMMOVE 97#undef HAVE_MEMCMP 98#undef HAVE_STRLEN 99#undef HAVE_STRLCPY 100#undef HAVE_STRLCAT 101#undef HAVE_STRDUP 102#undef HAVE__STRREV 103#undef HAVE__STRUPR 104#undef HAVE__STRLWR 105#undef HAVE_INDEX 106#undef HAVE_RINDEX 107#undef HAVE_STRCHR 108#undef HAVE_STRRCHR 109#undef HAVE_STRSTR 110#undef HAVE_ITOA 111#undef HAVE__LTOA 112#undef HAVE__UITOA 113#undef HAVE__ULTOA 114#undef HAVE_STRTOL 115#undef HAVE_STRTOUL 116#undef HAVE__I64TOA 117#undef HAVE__UI64TOA 118#undef HAVE_STRTOLL 119#undef HAVE_STRTOULL 120#undef HAVE_STRTOD 121#undef HAVE_ATOI 122#undef HAVE_ATOF 123#undef HAVE_STRCMP 124#undef HAVE_STRNCMP 125#undef HAVE__STRICMP 126#undef HAVE_STRCASECMP 127#undef HAVE__STRNICMP 128#undef HAVE_STRNCASECMP 129#undef HAVE_SSCANF 130#undef HAVE_SNPRINTF 131#undef HAVE_VSNPRINTF 132#undef HAVE_ICONV 133#undef HAVE_SIGACTION 134#undef HAVE_SETJMP 135#undef HAVE_NANOSLEEP 136#undef HAVE_CLOCK_GETTIME 137#undef HAVE_DLVSYM 138#undef HAVE_GETPAGESIZE 139 140#else 141/* We may need some replacement for stdarg.h here */ 142#include <stdarg.h> 143#endif /* HAVE_LIBC */ 144 145/* Allow disabling of core subsystems */ 146#undef SDL_AUDIO_DISABLED 147#undef SDL_CDROM_DISABLED 148#undef SDL_CPUINFO_DISABLED 149#undef SDL_EVENTS_DISABLED 150#undef SDL_FILE_DISABLED 151#undef SDL_JOYSTICK_DISABLED 152#undef SDL_LOADSO_DISABLED 153#undef SDL_THREADS_DISABLED 154#undef SDL_TIMERS_DISABLED 155#undef SDL_VIDEO_DISABLED 156 157/* Enable various audio drivers */ 158#undef SDL_AUDIO_DRIVER_ALSA 159#undef SDL_AUDIO_DRIVER_ALSA_DYNAMIC 160#undef SDL_AUDIO_DRIVER_ARTS 161#undef SDL_AUDIO_DRIVER_ARTS_DYNAMIC 162#undef SDL_AUDIO_DRIVER_BAUDIO 163#undef SDL_AUDIO_DRIVER_BSD 164#undef SDL_AUDIO_DRIVER_COREAUDIO 165#undef SDL_AUDIO_DRIVER_DART 166#undef SDL_AUDIO_DRIVER_DC 167#undef SDL_AUDIO_DRIVER_DISK 168#undef SDL_AUDIO_DRIVER_DUMMY 169#undef SDL_AUDIO_DRIVER_DMEDIA 170#undef SDL_AUDIO_DRIVER_DSOUND 171#undef SDL_AUDIO_DRIVER_PULSE 172#undef SDL_AUDIO_DRIVER_PULSE_DYNAMIC 173#undef SDL_AUDIO_DRIVER_ESD 174#undef SDL_AUDIO_DRIVER_ESD_DYNAMIC 175#undef SDL_AUDIO_DRIVER_MINT 176#undef SDL_AUDIO_DRIVER_MMEAUDIO 177#undef SDL_AUDIO_DRIVER_NAS 178#undef SDL_AUDIO_DRIVER_OSS 179#undef SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H 180#undef SDL_AUDIO_DRIVER_PAUD 181#undef SDL_AUDIO_DRIVER_QNXNTO 182#undef SDL_AUDIO_DRIVER_SNDMGR 183#undef SDL_AUDIO_DRIVER_SUNAUDIO 184#undef SDL_AUDIO_DRIVER_WAVEOUT 185 186/* Enable various cdrom drivers */ 187#undef SDL_CDROM_AIX 188#undef SDL_CDROM_BEOS 189#undef SDL_CDROM_BSDI 190#undef SDL_CDROM_DC 191#undef SDL_CDROM_DUMMY 192#undef SDL_CDROM_FREEBSD 193#undef SDL_CDROM_LINUX 194#undef SDL_CDROM_MACOS 195#undef SDL_CDROM_MACOSX 196#undef SDL_CDROM_MINT 197#undef SDL_CDROM_OPENBSD 198#undef SDL_CDROM_OS2 199#undef SDL_CDROM_OSF 200#undef SDL_CDROM_QNX 201#undef SDL_CDROM_WIN32 202 203/* Enable various input drivers */ 204#undef SDL_INPUT_TSLIB 205#undef SDL_JOYSTICK_BEOS 206#undef SDL_JOYSTICK_DC 207#undef SDL_JOYSTICK_DUMMY 208#undef SDL_JOYSTICK_IOKIT 209#undef SDL_JOYSTICK_LINUX 210#undef SDL_JOYSTICK_LINUXEV 211#undef SDL_JOYSTICK_MACOS 212#undef SDL_JOYSTICK_MINT 213#undef SDL_JOYSTICK_OS2 214#undef SDL_JOYSTICK_RISCOS 215#undef SDL_JOYSTICK_WINMM 216#undef SDL_JOYSTICK_USBHID 217#undef SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H 218 219/* Enable various shared object loading systems */ 220#undef SDL_LOADSO_BEOS 221#undef SDL_LOADSO_DLCOMPAT 222#undef SDL_LOADSO_DLOPEN 223#undef SDL_LOADSO_DUMMY 224#undef SDL_LOADSO_LDG 225#undef SDL_LOADSO_MACOS 226#undef SDL_LOADSO_OS2 227#undef SDL_LOADSO_WIN32 228 229/* Enable various threading systems */ 230#undef SDL_THREAD_BEOS 231#undef SDL_THREAD_DC 232#undef SDL_THREAD_OS2 233#undef SDL_THREAD_PTH 234#undef SDL_THREAD_PTHREAD 235#undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX 236#undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP 237#undef SDL_THREAD_SPROC 238#undef SDL_THREAD_WIN32 239 240/* Enable various timer systems */ 241#undef SDL_TIMER_BEOS 242#undef SDL_TIMER_DC 243#undef SDL_TIMER_DUMMY 244#undef SDL_TIMER_MACOS 245#undef SDL_TIMER_MINT 246#undef SDL_TIMER_OS2 247#undef SDL_TIMER_RISCOS 248#undef SDL_TIMER_UNIX 249#undef SDL_TIMER_WIN32 250#undef SDL_TIMER_WINCE 251 252/* Enable various video drivers */ 253#undef SDL_VIDEO_DRIVER_AALIB 254#undef SDL_VIDEO_DRIVER_BWINDOW 255#undef SDL_VIDEO_DRIVER_DC 256#undef SDL_VIDEO_DRIVER_DDRAW 257#undef SDL_VIDEO_DRIVER_DGA 258#undef SDL_VIDEO_DRIVER_DIRECTFB 259#undef SDL_VIDEO_DRIVER_DRAWSPROCKET 260#undef SDL_VIDEO_DRIVER_DUMMY 261#undef SDL_VIDEO_DRIVER_FBCON 262#undef SDL_VIDEO_DRIVER_GAPI 263#undef SDL_VIDEO_DRIVER_GEM 264#undef SDL_VIDEO_DRIVER_GGI 265#undef SDL_VIDEO_DRIVER_IPOD 266#undef SDL_VIDEO_DRIVER_NANOX 267#undef SDL_VIDEO_DRIVER_OS2FS 268#undef SDL_VIDEO_DRIVER_PHOTON 269#undef SDL_VIDEO_DRIVER_PICOGUI 270#undef SDL_VIDEO_DRIVER_PS2GS 271#undef SDL_VIDEO_DRIVER_QTOPIA 272#undef SDL_VIDEO_DRIVER_QUARTZ 273#undef SDL_VIDEO_DRIVER_RISCOS 274#undef SDL_VIDEO_DRIVER_SVGALIB 275#undef SDL_VIDEO_DRIVER_TOOLBOX 276#undef SDL_VIDEO_DRIVER_VGL 277#undef SDL_VIDEO_DRIVER_WINDIB 278#undef SDL_VIDEO_DRIVER_WSCONS 279#undef SDL_VIDEO_DRIVER_X11 280#undef SDL_VIDEO_DRIVER_X11_DGAMOUSE 281#undef SDL_VIDEO_DRIVER_X11_DPMS 282#undef SDL_VIDEO_DRIVER_X11_DYNAMIC 283#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT 284#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR 285#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER 286#undef SDL_VIDEO_DRIVER_X11_VIDMODE 287#undef SDL_VIDEO_DRIVER_X11_XINERAMA 288#undef SDL_VIDEO_DRIVER_X11_XME 289#undef SDL_VIDEO_DRIVER_X11_XRANDR 290#undef SDL_VIDEO_DRIVER_X11_XV 291#undef SDL_VIDEO_DRIVER_XBIOS 292 293/* Enable OpenGL support */ 294#undef SDL_VIDEO_OPENGL 295#undef SDL_VIDEO_OPENGL_GLX 296#undef SDL_VIDEO_OPENGL_WGL 297#undef SDL_VIDEO_OPENGL_OSMESA 298#undef SDL_VIDEO_OPENGL_OSMESA_DYNAMIC 299 300/* Enable assembly routines */ 301#undef SDL_ASSEMBLY_ROUTINES 302#undef SDL_HERMES_BLITTERS 303#undef SDL_ALTIVEC_BLITTERS 304 305#endif /* _SDL_config_h */ 306