Merge pull request #25883 from CrystalP/fix-slowscan
[xbmc.git] / cmake / modules / FindOpenGl.cmake
blob57cae1597c17111066e7bdc97801caefd56142da
1 #.rst:
2 # FindOpenGl
3 # ----------
4 # Finds the FindOpenGl library
6 # This will define the following target:
8 #   ${APP_NAME_LC}::OpenGl - The OpenGL library
10 if(NOT TARGET ${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME})
11   find_package(PkgConfig)
12   if(PKG_CONFIG_FOUND)
13     pkg_check_modules(PC_OPENGL gl QUIET)
14   endif()
16   find_library(OPENGL_gl_LIBRARY NAMES GL OpenGL
17                                  HINTS ${PC_OPENGL_gl_LIBDIR} ${CMAKE_OSX_SYSROOT}/System/Library
18                                  PATH_SUFFIXES Frameworks)
19   find_path(OPENGL_INCLUDE_DIR NAMES GL/gl.h gl.h
20                                HINTS ${PC_OPENGL_gl_INCLUDEDIR} ${OPENGL_gl_LIBRARY}/Headers)
22   include(FindPackageHandleStandardArgs)
23   find_package_handle_standard_args(OpenGl
24                                     REQUIRED_VARS OPENGL_gl_LIBRARY OPENGL_INCLUDE_DIR)
26   if(OPENGL_FOUND)
27     add_library(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} UNKNOWN IMPORTED)
28     set_target_properties(${APP_NAME_LC}::${CMAKE_FIND_PACKAGE_NAME} PROPERTIES
29                                                                      IMPORTED_LOCATION "${OPENGL_gl_LIBRARY}"
30                                                                      INTERFACE_INCLUDE_DIRECTORIES "${OPENGL_INCLUDE_DIR}"
31                                                                      INTERFACE_COMPILE_DEFINITIONS HAS_GL)
32   endif()
33 endif()