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)
14 pkg_check_modules(PC_GLX glx QUIET)
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)
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)