summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/mesa/qemugl/extensions_emulation.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-graphics/mesa/qemugl/extensions_emulation.patch')
-rw-r--r--meta/recipes-graphics/mesa/qemugl/extensions_emulation.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/meta/recipes-graphics/mesa/qemugl/extensions_emulation.patch b/meta/recipes-graphics/mesa/qemugl/extensions_emulation.patch
new file mode 100644
index 0000000000..08418c2f4b
--- /dev/null
+++ b/meta/recipes-graphics/mesa/qemugl/extensions_emulation.patch
@@ -0,0 +1,34 @@
1Hide some GLX extensions by default to avoid guest call missing GLX API. It's
2hacky to implement these APIs, so hide these extensions as fix.
3
4Upstream-Status: Pending
5
6Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
7
8Index: git/opengl_client.c
9===================================================================
10--- git.orig/opengl_client.c 2012-03-16 18:22:27.000000000 +0800
11+++ git/opengl_client.c 2012-03-16 18:52:06.000000000 +0800
12@@ -105,6 +105,12 @@
13 "NO_MOVE", /* default : set if TCP/IP communication */
14 };
15
16+/* Hiding some GLX extensions from guest */
17+static const char* hiding_extensions =
18+ "GLX_MESA_copy_sub_buffer,\
19+ GLX_MESA_multithread_makecurrent,\
20+ GLX_MESA_swap_control,\
21+ ";
22
23 #ifdef WIN32
24
25@@ -3516,7 +3522,8 @@
26 static void removeUnwantedExtensions(char* ret)
27 {
28 char* toBeRemoved = getenv("GL_REMOVE_EXTENSIONS");
29- if (toBeRemoved == NULL) return;
30+ if (toBeRemoved == NULL)
31+ toBeRemoved = hiding_extensions;
32 toBeRemoved = strdup(toBeRemoved);
33 char* iterToBeRemoved = toBeRemoved;
34 while(*iterToBeRemoved)