summaryrefslogtreecommitdiffstats
path: root/games/pcsx2/portaudio.patch
diff options
context:
space:
mode:
Diffstat (limited to 'games/pcsx2/portaudio.patch')
-rw-r--r--games/pcsx2/portaudio.patch320
1 files changed, 0 insertions, 320 deletions
diff --git a/games/pcsx2/portaudio.patch b/games/pcsx2/portaudio.patch
deleted file mode 100644
index e4194bc3b7..0000000000
--- a/games/pcsx2/portaudio.patch
+++ /dev/null
@@ -1,320 +0,0 @@
-From 84d090e2fde50c66b965b84c73abd9f04a1770dd Mon Sep 17 00:00:00 2001
-From: orbea <orbea@riseup.net>
-Date: Thu, 7 May 2020 15:31:48 +0000
-Subject: [PATCH] spu2-x: Make portaudio an optional dependency. (#3110)
-
-* spu2-x: Make portaudio an optional dependency.
-
-v2: Fix crash in the audio settings with SDL1 and without portaudio.
-
-* cmake: Add PORTAUDIO_API to disable portaudio support.
----
- build.sh | 4 +++-
- cmake/BuildParameters.cmake | 1 +
- cmake/SearchForStuff.cmake | 6 ++++--
- cmake/SelectPcsx2Plugins.cmake | 15 ++++++++-------
- plugins/spu2-x/src/CMakeLists.txt | 19 ++++++++++++++++---
- plugins/spu2-x/src/Linux/Config.cpp | 20 +++++++++++++++++++-
- plugins/spu2-x/src/SndOut.cpp | 2 ++
- plugins/spu2-x/src/SndOut.h | 2 ++
- 8 files changed, 55 insertions(+), 14 deletions(-)
-
-diff --git a/build.sh b/build.sh
-index e1bc256475..54b30e404e 100755
---- a/build.sh
-+++ b/build.sh
-@@ -213,6 +213,7 @@ for ARG in "$@"; do
- --pgo-optimize ) flags="$flags -DUSE_PGO_OPTIMIZE=TRUE" ;;
- --pgo-generate ) flags="$flags -DUSE_PGO_GENERATE=TRUE" ;;
- --no-dev9ghzdrk ) flags="$flags -DDISABLE_DEV9GHZDRK=TRUE" ;;
-+ --no-portaudio ) flags="$flags -DPORTAUDIO_API=FALSE" ;;
- --no-simd ) flags="$flags -DDISABLE_ADVANCE_SIMD=TRUE" ;;
- --no-trans ) flags="$flags -DNO_TRANSLATION=TRUE" ;;
- --cross-multilib ) flags="$flags -DCMAKE_TOOLCHAIN_FILE=$toolfile"; useCross=1; ;;
-@@ -244,7 +245,8 @@ for ARG in "$@"; do
- echo
- echo "** Distribution Compatibilities **"
- echo "--sdl12 : Build with SDL1.2 (requires if wx is linked against SDL1.2)"
-- echo "--no-dev9ghzdrk : Skip dev9ghzdrk. (Avoids needing escalated privileges to build.)"
-+ echo "--no-dev9ghzdrk : Skip dev9ghzdrk. (Avoids needing escalated privileges to build.)"
-+ echo "--no-portaudio : Skip portaudio for spu2x."
- echo
- echo "** Expert Developer option **"
- echo "--gtk3 : replace GTK2 by GTK3"
-diff --git a/cmake/BuildParameters.cmake b/cmake/BuildParameters.cmake
-index 235bdb8e59..83bab90dab 100644
---- a/cmake/BuildParameters.cmake
-+++ b/cmake/BuildParameters.cmake
-@@ -48,6 +48,7 @@ option(DISABLE_CHEATS_ZIP "Disable including the cheats_ws.zip file")
- option(DISABLE_PCSX2_WRAPPER "Disable including the PCSX2-linux.sh file")
- option(XDG_STD "Use XDG standard path instead of the standard PCSX2 path")
- option(EXTRA_PLUGINS "Build various 'extra' plugins")
-+option(PORTAUDIO_API "Build portaudio support on spu2x" ON)
- option(SDL2_API "Use SDL2 on spu2x and onepad (wxWidget mustn't be built with SDL1.2 support" ON)
- option(GTK3_API "Use GTK3 api (experimental/wxWidget must be built with GTK3 support)")
-
-diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake
-index a062d457a3..50f8f5f3e8 100644
---- a/cmake/SearchForStuff.cmake
-+++ b/cmake/SearchForStuff.cmake
-@@ -105,7 +105,9 @@ endif()
- if(OPENCL_API)
- check_lib(OPENCL OpenCL CL/cl.hpp)
- endif()
--check_lib(PORTAUDIO portaudio portaudio.h pa_linux_alsa.h)
-+if(PORTAUDIO_API)
-+ check_lib(PORTAUDIO portaudio portaudio.h pa_linux_alsa.h)
-+endif()
- check_lib(SOUNDTOUCH SoundTouch soundtouch/SoundTouch.h)
-
- if(SDL2_API)
-@@ -227,4 +229,4 @@ if((GCC_VERSION VERSION_EQUAL "9.0" OR GCC_VERSION VERSION_GREATER "9.0") AND GC
- https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=275ab714637a64672c6630cfd744af2c70957d5a
- Even with that patch, compiling with LTO may still segfault. Use at your own risk!
- This text being in a compile log in an open issue may cause it to be closed.")
--endif()
-\ No newline at end of file
-+endif()
-diff --git a/cmake/SelectPcsx2Plugins.cmake b/cmake/SelectPcsx2Plugins.cmake
-index 69d0e07b91..00bf22e6ca 100644
---- a/cmake/SelectPcsx2Plugins.cmake
-+++ b/cmake/SelectPcsx2Plugins.cmake
-@@ -7,7 +7,7 @@ set(msg_dep_cdvdgiga "check these libraries -> gtk2, libudev")
- set(msg_dep_zerogs "check these libraries -> glew, opengl, X11, nvidia-cg-toolkit (>=2.1)")
- set(msg_dep_gsdx "check these libraries -> opengl, png (>=1.2), zlib (>=1.2.4), X11, liblzma")
- set(msg_dep_onepad "check these libraries -> sdl2, X11, gtk2")
--set(msg_dep_spu2x "check these libraries -> soundtouch (>=1.5), alsa, portaudio (>=1.9), sdl (>=1.2) pcsx2 common libs")
-+set(msg_dep_spu2x "check these libraries -> soundtouch (>=1.5), alsa, portaudio (optional, >=1.9), sdl (>=1.2), pcsx2 common libs")
- set(msg_dep_zerospu2 "check these libraries -> soundtouch (>=1.5), alsa")
- set(msg_dep_dev "check these libraries -> gtk2, pcap, libxml2")
- if(GLSL_API)
-@@ -267,12 +267,13 @@ endif()
- # spu2-x
- #---------------------------------------
- # requires: -SoundTouch
--# -ALSA
--# -Portaudio
-+# -ALSA
- # -SDL
- # -common_libs
-+#
-+# optional: -Portaudio
- #---------------------------------------
--if((PORTAUDIO_FOUND AND SOUNDTOUCH_FOUND AND SDLn_FOUND AND common_libs)
-+if((SOUNDTOUCH_FOUND AND SDLn_FOUND AND common_libs)
- AND ((Linux AND ALSA_FOUND) OR (UNIX AND NOT Linux)))
- set(spu2-x TRUE)
- elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/plugins/spu2-x")
-@@ -287,8 +288,8 @@ endif()
- # zerospu2
- #---------------------------------------
- # requires: -SoundTouch
--# -ALSA
--# -PortAudio
-+# -ALSA
-+# -PortAudio
- #---------------------------------------
- if(EXTRA_PLUGINS)
- if(EXISTS "${CMAKE_SOURCE_DIR}/plugins/zerospu2" AND SOUNDTOUCH_FOUND AND ALSA_FOUND)
-@@ -312,4 +313,4 @@ if(GTKn_FOUND)
- set(USBnull TRUE)
- endif()
- #---------------------------------------
--#-------------------------------------------------------------------------------
-\ No newline at end of file
-+#-------------------------------------------------------------------------------
-diff --git a/plugins/spu2-x/src/CMakeLists.txt b/plugins/spu2-x/src/CMakeLists.txt
-index e4c7141287..d17538e33e 100644
---- a/plugins/spu2-x/src/CMakeLists.txt
-+++ b/plugins/spu2-x/src/CMakeLists.txt
-@@ -45,7 +45,6 @@ set(spu2xSources
- RegTable.cpp
- Reverb.cpp
- SndOut.cpp
-- SndOut_Portaudio.cpp
- SndOut_SDL.cpp
- spu2freeze.cpp
- Spu2replay.cpp
-@@ -111,7 +110,6 @@ else()
- include_directories(Linux)
- endif()
-
--
- set(spu2xFinalSources
- ${spu2xSources}
- ${spu2xHeaders}
-@@ -121,11 +119,26 @@ set(spu2xFinalSources
- set(spu2xFinalLibs
- Utilities_NO_TLS
- ${ALSA_LIBRARIES}
-- ${PORTAUDIO_LIBRARIES}
- ${GTK2_LIBRARIES}
- ${SOUNDTOUCH_LIBRARIES}
- )
-
-+if (PORTAUDIO_FOUND)
-+ set(spu2xFinalFlags
-+ ${spu2xFinalFlags}
-+ "-DSPU2X_PORTAUDIO"
-+ )
-+
-+ LIST(APPEND spu2xFinalSources
-+ SndOut_Portaudio.cpp
-+ )
-+
-+ set(spu2xFinalLibs
-+ ${spu2xFinalLibs}
-+ ${PORTAUDIO_LIBRARIES}
-+ )
-+endif()
-+
- if (SDL2_API)
- set(spu2xFinalLibs
- ${spu2xFinalLibs}
-diff --git a/plugins/spu2-x/src/Linux/Config.cpp b/plugins/spu2-x/src/Linux/Config.cpp
-index 998f9bd25a..96a9e7bc8b 100644
---- a/plugins/spu2-x/src/Linux/Config.cpp
-+++ b/plugins/spu2-x/src/Linux/Config.cpp
-@@ -76,7 +76,9 @@ bool _visual_debug_enabled = false; // windows only feature
- u32 OutputModule = 0;
- int SndOutLatencyMS = 300;
- int SynchMode = 0; // Time Stretch, Async or Disabled
-+#ifdef SPU2X_PORTAUDIO
- static u32 OutputAPI = 0;
-+#endif
- static u32 SdlOutputAPI = 0;
-
- int numSpeakers = 0;
-@@ -122,7 +124,7 @@ void ReadSettings()
-
- wxString temp;
-
--#if SDL_MAJOR_VERSION >= 2
-+#if SDL_MAJOR_VERSION >= 2 || !defined(SPU2X_PORTAUDIO)
- CfgReadStr(L"OUTPUT", L"Output_Module", temp, SDLOut->GetIdent());
- #else
- CfgReadStr(L"OUTPUT", L"Output_Module", temp, PortaudioOut->GetIdent());
-@@ -130,6 +132,7 @@ void ReadSettings()
- OutputModule = FindOutputModuleById(temp.c_str()); // find the driver index of this module
-
- // find current API
-+#ifdef SPU2X_PORTAUDIO
- #ifdef __linux__
- CfgReadStr(L"PORTAUDIO", L"HostApi", temp, L"ALSA");
- if (temp == L"OSS")
-@@ -142,6 +145,7 @@ void ReadSettings()
- CfgReadStr(L"PORTAUDIO", L"HostApi", temp, L"OSS");
- OutputAPI = 0; // L"OSS"
- #endif
-+#endif
-
- #ifdef __unix__
- CfgReadStr(L"SDL", L"HostApi", temp, L"pulseaudio");
-@@ -158,7 +162,9 @@ void ReadSettings()
- SndOutLatencyMS = CfgReadInt(L"OUTPUT", L"Latency", 300);
- SynchMode = CfgReadInt(L"OUTPUT", L"Synch_Mode", 0);
-
-+#ifdef SPU2X_PORTAUDIO
- PortaudioOut->ReadSettings();
-+#endif
- #ifdef __unix__
- SDLOut->ReadSettings();
- #endif
-@@ -209,7 +215,9 @@ void WriteSettings()
- CfgWriteInt(L"OUTPUT", L"Synch_Mode", SynchMode);
- CfgWriteInt(L"DEBUG", L"DelayCycles", delayCycles);
-
-+#ifdef SPU2X_PORTAUDIO
- PortaudioOut->WriteSettings();
-+#endif
- #ifdef __unix__
- SDLOut->WriteSettings();
- #endif
-@@ -273,7 +281,9 @@ void DisplayDialog()
-
- GtkWidget *output_frame, *output_box;
- GtkWidget *mod_label, *mod_box;
-+#ifdef SPU2X_PORTAUDIO
- GtkWidget *api_label, *api_box;
-+#endif
- #if SDL_MAJOR_VERSION >= 2
- GtkWidget *sdl_api_label, *sdl_api_box;
- #endif
-@@ -309,11 +319,14 @@ void DisplayDialog()
- mod_label = gtk_label_new("Module:");
- mod_box = gtk_combo_box_text_new();
- gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(mod_box), "0 - No Sound (Emulate SPU2 only)");
-+#ifdef SPU2X_PORTAUDIO
- gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(mod_box), "1 - PortAudio (Cross-platform)");
-+#endif
- gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(mod_box), "2 - SDL Audio (Recommended for PulseAudio)");
- //gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(mod_box), "3 - Alsa (probably doesn't work)");
- gtk_combo_box_set_active(GTK_COMBO_BOX(mod_box), OutputModule);
-
-+#ifdef SPU2X_PORTAUDIO
- api_label = gtk_label_new("PortAudio API:");
- api_box = gtk_combo_box_text_new();
- #ifdef __linux__
-@@ -325,6 +338,7 @@ void DisplayDialog()
- gtk_combo_box_text_append_text(GTK_COMBO_BOX_TEXT(api_box), "OSS");
- #endif
- gtk_combo_box_set_active(GTK_COMBO_BOX(api_box), OutputAPI);
-+#endif
-
- #if SDL_MAJOR_VERSION >= 2
- sdl_api_label = gtk_label_new("SDL API:");
-@@ -383,8 +397,10 @@ void DisplayDialog()
-
- gtk_container_add(GTK_CONTAINER(output_box), mod_label);
- gtk_container_add(GTK_CONTAINER(output_box), mod_box);
-+#ifdef SPU2X_PORTAUDIO
- gtk_container_add(GTK_CONTAINER(output_box), api_label);
- gtk_container_add(GTK_CONTAINER(output_box), api_box);
-+#endif
- #if SDL_MAJOR_VERSION >= 2
- gtk_container_add(GTK_CONTAINER(output_box), sdl_api_label);
- gtk_container_add(GTK_CONTAINER(output_box), sdl_api_box);
-@@ -430,6 +446,7 @@ void DisplayDialog()
- if (gtk_combo_box_get_active(GTK_COMBO_BOX(mod_box)) != -1)
- OutputModule = gtk_combo_box_get_active(GTK_COMBO_BOX(mod_box));
-
-+#ifdef SPU2X_PORTAUDIO
- if (gtk_combo_box_get_active(GTK_COMBO_BOX(api_box)) != -1) {
- OutputAPI = gtk_combo_box_get_active(GTK_COMBO_BOX(api_box));
- #ifdef __linux__
-@@ -456,6 +473,7 @@ void DisplayDialog()
- }
- #endif
- }
-+#endif
-
- #if SDL_MAJOR_VERSION >= 2
- if (gtk_combo_box_get_active(GTK_COMBO_BOX(sdl_api_box)) != -1) {
-diff --git a/plugins/spu2-x/src/SndOut.cpp b/plugins/spu2-x/src/SndOut.cpp
-index 7963b12b75..6d9d58c2b3 100644
---- a/plugins/spu2-x/src/SndOut.cpp
-+++ b/plugins/spu2-x/src/SndOut.cpp
-@@ -88,7 +88,9 @@ SndOutModule *mods[] =
- DSoundOut,
- WaveOut,
- #endif
-+#if defined(_WIN32) || defined(SPU2X_PORTAUDIO)
- PortaudioOut,
-+#endif
- #if defined(SPU2X_SDL) || defined(SPU2X_SDL2)
- SDLOut,
- #endif
-diff --git a/plugins/spu2-x/src/SndOut.h b/plugins/spu2-x/src/SndOut.h
-index ba84075aec..918d9d08ff 100644
---- a/plugins/spu2-x/src/SndOut.h
-+++ b/plugins/spu2-x/src/SndOut.h
-@@ -673,7 +673,9 @@ extern SndOutModule *DSoundOut;
- extern SndOutModule *XAudio2_27_Out;
- extern SndOutModule *XAudio2Out;
- #endif
-+#if defined(_WIN32) || defined(SPU2X_PORTAUDIO)
- extern SndOutModule *PortaudioOut;
-+#endif
- #if defined(SPU2X_SDL) || defined(SPU2X_SDL2)
- extern SndOutModule *const SDLOut;
- #endif