FindOpenGL: Revert support for imported targets (#15267)
Revert the feature added by commit v3.1.0-rc1~420^2~2 (FindOpenGL: Provide imported targets for GL and GLU, 2014-05-31). Unfortunately it does not work on Windows because the full path to each library file is not actually known. The IMPORTED_LOCATION of an imported target must be a full path, but OPENGL_gl_LIBRARY is just 'opengl32' on Windows because the actual library file is in some implicit link directory that we may know know. More infrastructure will be needed in CMake to allow a name-only imported library. Until that exists, we will not be able to provide imported targets in FindOpenGL.
This commit is contained in:
parent
433c6d4689
commit
02e34de2b6
|
@ -230,9 +230,6 @@ Modules
|
||||||
|
|
||||||
* The :module:`FindOpenCL` module was introduced.
|
* The :module:`FindOpenCL` module was introduced.
|
||||||
|
|
||||||
* The :module:`FindOpenGL` module now provides imported targets
|
|
||||||
``OpenGL::GL`` and ``OpenGL::GLU`` when the libraries are found.
|
|
||||||
|
|
||||||
* The :module:`FindOpenMP` module learned to support Fortran.
|
* The :module:`FindOpenMP` module learned to support Fortran.
|
||||||
|
|
||||||
* The :module:`FindPkgConfig` module learned to use the ``PKG_CONFIG``
|
* The :module:`FindPkgConfig` module learned to use the ``PKG_CONFIG``
|
||||||
|
|
|
@ -4,16 +4,6 @@
|
||||||
#
|
#
|
||||||
# FindModule for OpenGL and GLU.
|
# FindModule for OpenGL and GLU.
|
||||||
#
|
#
|
||||||
# IMPORTED Targets
|
|
||||||
# ^^^^^^^^^^^^^^^^
|
|
||||||
#
|
|
||||||
# This module defines the :prop_tgt:`IMPORTED` targets:
|
|
||||||
#
|
|
||||||
# ``OpenGL::GL``
|
|
||||||
# Defined if the system has OpenGL.
|
|
||||||
# ``OpenGL::GLU``
|
|
||||||
# Defined if the system has GLU.
|
|
||||||
#
|
|
||||||
# Result Variables
|
# Result Variables
|
||||||
# ^^^^^^^^^^^^^^^^
|
# ^^^^^^^^^^^^^^^^
|
||||||
#
|
#
|
||||||
|
@ -191,36 +181,6 @@ include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
|
||||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenGL REQUIRED_VARS ${_OpenGL_REQUIRED_VARS})
|
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenGL REQUIRED_VARS ${_OpenGL_REQUIRED_VARS})
|
||||||
unset(_OpenGL_REQUIRED_VARS)
|
unset(_OpenGL_REQUIRED_VARS)
|
||||||
|
|
||||||
# OpenGL:: targets
|
|
||||||
if(OPENGL_FOUND)
|
|
||||||
if(NOT TARGET OpenGL::GL)
|
|
||||||
add_library(OpenGL::GL UNKNOWN IMPORTED)
|
|
||||||
set_target_properties(OpenGL::GL PROPERTIES
|
|
||||||
INTERFACE_INCLUDE_DIRECTORIES "${OPENGL_INCLUDE_DIR}")
|
|
||||||
if(OPENGL_gl_LIBRARY MATCHES "/([^/]+)\\.framework$")
|
|
||||||
set_target_properties(OpenGL::GL PROPERTIES
|
|
||||||
IMPORTED_LOCATION "${OPENGL_gl_LIBRARY}/${CMAKE_MATCH_1}")
|
|
||||||
else()
|
|
||||||
set_target_properties(OpenGL::GL PROPERTIES
|
|
||||||
IMPORTED_LOCATION "${OPENGL_gl_LIBRARY}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(OPENGL_GLU_FOUND AND NOT TARGET OpenGL::GLU)
|
|
||||||
add_library(OpenGL::GLU UNKNOWN IMPORTED)
|
|
||||||
set_target_properties(OpenGL::GLU PROPERTIES
|
|
||||||
INTERFACE_INCLUDE_DIRECTORIES "${OPENGL_INCLUDE_DIR}"
|
|
||||||
INTERFACE_LINK_LIBRARIES OpenGL::GL)
|
|
||||||
if(OPENGL_glu_LIBRARY MATCHES "/([^/]+)\\.framework$")
|
|
||||||
set_target_properties(OpenGL::GLU PROPERTIES
|
|
||||||
IMPORTED_LOCATION "${OPENGL_glu_LIBRARY}/${CMAKE_MATCH_1}")
|
|
||||||
else()
|
|
||||||
set_target_properties(OpenGL::GLU PROPERTIES
|
|
||||||
IMPORTED_LOCATION "${OPENGL_glu_LIBRARY}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
mark_as_advanced(
|
mark_as_advanced(
|
||||||
OPENGL_INCLUDE_DIR
|
OPENGL_INCLUDE_DIR
|
||||||
OPENGL_xmesa_INCLUDE_DIR
|
OPENGL_xmesa_INCLUDE_DIR
|
||||||
|
|
Loading…
Reference in New Issue