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:
Brad King 2014-12-01 16:01:09 -05:00
parent 433c6d4689
commit 02e34de2b6
2 changed files with 0 additions and 43 deletions

View File

@ -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``

View File

@ -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