2012-04-21 21:25:32 +00:00
|
|
|
#ifndef __RARCH_FEATURES_H
|
|
|
|
#define __RARCH_FEATURES_H
|
2011-01-25 12:03:53 +00:00
|
|
|
|
|
|
|
#include <stddef.h>
|
2014-10-21 03:05:52 +00:00
|
|
|
#include <boolean.h>
|
2011-01-25 12:03:53 +00:00
|
|
|
|
|
|
|
#ifdef HAVE_CONFIG_H
|
|
|
|
#include "config.h"
|
|
|
|
#endif
|
|
|
|
|
2015-04-16 19:58:19 +00:00
|
|
|
#ifdef HAVE_OVERLAY
|
|
|
|
static const bool _overlay_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _overlay_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_V4L2
|
|
|
|
static const bool _v4l2_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _v4l2_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_COMMAND
|
|
|
|
static const bool _command_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _command_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_NETWORK_CMD
|
|
|
|
static const bool _network_command_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _network_command_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2016-06-07 13:23:07 +00:00
|
|
|
#ifdef HAVE_NETWORKGAMEPAD
|
2015-11-25 17:53:19 +00:00
|
|
|
static const bool _network_gamepad_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _network_gamepad_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-11-28 03:01:10 +00:00
|
|
|
#ifdef HAVE_FILTERS_BUILTIN
|
|
|
|
static const bool _cpu_filters = true;
|
|
|
|
#else
|
|
|
|
static const bool _cpu_filters = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-16 19:58:19 +00:00
|
|
|
#ifdef HAVE_LIBUSB
|
|
|
|
static const bool _libusb_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _libusb_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-01-25 12:03:53 +00:00
|
|
|
#ifdef HAVE_SDL
|
|
|
|
static const bool _sdl_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _sdl_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2014-08-10 22:13:49 +00:00
|
|
|
#ifdef HAVE_SDL2
|
|
|
|
static const bool _sdl2_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _sdl2_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-11-30 16:46:58 +00:00
|
|
|
#ifdef HAVE_THREADS
|
|
|
|
static const bool _thread_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _thread_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-11-01 17:45:50 +00:00
|
|
|
#ifdef HAVE_OPENGL
|
|
|
|
static const bool _opengl_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _opengl_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2016-02-17 00:55:35 +00:00
|
|
|
#ifdef HAVE_VULKAN
|
|
|
|
static const bool _vulkan_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _vulkan_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2018-06-21 04:29:53 +00:00
|
|
|
#ifdef HAVE_METAL
|
|
|
|
static const bool _metal_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _metal_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2016-07-01 10:43:48 +00:00
|
|
|
#if defined(HAVE_OPENGLES) || defined(HAVE_OPENGLES2) || defined(HAVE_OPENGLES3) || defined(HAVE_OPENGLES_3_1) || defined(HAVE_OPENGLES_3_2)
|
2015-04-16 20:13:16 +00:00
|
|
|
static const bool _opengles_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _opengles_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2012-09-25 10:58:45 +00:00
|
|
|
#ifdef HAVE_KMS
|
|
|
|
static const bool _kms_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _kms_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2013-12-08 15:07:14 +00:00
|
|
|
#ifdef HAVE_UDEV
|
|
|
|
static const bool _udev_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _udev_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2012-09-25 10:58:45 +00:00
|
|
|
#ifdef HAVE_VG
|
|
|
|
static const bool _vg_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _vg_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_EGL
|
|
|
|
static const bool _egl_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _egl_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2014-08-09 19:35:27 +00:00
|
|
|
#ifdef HAVE_X11
|
|
|
|
static const bool _x11_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _x11_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_WAYLAND
|
|
|
|
static const bool _wayland_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _wayland_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-06-25 16:11:04 +00:00
|
|
|
#ifdef HAVE_XVIDEO
|
|
|
|
static const bool _xvideo_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _xvideo_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-01-25 12:03:53 +00:00
|
|
|
#ifdef HAVE_ALSA
|
|
|
|
static const bool _alsa_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _alsa_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2017-06-24 01:44:00 +00:00
|
|
|
#ifdef HAVE_TINYALSA
|
|
|
|
static const bool _tinyalsa_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _tinyalsa_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-19 16:41:11 +00:00
|
|
|
#ifdef HAVE_COREAUDIO
|
|
|
|
static const bool _coreaudio_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _coreaudio_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-06-16 21:20:12 +00:00
|
|
|
#if defined(HAVE_OSS) || defined(HAVE_OSS_BSD)
|
2011-01-25 12:03:53 +00:00
|
|
|
static const bool _oss_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _oss_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_AL
|
|
|
|
static const bool _al_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _al_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-16 19:58:19 +00:00
|
|
|
#ifdef HAVE_SL
|
|
|
|
static const bool _sl_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _sl_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_LIBRETRODB
|
|
|
|
static const bool _libretrodb_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _libretrodb_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-01-25 12:03:53 +00:00
|
|
|
#ifdef HAVE_RSOUND
|
|
|
|
static const bool _rsound_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _rsound_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_ROAR
|
|
|
|
static const bool _roar_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _roar_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_JACK
|
|
|
|
static const bool _jack_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _jack_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-01-29 23:30:54 +00:00
|
|
|
#ifdef HAVE_PULSE
|
|
|
|
static const bool _pulse_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _pulse_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-12-25 00:59:30 +00:00
|
|
|
#ifdef HAVE_DSOUND
|
|
|
|
static const bool _dsound_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _dsound_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2017-04-09 21:53:55 +00:00
|
|
|
#ifdef HAVE_WASAPI
|
|
|
|
static const bool _wasapi_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _wasapi_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-01-29 23:30:54 +00:00
|
|
|
#ifdef HAVE_XAUDIO
|
|
|
|
static const bool _xaudio_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _xaudio_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2013-01-21 22:51:56 +00:00
|
|
|
#ifdef HAVE_ZLIB
|
|
|
|
static const bool _zlib_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _zlib_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-16 19:58:19 +00:00
|
|
|
#ifdef HAVE_7ZIP
|
|
|
|
static const bool _7zip_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _7zip_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-05-11 15:52:16 +00:00
|
|
|
#ifdef HAVE_DYLIB
|
|
|
|
static const bool _dylib_supp = true;
|
2011-01-25 12:03:53 +00:00
|
|
|
#else
|
2011-05-11 15:52:16 +00:00
|
|
|
static const bool _dylib_supp = false;
|
2011-01-25 12:03:53 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_CG
|
|
|
|
static const bool _cg_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _cg_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-16 18:59:55 +00:00
|
|
|
#ifdef HAVE_GLSL
|
|
|
|
static const bool _glsl_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _glsl_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_HLSL
|
|
|
|
static const bool _hlsl_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _hlsl_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2013-01-02 14:05:55 +00:00
|
|
|
#ifdef HAVE_LIBXML2
|
|
|
|
static const bool _libxml2_supp = true;
|
2011-01-25 12:03:53 +00:00
|
|
|
#else
|
2013-01-02 14:05:55 +00:00
|
|
|
static const bool _libxml2_supp = false;
|
2011-01-25 12:03:53 +00:00
|
|
|
#endif
|
|
|
|
|
2011-06-11 14:55:53 +00:00
|
|
|
#ifdef HAVE_SDL_IMAGE
|
|
|
|
static const bool _sdl_image_supp = true;
|
2011-05-18 20:11:34 +00:00
|
|
|
#else
|
2011-06-11 14:55:53 +00:00
|
|
|
static const bool _sdl_image_supp = false;
|
2011-05-18 20:11:34 +00:00
|
|
|
#endif
|
|
|
|
|
2011-01-25 12:03:53 +00:00
|
|
|
#ifdef HAVE_DYNAMIC
|
|
|
|
static const bool _dynamic_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _dynamic_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_FFMPEG
|
|
|
|
static const bool _ffmpeg_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _ffmpeg_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2018-06-20 02:50:58 +00:00
|
|
|
#ifdef HAVE_MPV
|
|
|
|
static const bool _mpv_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _mpv_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-01-25 12:03:53 +00:00
|
|
|
#ifdef HAVE_FREETYPE
|
|
|
|
static const bool _freetype_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _freetype_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2016-09-29 19:07:10 +00:00
|
|
|
#ifdef HAVE_NETWORKING
|
2011-03-19 19:41:07 +00:00
|
|
|
static const bool _netplay_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _netplay_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2011-06-06 18:21:26 +00:00
|
|
|
#ifdef HAVE_PYTHON
|
|
|
|
static const bool _python_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _python_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-19 16:30:49 +00:00
|
|
|
#if defined(HAVE_COCOA) || defined(HAVE_COCOATOUCH)
|
|
|
|
static const bool _cocoa_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _cocoa_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-19 16:41:11 +00:00
|
|
|
#ifdef HAVE_QT
|
|
|
|
static const bool _qt_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _qt_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-19 16:30:49 +00:00
|
|
|
#ifdef HAVE_RPNG
|
|
|
|
static const bool _rpng_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _rpng_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2016-05-18 12:36:23 +00:00
|
|
|
#ifdef HAVE_RJPEG
|
|
|
|
static const bool _rjpeg_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _rjpeg_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_RBMP
|
|
|
|
static const bool _rbmp_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _rbmp_supp = false;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef HAVE_RTGA
|
|
|
|
static const bool _rtga_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _rtga_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-19 16:30:49 +00:00
|
|
|
#ifdef HAVE_CORETEXT
|
|
|
|
static const bool _coretext_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _coretext_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2015-04-19 18:42:54 +00:00
|
|
|
#ifdef HAVE_AVFOUNDATION
|
|
|
|
static const bool _avfoundation_supp = true;
|
|
|
|
#else
|
|
|
|
static const bool _avfoundation_supp = false;
|
|
|
|
#endif
|
|
|
|
|
2014-09-25 06:12:58 +00:00
|
|
|
#if !defined(_WIN32) && !defined(GLOBAL_CONFIG_DIR)
|
|
|
|
#if defined(__HAIKU__)
|
|
|
|
#define GLOBAL_CONFIG_DIR "/system/settings"
|
|
|
|
#else
|
|
|
|
#define GLOBAL_CONFIG_DIR "/etc"
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
2011-01-25 12:03:53 +00:00
|
|
|
#endif
|