Merge topic 'OpenGL-require-includes'

5be3593 FindOpenGL: require headers to be found on non-Windows platforms (#13746)
b10a171 FindOpenGL: simplify OS selection code
This commit is contained in:
Brad King 2013-05-16 14:36:59 -04:00 committed by CMake Topic Stage
commit d04e765d76

View File

@ -28,16 +28,18 @@
# (To distribute this file outside of CMake, substitute the full # (To distribute this file outside of CMake, substitute the full
# License text for the above reference.) # License text for the above reference.)
if (WIN32) set(_OpenGL_REQUIRED_VARS OPENGL_gl_LIBRARY)
if (CYGWIN)
if (CYGWIN)
find_path(OPENGL_INCLUDE_DIR GL/gl.h ) find_path(OPENGL_INCLUDE_DIR GL/gl.h )
list(APPEND _OpenGL_REQUIRED_VARS OPENGL_INCLUDE_DIR)
find_library(OPENGL_gl_LIBRARY opengl32 ) find_library(OPENGL_gl_LIBRARY opengl32 )
find_library(OPENGL_glu_LIBRARY glu32 ) find_library(OPENGL_glu_LIBRARY glu32 )
else () elseif (WIN32)
if(BORLAND) if(BORLAND)
set (OPENGL_gl_LIBRARY import32 CACHE STRING "OpenGL library for win32") set (OPENGL_gl_LIBRARY import32 CACHE STRING "OpenGL library for win32")
@ -47,17 +49,14 @@ if (WIN32)
set (OPENGL_glu_LIBRARY glu32 CACHE STRING "GLU library for win32") set (OPENGL_glu_LIBRARY glu32 CACHE STRING "GLU library for win32")
endif() endif()
endif () elseif (APPLE)
else ()
if (APPLE)
find_library(OPENGL_gl_LIBRARY OpenGL DOC "OpenGL lib for OSX") find_library(OPENGL_gl_LIBRARY OpenGL DOC "OpenGL lib for OSX")
find_library(OPENGL_glu_LIBRARY AGL DOC "AGL lib for OSX") find_library(OPENGL_glu_LIBRARY AGL DOC "AGL lib for OSX")
find_path(OPENGL_INCLUDE_DIR OpenGL/gl.h DOC "Include for OpenGL on OSX") find_path(OPENGL_INCLUDE_DIR OpenGL/gl.h DOC "Include for OpenGL on OSX")
list(APPEND _OpenGL_REQUIRED_VARS OPENGL_INCLUDE_DIR)
else() else()
if (CMAKE_SYSTEM_NAME MATCHES "HP-UX") if (CMAKE_SYSTEM_NAME MATCHES "HP-UX")
# Handle HP-UX cases where we only want to find OpenGL in either hpux64 # Handle HP-UX cases where we only want to find OpenGL in either hpux64
# or hpux32 depending on if we're doing a 64 bit build. # or hpux32 depending on if we're doing a 64 bit build.
@ -90,6 +89,7 @@ else ()
/opt/graphics/OpenGL/include /usr/X11R6/include /opt/graphics/OpenGL/include /usr/X11R6/include
${_OPENGL_INCLUDE_PATH} ${_OPENGL_INCLUDE_PATH}
) )
list(APPEND _OpenGL_REQUIRED_VARS OPENGL_INCLUDE_DIR)
find_path(OPENGL_xmesa_INCLUDE_DIR GL/xmesa.h find_path(OPENGL_xmesa_INCLUDE_DIR GL/xmesa.h
/usr/share/doc/NVIDIA_GLX-1.0/include /usr/share/doc/NVIDIA_GLX-1.0/include
@ -111,18 +111,15 @@ else ()
# On Unix OpenGL most certainly always requires X11. # On Unix OpenGL most certainly always requires X11.
# Feel free to tighten up these conditions if you don't # Feel free to tighten up these conditions if you don't
# think this is always true. # think this is always true.
# It's not true on OSX.
if (OPENGL_gl_LIBRARY) if (OPENGL_gl_LIBRARY)
if(NOT X11_FOUND) if(NOT X11_FOUND)
include(${CMAKE_CURRENT_LIST_DIR}/FindX11.cmake) include(${CMAKE_CURRENT_LIST_DIR}/FindX11.cmake)
endif() endif()
if (X11_FOUND) if (X11_FOUND)
if (NOT APPLE)
set (OPENGL_LIBRARIES ${X11_LIBRARIES}) set (OPENGL_LIBRARIES ${X11_LIBRARIES})
endif () endif ()
endif () endif ()
endif ()
find_library(OPENGL_glu_LIBRARY find_library(OPENGL_glu_LIBRARY
NAMES GLU MesaGLU NAMES GLU MesaGLU
@ -132,7 +129,6 @@ else ()
/usr/shlib /usr/X11R6/lib /usr/shlib /usr/X11R6/lib
) )
endif()
endif () endif ()
if(OPENGL_gl_LIBRARY) if(OPENGL_gl_LIBRARY)
@ -162,7 +158,8 @@ set(OPENGL_INCLUDE_PATH ${OPENGL_INCLUDE_DIR})
# handle the QUIETLY and REQUIRED arguments and set OPENGL_FOUND to TRUE if # handle the QUIETLY and REQUIRED arguments and set OPENGL_FOUND to TRUE if
# all listed variables are TRUE # all listed variables are TRUE
include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake) include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenGL DEFAULT_MSG OPENGL_gl_LIBRARY) FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenGL REQUIRED_VARS ${_OpenGL_REQUIRED_VARS})
unset(_OpenGL_REQUIRED_VARS)
mark_as_advanced( mark_as_advanced(
OPENGL_INCLUDE_DIR OPENGL_INCLUDE_DIR