diff --git a/config.features.h b/config.features.h index 10d2d2099b..85fd142400 100644 --- a/config.features.h +++ b/config.features.h @@ -218,6 +218,12 @@ #define SUPPORTS_WASAPI false #endif +#ifdef HAVE_PIPEWIRE +#define SUPPORTS_PIPEWIRE true +#else +#define SUPPORTS_PIPEWIRE false +#endif + #ifdef HAVE_XAUDIO #define SUPPORTS_XAUDIO true #else diff --git a/menu/menu_displaylist.c b/menu/menu_displaylist.c index dc6a512f88..34bafa6210 100644 --- a/menu/menu_displaylist.c +++ b/menu/menu_displaylist.c @@ -2252,59 +2252,156 @@ static unsigned menu_displaylist_parse_system_info(file_list_t *list) bool enabled; enum msg_hash_enums msg; } info_list[] = { +#ifdef HAVE_LIBRETRODB {SUPPORTS_LIBRETRODB, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBRETRODB_SUPPORT}, +#endif +#ifdef HAVE_OVERLAY {SUPPORTS_OVERLAY, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OVERLAY_SUPPORT}, +#endif +#ifdef HAVE_COMMAND {SUPPORTS_COMMAND, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_COMMAND_IFACE_SUPPORT}, +#endif {SUPPORTS_NETWORK_COMMAND, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_NETWORK_COMMAND_IFACE_SUPPORT}, {SUPPORTS_NETWORK_GAMEPAD, MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_NETWORK_REMOTE_SUPPORT}, +#ifdef HAVE_COCOA {SUPPORTS_COCOA , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_COCOA_SUPPORT}, +#endif +#ifdef HAVE_RPNG {SUPPORTS_RPNG , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_RPNG_SUPPORT}, +#endif +#ifdef HAVE_RJPEG {SUPPORTS_RJPEG , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_RJPEG_SUPPORT}, +#endif +#ifdef HAVE_RBMP {SUPPORTS_RBMP , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_RBMP_SUPPORT}, +#endif +#ifdef HAVE_RTGA {SUPPORTS_RTGA , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_RTGA_SUPPORT}, +#endif {SUPPORTS_SDL , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL_SUPPORT}, +#ifdef HAVE_SDL2 {SUPPORTS_SDL2 , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL2_SUPPORT}, +#endif +#ifdef HAVE_VULKAN {SUPPORTS_VULKAN , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_VULKAN_SUPPORT}, +#endif +#ifdef HAVE_METAL {SUPPORTS_METAL , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_METAL_SUPPORT}, +#endif {SUPPORTS_OPENGL , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENGL_SUPPORT}, {SUPPORTS_OPENGLES , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENGLES_SUPPORT}, +#ifdef HAVE_THREADS {SUPPORTS_THREAD , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_THREADING_SUPPORT}, +#endif +#ifdef HAVE_KMS {SUPPORTS_KMS , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_KMS_SUPPORT}, +#endif +#ifdef HAVE_UDEV {SUPPORTS_UDEV , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_UDEV_SUPPORT}, +#endif +#ifdef HAVE_VG {SUPPORTS_VG , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENVG_SUPPORT}, +#endif +#ifdef HAVE_EGL {SUPPORTS_EGL , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_EGL_SUPPORT}, +#endif +#ifdef HAVE_X11 {SUPPORTS_X11 , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_X11_SUPPORT}, +#endif +#ifdef HAVE_WAYLAND {SUPPORTS_WAYLAND , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_WAYLAND_SUPPORT}, +#endif +#ifdef HAVE_XVIDEO {SUPPORTS_XVIDEO , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_XVIDEO_SUPPORT}, +#endif +#ifdef HAVE_ALSA {SUPPORTS_ALSA , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_ALSA_SUPPORT}, +#endif +#ifdef HAVE_OSS {SUPPORTS_OSS , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OSS_SUPPORT}, +#endif +#ifdef HAVE_AL {SUPPORTS_AL , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENAL_SUPPORT}, +#endif +#ifdef HAVE_SL {SUPPORTS_SL , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_OPENSL_SUPPORT}, +#endif +#ifdef HAVE_RSOUND {SUPPORTS_RSOUND , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_RSOUND_SUPPORT}, +#endif +#ifdef HAVE_ROAR {SUPPORTS_ROAR , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_ROARAUDIO_SUPPORT}, +#endif +#ifdef HAVE_JACK {SUPPORTS_JACK , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_JACK_SUPPORT}, +#endif +#ifdef HAVE_PULSE {SUPPORTS_PULSE , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_PULSEAUDIO_SUPPORT}, +#endif +#ifdef HAVE_COREAUDIO {SUPPORTS_COREAUDIO , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_COREAUDIO_SUPPORT}, +#endif +#ifdef HAVE_COREAUDIO3 {SUPPORTS_COREAUDIO3 , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_COREAUDIO3_SUPPORT}, +#endif +#ifdef HAVE_PIPEWIRE + {SUPPORTS_PIPEWIRE , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_PIPEWIRE_SUPPORT}, +#endif +#ifdef HAVE_DSOUND {SUPPORTS_DSOUND , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DSOUND_SUPPORT}, +#endif +#ifdef HAVE_WASAPI {SUPPORTS_WASAPI , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_WASAPI_SUPPORT}, +#endif +#ifdef HAVE_XAUDIO {SUPPORTS_XAUDIO , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_XAUDIO2_SUPPORT}, +#endif +#ifdef HAVE_ZLIB {SUPPORTS_ZLIB , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_ZLIB_SUPPORT}, +#endif +#ifdef HAVE_7ZIP {SUPPORTS_7ZIP , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_7ZIP_SUPPORT}, +#endif +#ifdef HAVE_DYLIB {SUPPORTS_DYLIB , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DYLIB_SUPPORT}, +#endif {SUPPORTS_DYNAMIC , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_DYNAMIC_SUPPORT}, +#ifdef HAVE_CG {SUPPORTS_CG , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_CG_SUPPORT}, +#endif +#ifdef HAVE_GLSL {SUPPORTS_GLSL , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_GLSL_SUPPORT}, +#endif +#ifdef HAVE_HLSL {SUPPORTS_HLSL , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_HLSL_SUPPORT}, +#endif +#ifdef HAVE_SDL_IMAGE {SUPPORTS_SDL_IMAGE , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_SDL_IMAGE_SUPPORT}, +#endif +#ifdef HAVE_FFMPEG {SUPPORTS_FFMPEG , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FFMPEG_SUPPORT}, +#endif +#ifdef HAVE_MPV {SUPPORTS_MPV , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_MPV_SUPPORT}, +#endif +#ifdef HAVE_CORETEXT {SUPPORTS_CORETEXT , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_CORETEXT_SUPPORT}, +#endif +#ifdef HAVE_FREETYPE {SUPPORTS_FREETYPE , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_FREETYPE_SUPPORT}, +#endif +#ifdef HAVE_STB_FONT {SUPPORTS_STBFONT , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_STB_TRUETYPE_SUPPORT}, +#endif +#ifdef HAVE_NETPLAY {SUPPORTS_NETPLAY , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_NETPLAY_SUPPORT}, +#endif +#ifdef HAVE_V4L2 {SUPPORTS_V4L2 , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_V4L2_SUPPORT}, +#endif +#ifdef HAVE_LIBUSB {SUPPORTS_LIBUSB , MENU_ENUM_LABEL_VALUE_SYSTEM_INFO_LIBUSB_SUPPORT}, +#endif }; unsigned info_idx; const char *val_yes_str = msg_hash_to_str(MENU_ENUM_LABEL_VALUE_YES); diff --git a/retroarch.c b/retroarch.c index 9646e8c6b0..a25044f90a 100644 --- a/retroarch.c +++ b/retroarch.c @@ -6127,6 +6127,7 @@ static void retroarch_print_features(void) _len += _PSUPP_BUF(buf, _len, SUPPORTS_COREAUDIO, "CoreAudio", "Audio driver"); _len += _PSUPP_BUF(buf, _len, SUPPORTS_COREAUDIO3, "CoreAudioV3", "Audio driver"); _len += _PSUPP_BUF(buf, _len, SUPPORTS_ALSA, "ALSA", "Audio driver"); + _len += _PSUPP_BUF(buf, _len, SUPPORTS_PIPEWIRE, "PipeWire", "Audio driver"); _len += _PSUPP_BUF(buf, _len, SUPPORTS_OSS, "OSS", "Audio driver"); _len += _PSUPP_BUF(buf, _len, SUPPORTS_JACK, "Jack", "Audio driver"); _len += _PSUPP_BUF(buf, _len, SUPPORTS_RSOUND, "RSound", "Audio driver");