Load libOpenGL.so.1 if libGL.so.1 is not found
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
diff --git a/src/video/SDL_egl.c b/src/video/SDL_egl.c
index 099547b..fa2c841 100644
--- a/src/video/SDL_egl.c
+++ b/src/video/SDL_egl.c
@@ -73,6 +73,7 @@
#define DEFAULT_OGL_ES "libGLESv1_CM.dylib" //???
#elif defined(__OpenBSD__)
+/* OpenBSD */
#define DEFAULT_OGL "libGL.so"
#define DEFAULT_EGL "libEGL.so"
#define DEFAULT_OGL_ES2 "libGLESv2.so"
@@ -80,9 +81,10 @@
#define DEFAULT_OGL_ES "libGLESv1_CM.so"
#else
-/* Desktop Linux */
+/* Desktop Linux/Unix-like */
#define DEFAULT_OGL "libGL.so.1"
#define DEFAULT_EGL "libEGL.so.1"
+#define ALT_OGL "libOpenGL.so.1"
#define DEFAULT_OGL_ES2 "libGLESv2.so.2"
#define DEFAULT_OGL_ES_PVR "libGLES_CM.so.1"
#define DEFAULT_OGL_ES "libGLESv1_CM.so.1"
@@ -374,6 +376,12 @@ SDL_EGL_LoadLibraryOnly(_THIS, const char *egl_path)
else {
path = DEFAULT_OGL;
egl_dll_handle = SDL_LoadObject(path);
+#ifdef ALT_OGL
+ if (egl_dll_handle == NULL) {
+ path = ALT_OGL;
+ egl_dll_handle = SDL_LoadObject(path);
+ }
+#endif
}
#endif
}