109 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			109 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| # The script is taken from http://code.google.com/p/nvidia-texture-tools/
 | |
| 
 | |
| #
 | |
| # Try to find OpenEXR's libraries, and include path.
 | |
| # Once done this will define:
 | |
| #
 | |
| # OPENEXR_FOUND = OpenEXR found.
 | |
| # OPENEXR_INCLUDE_PATHS = OpenEXR include directories.
 | |
| # OPENEXR_LIBRARIES = libraries that are needed to use OpenEXR.
 | |
| #
 | |
| 
 | |
| SET(OPENEXR_LIBRARIES "")
 | |
| SET(OPENEXR_LIBSEARCH_SUFFIXES "")
 | |
| file(TO_CMAKE_PATH "$ENV{ProgramFiles}" ProgramFiles_ENV_PATH)
 | |
| 
 | |
| if(WIN32)
 | |
|     SET(OPENEXR_ROOT "C:/Deploy" CACHE STRING "Path to the OpenEXR \"Deploy\" folder")
 | |
|     if(CMAKE_CL_64)
 | |
|         SET(OPENEXR_LIBSEARCH_SUFFIXES x64/Release x64 x64/Debug)
 | |
|     elseif(MSVC)
 | |
|         SET(OPENEXR_LIBSEARCH_SUFFIXES Win32/Release Win32 Win32/Debug)
 | |
|     endif()
 | |
| else()
 | |
|     set(OPENEXR_ROOT "")
 | |
| endif()
 | |
| 
 | |
| SET(LIBRARY_PATHS
 | |
|     /usr/lib
 | |
|     /usr/local/lib
 | |
|     /sw/lib
 | |
|     /opt/local/lib
 | |
|     "${ProgramFiles_ENV_PATH}/OpenEXR/lib/static"
 | |
|     "${OPENEXR_ROOT}/lib")
 | |
| 
 | |
| FIND_PATH(OPENEXR_INCLUDE_PATH ImfRgbaFile.h
 | |
|     PATH_SUFFIXES OpenEXR
 | |
|     PATHS
 | |
|     /usr/include
 | |
|     /usr/local/include
 | |
|     /sw/include
 | |
|     /opt/local/include
 | |
|     "${ProgramFiles_ENV_PATH}/OpenEXR/include"
 | |
|     "${OPENEXR_ROOT}/include")
 | |
| 
 | |
| FIND_LIBRARY(OPENEXR_HALF_LIBRARY
 | |
|     NAMES Half
 | |
|     PATH_SUFFIXES ${OPENEXR_LIBSEARCH_SUFFIXES}
 | |
|     PATHS ${LIBRARY_PATHS})
 | |
| 
 | |
| FIND_LIBRARY(OPENEXR_IEX_LIBRARY
 | |
|     NAMES Iex
 | |
|     PATH_SUFFIXES ${OPENEXR_LIBSEARCH_SUFFIXES}
 | |
|     PATHS ${LIBRARY_PATHS})
 | |
| 
 | |
| FIND_LIBRARY(OPENEXR_IMATH_LIBRARY
 | |
|     NAMES Imath
 | |
|     PATH_SUFFIXES ${OPENEXR_LIBSEARCH_SUFFIXES}
 | |
|     PATHS ${LIBRARY_PATHS})
 | |
| 
 | |
| FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY
 | |
|     NAMES IlmImf
 | |
|     PATH_SUFFIXES ${OPENEXR_LIBSEARCH_SUFFIXES}
 | |
|     PATHS ${LIBRARY_PATHS})
 | |
| 
 | |
| FIND_LIBRARY(OPENEXR_ILMTHREAD_LIBRARY
 | |
|     NAMES IlmThread
 | |
|     PATH_SUFFIXES ${OPENEXR_LIBSEARCH_SUFFIXES}
 | |
|     PATHS ${LIBRARY_PATHS})
 | |
| 
 | |
| IF (OPENEXR_INCLUDE_PATH AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY)
 | |
|     SET(OPENEXR_FOUND TRUE)
 | |
|     SET(OPENEXR_INCLUDE_PATHS ${OPENEXR_INCLUDE_PATH} CACHE PATH "The include paths needed to use OpenEXR")
 | |
|     SET(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} ${OPENEXR_ILMTHREAD_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR" FORCE)
 | |
| ENDIF ()
 | |
| 
 | |
| IF(OPENEXR_FOUND)
 | |
|   IF(NOT OPENEXR_FIND_QUIETLY)
 | |
|     MESSAGE(STATUS "Found OpenEXR: ${OPENEXR_ILMIMF_LIBRARY}")
 | |
|   ENDIF()
 | |
|   if(PKG_CONFIG_FOUND AND NOT OPENEXR_VERSION)
 | |
|     get_filename_component(OPENEXR_LIB_PATH "${OPENEXR_ILMIMF_LIBRARY}" PATH)
 | |
|     if(EXISTS "${OPENEXR_LIB_PATH}/pkgconfig/OpenEXR.pc")
 | |
|       execute_process(COMMAND ${PKG_CONFIG_EXECUTABLE} --modversion "${OPENEXR_LIB_PATH}/pkgconfig/OpenEXR.pc"
 | |
|                       RESULT_VARIABLE PKG_CONFIG_PROCESS
 | |
|                       OUTPUT_VARIABLE OPENEXR_VERSION
 | |
|                       OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET)
 | |
|       if(NOT PKG_CONFIG_PROCESS EQUAL 0)
 | |
|         SET(OPENEXR_VERSION "Unknown")
 | |
|       endif()
 | |
|     endif()
 | |
|   endif()
 | |
|   if(NOT OPENEXR_VERSION)
 | |
|     SET(OPENEXR_VERSION "Unknown")
 | |
|   endif()
 | |
| ELSE()
 | |
|   IF(OPENEXR_FIND_REQUIRED)
 | |
|     MESSAGE(FATAL_ERROR "Could not find OpenEXR library")
 | |
|   ENDIF()
 | |
| ENDIF()
 | |
| 
 | |
| MARK_AS_ADVANCED(
 | |
|     OPENEXR_INCLUDE_PATHS
 | |
|     OPENEXR_LIBRARIES
 | |
|     OPENEXR_ILMIMF_LIBRARY
 | |
|     OPENEXR_IMATH_LIBRARY
 | |
|     OPENEXR_IEX_LIBRARY
 | |
|     OPENEXR_HALF_LIBRARY
 | |
|     OPENEXR_ILMTHREAD_LIBRARY)
 | 
