Merge pull request #26350 from jjd-uk/estuary_media_align
[xbmc.git] / cmake / modules / FindGLX.cmake
blob3550442dafaf31e7361e37c6edc54ac4168103b4
1 #.rst:
2 # FindGLX
3 # -----
4 # Finds the GLX library
6 # This will define the following target:
8 #   ${APP_NAME_LC}::GLX    - The GLX library
10 if(NOT TARGET ${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME})
11   find_package(PkgConfig QUIET)
13   if(PKG_CONFIG_FOUND)
14     pkg_check_modules(PC_GLX glx QUIET)
15   endif()
17   find_path(GLX_INCLUDE_DIR NAMES GL/glx.h
18                             HINTS ${PC_GLX_INCLUDEDIR})
19   find_library(GLX_LIBRARY NAMES GL
20                            HINTS ${PC_GLX_LIBDIR})
22   include(FindPackageHandleStandardArgs)
23   find_package_handle_standard_args(GLX
24                                     REQUIRED_VARS GLX_LIBRARY GLX_INCLUDE_DIR)
26   if(GLX_FOUND)
27     list(APPEND GL_INTERFACES_LIST glx)
28     set(GL_INTERFACES_LIST ${GL_INTERFACES_LIST} PARENT_SCOPE)
30     add_library(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} UNKNOWN IMPORTED)
31     set_target_properties(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} PROPERTIES
32                                                                      IMPORTED_LOCATION "${GLX_LIBRARY}"
33                                                                      INTERFACE_INCLUDE_DIRECTORIES "${GLX_INCLUDE_DIR}"
34                                                                      INTERFACE_COMPILE_DEFINITIONS HAS_GLX)
35   endif()
36 endif()