2
0
Эх сурвалжийг харах

Fixed bug 5215 - Fixing filenames passed to dlopen for OpenBSD

Brad Smith

Attached is a patch to use the proper filenames when trying to dlopen the respective shared libraries on OpenBSD.
Sam Lantinga 5 жил өмнө
parent
commit
8709f67ebc

+ 7 - 0
src/video/SDL_egl.c

@@ -72,6 +72,13 @@
 #define DEFAULT_OGL_ES_PVR "libGLES_CM.dylib"   //???
 #define DEFAULT_OGL_ES_PVR "libGLES_CM.dylib"   //???
 #define DEFAULT_OGL_ES "libGLESv1_CM.dylib"     //???
 #define DEFAULT_OGL_ES "libGLESv1_CM.dylib"     //???
 
 
+#elif defined(__OpenBSD__)
+#define DEFAULT_OGL "libGL.so"
+#define DEFAULT_EGL "libEGL.so"
+#define DEFAULT_OGL_ES2 "libGLESv2.so"
+#define DEFAULT_OGL_ES_PVR "libGLES_CM.so"
+#define DEFAULT_OGL_ES "libGLESv1_CM.so"
+
 #else
 #else
 /* Desktop Linux */
 /* Desktop Linux */
 #define DEFAULT_OGL "libGL.so.1"
 #define DEFAULT_OGL "libGL.so.1"

+ 7 - 1
src/video/wayland/SDL_waylandvulkan.c

@@ -36,6 +36,12 @@
 #include "SDL_waylandvulkan.h"
 #include "SDL_waylandvulkan.h"
 #include "SDL_syswm.h"
 #include "SDL_syswm.h"
 
 
+#if defined(__OpenBSD__)
+#define DEFAULT_VULKAN  "libvulkan.so"
+#else
+#define DEFAULT_VULKAN  "libvulkan.so.1"
+#endif
+
 int Wayland_Vulkan_LoadLibrary(_THIS, const char *path)
 int Wayland_Vulkan_LoadLibrary(_THIS, const char *path)
 {
 {
     VkExtensionProperties *extensions = NULL;
     VkExtensionProperties *extensions = NULL;
@@ -50,7 +56,7 @@ int Wayland_Vulkan_LoadLibrary(_THIS, const char *path)
     if(!path)
     if(!path)
         path = SDL_getenv("SDL_VULKAN_LIBRARY");
         path = SDL_getenv("SDL_VULKAN_LIBRARY");
     if(!path)
     if(!path)
-        path = "libvulkan.so.1";
+        path = DEFAULT_VULKAN;
     _this->vulkan_config.loader_handle = SDL_LoadObject(path);
     _this->vulkan_config.loader_handle = SDL_LoadObject(path);
     if(!_this->vulkan_config.loader_handle)
     if(!_this->vulkan_config.loader_handle)
         return -1;
         return -1;

+ 8 - 1
src/video/x11/SDL_x11vulkan.c

@@ -30,6 +30,13 @@
 
 
 #include <X11/Xlib.h>
 #include <X11/Xlib.h>
 /*#include <xcb/xcb.h>*/
 /*#include <xcb/xcb.h>*/
+
+#if defined(__OpenBSD__)
+#define DEFAULT_VULKAN  "libvulkan.so"
+#else
+#define DEFAULT_VULKAN  "libvulkan.so.1"
+#endif
+
 /*
 /*
 typedef uint32_t xcb_window_t;
 typedef uint32_t xcb_window_t;
 typedef uint32_t xcb_visualid_t;
 typedef uint32_t xcb_visualid_t;
@@ -52,7 +59,7 @@ int X11_Vulkan_LoadLibrary(_THIS, const char *path)
     if(!path)
     if(!path)
         path = SDL_getenv("SDL_VULKAN_LIBRARY");
         path = SDL_getenv("SDL_VULKAN_LIBRARY");
     if(!path)
     if(!path)
-        path = "libvulkan.so.1";
+        path = DEFAULT_VULKAN;
     _this->vulkan_config.loader_handle = SDL_LoadObject(path);
     _this->vulkan_config.loader_handle = SDL_LoadObject(path);
     if(!_this->vulkan_config.loader_handle)
     if(!_this->vulkan_config.loader_handle)
         return -1;
         return -1;