1# - try to find the OpenGL Performer library 2# 3# Users may optionally supply: 4# PERFORMER_ROOT_DIR - a prefix to start searching. 5# 6# Cache Variables: (probably not for direct use in your scripts) 7# PERFORMER_INCLUDE_DIR 8# PERFORMER_LIBRARY 9# PERFORMER_PFUI_LIBRARY - doesn't get included in PERFORMER_LIBRARIES 10# PERFORMER_PFDU_UTIL_LIBRARY - doesn't get included in PERFORMER_LIBRARIES 11# PERFORMER_PFV_LIBRARY - doesn't get included in PERFORMER_LIBRARIES 12# 13# Non-cache variables you might use in your CMakeLists.txt: 14# PERFORMER_FOUND 15# PERFORMER_INCLUDE_DIRS 16# PERFORMER_LIBRARIES 17# PERFORMER_RUNTIME_LIBRARY_DIRS 18# 19# Requires these CMake modules: 20# FindPackageHandleStandardArgs (known included with CMake >=2.6.2) 21# 22# Original Author: 23# 2012 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net> 24# http://academic.cleardefinition.com 25# Iowa State University HCI Graduate Program/VRAC 26# 27# Copyright Iowa State University 2012. 28# Distributed under the Boost Software License, Version 1.0. 29# (See accompanying file LICENSE_1_0.txt or copy at 30# http://www.boost.org/LICENSE_1_0.txt) 31 32set(PERFORMER_ROOT_DIR 33 "${PERFORMER_ROOT_DIR}" 34 CACHE 35 PATH 36 "Path to search for OpenGL Performer library") 37 38 39find_path(PERFORMER_INCLUDE_DIR 40 NAMES 41 pf.h 42 HINTS 43 "${PERFORMER_ROOT_DIR}" 44 PATH_SUFFIXES 45 include 46 include/Performer 47 Performer 48 PATHS 49 $ENV{PFROOT}) 50mark_as_advanced(PERFORMER_INCLUDE_DIR) 51 52if(WIN32) 53 set(_pf_libnameprefix lib) 54 find_library(PERFORMER_PFDU_UTIL_LIBRARY 55 NAMES 56 libpfdu-util 57 HINTS 58 "${PERFORMER_ROOT_DIR}" 59 PATH_SUFFIXES 60 lib 61 PATHS 62 $ENV{PFROOT}) 63else() 64 set(_pf_libnameprefix) 65 find_library(PERFORMER_PFDU_LIBRARY 66 NAMES 67 pfdu 68 HINTS 69 "${PERFORMER_ROOT_DIR}" 70 PATH_SUFFIXES 71 lib 72 PATHS 73 $ENV{PFROOT}) 74 find_library(PERFORMER_PFUTIL_LIBRARY 75 NAMES 76 pfutil 77 HINTS 78 "${PERFORMER_ROOT_DIR}" 79 PATH_SUFFIXES 80 lib 81 PATHS 82 $ENV{PFROOT}) 83 if(PERFORMER_PFDU_LIBRARY AND PERFORMER_PFUTIL_LIBRARY) 84 set(PERFORMER_PFDU_UTIL_LIBRARY 85 ${PERFORMER_PFDU_LIBRARY} 86 ${PERFORMER_PFUTIL_LIBRARY}) 87 endif() 88endif() 89 90find_library(PERFORMER_LIBRARY 91 NAMES 92 ${_pf_libnameprefix}pf 93 HINTS 94 "${PERFORMER_ROOT_DIR}" 95 PATH_SUFFIXES 96 lib 97 PATHS 98 $ENV{PFROOT}) 99find_library(PERFORMER_PFUI_LIBRARY 100 NAMES 101 ${_pf_libnameprefix}pfui 102 HINTS 103 "${PERFORMER_ROOT_DIR}" 104 PATH_SUFFIXES 105 lib 106 PATHS 107 $ENV{PFROOT}) 108find_library(PERFORMER_PFV_LIBRARY 109 NAMES 110 ${_pf_libnameprefix}pfv 111 HINTS 112 "${PERFORMER_ROOT_DIR}" 113 PATH_SUFFIXES 114 lib 115 PATHS 116 $ENV{PFROOT}) 117 118### 119# Prereq: OpenGL 120### 121 122find_package(OpenGL QUIET) 123 124# handle the QUIETLY and REQUIRED arguments and set xxx_FOUND to TRUE if 125# all listed variables are TRUE 126include(FindPackageHandleStandardArgs) 127find_package_handle_standard_args(Performer 128 DEFAULT_MSG 129 PERFORMER_LIBRARY 130 PERFORMER_PFUI_LIBRARY 131 PERFORMER_PFV_LIBRARY 132 PERFORMER_PFDU_UTIL_LIBRARY 133 PERFORMER_INCLUDE_DIR 134 OPENGL_FOUND) 135 136if(PERFORMER_FOUND) 137 set(PERFORMER_INCLUDE_DIRS 138 "${OPENGL_INCLUDE_DIR}" 139 "${PERFORMER_INCLUDE_DIR}") 140 if(PERFORMER_INCLUDE_DIR MATCHES ".*Performer.*") 141 list(APPEND PERFORMER_INCLUDE_DIRS "${PERFORMER_INCLUDE_DIR}/..") 142 endif() 143 set(PERFORMER_LIBRARIES "${OPENGL_LIBRARY}" "${PERFORMER_LIBRARY}") 144 mark_as_advanced(PERFORMER_ROOT_DIR) 145endif() 146 147mark_as_advanced(PERFORMER_LIBRARY 148 PERFORMER_PFUI_LIBRARY 149 PERFORMER_PFV_LIBRARY 150 PERFORMER_PFDU_LIBRARY 151 PERFORMER_PFUTIL_LIBRARY 152 PERFORMER_PFDU_UTIL_LIBRARY 153 PERFORMER_INCLUDE_DIR) 154