include/SDL_config.h.in
author Ryan C. Gordon <icculus@icculus.org>
Wed, 13 Nov 2013 22:35:26 -0500
changeset 7977 5272ae8fccd7
parent 7778 a571a9947869
child 7981 6d538bc1b395
permissions -rw-r--r--
Started BeOS removal: merged BeOS thread and pthread code.

Haiku uses most of the standard pthread API, with a few #ifdefs where we
still need to fallback onto the old BeOS APIs.

BeOS, however, does not support pthreads (or maybe doesn't support it well),
so I'm unplugging support for the platform with this changeset. Be Inc went
out of business in 2001.
slouken@1341
     1
/*
slouken@5535
     2
  Simple DirectMedia Layer
slouken@6885
     3
  Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
slouken@1341
     4
slouken@5535
     5
  This software is provided 'as-is', without any express or implied
slouken@5535
     6
  warranty.  In no event will the authors be held liable for any damages
slouken@5535
     7
  arising from the use of this software.
slouken@1341
     8
slouken@5535
     9
  Permission is granted to anyone to use this software for any purpose,
slouken@5535
    10
  including commercial applications, and to alter it and redistribute it
slouken@5535
    11
  freely, subject to the following restrictions:
slouken@1341
    12
slouken@5535
    13
  1. The origin of this software must not be misrepresented; you must not
slouken@5535
    14
     claim that you wrote the original software. If you use this software
slouken@5535
    15
     in a product, an acknowledgment in the product documentation would be
slouken@5535
    16
     appreciated but is not required.
slouken@5535
    17
  2. Altered source versions must be plainly marked as such, and must not be
slouken@5535
    18
     misrepresented as being the original software.
slouken@5535
    19
  3. This notice may not be removed or altered from any source distribution.
slouken@1341
    20
*/
slouken@1341
    21
slouken@6235
    22
#ifndef _SDL_config_h
slouken@6235
    23
#define _SDL_config_h
slouken@1341
    24
slouken@3407
    25
/**
slouken@3407
    26
 *  \file SDL_config.h.in
slouken@3407
    27
 *
slouken@3407
    28
 *  This is a set of defines to configure the SDL features
slouken@3407
    29
 */
slouken@1341
    30
slouken@1402
    31
/* General platform specific identifiers */
slouken@1402
    32
#include "SDL_platform.h"
slouken@1402
    33
slouken@2175
    34
/* Make sure that this isn't included by Visual C++ */
slouken@2175
    35
#ifdef _MSC_VER
slouken@5389
    36
#error You should run hg revert SDL_config.h 
slouken@2175
    37
#endif
slouken@2175
    38
slouken@1353
    39
/* C language features */
slouken@1353
    40
#undef const
slouken@1353
    41
#undef inline
slouken@1353
    42
#undef volatile
slouken@1352
    43
slouken@1353
    44
/* C datatypes */
azamat@7414
    45
#ifdef __LP64__
slouken@7415
    46
#define SIZEOF_VOIDP 8
azamat@7414
    47
#else
slouken@7415
    48
#define SIZEOF_VOIDP 4
azamat@7414
    49
#endif
slouken@5004
    50
#undef HAVE_GCC_ATOMICS
slouken@5069
    51
#undef HAVE_GCC_SYNC_LOCK_TEST_AND_SET
nathanheisey@5557
    52
#undef HAVE_PTHREAD_SPINLOCK
slouken@1353
    53
slouken@1353
    54
/* Comment this if you want to build without any C library requirements */
slouken@1341
    55
#undef HAVE_LIBC
slouken@1402
    56
#if HAVE_LIBC
slouken@1341
    57
slouken@1353
    58
/* Useful headers */
slouken@1367
    59
#undef HAVE_ALLOCA_H
slouken@1353
    60
#undef HAVE_SYS_TYPES_H
slouken@1352
    61
#undef HAVE_STDIO_H
slouken@1353
    62
#undef STDC_HEADERS
slouken@1352
    63
#undef HAVE_STDLIB_H
slouken@1353
    64
#undef HAVE_STDARG_H
slouken@1352
    65
#undef HAVE_MALLOC_H
slouken@1353
    66
#undef HAVE_MEMORY_H
slouken@1352
    67
#undef HAVE_STRING_H
slouken@1353
    68
#undef HAVE_STRINGS_H
slouken@1353
    69
#undef HAVE_INTTYPES_H
slouken@1353
    70
#undef HAVE_STDINT_H
slouken@1352
    71
#undef HAVE_CTYPE_H
slouken@1361
    72
#undef HAVE_MATH_H
slouken@1501
    73
#undef HAVE_ICONV_H
slouken@1352
    74
#undef HAVE_SIGNAL_H
slouken@5389
    75
#undef HAVE_ALTIVEC_H
icculus@5969
    76
#undef HAVE_PTHREAD_NP_H
icculus@6734
    77
#undef HAVE_LIBUDEV_H
icculus@6774
    78
#undef HAVE_DBUS_DBUS_H
slouken@1341
    79
slouken@1353
    80
/* C library functions */
slouken@1352
    81
#undef HAVE_MALLOC
slouken@1352
    82
#undef HAVE_CALLOC
slouken@1352
    83
#undef HAVE_REALLOC
slouken@1352
    84
#undef HAVE_FREE
slouken@1352
    85
#undef HAVE_ALLOCA
slouken@5093
    86
#ifndef __WIN32__ /* Don't use C runtime versions of these on Windows */
slouken@1352
    87
#undef HAVE_GETENV
icculus@3581
    88
#undef HAVE_SETENV
slouken@1352
    89
#undef HAVE_PUTENV
slouken@1352
    90
#undef HAVE_UNSETENV
slouken@1352
    91
#endif
slouken@1352
    92
#undef HAVE_QSORT
slouken@1341
    93
#undef HAVE_ABS
slouken@1353
    94
#undef HAVE_BCOPY
slouken@1341
    95
#undef HAVE_MEMSET
slouken@1352
    96
#undef HAVE_MEMCPY
slouken@1352
    97
#undef HAVE_MEMMOVE
slouken@1352
    98
#undef HAVE_MEMCMP
slouken@1352
    99
#undef HAVE_STRLEN
slouken@1379
   100
#undef HAVE_STRLCPY
slouken@1379
   101
#undef HAVE_STRLCAT
slouken@1352
   102
#undef HAVE_STRDUP
slouken@1352
   103
#undef HAVE__STRREV
slouken@1352
   104
#undef HAVE__STRUPR
slouken@1352
   105
#undef HAVE__STRLWR
slouken@1353
   106
#undef HAVE_INDEX
slouken@1353
   107
#undef HAVE_RINDEX
slouken@1352
   108
#undef HAVE_STRCHR
slouken@1341
   109
#undef HAVE_STRRCHR
slouken@1341
   110
#undef HAVE_STRSTR
slouken@1352
   111
#undef HAVE_ITOA
slouken@1341
   112
#undef HAVE__LTOA
slouken@1341
   113
#undef HAVE__UITOA
slouken@1341
   114
#undef HAVE__ULTOA
slouken@1352
   115
#undef HAVE_STRTOL
slouken@1461
   116
#undef HAVE_STRTOUL
slouken@1352
   117
#undef HAVE__I64TOA
slouken@1352
   118
#undef HAVE__UI64TOA
slouken@1352
   119
#undef HAVE_STRTOLL
slouken@1461
   120
#undef HAVE_STRTOULL
slouken@1352
   121
#undef HAVE_STRTOD
slouken@1352
   122
#undef HAVE_ATOI
slouken@1352
   123
#undef HAVE_ATOF
slouken@1352
   124
#undef HAVE_STRCMP
slouken@1352
   125
#undef HAVE_STRNCMP
slouken@1510
   126
#undef HAVE__STRICMP
slouken@1352
   127
#undef HAVE_STRCASECMP
slouken@1512
   128
#undef HAVE__STRNICMP
slouken@1501
   129
#undef HAVE_STRNCASECMP
slouken@1352
   130
#undef HAVE_SSCANF
slouken@1352
   131
#undef HAVE_SNPRINTF
slouken@1352
   132
#undef HAVE_VSNPRINTF
slouken@3012
   133
#undef HAVE_M_PI
slouken@4873
   134
#undef HAVE_ATAN
slouken@4870
   135
#undef HAVE_ATAN2
slouken@3032
   136
#undef HAVE_CEIL
slouken@3012
   137
#undef HAVE_COPYSIGN
slouken@3012
   138
#undef HAVE_COS
slouken@3012
   139
#undef HAVE_COSF
slouken@3012
   140
#undef HAVE_FABS
slouken@3012
   141
#undef HAVE_FLOOR
slouken@3012
   142
#undef HAVE_LOG
slouken@3012
   143
#undef HAVE_POW
slouken@3012
   144
#undef HAVE_SCALBN
slouken@3012
   145
#undef HAVE_SIN
slouken@3012
   146
#undef HAVE_SINF
slouken@3012
   147
#undef HAVE_SQRT
slouken@6642
   148
#undef HAVE_FSEEKO
slouken@6642
   149
#undef HAVE_FSEEKO64
slouken@1361
   150
#undef HAVE_SIGACTION
icculus@5577
   151
#undef HAVE_SA_SIGACTION
slouken@1361
   152
#undef HAVE_SETJMP
slouken@1361
   153
#undef HAVE_NANOSLEEP
slouken@3586
   154
#undef HAVE_SYSCONF
slouken@3579
   155
#undef HAVE_SYSCTLBYNAME
slouken@1361
   156
#undef HAVE_CLOCK_GETTIME
icculus@2093
   157
#undef HAVE_GETPAGESIZE
slouken@3405
   158
#undef HAVE_MPROTECT
slouken@5041
   159
#undef HAVE_ICONV
icculus@5969
   160
#undef HAVE_PTHREAD_SETNAME_NP
icculus@5969
   161
#undef HAVE_PTHREAD_SET_NAME_NP
slouken@6219
   162
#undef HAVE_SEM_TIMEDWAIT
slouken@1341
   163
slouken@1361
   164
#else
slouken@7307
   165
#define HAVE_STDARG_H   1
slouken@7307
   166
#define HAVE_STDDEF_H   1
slouken@7307
   167
#define HAVE_STDINT_H   1
slouken@1341
   168
#endif /* HAVE_LIBC */
slouken@1341
   169
slouken@3647
   170
/* SDL internal assertion support */
slouken@3649
   171
#undef SDL_DEFAULT_ASSERT_LEVEL
slouken@3647
   172
slouken@1353
   173
/* Allow disabling of core subsystems */
slouken@5225
   174
#undef SDL_ATOMIC_DISABLED
slouken@1361
   175
#undef SDL_AUDIO_DISABLED
slouken@1361
   176
#undef SDL_CPUINFO_DISABLED
slouken@1361
   177
#undef SDL_EVENTS_DISABLED
slouken@1361
   178
#undef SDL_FILE_DISABLED
slouken@1361
   179
#undef SDL_JOYSTICK_DISABLED
slouken@2713
   180
#undef SDL_HAPTIC_DISABLED
slouken@1361
   181
#undef SDL_LOADSO_DISABLED
slouken@5226
   182
#undef SDL_RENDER_DISABLED
slouken@1361
   183
#undef SDL_THREADS_DISABLED
slouken@1361
   184
#undef SDL_TIMERS_DISABLED
slouken@1361
   185
#undef SDL_VIDEO_DISABLED
icculus@3170
   186
#undef SDL_POWER_DISABLED
icculus@7667
   187
#undef SDL_FILESYSTEM_DISABLED
slouken@1361
   188
slouken@1361
   189
/* Enable various audio drivers */
slouken@1361
   190
#undef SDL_AUDIO_DRIVER_ALSA
slouken@1361
   191
#undef SDL_AUDIO_DRIVER_ALSA_DYNAMIC
slouken@1361
   192
#undef SDL_AUDIO_DRIVER_ARTS
slouken@1361
   193
#undef SDL_AUDIO_DRIVER_ARTS_DYNAMIC
icculus@2271
   194
#undef SDL_AUDIO_DRIVER_PULSEAUDIO
icculus@2271
   195
#undef SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC
icculus@2049
   196
#undef SDL_AUDIO_DRIVER_BEOSAUDIO
slouken@1568
   197
#undef SDL_AUDIO_DRIVER_BSD
slouken@1361
   198
#undef SDL_AUDIO_DRIVER_COREAUDIO
slouken@1361
   199
#undef SDL_AUDIO_DRIVER_DISK
icculus@1532
   200
#undef SDL_AUDIO_DRIVER_DUMMY
icculus@5592
   201
#undef SDL_AUDIO_DRIVER_XAUDIO2
slouken@1361
   202
#undef SDL_AUDIO_DRIVER_DSOUND
slouken@1361
   203
#undef SDL_AUDIO_DRIVER_ESD
slouken@1361
   204
#undef SDL_AUDIO_DRIVER_ESD_DYNAMIC
slouken@1361
   205
#undef SDL_AUDIO_DRIVER_NAS
icculus@2049
   206
#undef SDL_AUDIO_DRIVER_NAS_DYNAMIC
icculus@7367
   207
#undef SDL_AUDIO_DRIVER_SNDIO
icculus@7367
   208
#undef SDL_AUDIO_DRIVER_SNDIO_DYNAMIC
slouken@1361
   209
#undef SDL_AUDIO_DRIVER_OSS
slouken@1361
   210
#undef SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H
icculus@2049
   211
#undef SDL_AUDIO_DRIVER_PAUDIO
slouken@3099
   212
#undef SDL_AUDIO_DRIVER_QSA
slouken@1361
   213
#undef SDL_AUDIO_DRIVER_SUNAUDIO
icculus@5588
   214
#undef SDL_AUDIO_DRIVER_WINMM
slouken@2947
   215
#undef SDL_AUDIO_DRIVER_FUSIONSOUND
slouken@2947
   216
#undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC
slouken@1361
   217
slouken@1361
   218
/* Enable various input drivers */
icculus@2276
   219
#undef SDL_INPUT_LINUXEV
gabomdq@7778
   220
#undef SDL_INPUT_LINUXKD
slouken@1361
   221
#undef SDL_INPUT_TSLIB
slouken@1361
   222
#undef SDL_JOYSTICK_BEOS
slouken@1895
   223
#undef SDL_JOYSTICK_DINPUT
slouken@1361
   224
#undef SDL_JOYSTICK_DUMMY
slouken@1361
   225
#undef SDL_JOYSTICK_IOKIT
slouken@1361
   226
#undef SDL_JOYSTICK_LINUX
slouken@1361
   227
#undef SDL_JOYSTICK_WINMM
slouken@1361
   228
#undef SDL_JOYSTICK_USBHID
slouken@1565
   229
#undef SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H
slouken@2713
   230
#undef SDL_HAPTIC_DUMMY
slouken@2713
   231
#undef SDL_HAPTIC_LINUX
slouken@2713
   232
#undef SDL_HAPTIC_IOKIT
slouken@2713
   233
#undef SDL_HAPTIC_DINPUT
slouken@1361
   234
slouken@1361
   235
/* Enable various shared object loading systems */
slouken@1361
   236
#undef SDL_LOADSO_BEOS
slouken@1361
   237
#undef SDL_LOADSO_DLOPEN
slouken@1635
   238
#undef SDL_LOADSO_DUMMY
slouken@1361
   239
#undef SDL_LOADSO_LDG
slouken@5062
   240
#undef SDL_LOADSO_WINDOWS
slouken@1361
   241
slouken@1361
   242
/* Enable various threading systems */
slouken@1361
   243
#undef SDL_THREAD_PTHREAD
slouken@1361
   244
#undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX
slouken@1361
   245
#undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP
slouken@5062
   246
#undef SDL_THREAD_WINDOWS
slouken@1361
   247
slouken@1361
   248
/* Enable various timer systems */
slouken@1361
   249
#undef SDL_TIMER_BEOS
slouken@1635
   250
#undef SDL_TIMER_DUMMY
slouken@1361
   251
#undef SDL_TIMER_UNIX
slouken@5062
   252
#undef SDL_TIMER_WINDOWS
slouken@1361
   253
slouken@1361
   254
/* Enable various video drivers */
slouken@1361
   255
#undef SDL_VIDEO_DRIVER_BWINDOW
slouken@1931
   256
#undef SDL_VIDEO_DRIVER_COCOA
slouken@1361
   257
#undef SDL_VIDEO_DRIVER_DIRECTFB
slouken@2998
   258
#undef SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC
slouken@1361
   259
#undef SDL_VIDEO_DRIVER_DUMMY
slouken@5062
   260
#undef SDL_VIDEO_DRIVER_WINDOWS
slouken@1361
   261
#undef SDL_VIDEO_DRIVER_X11
gabomdq@7753
   262
#undef SDL_VIDEO_DRIVER_RPI
slouken@1361
   263
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC
slouken@1361
   264
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT
slouken@5471
   265
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XCURSOR
slouken@5408
   266
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINERAMA
slouken@6311
   267
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XINPUT2
slouken@5408
   268
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR
slouken@3025
   269
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XSS
slouken@5408
   270
#undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XVIDMODE
slouken@5471
   271
#undef SDL_VIDEO_DRIVER_X11_XCURSOR
slouken@1361
   272
#undef SDL_VIDEO_DRIVER_X11_XINERAMA
slouken@6311
   273
#undef SDL_VIDEO_DRIVER_X11_XINPUT2
dimitris@6316
   274
#undef SDL_VIDEO_DRIVER_X11_XINPUT2_SUPPORTS_MULTITOUCH
icculus@1589
   275
#undef SDL_VIDEO_DRIVER_X11_XRANDR
slouken@5408
   276
#undef SDL_VIDEO_DRIVER_X11_XSCRNSAVER
icculus@4793
   277
#undef SDL_VIDEO_DRIVER_X11_XSHAPE
slouken@5408
   278
#undef SDL_VIDEO_DRIVER_X11_XVIDMODE
slouken@6311
   279
#undef SDL_VIDEO_DRIVER_X11_SUPPORTS_GENERIC_EVENTS
azamat@7266
   280
#undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32
slouken@6313
   281
#undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XEXTADDDISPLAY
dimitris@6318
   282
#undef SDL_VIDEO_DRIVER_X11_HAS_XKBKEYCODETOKEYSYM
slouken@1361
   283
slouken@1895
   284
#undef SDL_VIDEO_RENDER_D3D
slouken@1895
   285
#undef SDL_VIDEO_RENDER_OGL
slouken@3087
   286
#undef SDL_VIDEO_RENDER_OGL_ES
slouken@6188
   287
#undef SDL_VIDEO_RENDER_OGL_ES2
slouken@5199
   288
#undef SDL_VIDEO_RENDER_DIRECTFB
slouken@1895
   289
slouken@1361
   290
/* Enable OpenGL support */
slouken@1361
   291
#undef SDL_VIDEO_OPENGL
slouken@3087
   292
#undef SDL_VIDEO_OPENGL_ES
icculus@7688
   293
#undef SDL_VIDEO_OPENGL_ES2
slouken@1952
   294
#undef SDL_VIDEO_OPENGL_BGL
slouken@1952
   295
#undef SDL_VIDEO_OPENGL_CGL
gabomdq@7659
   296
#undef SDL_VIDEO_OPENGL_EGL
slouken@1361
   297
#undef SDL_VIDEO_OPENGL_GLX
slouken@1361
   298
#undef SDL_VIDEO_OPENGL_WGL
slouken@1361
   299
#undef SDL_VIDEO_OPENGL_OSMESA
slouken@1361
   300
#undef SDL_VIDEO_OPENGL_OSMESA_DYNAMIC
slouken@1361
   301
icculus@3170
   302
/* Enable system power support */
icculus@3170
   303
#undef SDL_POWER_LINUX
icculus@3170
   304
#undef SDL_POWER_WINDOWS
icculus@3170
   305
#undef SDL_POWER_MACOSX
icculus@3173
   306
#undef SDL_POWER_BEOS
icculus@3170
   307
#undef SDL_POWER_HARDWIRED
icculus@3170
   308
icculus@7667
   309
/* Enable system filesystem support */
icculus@7667
   310
#undef SDL_FILESYSTEM_BEOS
icculus@7667
   311
#undef SDL_FILESYSTEM_COCOA
icculus@7667
   312
#undef SDL_FILESYSTEM_DUMMY
icculus@7667
   313
#undef SDL_FILESYSTEM_UNIX
icculus@7667
   314
#undef SDL_FILESYSTEM_WINDOWS
icculus@7667
   315
slouken@1402
   316
/* Enable assembly routines */
slouken@1402
   317
#undef SDL_ASSEMBLY_ROUTINES
slouken@5389
   318
#undef SDL_ALTIVEC_BLITTERS
slouken@1353
   319
slouken@6235
   320
#endif /* _SDL_config_h */