summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-graphics/vk-gl-cts/files/0001-use-library-sonames-for-linking.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-graphics/vk-gl-cts/files/0001-use-library-sonames-for-linking.patch')
-rw-r--r--meta-oe/recipes-graphics/vk-gl-cts/files/0001-use-library-sonames-for-linking.patch123
1 files changed, 123 insertions, 0 deletions
diff --git a/meta-oe/recipes-graphics/vk-gl-cts/files/0001-use-library-sonames-for-linking.patch b/meta-oe/recipes-graphics/vk-gl-cts/files/0001-use-library-sonames-for-linking.patch
new file mode 100644
index 0000000000..5e19ed2db3
--- /dev/null
+++ b/meta-oe/recipes-graphics/vk-gl-cts/files/0001-use-library-sonames-for-linking.patch
@@ -0,0 +1,123 @@
1From acd25c4b8d5b7e420a7a89bdfd6551c70de828b3 Mon Sep 17 00:00:00 2001
2From: Trevor Woerner <twoerner@gmail.com>
3Date: Thu, 23 Sep 2021 19:36:43 -0400
4Subject: [PATCH] use library sonames for linking
5
6The recommended "best practices" for applications is to link to library
7sonames (e.g. libGL.so.1) instead of library names (e.g. libGL.so). This
8ensures that applications don't try to use libraries if an incompatible ABI
9change occurs.
10
11Upstream-Status: Denied [https://github.com/KhronosGroup/VK-GL-CTS/pull/288]
12Signed-off-by: Trevor Woerner <twoerner@gmail.com>
13---
14 framework/egl/egluGLContextFactory.cpp | 4 ++--
15 framework/egl/wrapper/eglwLibrary.cpp | 2 +-
16 framework/platform/android/tcuAndroidPlatform.cpp | 2 +-
17 framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp | 2 +-
18 .../platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp | 2 +-
19 framework/platform/surfaceless/tcuSurfacelessPlatform.cpp | 6 +++---
20 6 files changed, 9 insertions(+), 9 deletions(-)
21
22--- a/framework/egl/egluGLContextFactory.cpp
23+++ b/framework/egl/egluGLContextFactory.cpp
24@@ -63,7 +63,7 @@ using std::vector;
25 #if (DE_OS == DE_OS_WIN32)
26 #define DEQP_GLES2_LIBRARY_PATH "libGLESv2.dll"
27 #else
28-#define DEQP_GLES2_LIBRARY_PATH "libGLESv2.so"
29+#define DEQP_GLES2_LIBRARY_PATH "libGLESv2.so.2"
30 #endif
31 #endif
32
33@@ -75,7 +75,7 @@ using std::vector;
34 #if (DE_OS == DE_OS_WIN32)
35 #define DEQP_OPENGL_LIBRARY_PATH "opengl32.dll"
36 #else
37-#define DEQP_OPENGL_LIBRARY_PATH "libGL.so"
38+#define DEQP_OPENGL_LIBRARY_PATH "libGL.so.1"
39 #endif
40 #endif
41
42--- a/framework/egl/wrapper/eglwLibrary.cpp
43+++ b/framework/egl/wrapper/eglwLibrary.cpp
44@@ -145,7 +145,7 @@ DefaultLibrary::~DefaultLibrary(void)
45 const char *DefaultLibrary::getLibraryFileName(void)
46 {
47 #if (DE_OS == DE_OS_ANDROID) || (DE_OS == DE_OS_UNIX)
48- return "libEGL.so";
49+ return "libEGL.so.1";
50 #elif (DE_OS == DE_OS_WIN32)
51 return "libEGL.dll";
52 #else
53--- a/framework/platform/android/tcuAndroidPlatform.cpp
54+++ b/framework/platform/android/tcuAndroidPlatform.cpp
55@@ -56,7 +56,7 @@ static const eglu::NativeWindow::Capabil
56 class NativeDisplay : public eglu::NativeDisplay
57 {
58 public:
59- NativeDisplay(void) : eglu::NativeDisplay(DISPLAY_CAPABILITIES), m_library("libEGL.so")
60+ NativeDisplay(void) : eglu::NativeDisplay(DISPLAY_CAPABILITIES), m_library("libEGL.so.1")
61 {
62 }
63 virtual ~NativeDisplay(void)
64@@ -223,7 +223,7 @@ class VulkanLibrary : public vk::Library
65 {
66 public:
67 VulkanLibrary(const char *libraryPath)
68- : m_library(libraryPath != nullptr ? libraryPath : "libvulkan.so")
69+ : m_library(libraryPath != nullptr ? libraryPath : "libvulkan.so.1")
70 , m_driver(m_library)
71 {
72 }
73--- a/framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp
74+++ b/framework/platform/lnx/X11/tcuLnxX11EglDisplayFactory.cpp
75@@ -77,7 +77,7 @@ using tcu::TextureLevel;
76 class Library : public eglw::DefaultLibrary
77 {
78 public:
79- Library(void) : eglw::DefaultLibrary("libEGL.so")
80+ Library(void) : eglw::DefaultLibrary("libEGL.so.1")
81 {
82 }
83
84--- a/framework/platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp
85+++ b/framework/platform/lnx/wayland/tcuLnxWaylandEglDisplayFactory.cpp
86@@ -64,7 +64,7 @@ public:
87 Display(MovePtr<wayland::Display> waylandDisplay)
88 : NativeDisplay(CAPABILITIES, EGL_PLATFORM_WAYLAND_KHR, "EGL_KHR_platform_wayland")
89 , m_display(waylandDisplay)
90- , m_library("libEGL.so")
91+ , m_library("libEGL.so.1")
92 {
93 }
94
95--- a/framework/platform/surfaceless/tcuSurfacelessPlatform.cpp
96+++ b/framework/platform/surfaceless/tcuSurfacelessPlatform.cpp
97@@ -69,7 +69,7 @@ using std::vector;
98
99 // Default library names
100 #if !defined(DEQP_GLES2_LIBRARY_PATH)
101-#define DEQP_GLES2_LIBRARY_PATH "libGLESv2.so"
102+#define DEQP_GLES2_LIBRARY_PATH "libGLESv2.so.2"
103 #endif
104
105 #if !defined(DEQP_GLES3_LIBRARY_PATH)
106@@ -77,7 +77,7 @@ using std::vector;
107 #endif
108
109 #if !defined(DEQP_OPENGL_LIBRARY_PATH)
110-#define DEQP_OPENGL_LIBRARY_PATH "libGL.so"
111+#define DEQP_OPENGL_LIBRARY_PATH "libGL.so.1"
112 #endif
113
114 #if !defined(DEQP_VULKAN_LIBRARY_PATH)
115@@ -258,7 +258,7 @@ glu::RenderContext *ContextFactory::crea
116
117 EglRenderContext::EglRenderContext(const glu::RenderConfig &config, const tcu::CommandLine &cmdLine,
118 const glu::RenderContext *sharedContext)
119- : m_egl("libEGL.so")
120+ : m_egl("libEGL.so.1")
121 , m_contextType(config.type)
122 , m_eglDisplay(EGL_NO_DISPLAY)
123 , m_eglContext(EGL_NO_CONTEXT)