[meta-freescale] [PATCH] libsdl2: add append to fix build

Andreas Müller schnitzeltony at googlemail.com
Wed Dec 14 03:42:00 PST 2016


Our vivante driver does not support the API libsdl2 expects.

Fixes:
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c: In function 'VIVANTE_Create':
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:100:30: error: 'VIVANTE_GLES_LoadLibrary' undeclared (first use in this function)
     device->GL_LoadLibrary = VIVANTE_GLES_LoadLibrary;
                              ^~~~~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:100:30: note: each undeclared identifier is reported only once for each function it appears in
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:101:33: error: 'VIVANTE_GLES_GetProcAddress' undeclared (first use in this function)
     device->GL_GetProcAddress = VIVANTE_GLES_GetProcAddress;
                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:102:32: error: 'VIVANTE_GLES_UnloadLibrary' undeclared (first use in this function)
     device->GL_UnloadLibrary = VIVANTE_GLES_UnloadLibrary;
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:103:32: error: 'VIVANTE_GLES_CreateContext' undeclared (first use in this function)
     device->GL_CreateContext = VIVANTE_GLES_CreateContext;
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:104:30: error: 'VIVANTE_GLES_MakeCurrent' undeclared (first use in this function)
     device->GL_MakeCurrent = VIVANTE_GLES_MakeCurrent;
                              ^~~~~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:105:34: error: 'VIVANTE_GLES_SetSwapInterval' undeclared (first use in this function)
     device->GL_SetSwapInterval = VIVANTE_GLES_SetSwapInterval;
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:106:34: error: 'VIVANTE_GLES_GetSwapInterval' undeclared (first use in this function)
     device->GL_GetSwapInterval = VIVANTE_GLES_GetSwapInterval;
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:107:29: error: 'VIVANTE_GLES_SwapWindow' undeclared (first use in this function)
     device->GL_SwapWindow = VIVANTE_GLES_SwapWindow;
                             ^~~~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:108:32: error: 'VIVANTE_GLES_DeleteContext' undeclared (first use in this function)
     device->GL_DeleteContext = VIVANTE_GLES_DeleteContext;
                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c: In function 'VIVANTE_CreateWindow':
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:285:29: warning: implicit declaration of function 'SDL_EGL_CreateSurface' [-Wimplicit-function-declaration]
         data->egl_surface = SDL_EGL_CreateSurface(_this, data->native_window);
                             ^~~~~~~~~~~~~~~~~~~~~
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:285:27: warning: assignment makes pointer from integer without a cast [-Wint-conversion]
         data->egl_surface = SDL_EGL_CreateSurface(_this, data->native_window);
                           ^
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c: In function 'VIVANTE_DestroyWindow':
<workdir>/cortexa9t2hf-neon-mx6qdl-angstrom-linux-gnueabi/libsdl2/2.0.5-r0/SDL2-2.0.5/src/video/vivante/SDL_vivantevideo.c:306:13: warning: implicit declaration of function 'SDL_EGL_DestroySurface' [-Wimplicit-function-declaration]
             SDL_EGL_DestroySurface(_this, data->egl_surface);
             ^~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Andreas Müller <schnitzeltony at googlemail.com>
---
 recipes-graphics/libsdl2/libsdl2_%.bbappend | 7 +++++++
 1 file changed, 7 insertions(+)
 create mode 100644 recipes-graphics/libsdl2/libsdl2_%.bbappend

diff --git a/recipes-graphics/libsdl2/libsdl2_%.bbappend b/recipes-graphics/libsdl2/libsdl2_%.bbappend
new file mode 100644
index 0000000..e41f19c
--- /dev/null
+++ b/recipes-graphics/libsdl2/libsdl2_%.bbappend
@@ -0,0 +1,7 @@
+EXTRA_OECONF_IMX          = ""
+
+# what vivante driver does libsdl2 mean? Anyway it fails with missing functions as
+# VIVANTE_Create VIVANTE_GLES_GetProcAddress VIVANTE_GLES_UnloadLibrary ...
+EXTRA_OECONF_IMX_imxgpu2d = "--disable-video-vivante"
+
+EXTRA_OECONF_append       = " ${EXTRA_OECONF_IMX}"
-- 
2.7.4



More information about the meta-freescale mailing list