diff options
author | David Faure <faure@kde.org> | 2006-04-18 11:22:38 +0000 |
---|---|---|
committer | David Faure <faure@kde.org> | 2006-04-18 11:22:38 +0000 |
commit | 2b43aad081d13bdeb2ed8a65f65fbecfb470da0d (patch) | |
tree | 405e268ae2040a0266b2921ea2fa3ce8ffaded57 | |
parent | f0436915e149f27532c6aece815e3169794dc72b (diff) | |
download | extra-cmake-modules-2b43aad081d13bdeb2ed8a65f65fbecfb470da0d.tar.gz extra-cmake-modules-2b43aad081d13bdeb2ed8a65f65fbecfb470da0d.tar.bz2 |
More use of the cache; fixing previous commit to not recheck everytime when something isn't available (e.g. agg for me).
svn path=/trunk/KDE/kdelibs/; revision=531000
-rw-r--r-- | modules/FindAGG.cmake | 88 | ||||
-rw-r--r-- | modules/FindBZip2.cmake | 6 | ||||
-rw-r--r-- | modules/FindCups.cmake | 63 | ||||
-rw-r--r-- | modules/FindGIF.cmake | 6 | ||||
-rw-r--r-- | modules/FindGSSAPI.cmake | 85 | ||||
-rw-r--r-- | modules/FindGettext.cmake | 6 | ||||
-rw-r--r-- | modules/FindLibArt.cmake | 6 | ||||
-rw-r--r-- | modules/FindLibXml2.cmake | 6 | ||||
-rw-r--r-- | modules/FindLibXslt.cmake | 6 | ||||
-rw-r--r-- | modules/FindOpenEXR.cmake | 156 | ||||
-rw-r--r-- | modules/FindOpenSSL.cmake | 6 | ||||
-rw-r--r-- | modules/FindPCRE.cmake | 6 | ||||
-rw-r--r-- | modules/FindTIFF.cmake | 6 | ||||
-rw-r--r-- | modules/FindZLIB.cmake | 6 |
14 files changed, 255 insertions, 197 deletions
diff --git a/modules/FindAGG.cmake b/modules/FindAGG.cmake index 2e92ad31..cf336f40 100644 --- a/modules/FindAGG.cmake +++ b/modules/FindAGG.cmake @@ -7,40 +7,54 @@ # AGG_DEFINITIONS - Compiler switches required for using AGG # - -# use pkg-config to get the directories and then use these values -# in the FIND_PATH() and FIND_LIBRARY() calls -INCLUDE(UsePkgConfig) - -PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) - -set(AGG_DEFINITIONS ${_AGGCflags}) - -FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h - ${_AGGIncDir} - /usr/include - /usr/local/include -) - -FIND_LIBRARY(AGG_LIBRARIES NAMES agg - PATHS - ${_AGGLinkDir} - /usr/lib - /usr/local/lib -) - -if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) - set(AGG_FOUND TRUE) -endif (AGG_INCLUDE_DIR AND AGG_LIBRARIES) - -if (AGG_FOUND) - if (NOT AGG_FIND_QUIETLY) - message(STATUS "Found AGG: ${AGG_LIBRARIES}") - endif (NOT AGG_FIND_QUIETLY) -else (AGG_FOUND) - if (AGG_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find AGG") - endif (AGG_FIND_REQUIRED) -endif (AGG_FOUND) - -MARK_AS_ADVANCED(AGG_INCLUDE_DIR AGG_LIBRARIES) +IF (DEFINED CACHED_AGG) + + # in cache already + IF ("${CACHED_AGG}" STREQUAL "YES") + SET(AGG_FOUND TRUE) + ENDIF ("${CACHED_AGG}" STREQUAL "YES") + +ELSE (DEFINED CACHED_AGG) + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) + + set(AGG_DEFINITIONS ${_AGGCflags}) + + FIND_PATH(AGG_INCLUDE_DIR agg2/agg_pixfmt_gray.h + ${_AGGIncDir} + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(AGG_LIBRARIES NAMES agg + PATHS + ${_AGGLinkDir} + /usr/lib + /usr/local/lib + ) + + if (AGG_INCLUDE_DIR AND AGG_LIBRARIES) + set(AGG_FOUND TRUE) + endif (AGG_INCLUDE_DIR AND AGG_LIBRARIES) + + if (AGG_FOUND) + set(CACHED_AGG "YES") + if (NOT AGG_FIND_QUIETLY) + message(STATUS "Found AGG: ${AGG_LIBRARIES}") + endif (NOT AGG_FIND_QUIETLY) + else (AGG_FOUND) + set(CACHED_AGG "NO") + if (AGG_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find AGG") + endif (AGG_FIND_REQUIRED) + endif (AGG_FOUND) + + MARK_AS_ADVANCED(AGG_INCLUDE_DIR AGG_LIBRARIES) + + set(CACHED_AGG ${CACHED_AGG} CACHE INTERNAL "If libagg was checked") + +ENDIF (DEFINED CACHED_AGG) diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index d6ade67a..0f05e0bf 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -8,14 +8,14 @@ # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ -IF (CACHED_BZIP2) +IF (DEFINED CACHED_BZIP2) # in cache already IF ("${CACHED_BZIP2}" STREQUAL "YES") SET(BZIP2_FOUND TRUE) ENDIF ("${CACHED_BZIP2}" STREQUAL "YES") -ELSE (CACHED_BZIP2) +ELSE (DEFINED CACHED_BZIP2) FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h /usr/include @@ -50,4 +50,4 @@ ELSE (CACHED_BZIP2) set(CACHED_BZIP2 ${CACHED_BZIP2} CACHE INTERNAL "If bzip2 was checked") MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) -ENDIF( CACHED_BZIP2 ) +ENDIF(DEFINED CACHED_BZIP2) diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake index 0be87208..387d82d9 100644 --- a/modules/FindCups.cmake +++ b/modules/FindCups.cmake @@ -7,31 +7,44 @@ # CUPS_DEFINITIONS - Compiler switches required for using Cups # +IF (DEFINED CACHED_CUPS) -FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h - /usr/include - /usr/local/include -) + # in cache already + IF ("${CACHED_CUPS}" STREQUAL "YES") + SET(CUPS_FOUND TRUE) + ENDIF ("${CACHED_CUPS}" STREQUAL "YES") -FIND_LIBRARY(CUPS_LIBRARIES NAMES cups - PATHS - /usr/lib - /usr/local/lib -) +ELSE (DEFINED CACHED_CUPS) -if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) - check_library_exists(cups ippDeleteAttribute "" CUPS_FOUND) -endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) - -if (CUPS_FOUND) - if (NOT Cups_FIND_QUIETLY) - message(STATUS "Found Cups: ${CUPS_LIBRARIES}") - endif (NOT Cups_FIND_QUIETLY) -else (CUPS_FOUND) - if (Cups_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find Cups") - endif (Cups_FIND_REQUIRED) -endif (CUPS_FOUND) - -MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) + FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(CUPS_LIBRARIES NAMES cups + PATHS + /usr/lib + /usr/local/lib + ) + + if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) + # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint) + check_library_exists(cups ippDeleteAttribute "" CUPS_FOUND) + endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES) + + if (CUPS_FOUND) + set (CACHED_CUPS "YES") + if (NOT Cups_FIND_QUIETLY) + message(STATUS "Found Cups: ${CUPS_LIBRARIES}") + endif (NOT Cups_FIND_QUIETLY) + else (CUPS_FOUND) + set (CACHED_CUPS "NO") + if (Cups_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Cups") + endif (Cups_FIND_REQUIRED) + endif (CUPS_FOUND) + + set(CACHED_CUPS ${CACHED_CUPS} CACHE INTERNAL "If cups was checked") + MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES) + +ENDIF (DEFINED CACHED_CUPS) diff --git a/modules/FindGIF.cmake b/modules/FindGIF.cmake index a4316362..c809b243 100644 --- a/modules/FindGIF.cmake +++ b/modules/FindGIF.cmake @@ -7,14 +7,14 @@ # GIF_DEFINITIONS - Compiler switches required for using GIF # -IF (CACHED_GIF) +IF (DEFINED CACHED_GIF) # in cache already IF ("${CACHED_GIF}" STREQUAL "YES") SET(GIF_FOUND TRUE) ENDIF ("${CACHED_GIF}" STREQUAL "YES") -ELSE (CACHED_GIF) +ELSE (DEFINED CACHED_GIF) FIND_PATH(GIF_INCLUDE_DIR gif_lib.h /usr/include @@ -47,4 +47,4 @@ ELSE (CACHED_GIF) set(CACHED_GIF ${CACHED_GIF} CACHE INTERNAL "If gif was checked") MARK_AS_ADVANCED(GIF_INCLUDE_DIR GIF_LIBRARIES) -ENDIF (CACHED_GIF) +ENDIF (DEFINED CACHED_GIF) diff --git a/modules/FindGSSAPI.cmake b/modules/FindGSSAPI.cmake index f574602e..7ef66a0a 100644 --- a/modules/FindGSSAPI.cmake +++ b/modules/FindGSSAPI.cmake @@ -2,47 +2,66 @@ # Once done this will define # # GSSAPI_FOUND - system supports GSSAPI -# GSSAPI_INCS - the CSSAPI include directory +# GSSAPI_INCS - the GSSAPI include directory # GSSAPI_LIBS - the libraries needed to use GSSAPI -# GSSAPI_RPATH - the rpath for GSSAPI +# GSSAPI_FLAVOR - the type of API - MIT or HEIMDAL -# TODO: RPATH +IF (DEFINED CACHED_GSSAPI) -FIND_PROGRAM(KRB5_CONFIG NAMES krb5-config PATHS - /usr/bin - /usr/local/bin - /opt/local/bin -) - -#reset vars -set(GSSAPI_INCS) -set(GSSAPI_LIBS) -set(GSSAPI_FLAVOR) - -IF(KRB5_CONFIG) + # in cache already + IF ("${CACHED_GSSAPI}" STREQUAL "YES") + SET(GSSAPI_FOUND TRUE) + ENDIF ("${CACHED_GSSAPI}" STREQUAL "YES") - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) +ELSE (DEFINED CACHED_GSSAPI) - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) - STRING(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") + FIND_PROGRAM(KRB5_CONFIG NAMES krb5-config PATHS + /usr/bin + /usr/local/bin + /opt/local/bin + ) + + #reset vars + set(GSSAPI_INCS) + set(GSSAPI_LIBS) + set(GSSAPI_FLAVOR) + + IF(KRB5_CONFIG) + + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --libs gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_LIBS) + + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --cflags gssapi RETURN_VALUE _return_VALUE OUTPUT_VARIABLE GSSAPI_INCS) + STRING(REGEX REPLACE "(\r?\n)+$" "" GSSAPI_INCS "${GSSAPI_INCS}") + + EXEC_PROGRAM(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) + set(GSSAPI_FLAVOR_MIT) + IF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + SET(GSSAPI_FLAVOR "MIT") + ELSE(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + SET(GSSAPI_FLAVOR "HEIMDAL") + ENDIF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + + IF(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that + SET(CACHED_GSSAPI "YES") + SET(GSSAPI_FOUND TRUE) + message(STATUS "Found GSSAPI: ${GSSAPI_LIBS}") - EXEC_PROGRAM(${KRB5_CONFIG} ARGS --vendor RETURN_VALUE _return_VALUE OUTPUT_VARIABLE gssapi_flavor_tmp) - set(GSSAPI_FLAVOR_MIT) - IF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - SET(GSSAPI_FLAVOR "MIT") - ELSE(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") - SET(GSSAPI_FLAVOR "HEIMDAL") - ENDIF(gssapi_flavor_tmp MATCHES ".*Massachusetts.*") + set(GSSAPI_INCS ${GSSAPI_INCS} CACHE STRING "The GSSAPI include directory" ) + set(GSSAPI_LIBS ${GSSAPI_LIBS} CACHE STRING "The libraries needed to use GSSAPI" ) + set(GSSAPI_FLAVOR ${GSSAPI_FLAVOR} CACHE STRING "The type of gss api, MIT or HEIMDAL") - IF(GSSAPI_LIBS) # GSSAPI_INCS can be also empty, so don't rely on that - SET(GSSAPI_FOUND TRUE) - message(STATUS "Found GSSAPI: ${GSSAPI_LIBS}") - ENDIF(GSSAPI_LIBS) + MARK_AS_ADVANCED(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) -#ELSE(KRB5_CONFIG) + ELSE(GSSAPI_LIBS) + SET(CACHED_GSSAPI "NO") + ENDIF(GSSAPI_LIBS) + + ELSE(KRB5_CONFIG) -# TODO... + SET(CACHED_GSSAPI "NO") -ENDIF(KRB5_CONFIG) + ENDIF(KRB5_CONFIG) + + set(CACHED_GSSAPI ${CACHED_GSSAPI} CACHE INTERNAL "If gssapi (krb5) was checked") -MARK_AS_ADVANCED(GSSAPI_INCS GSSAPI_LIBS GSSAPI_FLAVOR) +ENDIF (DEFINED CACHED_GSSAPI) diff --git a/modules/FindGettext.cmake b/modules/FindGettext.cmake index 3a3b6902..fccd332f 100644 --- a/modules/FindGettext.cmake +++ b/modules/FindGettext.cmake @@ -10,14 +10,14 @@ # functionality can also reside in standalone Gettext library, or the one # embedded within kdelibs (cf. gettext.m4 from Gettext source). -IF (CACHED_GETTEXT) +IF (DEFINED CACHED_GETTEXT) # in cache already IF ("${CACHED_GETTEXT}" STREQUAL "YES") SET(GETTEXT_FOUND TRUE) ENDIF ("${CACHED_GETTEXT}" STREQUAL "YES") -ELSE (CACHED_GETTEXT) +ELSE (DEFINED CACHED_GETTEXT) include(CheckIncludeFiles) include(CheckLibraryExists) @@ -64,4 +64,4 @@ ELSE (CACHED_GETTEXT) set(CACHED_GETTEXT ${CACHED_GETTEXT} CACHE INTERNAL "If gettext was checked") MARK_AS_ADVANCED(GETTEXT_INCLUDE_DIR GETTEXT_LIBRARIES) -ENDIF( CACHED_GETTEXT ) +ENDIF(DEFINED CACHED_GETTEXT) diff --git a/modules/FindLibArt.cmake b/modules/FindLibArt.cmake index 430facb5..0ae2c49c 100644 --- a/modules/FindLibArt.cmake +++ b/modules/FindLibArt.cmake @@ -5,14 +5,14 @@ # LIBART_INCLUDE_DIR - the LibArt include directory # LIBART_LIBRARIES - The libraries needed to use LibArt -IF (CACHED_LIBART) +IF (DEFINED CACHED_LIBART) # in cache already IF ("${CACHED_LIBART}" STREQUAL "YES") SET(LIBART_FOUND TRUE) ENDIF ("${CACHED_LIBART}" STREQUAL "YES") -ELSE (CACHED_LIBART) +ELSE (DEFINED CACHED_LIBART) IF (NOT WIN32) INCLUDE(UsePkgConfig) @@ -57,4 +57,4 @@ ELSE (CACHED_LIBART) set(CACHED_LIBART ${CACHED_LIBART} CACHE INTERNAL "If libart was checked") MARK_AS_ADVANCED(LIBART_INCLUDE_DIR LIBART_LIBRARIES) -ENDIF (CACHED_LIBART) +ENDIF (DEFINED CACHED_LIBART) diff --git a/modules/FindLibXml2.cmake b/modules/FindLibXml2.cmake index b7914be1..2e671eea 100644 --- a/modules/FindLibXml2.cmake +++ b/modules/FindLibXml2.cmake @@ -6,14 +6,14 @@ # LIBXML2_LIBRARIES - the libraries needed to use LibXml2 # LIBXML2_DEFINITIONS - Compiler switches required for using LibXml2 -IF (CACHED_LIBXML2) +IF (DEFINED CACHED_LIBXML2) # in cache already IF ("${CACHED_LIBXML2}" STREQUAL "YES") SET(LIBXML2_FOUND TRUE) ENDIF ("${CACHED_LIBXML2}" STREQUAL "YES") -ELSE (CACHED_LIBXML2) +ELSE (DEFINED CACHED_LIBXML2) IF (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -55,4 +55,4 @@ ELSE (CACHED_LIBXML2) SET(CACHED_LIBXML2 ${CACHED_LIBXML2} CACHE INTERNAL "If libxml2 was checked") -ENDIF (CACHED_LIBXML2) +ENDIF (DEFINED CACHED_LIBXML2) diff --git a/modules/FindLibXslt.cmake b/modules/FindLibXslt.cmake index bf49814d..afac1f2f 100644 --- a/modules/FindLibXslt.cmake +++ b/modules/FindLibXslt.cmake @@ -7,14 +7,14 @@ # LIBXSLT_DEFINITIONS - Compiler switches required for using LibXslt # -IF (CACHED_LIBXSLT) +IF (DEFINED CACHED_LIBXSLT) # in cache already IF ("${CACHED_LIBXSLT}" STREQUAL "YES") SET(LIBXSLT_FOUND TRUE) ENDIF ("${CACHED_LIBXSLT}" STREQUAL "YES") -ELSE (CACHED_LIBXSLT) +ELSE (DEFINED CACHED_LIBXSLT) IF (NOT WIN32) # use pkg-config to get the directories and then use these values @@ -57,4 +57,4 @@ ELSE (CACHED_LIBXSLT) set(CACHED_LIBXSLT ${CACHED_LIBXSLT} CACHE INTERNAL "If libxslt was checked") MARK_AS_ADVANCED(LIBXSLT_INCLUDE_DIR LIBXSLT_LIBRARIES) -ENDIF (CACHED_LIBXSLT) +ENDIF (DEFINED CACHED_LIBXSLT) diff --git a/modules/FindOpenEXR.cmake b/modules/FindOpenEXR.cmake index db0aa3be..a139a430 100644 --- a/modules/FindOpenEXR.cmake +++ b/modules/FindOpenEXR.cmake @@ -1,74 +1,86 @@ -# use pkg-config to get the directories and then use these values -# in the FIND_PATH() and FIND_LIBRARY() calls -INCLUDE(UsePkgConfig) - -PKGCONFIG(OpenEXR _OpenEXRIncDir _OpenEXRLinkDir _OpenEXRLinkFlags _OpenEXRCflags) - -#PKGCONFIG(libagg _AGGIncDir _AGGLinkDir _AGGLinkFlags _AGGCflags) - -FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h - ${_OpenEXRIncDir} - ${_OpenEXRIncDir}/OpenEXR/ - /usr/include - /usr/local/include -) - -FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half - PATHS - ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib -) - - -FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex - PATHS - ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib -) - -FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath - PATHS - ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib -) - - -FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf - PATHS - ${_OPENEXRLinkDir} - /usr/lib - /usr/local/lib -) - -set(OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH_LIBRARY} ) - -if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) - set(OPENEXR_FOUND TRUE) - set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY}) -endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) - - - -if (OPENEXR_FOUND) - if (NOT OpenEXR_FIND_QUIETLY) - message(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") - endif (NOT OpenEXR_FIND_QUIETLY) -else (OPENEXR_FOUND) - if (OpenEXR_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find OPENEXR") - endif (OpenEXR_FIND_REQUIRED) -endif (OPENEXR_FOUND) - -MARK_AS_ADVANCED( - OPENEXR_INCLUDE_DIR - OPENEXR_LIBRARIES - OPENEXR_ILMIMF_LIBRARY - OPENEXR_IMATH_LIBRARY - OPENEXR_IEX_LIBRARY - OPENEXR_HALF_LIBRARY ) - +IF (DEFINED CACHED_OPENEXR) + + # in cache already + IF ("${CACHED_OPENEXR}" STREQUAL "YES") + SET(OPENEXR_FOUND TRUE) + ENDIF ("${CACHED_OPENEXR}" STREQUAL "YES") + +ELSE (DEFINED CACHED_OPENEXR) + + # use pkg-config to get the directories and then use these values + # in the FIND_PATH() and FIND_LIBRARY() calls + INCLUDE(UsePkgConfig) + + PKGCONFIG(OpenEXR _OpenEXRIncDir _OpenEXRLinkDir _OpenEXRLinkFlags _OpenEXRCflags) + + FIND_PATH(OPENEXR_INCLUDE_DIR ImfRgbaFile.h + ${_OpenEXRIncDir} + ${_OpenEXRIncDir}/OpenEXR/ + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(OPENEXR_HALF_LIBRARY NAMES Half + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib + ) + + + FIND_LIBRARY(OPENEXR_IEX_LIBRARY NAMES Iex + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib + ) + + FIND_LIBRARY(OPENEXR_IMATH_LIBRARY NAMES Imath + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib + ) + + + FIND_LIBRARY(OPENEXR_ILMIMF_LIBRARY NAMES IlmImf + PATHS + ${_OPENEXRLinkDir} + /usr/lib + /usr/local/lib + ) + + set(OPENEXR_LIBRARIES ${OPENEXR_HALF_LIBRARY} ${OPENEXR_IMATH_LIBRARY} ) + + if (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) + set(OPENEXR_FOUND TRUE) + set(OPENEXR_LIBRARIES ${OPENEXR_IMATH_LIBRARY} ${OPENEXR_ILMIMF_LIBRARY} ${OPENEXR_IEX_LIBRARY} ${OPENEXR_HALF_LIBRARY} CACHE STRING "The libraries needed to use OpenEXR") + endif (OPENEXR_INCLUDE_DIR AND OPENEXR_IMATH_LIBRARY AND OPENEXR_ILMIMF_LIBRARY AND OPENEXR_IEX_LIBRARY AND OPENEXR_HALF_LIBRARY) + + + + if (OPENEXR_FOUND) + set(CACHED_OPENEXR "YES") + if (NOT OpenEXR_FIND_QUIETLY) + message(STATUS "Found OPENEXR: ${OPENEXR_LIBRARIES}") + endif (NOT OpenEXR_FIND_QUIETLY) + else (OPENEXR_FOUND) + set(CACHED_OPENEXR "NO") + if (OpenEXR_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find OPENEXR") + endif (OpenEXR_FIND_REQUIRED) + endif (OPENEXR_FOUND) + + MARK_AS_ADVANCED( + OPENEXR_INCLUDE_DIR + OPENEXR_LIBRARIES + OPENEXR_ILMIMF_LIBRARY + OPENEXR_IMATH_LIBRARY + OPENEXR_IEX_LIBRARY + OPENEXR_HALF_LIBRARY ) + + set(CACHED_OPENEXR ${CACHED_OPENEXR} CACHE INTERNAL "If openexr was checked") + +ENDIF (DEFINED CACHED_OPENEXR) diff --git a/modules/FindOpenSSL.cmake b/modules/FindOpenSSL.cmake index bdc85685..fde22a84 100644 --- a/modules/FindOpenSSL.cmake +++ b/modules/FindOpenSSL.cmake @@ -5,14 +5,14 @@ # OPENSSL_INCLUDE_DIR - the OpenSSL include directory # OPENSSL_LIBRARIES - The libraries needed to use OpenSSL -IF (CACHED_OPENSSL) +IF (DEFINED CACHED_OPENSSL) # in cache already IF ("${CACHED_OPENSSL}" STREQUAL "YES") SET(OPENSSL_FOUND TRUE) ENDIF ("${CACHED_OPENSSL}" STREQUAL "YES") -ELSE (CACHED_OPENSSL) +ELSE (DEFINED CACHED_OPENSSL) FIND_PATH(OPENSSL_INCLUDE_DIR openssl/ssl.h /usr/include/ @@ -46,4 +46,4 @@ ELSE (CACHED_OPENSSL) set(CACHED_OPENSSL ${CACHED_OPENSSL} CACHE INTERNAL "If openssl was checked") MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES) -ENDIF (CACHED_OPENSSL) +ENDIF (DEFINED CACHED_OPENSSL) diff --git a/modules/FindPCRE.cmake b/modules/FindPCRE.cmake index 2898a7d9..f7a7e9cc 100644 --- a/modules/FindPCRE.cmake +++ b/modules/FindPCRE.cmake @@ -5,14 +5,14 @@ # PCRE_INCLUDE_DIR - the PCRE include directory # PCRE_LIBRARIES - The libraries needed to use PCRE -IF (CACHED_PCRE) +IF (DEFINED CACHED_PCRE) # in cache already IF ("${CACHED_PCRE}" STREQUAL "YES") SET(PCRE_FOUND TRUE) ENDIF ("${CACHED_PCRE}" STREQUAL "YES") -ELSE (CACHED_PCRE) +ELSE (DEFINED CACHED_PCRE) FIND_PATH(PCRE_INCLUDE_DIR pcre.h /usr/include/ @@ -53,4 +53,4 @@ ELSE (CACHED_PCRE) set(CACHED_PCRE ${CACHED_PCRE} CACHE INTERNAL "If pcre was checked") MARK_AS_ADVANCED(PCRE_INCLUDE_DIR PCRE_LIBRARIES PCRE_PCREPOSIX_LIBRARY PCRE_PCRE_LIBRARY) -ENDIF (CACHED_PCRE) +ENDIF (DEFINED CACHED_PCRE) diff --git a/modules/FindTIFF.cmake b/modules/FindTIFF.cmake index 875797fd..18e051ba 100644 --- a/modules/FindTIFF.cmake +++ b/modules/FindTIFF.cmake @@ -7,14 +7,14 @@ # also defined, but NOT for general use are # TIFF_LIBRARY, where to find the TIFF library. -IF (CACHED_TIFF) +IF (DEFINED CACHED_TIFF) # in cache already IF ("${CACHED_TIFF}" STREQUAL "YES") SET(TIFF_FOUND TRUE) ENDIF ("${CACHED_TIFF}" STREQUAL "YES") -ELSE (CACHED_TIFF) +ELSE (DEFINED CACHED_TIFF) FIND_PATH(TIFF_INCLUDE_DIR tiff.h /usr/local/include @@ -50,4 +50,4 @@ ELSE (CACHED_TIFF) set(CACHED_TIFF ${CACHED_TIFF} CACHE INTERNAL "If tiff was checked") MARK_AS_ADVANCED(TIFF_INCLUDE_DIR TIFF_LIBRARY) -ENDIF (CACHED_TIFF) +ENDIF (DEFINED CACHED_TIFF) diff --git a/modules/FindZLIB.cmake b/modules/FindZLIB.cmake index 0348cdd7..ecbca6fc 100644 --- a/modules/FindZLIB.cmake +++ b/modules/FindZLIB.cmake @@ -1,11 +1,11 @@ -IF (CACHED_ZLIB) +IF (DEFINED CACHED_ZLIB) # in cache already IF ("${CACHED_ZLIB}" STREQUAL "YES") SET(ZLIB_FOUND TRUE) ENDIF ("${CACHED_ZLIB}" STREQUAL "YES") -ELSE (CACHED_ZLIB) +ELSE (DEFINED CACHED_ZLIB) FIND_PATH(ZLIB_INCLUDE_DIR zlib.h /usr/include @@ -38,4 +38,4 @@ ELSE (CACHED_ZLIB) SET(CACHED_ZLIB ${CACHED_ZLIB} CACHE INTERNAL "If zlib was checked") MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR) -ENDIF (CACHED_ZLIB) +ENDIF (DEFINED CACHED_ZLIB) |