diff options
author | Manuel Alfayate Corchete <redwindwanderer@gmail.com> | 2020-12-22 17:17:30 +0100 |
---|---|---|
committer | Manuel Alfayate Corchete <redwindwanderer@gmail.com> | 2020-12-22 17:17:30 +0100 |
commit | 7508f34952b4d018a9b9deeebce0a70fff4a9def (patch) | |
tree | 59ef8a41972ac0bdf7f5c2d0797e6fcbe5594241 /cmake | |
parent | cc94f48483aef7e8f7985a7ea97b69142ddd96b5 (diff) | |
download | sdl-7508f34952b4d018a9b9deeebce0a70fff4a9def.tar.gz |
[Buildsystem] Only build KMSDRM support if EGL+OpenGL is detected by CMake.
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/sdlchecks.cmake | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake index a9434c85a..56f0a6a01 100644 --- a/cmake/sdlchecks.cmake +++ b/cmake/sdlchecks.cmake @@ -759,6 +759,25 @@ endmacro() # Requires: # - PkgCheckModules +macro(CheckEGLKMSDRM) + if (HAVE_VIDEO_OPENGLES OR HAVE_VIDEO_OPENGL) + pkg_check_modules(EGL egl) + set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} ${EGL_CFLAGS}") + check_c_source_compiles(" + #define EGL_API_FB + #define MESA_EGL_NO_X11_HEADERS + #define EGL_NO_X11 + #include <EGL/egl.h> + #include <EGL/eglext.h> + int main (int argc, char** argv) {}" HAVE_VIDEO_OPENGL_EGL) + if(HAVE_VIDEO_OPENGL_EGL) + set(SDL_VIDEO_OPENGL_EGL 1) + endif() + endif() +endmacro() + +# Requires: +# - PkgCheckModules macro(CheckOpenGLESX11) pkg_check_modules(EGL egl) set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} ${EGL_CFLAGS}") @@ -1152,7 +1171,7 @@ endmacro(CheckRPI) macro(CheckKMSDRM) if(VIDEO_KMSDRM) pkg_check_modules(KMSDRM libdrm gbm egl) - if(KMSDRM_FOUND) + if(KMSDRM_FOUND AND HAVE_VIDEO_OPENGL_EGL) link_directories( ${KMSDRM_LIBRARY_DIRS} ) |