diff options
Diffstat (limited to 'games-emulation/pcsx2/files/pcsx2-1.3.1-egl-optional.patch')
-rw-r--r-- | games-emulation/pcsx2/files/pcsx2-1.3.1-egl-optional.patch | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/games-emulation/pcsx2/files/pcsx2-1.3.1-egl-optional.patch b/games-emulation/pcsx2/files/pcsx2-1.3.1-egl-optional.patch new file mode 100644 index 000000000000..9bdf231c3f0b --- /dev/null +++ b/games-emulation/pcsx2/files/pcsx2-1.3.1-egl-optional.patch @@ -0,0 +1,169 @@ +From 9cd13ca5b5a6a90c21abf1f41725e52efe4774c0 Mon Sep 17 00:00:00 2001 +From: nE0sIghT <ykonotopov@gmail.com> +Date: Mon, 10 Aug 2015 19:11:00 +0300 +Subject: [PATCH 1/3] gsdx-linux: Don't enable EGL by default + +I was hoping that EGL become a standard much more faster. Currently it is an useless dep +so let's disable it by default. + +Only check for EGL if using EGL_API. +--- + cmake/SearchForStuff.cmake | 5 +++-- + cmake/SelectPcsx2Plugins.cmake | 2 +- + plugins/GSdx/CMakeLists.txt | 27 ++++++++++----------------- + plugins/GSdx/GS.cpp | 8 ++++---- + plugins/GSdx/GSWndEGL.cpp | 2 +- + plugins/GSdx/GSWndEGL.h | 21 +-------------------- + 6 files changed, 20 insertions(+), 45 deletions(-) + +diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake +index 8c8918e..b43a547 100644 +--- a/cmake/SearchForStuff.cmake ++++ b/cmake/SearchForStuff.cmake +@@ -69,8 +69,9 @@ include(CheckLib) + if(Linux) + check_lib(AIO aio libaio.h) + endif() +-check_lib(EGL EGL EGL/egl.h) +-check_lib(GLESV2 GLESv2 GLES3/gl3ext.h) # NOTE: looking for GLESv3, not GLESv2 ++if(EGL_API) ++ check_lib(EGL EGL EGL/egl.h) ++endif() + check_lib(PORTAUDIO portaudio portaudio.h pa_linux_alsa.h) + check_lib(SOUNDTOUCH SoundTouch soundtouch/SoundTouch.h) + +diff --git a/cmake/SelectPcsx2Plugins.cmake b/cmake/SelectPcsx2Plugins.cmake +index 726dc2d..ee8138b 100644 +--- a/cmake/SelectPcsx2Plugins.cmake ++++ b/cmake/SelectPcsx2Plugins.cmake +@@ -144,7 +144,7 @@ endif() + # requires: -OpenGL + # -X11 + #--------------------------------------- +-if(OPENGL_FOUND AND X11_FOUND AND EGL_FOUND AND GTKn_FOUND) ++if(OPENGL_FOUND AND X11_FOUND AND GTKn_FOUND AND (EGL_FOUND OR NOT EGL_API)) + set(GSdx TRUE) + elseif(NOT EXISTS "${CMAKE_SOURCE_DIR}/plugins/GSdx") + set(GSdx FALSE) +diff --git a/plugins/GSdx/CMakeLists.txt b/plugins/GSdx/CMakeLists.txt +index 8859044..13b30c7 100644 +--- a/plugins/GSdx/CMakeLists.txt ++++ b/plugins/GSdx/CMakeLists.txt +@@ -38,8 +38,8 @@ if(XDG_STD) + set(GSdxFinalFlags ${GSdxFinalFlags} -DXDG_STD) + endif() + +-if(GLES_API AND GLESV2_FOUND) +- set(GSdxFinalFlags ${GSdxFinalFlags} -DENABLE_GLES) ++if(EGL_API AND EGL_FOUND) ++ set(GSdxFinalFlags ${GSdxFinalFlags} -DEGL_SUPPORTED) + endif() + + #Clang doesn't support a few common flags that GCC does. +@@ -198,25 +198,18 @@ set(GSdxFinalLibs + ${X11_LIBRARIES} + ) + +-if(GLES_API AND GLESV2_FOUND) +- set(GSdxFinalLibs +- ${GSdxFinalLibs} +- ${GLESV2_LIBRARIES} +- ) +-else() +- set(GSdxFinalLibs +- ${GSdxFinalLibs} +- ${OPENGL_LIBRARIES} +- ) +-endif() +- +-set(GSdxFinalLibs +- ${GSdxFinalLibs} +- ${EGL_LIBRARIES} ++set(GSdxFinalLibs ${GSdxFinalLibs} ++ ${OPENGL_LIBRARIES} + ${GTK2_LIBRARIES} + ${LIBC_LIBRARIES} + ) + ++if(EGL_API AND EGL_FOUND) ++ set(GSdxFinalLibs ${GSdxFinalLibs} ++ ${EGL_LIBRARIES} ++ ) ++endif() ++ + # Generate Glsl header file. Protect with REBUILD_SHADER to avoid build-dependency on PERL + if (REBUILD_SHADER) + add_custom_command(OUTPUT res/glsl_source.h COMMAND perl ${CMAKE_SOURCE_DIR}/linux_various/glsl2h.pl) +diff --git a/plugins/GSdx/GS.cpp b/plugins/GSdx/GS.cpp +index 3ffb5e8..4836192 100644 +--- a/plugins/GSdx/GS.cpp ++++ b/plugins/GSdx/GS.cpp +@@ -291,12 +291,12 @@ static int _GSopen(void** dsp, char* title, int renderer, int threads = -1) + break; + } + #else +-#ifdef ENABLE_GLES +- wnd[0] = NULL; +-#else + wnd[0] = new GSWndOGL(); +-#endif ++#ifdef EGL_SUPPORTED + wnd[1] = new GSWndEGL(); ++#else ++ wnd[1] = NULL; ++#endif + #endif + } + } +diff --git a/plugins/GSdx/GSWndEGL.cpp b/plugins/GSdx/GSWndEGL.cpp +index 491f34f..f69ff0c 100644 +--- a/plugins/GSdx/GSWndEGL.cpp ++++ b/plugins/GSdx/GSWndEGL.cpp +@@ -22,7 +22,7 @@ + #include "stdafx.h" + #include "GSWndEGL.h" + +-#if defined(__linux__) ++#if defined(__linux__) && defined(EGL_SUPPORTED) + + GSWndEGL::GSWndEGL() + : m_NativeWindow(0), m_NativeDisplay(NULL) +diff --git a/plugins/GSdx/GSWndEGL.h b/plugins/GSdx/GSWndEGL.h +index c5a2573..17804bb 100644 +--- a/plugins/GSdx/GSWndEGL.h ++++ b/plugins/GSdx/GSWndEGL.h +@@ -21,30 +21,11 @@ + + #include "GSWnd.h" + +-#if defined(__linux__) ++#if defined(__linux__) && defined(EGL_SUPPORTED) + #include <X11/Xlib.h> + #include <EGL/egl.h> + #include <EGL/eglext.h> + +-// Need at least MESA 9.0 (plan for october/november 2012) +-// So force the destiny to at least check the compilation +-#ifndef EGL_KHR_create_context +-#define EGL_KHR_create_context 1 +-#define EGL_CONTEXT_MAJOR_VERSION_KHR EGL_CONTEXT_CLIENT_VERSION +-#define EGL_CONTEXT_MINOR_VERSION_KHR 0x30FB +-#define EGL_CONTEXT_FLAGS_KHR 0x30FC +-#define EGL_CONTEXT_OPENGL_PROFILE_MASK_KHR 0x30FD +-#define EGL_CONTEXT_OPENGL_RESET_NOTIFICATION_STRATEGY_KHR 0x31BD +-#define EGL_NO_RESET_NOTIFICATION_KHR 0x31BE +-#define EGL_LOSE_CONTEXT_ON_RESET_KHR 0x31BF +-#define EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR 0x00000001 +-#define EGL_CONTEXT_OPENGL_FORWARD_COMPATIBLE_BIT_KHR 0x00000002 +-#define EGL_CONTEXT_OPENGL_ROBUST_ACCESS_BIT_KHR 0x00000004 +-#define EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT_KHR 0x00000001 +-#define EGL_CONTEXT_OPENGL_COMPATIBILITY_PROFILE_BIT_KHR 0x00000002 +-#endif +- +- + class GSWndEGL : public GSWndGL + { + EGLNativeWindowType m_NativeWindow; +-- +2.4.6 + |