|  | #ifndef _SDL_config_emscripten_h | 
|  | #define _SDL_config_emscripten_h | 
|  |  | 
|  | /** | 
|  | *  \file SDL_config_emscripten.h | 
|  | * | 
|  | *  This is a configuration that can be used to build SDL for Emscripten | 
|  | */ | 
|  |  | 
|  | /* General platform specific identifiers */ | 
|  | #include "SDL_platform.h" | 
|  |  | 
|  | /* Make sure that this isn't included by Visual C++ */ | 
|  | #ifdef _MSC_VER | 
|  | #error You should run hg revert SDL_config.h | 
|  | #endif | 
|  |  | 
|  | /* C language features */ | 
|  | /* #undef const */ | 
|  | /* #undef inline */ | 
|  | /* #undef volatile */ | 
|  |  | 
|  | /* C datatypes */ | 
|  | #ifdef __LP64__ | 
|  | #define SIZEOF_VOIDP 8 | 
|  | #else | 
|  | #define SIZEOF_VOIDP 4 | 
|  | #endif | 
|  | #define HAVE_GCC_ATOMICS 1 | 
|  | /* #undef HAVE_GCC_SYNC_LOCK_TEST_AND_SET */ | 
|  |  | 
|  | /* Comment this if you want to build without any C library requirements */ | 
|  | #define HAVE_LIBC 1 | 
|  | #if HAVE_LIBC | 
|  |  | 
|  | /* Useful headers */ | 
|  | #define STDC_HEADERS 1 | 
|  | #define HAVE_ALLOCA_H 1 | 
|  | #define HAVE_CTYPE_H 1 | 
|  | #define HAVE_FLOAT_H 1 | 
|  | #define HAVE_ICONV_H 1 | 
|  | #define HAVE_INTTYPES_H 1 | 
|  | #define HAVE_LIMITS_H 1 | 
|  | #define HAVE_MALLOC_H 1 | 
|  | #define HAVE_MATH_H 1 | 
|  | #define HAVE_MEMORY_H 1 | 
|  | #define HAVE_SIGNAL_H 1 | 
|  | #define HAVE_STDARG_H 1 | 
|  | #define HAVE_STDINT_H 1 | 
|  | #define HAVE_STDIO_H 1 | 
|  | #define HAVE_STDLIB_H 1 | 
|  | #define HAVE_STRINGS_H 1 | 
|  | #define HAVE_STRING_H 1 | 
|  | #define HAVE_SYS_TYPES_H 1 | 
|  | #define HAVE_WCHAR_H 1 | 
|  | /* #undef HAVE_PTHREAD_NP_H */ | 
|  | /* #undef HAVE_LIBUNWIND_H */ | 
|  |  | 
|  | /* C library functions */ | 
|  | #define HAVE_MALLOC 1 | 
|  | #define HAVE_CALLOC 1 | 
|  | #define HAVE_REALLOC 1 | 
|  | #define HAVE_FREE 1 | 
|  | #define HAVE_ALLOCA 1 | 
|  | #ifndef __WIN32__ /* Don't use C runtime versions of these on Windows */ | 
|  | #define HAVE_GETENV 1 | 
|  | #define HAVE_SETENV 1 | 
|  | #define HAVE_PUTENV 1 | 
|  | #define HAVE_UNSETENV 1 | 
|  | #endif | 
|  | #define HAVE_QSORT 1 | 
|  | #define HAVE_ABS 1 | 
|  | #define HAVE_BCOPY 1 | 
|  | #define HAVE_MEMSET 1 | 
|  | #define HAVE_MEMCPY 1 | 
|  | #define HAVE_MEMMOVE 1 | 
|  | #define HAVE_MEMCMP 1 | 
|  | #define HAVE_WCSLEN 1 | 
|  | /* #undef HAVE_WCSLCPY */ | 
|  | /* #undef HAVE_WCSLCAT */ | 
|  | #define HAVE_WCSCMP 1 | 
|  | #define HAVE_STRLEN 1 | 
|  | /* #undef HAVE_STRLCPY */ | 
|  | /* #undef HAVE_STRLCAT */ | 
|  | /* #undef HAVE__STRREV */ | 
|  | /* #undef HAVE__STRUPR */ | 
|  | /* #undef HAVE__STRLWR */ | 
|  | /* #undef HAVE_INDEX */ | 
|  | /* #undef HAVE_RINDEX */ | 
|  | #define HAVE_STRCHR 1 | 
|  | #define HAVE_STRRCHR 1 | 
|  | #define HAVE_STRSTR 1 | 
|  | /* #undef HAVE_ITOA */ | 
|  | /* #undef HAVE__LTOA */ | 
|  | /* #undef HAVE__UITOA */ | 
|  | /* #undef HAVE__ULTOA */ | 
|  | #define HAVE_STRTOL 1 | 
|  | #define HAVE_STRTOUL 1 | 
|  | /* #undef HAVE__I64TOA */ | 
|  | /* #undef HAVE__UI64TOA */ | 
|  | #define HAVE_STRTOLL 1 | 
|  | #define HAVE_STRTOULL 1 | 
|  | #define HAVE_STRTOD 1 | 
|  | #define HAVE_ATOI 1 | 
|  | #define HAVE_ATOF 1 | 
|  | #define HAVE_STRCMP 1 | 
|  | #define HAVE_STRNCMP 1 | 
|  | /* #undef HAVE__STRICMP */ | 
|  | #define HAVE_STRCASECMP 1 | 
|  | /* #undef HAVE__STRNICMP */ | 
|  | #define HAVE_STRNCASECMP 1 | 
|  | /* #undef HAVE_SSCANF */ | 
|  | #define HAVE_VSSCANF 1 | 
|  | /* #undef HAVE_SNPRINTF */ | 
|  | #define HAVE_VSNPRINTF 1 | 
|  | #define HAVE_M_PI /**/ | 
|  | #define HAVE_ACOS 1 | 
|  | #define HAVE_ACOSF 1 | 
|  | #define HAVE_ASIN 1 | 
|  | #define HAVE_ASINF 1 | 
|  | #define HAVE_ATAN 1 | 
|  | #define HAVE_ATANF 1 | 
|  | #define HAVE_ATAN2 1 | 
|  | #define HAVE_ATAN2F 1 | 
|  | #define HAVE_CEIL 1 | 
|  | #define HAVE_CEILF 1 | 
|  | #define HAVE_COPYSIGN 1 | 
|  | #define HAVE_COPYSIGNF 1 | 
|  | #define HAVE_COS 1 | 
|  | #define HAVE_COSF 1 | 
|  | #define HAVE_FABS 1 | 
|  | #define HAVE_FABSF 1 | 
|  | #define HAVE_FLOOR 1 | 
|  | #define HAVE_FLOORF 1 | 
|  | #define HAVE_FMOD 1 | 
|  | #define HAVE_FMODF 1 | 
|  | #define HAVE_LOG 1 | 
|  | #define HAVE_LOGF 1 | 
|  | #define HAVE_LOG10 1 | 
|  | #define HAVE_LOG10F 1 | 
|  | #define HAVE_POW 1 | 
|  | #define HAVE_POWF 1 | 
|  | #define HAVE_SCALBN 1 | 
|  | #define HAVE_SCALBNF 1 | 
|  | #define HAVE_SIN 1 | 
|  | #define HAVE_SINF 1 | 
|  | #define HAVE_SQRT 1 | 
|  | #define HAVE_SQRTF 1 | 
|  | #define HAVE_TAN 1 | 
|  | #define HAVE_TANF 1 | 
|  | #define HAVE_FOPEN64 1 | 
|  | #define HAVE_FSEEKO 1 | 
|  | /* #undef HAVE_FSEEKO64 */ | 
|  | #define HAVE_SIGACTION 1 | 
|  | #define HAVE_SA_SIGACTION 1 | 
|  | #define HAVE_SETJMP 1 | 
|  | #define HAVE_NANOSLEEP 1 | 
|  | #define HAVE_SYSCONF 1 | 
|  | #define HAVE_SYSCTLBYNAME 1 | 
|  | /* #undef HAVE_CLOCK_GETTIME */ | 
|  | /* #undef HAVE_GETPAGESIZE */ | 
|  | #define HAVE_MPROTECT 1 | 
|  | #define HAVE_ICONV 1 | 
|  | /* #undef HAVE_PTHREAD_SETNAME_NP */ | 
|  | /* #undef HAVE_PTHREAD_SET_NAME_NP */ | 
|  | /* #undef HAVE_SEM_TIMEDWAIT */ | 
|  | /* #undef HAVE_GETAUXVAL */ | 
|  | /* #undef HAVE_POLL */ | 
|  |  | 
|  | #else | 
|  | #define HAVE_STDARG_H 1 | 
|  | #define HAVE_STDDEF_H 1 | 
|  | #define HAVE_STDINT_H 1 | 
|  | #endif /* HAVE_LIBC */ | 
|  |  | 
|  | /* #undef HAVE_ALTIVEC_H */ | 
|  | /* #undef HAVE_LIBUDEV_H */ | 
|  | /* #undef HAVE_DBUS_DBUS_H */ | 
|  | /* #undef HAVE_IBUS_IBUS_H */ | 
|  | /* #undef HAVE_FCITX_FRONTEND_H */ | 
|  | /* #undef HAVE_IMMINTRIN_H */ | 
|  | /* #undef HAVE_LIBSAMPLERATE_H */ | 
|  |  | 
|  | /* #undef HAVE_DDRAW_H */ | 
|  | /* #undef HAVE_DINPUT_H */ | 
|  | /* #undef HAVE_DSOUND_H */ | 
|  | /* #undef HAVE_DXGI_H */ | 
|  | /* #undef HAVE_XINPUT_H */ | 
|  | /* #undef HAVE_XINPUT_GAMEPAD_EX */ | 
|  | /* #undef HAVE_XINPUT_STATE_EX */ | 
|  |  | 
|  | /* SDL internal assertion support */ | 
|  | /* #undef SDL_DEFAULT_ASSERT_LEVEL */ | 
|  |  | 
|  | /* Allow disabling of core subsystems */ | 
|  | #define SDL_ATOMIC_DISABLED 1 | 
|  | /* #undef SDL_AUDIO_DISABLED */ | 
|  | #define SDL_CPUINFO_DISABLED 1 | 
|  | /* #undef SDL_EVENTS_DISABLED */ | 
|  | /* #undef SDL_FILE_DISABLED */ | 
|  | /* #undef SDL_JOYSTICK_DISABLED */ | 
|  | #define SDL_HAPTIC_DISABLED 1 | 
|  | #define SDL_LOADSO_DISABLED 1 | 
|  | /* #undef SDL_RENDER_DISABLED */ | 
|  | #define SDL_THREADS_DISABLED 1 | 
|  | /* #undef SDL_TIMERS_DISABLED */ | 
|  | /* #undef SDL_VIDEO_DISABLED */ | 
|  | /* #undef SDL_POWER_DISABLED */ | 
|  | /* #undef SDL_FILESYSTEM_DISABLED */ | 
|  |  | 
|  | /* Enable various audio drivers */ | 
|  | /* #undef SDL_AUDIO_DRIVER_ALSA */ | 
|  | /* #undef SDL_AUDIO_DRIVER_ALSA_DYNAMIC */ | 
|  | /* #undef SDL_AUDIO_DRIVER_ARTS */ | 
|  | /* #undef SDL_AUDIO_DRIVER_ARTS_DYNAMIC */ | 
|  | /* #undef SDL_AUDIO_DRIVER_COREAUDIO */ | 
|  | #define SDL_AUDIO_DRIVER_DISK 1 | 
|  | /* #undef SDL_AUDIO_DRIVER_DSOUND */ | 
|  | #define SDL_AUDIO_DRIVER_DUMMY 1 | 
|  | #define SDL_AUDIO_DRIVER_EMSCRIPTEN 1 | 
|  | /* #undef SDL_AUDIO_DRIVER_ESD */ | 
|  | /* #undef SDL_AUDIO_DRIVER_ESD_DYNAMIC */ | 
|  | /* #undef SDL_AUDIO_DRIVER_FUSIONSOUND */ | 
|  | /* #undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC */ | 
|  | /* #undef SDL_AUDIO_DRIVER_HAIKU */ | 
|  | /* #undef SDL_AUDIO_DRIVER_JACK */ | 
|  | /* #undef SDL_AUDIO_DRIVER_JACK_DYNAMIC */ | 
|  | /* #undef SDL_AUDIO_DRIVER_NACL */ | 
|  | /* #undef SDL_AUDIO_DRIVER_NAS */ | 
|  | /* #undef SDL_AUDIO_DRIVER_NAS_DYNAMIC */ | 
|  | /* #undef SDL_AUDIO_DRIVER_NETBSD */ | 
|  | /* #undef SDL_AUDIO_DRIVER_OSS 1 */ | 
|  | /* #undef SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H */ | 
|  | /* #undef SDL_AUDIO_DRIVER_PAUDIO */ | 
|  | /* #undef SDL_AUDIO_DRIVER_PULSEAUDIO */ | 
|  | /* #undef SDL_AUDIO_DRIVER_QSA */ | 
|  | /* #undef SDL_AUDIO_DRIVER_SNDIO */ | 
|  | /* #undef SDL_AUDIO_DRIVER_SNDIO_DYNAMIC */ | 
|  | /* #undef SDL_AUDIO_DRIVER_SUNAUDIO */ | 
|  | /* #undef SDL_AUDIO_DRIVER_WASAPI */ | 
|  | /* #undef SDL_AUDIO_DRIVER_WINMM */ | 
|  |  | 
|  | /* Enable various input drivers */ | 
|  | /* #undef SDL_INPUT_LINUXEV */ | 
|  | /* #undef SDL_INPUT_LINUXKD */ | 
|  | /* #undef SDL_INPUT_TSLIB */ | 
|  | /* #undef SDL_JOYSTICK_HAIKU */ | 
|  | /* #undef SDL_JOYSTICK_DINPUT */ | 
|  | /* #undef SDL_JOYSTICK_XINPUT */ | 
|  | /* #undef SDL_JOYSTICK_DUMMY */ | 
|  | /* #undef SDL_JOYSTICK_IOKIT */ | 
|  | /* #undef SDL_JOYSTICK_LINUX */ | 
|  | /* #undef SDL_JOYSTICK_ANDROID */ | 
|  | /* #undef SDL_JOYSTICK_WINMM */ | 
|  | /* #undef SDL_JOYSTICK_USBHID */ | 
|  | /* #undef SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H */ | 
|  | #define SDL_JOYSTICK_EMSCRIPTEN 1 | 
|  | /* #undef SDL_HAPTIC_DUMMY */ | 
|  | /* #undef SDL_HAPTIC_ANDROID */ | 
|  | /* #undef SDL_HAPTIC_LINUX */ | 
|  | /* #undef SDL_HAPTIC_IOKIT */ | 
|  | /* #undef SDL_HAPTIC_DINPUT */ | 
|  | /* #undef SDL_HAPTIC_XINPUT */ | 
|  |  | 
|  | /* Enable various shared object loading systems */ | 
|  | #define SDL_LOADSO_DLOPEN 1 | 
|  | /* #undef SDL_LOADSO_DUMMY */ | 
|  | /* #undef SDL_LOADSO_LDG */ | 
|  | /* #undef SDL_LOADSO_WINDOWS */ | 
|  |  | 
|  | /* Enable various threading systems */ | 
|  | /* #undef SDL_THREAD_PTHREAD */ | 
|  | /* #undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX */ | 
|  | /* #undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP */ | 
|  | /* #undef SDL_THREAD_WINDOWS */ | 
|  |  | 
|  | /* Enable various timer systems */ | 
|  | /* #undef SDL_TIMER_HAIKU */ | 
|  | /* #undef SDL_TIMER_DUMMY */ | 
|  | #define SDL_TIMER_UNIX 1 | 
|  | /* #undef SDL_TIMER_WINDOWS */ | 
|  |  | 
|  | /* Enable various video drivers */ | 
|  | /* #undef SDL_VIDEO_DRIVER_HAIKU */ | 
|  | /* #undef SDL_VIDEO_DRIVER_COCOA */ | 
|  | /* #undef SDL_VIDEO_DRIVER_DIRECTFB */ | 
|  | /* #undef SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC */ | 
|  | #define SDL_VIDEO_DRIVER_DUMMY 1 | 
|  | /* #undef SDL_VIDEO_DRIVER_WINDOWS */ | 
|  | /* #undef SDL_VIDEO_DRIVER_WAYLAND */ | 
|  | /* #undef SDL_VIDEO_DRIVER_WAYLAND_QT_TOUCH */ | 
|  | /* #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC */ | 
|  | /* #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_EGL */ | 
|  | /* #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_CURSOR */ | 
|  | /* #undef SDL_VIDEO_DRIVER_WAYLAND_DYNAMIC_XKBCOMMON */ | 
|  | /* #undef SDL_VIDEO_DRIVER_MIR */ | 
|  | /* #undef SDL_VIDEO_DRIVER_MIR_DYNAMIC */ | 
|  | /* #undef SDL_VIDEO_DRIVER_MIR_DYNAMIC_XKBCOMMON */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11 */ | 
|  | /* #undef SDL_VIDEO_DRIVER_RPI */ | 
|  | /* #undef SDL_VIDEO_DRIVER_KMSDRM */ | 
|  | /* #undef SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC */ | 
|  | /* #undef SDL_VIDEO_DRIVER_KMSDRM_DYNAMIC_GBM */ | 
|  | /* #undef SDL_VIDEO_DRIVER_ANDROID */ | 
|  | #define SDL_VIDEO_DRIVER_EMSCRIPTEN 1 | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2 */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_XCURSOR */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_XDBE */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_XINERAMA */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_XINPUT2 */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_XRANDR */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_XSCRNSAVER */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_XSHAPE */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_XVIDMODE */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY */ | 
|  | /* #undef SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM */ | 
|  | /* #undef SDL_VIDEO_DRIVER_NACL */ | 
|  | /* #undef SDL_VIDEO_DRIVER_VIVANTE */ | 
|  | /* #undef SDL_VIDEO_DRIVER_VIVANTE_VDK */ | 
|  | /* #undef SDL_VIDEO_DRIVER_QNX */ | 
|  | /* #undef SDL_VIDEO_DRIVER_HEADLESS */ | 
|  |  | 
|  | /* #undef SDL_VIDEO_RENDER_D3D */ | 
|  | /* #undef SDL_VIDEO_RENDER_D3D11 */ | 
|  | /* #undef SDL_VIDEO_RENDER_OGL */ | 
|  | /* #undef SDL_VIDEO_RENDER_OGL_ES */ | 
|  | #define SDL_VIDEO_RENDER_OGL_ES2 1 | 
|  | /* #undef SDL_VIDEO_RENDER_DIRECTFB */ | 
|  | /* #undef SDL_VIDEO_RENDER_METAL */ | 
|  |  | 
|  | /* Enable OpenGL support */ | 
|  | /* #undef SDL_VIDEO_OPENGL */ | 
|  | /* #undef SDL_VIDEO_OPENGL_ES */ | 
|  | #define SDL_VIDEO_OPENGL_ES2 1 | 
|  | /* #undef SDL_VIDEO_OPENGL_BGL */ | 
|  | /* #undef SDL_VIDEO_OPENGL_CGL */ | 
|  | #define SDL_VIDEO_OPENGL_EGL 1 | 
|  | /* #undef SDL_VIDEO_OPENGL_GLX */ | 
|  | /* #undef SDL_VIDEO_OPENGL_OSMESA */ | 
|  | /* #undef SDL_VIDEO_OPENGL_WGL */ | 
|  | /* #undef SDL_VIDEO_OPENGL_OSMESA */ | 
|  | /* #undef SDL_VIDEO_OPENGL_OSMESA_DYNAMIC */ | 
|  |  | 
|  | /* Enable Vulkan support */ | 
|  | /* #undef SDL_VIDEO_VULKAN */ | 
|  |  | 
|  | /* Enable system power support */ | 
|  | /* #undef SDL_POWER_LINUX */ | 
|  | /* #undef SDL_POWER_WINDOWS */ | 
|  | /* #undef SDL_POWER_MACOSX */ | 
|  | /* #undef SDL_POWER_HAIKU */ | 
|  | /* #undef SDL_POWER_ANDROID */ | 
|  | #define SDL_POWER_EMSCRIPTEN 1 | 
|  | /* #undef SDL_POWER_HARDWIRED */ | 
|  |  | 
|  | /* Enable system filesystem support */ | 
|  | /* #undef SDL_FILESYSTEM_HAIKU */ | 
|  | /* #undef SDL_FILESYSTEM_COCOA */ | 
|  | /* #undef SDL_FILESYSTEM_DUMMY */ | 
|  | /* #undef SDL_FILESYSTEM_UNIX */ | 
|  | /* #undef SDL_FILESYSTEM_WINDOWS */ | 
|  | /* #undef SDL_FILESYSTEM_NACL */ | 
|  | /* #undef SDL_FILESYSTEM_ANDROID */ | 
|  | #define SDL_FILESYSTEM_EMSCRIPTEN 1 | 
|  |  | 
|  | /* Enable assembly routines */ | 
|  | /* #undef SDL_ASSEMBLY_ROUTINES */ | 
|  | /* #undef SDL_ALTIVEC_BLITTERS */ | 
|  |  | 
|  | /* Enable ime support */ | 
|  | /* #undef SDL_USE_IME */ | 
|  |  | 
|  | /* Enable dynamic udev support */ | 
|  | /* #undef SDL_UDEV_DYNAMIC */ | 
|  |  | 
|  | /* Enable dynamic libsamplerate support */ | 
|  | /* #undef SDL_LIBSAMPLERATE_DYNAMIC */ | 
|  |  | 
|  | #endif /* _SDL_config_emscripten_h */ |