| # Distributed under the OSI-approved BSD 3-Clause License. See accompanying |
| # file Copyright.txt or https://cmake.org/licensing for details. |
| |
| #.rst: |
| # FindGLEW |
| # -------- |
| # |
| # Find the OpenGL Extension Wrangler Library (GLEW) |
| # |
| # IMPORTED Targets |
| # ^^^^^^^^^^^^^^^^ |
| # |
| # This module defines the :prop_tgt:`IMPORTED` target ``GLEW::GLEW``, |
| # if GLEW has been found. |
| # |
| # Result Variables |
| # ^^^^^^^^^^^^^^^^ |
| # |
| # This module defines the following variables: |
| # |
| # :: |
| # |
| # GLEW_INCLUDE_DIRS - include directories for GLEW |
| # GLEW_LIBRARIES - libraries to link against GLEW |
| # GLEW_FOUND - true if GLEW has been found and can be used |
| |
| find_path(GLEW_INCLUDE_DIR GL/glew.h) |
| |
| if(NOT GLEW_LIBRARY) |
| find_library(GLEW_LIBRARY_RELEASE NAMES GLEW glew32 glew glew32s PATH_SUFFIXES lib64 libx32) |
| find_library(GLEW_LIBRARY_DEBUG NAMES GLEWd glew32d glewd PATH_SUFFIXES lib64) |
| |
| include(${CMAKE_CURRENT_LIST_DIR}/SelectLibraryConfigurations.cmake) |
| select_library_configurations(GLEW) |
| endif () |
| |
| include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) |
| find_package_handle_standard_args(GLEW |
| REQUIRED_VARS GLEW_INCLUDE_DIR GLEW_LIBRARY) |
| |
| if(GLEW_FOUND) |
| set(GLEW_INCLUDE_DIRS ${GLEW_INCLUDE_DIR}) |
| |
| if(NOT GLEW_LIBRARIES) |
| set(GLEW_LIBRARIES ${GLEW_LIBRARY}) |
| endif() |
| |
| if (NOT TARGET GLEW::GLEW) |
| add_library(GLEW::GLEW UNKNOWN IMPORTED) |
| set_target_properties(GLEW::GLEW PROPERTIES |
| INTERFACE_INCLUDE_DIRECTORIES "${GLEW_INCLUDE_DIRS}") |
| |
| if(GLEW_LIBRARY_RELEASE) |
| set_property(TARGET GLEW::GLEW APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE) |
| set_target_properties(GLEW::GLEW PROPERTIES IMPORTED_LOCATION_RELEASE "${GLEW_LIBRARY_RELEASE}") |
| endif() |
| |
| if(GLEW_LIBRARY_DEBUG) |
| set_property(TARGET GLEW::GLEW APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG) |
| set_target_properties(GLEW::GLEW PROPERTIES IMPORTED_LOCATION_DEBUG "${GLEW_LIBRARY_DEBUG}") |
| endif() |
| |
| if(NOT GLEW_LIBRARY_RELEASE AND NOT GLEW_LIBRARY_DEBUG) |
| set_property(TARGET GLEW::GLEW APPEND PROPERTY IMPORTED_LOCATION "${GLEW_LIBRARY}") |
| endif() |
| endif() |
| endif() |
| |
| mark_as_advanced(GLEW_INCLUDE_DIR) |