diff options
author | Lukas Rusak <lorusak@gmail.com> | 2017-05-24 14:41:36 -0700 |
---|---|---|
committer | Lukas Rusak <lorusak@gmail.com> | 2017-06-01 23:19:03 -0700 |
commit | 55df0eb00b5b8b78fe35003cfa363afb56e6dcba (patch) | |
tree | 2f20f688c7364ee23633018f5480166ec498eca3 | |
parent | 81df4ad49fe8ac5b4780dd33dbd28b25c91e1aeb (diff) |
[cmake] add FindGLX.cmake and fix system.h defines
-rw-r--r-- | cmake/modules/FindGLX.cmake | 44 | ||||
-rw-r--r-- | cmake/platform/linux/x11.cmake | 2 | ||||
-rw-r--r-- | xbmc/system.h | 3 |
3 files changed, 45 insertions, 4 deletions
diff --git a/cmake/modules/FindGLX.cmake b/cmake/modules/FindGLX.cmake new file mode 100644 index 0000000000..77c8fce01b --- /dev/null +++ b/cmake/modules/FindGLX.cmake @@ -0,0 +1,44 @@ +#.rst: +# FindGLX +# ----- +# Finds the GLX library +# +# This will will define the following variables:: +# +# GLX_FOUND - system has GLX +# GLX_INCLUDE_DIRS - the GLX include directory +# GLX_LIBRARIES - the GLX libraries +# GLX_DEFINITIONS - the GLX definitions +# +# and the following imported targets:: +# +# GLX::GLX - The GLX library + +if(PKG_CONFIG_FOUND) + pkg_check_modules(PC_GLX glx QUIET) +endif() + +find_path(GLX_INCLUDE_DIR NAMES GL/glx.h + PATHS ${PC_GLX_INCLUDEDIR}) +find_library(GLX_LIBRARY NAMES GL + PATHS ${PC_GLX_LIBDIR}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(GLX + REQUIRED_VARS GLX_LIBRARY GLX_INCLUDE_DIR) + +if(GLX_FOUND) + set(GLX_LIBRARIES ${GLX_LIBRARY}) + set(GLX_INCLUDE_DIRS ${GLX_INCLUDE_DIR}) + set(GLX_DEFINITIONS -DHAS_GLX=1) + + if(NOT TARGET GLX::GLX) + add_library(GLX::GLX UNKNOWN IMPORTED) + set_target_properties(GLX::GLX PROPERTIES + IMPORTED_LOCATION "${GLX_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${GLX_INCLUDE_DIR}" + INTERFACE_COMPILE_DEFINITIONS HAS_GLX=1) + endif() +endif() + +mark_as_advanced(GLX_INCLUDE_DIR GLX_LIBRARY) diff --git a/cmake/platform/linux/x11.cmake b/cmake/platform/linux/x11.cmake index 21617f0113..edea24de48 100644 --- a/cmake/platform/linux/x11.cmake +++ b/cmake/platform/linux/x11.cmake @@ -1,2 +1,2 @@ -set(PLATFORM_REQUIRED_DEPS OpenGl EGL X XRandR LibDRM) +set(PLATFORM_REQUIRED_DEPS OpenGl EGL X XRandR LibDRM GLX) set(PLATFORM_OPTIONAL_DEPS VAAPI VDPAU) diff --git a/xbmc/system.h b/xbmc/system.h index c6d06202a1..6ba28c8ad0 100644 --- a/xbmc/system.h +++ b/xbmc/system.h @@ -151,9 +151,6 @@ #if defined(HAVE_X11) #define HAS_EGL -#if !defined(HAVE_LIBGLESV2) -#define HAS_GLX -#endif #endif /**************************************** |