aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Rusak <lorusak@gmail.com>2017-05-24 14:41:36 -0700
committerLukas Rusak <lorusak@gmail.com>2017-06-01 23:19:03 -0700
commit55df0eb00b5b8b78fe35003cfa363afb56e6dcba (patch)
tree2f20f688c7364ee23633018f5480166ec498eca3
parent81df4ad49fe8ac5b4780dd33dbd28b25c91e1aeb (diff)
[cmake] add FindGLX.cmake and fix system.h defines
-rw-r--r--cmake/modules/FindGLX.cmake44
-rw-r--r--cmake/platform/linux/x11.cmake2
-rw-r--r--xbmc/system.h3
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
/****************************************