Skip to content

Commit

Permalink
Fixes X11 video backend compilation when no GL is available
Browse files Browse the repository at this point in the history
For example, in our Raspberry Pi sysroot.
  • Loading branch information
gabomdq committed Oct 12, 2013
1 parent 7bc9815 commit 074a1c4
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 4 deletions.
6 changes: 6 additions & 0 deletions README-raspberrypi.txt
Expand Up @@ -69,7 +69,13 @@ The final step is compiling SDL itself.
cd <SDL SOURCE>
mkdir -p build;cd build
../configure --with-sysroot=$SYSROOT --host=arm-raspberry-linux-gnueabihf --prefix=$PWD/rpi-sdl2-installed --disable-pulseaudio --disable-esd
make
make install

To be able to deploy this to /usr/local in the Raspbian system you need to fix up a few paths:

perl -w -pi -e "s#$PWD/rpi-sdl2-installed#/usr/local#g;" ./rpi-sdl2-installed/lib/libSDL2.la ./rpi-sdl2-installed/lib/pkgconfig/sdl2.pc ./rpi-sdl2-installed/bin/sdl2-config

================================================================================
Apps don't work or poor video/audio performance
================================================================================
Expand Down
14 changes: 10 additions & 4 deletions src/video/x11/SDL_x11window.c
Expand Up @@ -370,8 +370,11 @@ X11_CreateWindow(_THIS, SDL_Window * window)
XVisualInfo *vinfo = NULL;

#if SDL_VIDEO_OPENGL_EGL
if (_this->gl_config.profile_mask == SDL_GL_CONTEXT_PROFILE_ES &&
( !_this->gl_data || ! _this->gl_data->HAS_GLX_EXT_create_context_es2_profile )) {
if (_this->gl_config.profile_mask == SDL_GL_CONTEXT_PROFILE_ES
#if SDL_VIDEO_OPENGL_GLX
&& ( !_this->gl_data || ! _this->gl_data->HAS_GLX_EXT_create_context_es2_profile )
#endif
){
vinfo = X11_GLES_GetVisual(_this, display, screen);
} else
#endif
Expand Down Expand Up @@ -555,8 +558,11 @@ X11_CreateWindow(_THIS, SDL_Window * window)

#if SDL_VIDEO_OPENGL_ES || SDL_VIDEO_OPENGL_ES2
if ((window->flags & SDL_WINDOW_OPENGL) &&
_this->gl_config.profile_mask == SDL_GL_CONTEXT_PROFILE_ES &&
(!_this->gl_data || ! _this->gl_data->HAS_GLX_EXT_create_context_es2_profile) ) {
_this->gl_config.profile_mask == SDL_GL_CONTEXT_PROFILE_ES
#if SDL_VIDEO_OPENGL_GLX
&& ( !_this->gl_data || ! _this->gl_data->HAS_GLX_EXT_create_context_es2_profile )
#endif
) {
if (!_this->egl_data) {
XDestroyWindow(display, w);
return -1;
Expand Down

0 comments on commit 074a1c4

Please sign in to comment.