| # 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) |