| 1 | # - Try to find OpenEXR
|
|---|
| 2 | # Once done this will define
|
|---|
| 3 | #
|
|---|
| 4 | # OPENEXR_FOUND - system has OpenEXR
|
|---|
| 5 | # OPENEXR_INCLUDE_DIR - the OpenEXR include directory
|
|---|
| 6 | # OPENEXR_LIBRARIES - Link these to use OpenEXR
|
|---|
| 7 | # OPENEXR_DEFINITIONS - Compiler switches required for using OpenEXR
|
|---|
| 8 | # Redistribution and use is allowed according to the terms of the BSD license.
|
|---|
| 9 | # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
|---|
| 10 | #
|
|---|
| 11 |
|
|---|
| 12 |
|
|---|
| 13 | if ( OpenEXR_INCLUDE_DIR AND OpenEXR_LIBRARIES )
|
|---|
| 14 | # in cache already
|
|---|
| 15 | SET(OpenEXR_FIND_QUIETLY TRUE)
|
|---|
| 16 | endif ( OpenEXR_INCLUDE_DIR AND OpenEXR_LIBRARIES )
|
|---|
| 17 |
|
|---|
| 18 | # use pkg-config to get the directories and then use these values
|
|---|
| 19 | # in the FIND_PATH() and FIND_LIBRARY() calls
|
|---|
| 20 | if( NOT WIN32 )
|
|---|
| 21 | INCLUDE(FindPkgConfig)
|
|---|
| 22 |
|
|---|
| 23 | pkg_check_modules(OpenEXR OpenEXR )
|
|---|
| 24 | pkg_check_modules(IlmBase IlmBase)
|
|---|
| 25 |
|
|---|
| 26 | find_library ( OpenEXR_LIBRARIES NAMES IlmImf )
|
|---|
| 27 | find_library ( Iex_LIBRARIES NAMES Iex )
|
|---|
| 28 | find_library ( Half_LIBRARIES NAMES Half )
|
|---|
| 29 | find_library ( Imath_LIBRARIES NAMES Imath )
|
|---|
| 30 | find_library ( IlmThread_LIBRARIES NAMES IlmThread )
|
|---|
| 31 |
|
|---|
| 32 | if ( IlmThread_LIBRARIES AND Imath_LIBRARIES AND Half_LIBRARIES AND Iex_LIBRARIES AND OpenEXR_LIBRARIES )
|
|---|
| 33 | set ( OpenEXR_FOUND FALSE )
|
|---|
| 34 | else ( IlmThread_LIBRARIES AND Imath_LIBRARIES AND Half_LIBRARIES AND Iex_LIBRARIES AND OpenEXR_LIBRARIES )
|
|---|
| 35 | set ( IlmBase_LIBRARIES ${Iex_LIBRARIES} ${Half_LIBRARIES} ${Imath_LIBRARIES} ${IlmThread_LIBRARIES} )
|
|---|
| 36 | set ( OpenEXR_INCLUDE_DIR ${OpenEXR_INCLUDE_DIR} ${IlmBase_INCLUDE_DIR} )
|
|---|
| 37 | set ( OpenEXR_LIBRARIES ${OpenEXR_LIBRARIES} ${IlmBase_LIBRARIES} )
|
|---|
| 38 | endif ( IlmThread_LIBRARIES AND Imath_LIBRARIES AND Half_LIBRARIES AND Iex_LIBRARIES AND OpenEXR_LIBRARIES )
|
|---|
| 39 |
|
|---|
| 40 | endif( NOT WIN32 )
|
|---|
| 41 | if ( WIN32 )
|
|---|
| 42 | if( MSVC80 )
|
|---|
| 43 | set( COMPILER_PATH "C:/Program\ Files/Microsoft\ Visual\ Studio\ 8/VC" )
|
|---|
| 44 | endif( MSVC80 )
|
|---|
| 45 | if( MSVC71 )
|
|---|
| 46 | set( COMPILER_PATH "C:/Program\ Files/Microsoft\ Visual\ Studio\ .NET\ 2003/Vc7" )
|
|---|
| 47 | endif( MSVC71 )
|
|---|
| 48 | FIND_PATH( OpenEXR_INCLUDE_DIR ImfRgbaFile.h ImfCRgbaFile.h ImfArray.h
|
|---|
| 49 | PATHS $ENV{OPENEXR}/include/IlmImf ${COMPILER_PATH}/PlatformSDK/Include )
|
|---|
| 50 | SET( openEXRnames ilmImf.lib )
|
|---|
| 51 | FIND_LIBRARY( OpenEXR_LIBRARIES
|
|---|
| 52 | NAMES ${openEXRnames}
|
|---|
| 53 | PATHS $ENV{OPENEXR}/lib ${COMPILER_PATH}/PlatformSDK/Lib )
|
|---|
| 54 |
|
|---|
| 55 | SET( Iex_LIBRARIESnames Iex.lib )
|
|---|
| 56 | FIND_LIBRARY( Iex_LIBRARIES_LIBRARIES
|
|---|
| 57 | NAMES ${Iex_LIBRARIESnames}
|
|---|
| 58 | PATHS $ENV{OPENEXR}/lib ${COMPILER_PATH}/PlatformSDK/Lib )
|
|---|
| 59 | SET( Half_LIBRARIESnames Half.lib )
|
|---|
| 60 | FIND_LIBRARY( Half_LIBRARIES
|
|---|
| 61 | NAMES ${Half_LIBRARIESnames}
|
|---|
| 62 | PATHS $ENV{OPENEXR}/lib ${COMPILER_PATH}/PlatformSDK/Lib )
|
|---|
| 63 | SET( Imath_LIBRARIESnames Imath.lib )
|
|---|
| 64 | FIND_LIBRARY( Imath_LIBRARIES
|
|---|
| 65 | NAMES ${Imath_LIBRARIESnames}
|
|---|
| 66 | PATHS $ENV{OPENEXR}/lib ${COMPILER_PATH}/PlatformSDK/Lib )
|
|---|
| 67 | SET( openEXRnames ilmImf.lib )
|
|---|
| 68 | FIND_LIBRARY( OpenEXR_LIBRARIES
|
|---|
| 69 | NAMES ${openEXRnames}
|
|---|
| 70 | PATHS $ENV{OPENEXR}/lib ${COMPILER_PATH}/PlatformSDK/Lib )
|
|---|
| 71 | SET( IlmThread_LIBRARIESnames IlmThread.lib )
|
|---|
| 72 | FIND_LIBRARY( IlmThread_LIBRARIESnames
|
|---|
| 73 | NAMES ${IlmThread_LIBRARIES}
|
|---|
| 74 | PATHS $ENV{OPENEXR}/lib ${COMPILER_PATH}/PlatformSDK/Lib )
|
|---|
| 75 |
|
|---|
| 76 | endif (WIN32)
|
|---|
| 77 | #FIND_PATH(OPENEXR_INCLUDE_DIR NAMES OpenEXRConfig.h
|
|---|
| 78 | # PATHS
|
|---|
| 79 | # ${_OpenEXRIncDir}
|
|---|
| 80 | # PATH_SUFFIXES OpenEXR
|
|---|
| 81 | #)
|
|---|
| 82 |
|
|---|
| 83 | #FIND_LIBRARY(OPENEXR_LIBRARIES NAMES IlmIlf
|
|---|
| 84 | # PATHS
|
|---|
| 85 | # ${_OpenEXRLinkDir}
|
|---|
| 86 | #)
|
|---|
| 87 |
|
|---|
| 88 | include(FindPackageHandleStandardArgs)
|
|---|
| 89 | FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenEXR DEFAULT_MSG OpenEXR_INCLUDE_DIR OpenEXR_LIBRARIES )
|
|---|
| 90 |
|
|---|
| 91 | # show the OPENEXR_INCLUDE_DIR and OPENEXR_LIBRARIES variables only in the advanced view
|
|---|
| 92 | MARK_AS_ADVANCED(OpenEXR_INCLUDE_DIR OpenEXR_LIBRARIES )
|
|---|
| 93 |
|
|---|