133 lines
4.3 KiB
CMake
133 lines
4.3 KiB
CMake
# - try to find glut library and include files
|
|
# GLUT_INCLUDE_DIRS, where to find GL/glut.h, etc.
|
|
# GLUT_LIBRARIES, the libraries to link against
|
|
# GLUT_FOUND, If false, do not try to use GLUT.
|
|
# GLUT_RUNTIME_LIBRARY_DIRS, path to DLL on Windows for runtime use.
|
|
# GLUT_RUNTIME_LIBRARY, dll on Windows, for installation purposes
|
|
#
|
|
# Also defined, but not for general use are:
|
|
# GLUT_INCLUDE_DIR, where to find GL/glut.h, etc.
|
|
# GLUT_glut_LIBRARY = the full path to the glut library.
|
|
|
|
#=============================================================================
|
|
# Copyright 2001-2009 Kitware, Inc.
|
|
# Copyright 2009-2010 Iowa State University
|
|
# (Author: Ryan Pavlik <abiryan@ryand.net> )
|
|
#
|
|
# Distributed under the OSI-approved BSD License (the "License");
|
|
# see below.
|
|
#
|
|
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
|
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
# See the License for more information.
|
|
#=============================================================================
|
|
#
|
|
# Redistribution and use in source and binary forms, with or without
|
|
# modification, are permitted provided that the following conditions
|
|
# are met:
|
|
#
|
|
# * Redistributions of source code must retain the above copyright
|
|
# notice, this list of conditions and the following disclaimer.
|
|
#
|
|
# * Redistributions in binary form must reproduce the above copyright
|
|
# notice, this list of conditions and the following disclaimer in the
|
|
# documentation and/or other materials provided with the distribution.
|
|
#
|
|
# * Neither the names of Kitware, Inc., the Insight Software Consortium,
|
|
# nor the names of their contributors may be used to endorse or promote
|
|
# products derived from this software without specific prior written
|
|
# permission.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
#=============================================================================
|
|
|
|
if(GLUT_FIND_QUIETLY)
|
|
find_package(OpenGL QUIET)
|
|
else()
|
|
find_package(OpenGL)
|
|
endif()
|
|
|
|
if(OPENGL_FOUND)
|
|
get_filename_component(_ogl_libdir ${OPENGL_gl_LIBRARY} PATH)
|
|
find_path(GLUT_INCLUDE_DIR
|
|
NAMES
|
|
GL/glut.h
|
|
GLUT/glut.h
|
|
glut.h
|
|
PATHS
|
|
${_ogl_libdir}/../include
|
|
${GLUT_ROOT_PATH}
|
|
${GLUT_ROOT_PATH}/include
|
|
/usr/include/GL
|
|
/usr/openwin/share/include
|
|
/usr/openwin/include
|
|
/opt/graphics/OpenGL/include
|
|
/opt/graphics/OpenGL/contrib/libglut)
|
|
|
|
find_library(GLUT_glut_LIBRARY
|
|
NAMES
|
|
glut
|
|
glut32
|
|
GLUT
|
|
freeglut
|
|
PATHS
|
|
${_ogl_libdir}
|
|
${GLUT_ROOT_PATH}
|
|
${GLUT_ROOT_PATH}/Release
|
|
/usr/openwin/lib)
|
|
|
|
endif()
|
|
|
|
# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if
|
|
# all listed variables are TRUE
|
|
include(FindPackageHandleStandardArgs)
|
|
find_package_handle_standard_args(GLUT
|
|
DEFAULT_MSG
|
|
GLUT_glut_LIBRARY
|
|
GLUT_INCLUDE_DIR
|
|
OPENGL_FOUND)
|
|
|
|
if(GLUT_FOUND)
|
|
set(GLUT_LIBRARIES ${GLUT_glut_LIBRARY} ${OPENGL_LIBRARIES})
|
|
set(GLUT_INCLUDE_DIRS ${GLUT_INCLUDE_DIR} ${OPENGL_INCLUDE_DIR})
|
|
|
|
if(WIN32)
|
|
get_filename_component(_basename "${GLUT_glut_LIBRARY}" NAME_WE)
|
|
get_filename_component(_libpath "${GLUT_glut_LIBRARY}" PATH)
|
|
find_path(GLUT_RUNTIME_LIBRARY
|
|
NAMES
|
|
${_basename}.dll
|
|
glut.dll
|
|
glut32.dll
|
|
freeglut.dll
|
|
HINTS
|
|
${_libpath}
|
|
${_libpath}/../bin)
|
|
if(GLUT_RUNTIME_LIBRARY)
|
|
get_filename_component(GLUT_RUNTIME_LIBRARY_DIRS
|
|
"${GLUT_RUNTIME_LIBRARY}"
|
|
PATH)
|
|
else()
|
|
set(GLUT_RUNTIME_LIBRARY_DIRS)
|
|
endif()
|
|
endif()
|
|
|
|
#The following deprecated settings are for backwards compatibility with CMake1.4
|
|
set(GLUT_LIBRARY ${GLUT_LIBRARIES})
|
|
set(GLUT_INCLUDE_PATH ${GLUT_INCLUDE_DIR})
|
|
endif()
|
|
|
|
mark_as_advanced(GLUT_INCLUDE_DIR
|
|
GLUT_glut_LIBRARY
|
|
GLUT_RUNTIME_LIBRARY)
|