Changeset 1606:402e201356b7


Ignore:
Timestamp:
03/02/10 14:02:20 (5 months ago)
Author:
Mateusz Loskot <mateusz@…>
Branch:
default
Message:

Updated CMake Find* modules with better support of *_FIND_QUIETLY specifier. Unscreamified CMake modules.

Location:
cmake/modules
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • cmake/modules/FindOracle.cmake

    r1603 r1606  
    55# On success, the macro sets the following variables: 
    66# ORACLE_FOUND       = if the library found 
     7# ORACLE_LIBRARY     = full path to the library 
    78# ORACLE_LIBRARIES   = full path to the library 
    89# ORACLE_INCLUDE_DIR = where to find the library headers also defined, 
     
    2122# 
    2223############################################################################### 
    23 message(STATUS "Searching for Oracle ${Oracle_FIND_VERSION}+ OCI client library") 
    2424 
    25 if(ORACLE_INCLUDE_DIR) 
     25if(ORACLE_INCLUDE_DIR AND (ORACLE_LIBRARIES OR ORACLE_LIBRARY)) 
    2626  # Already in cache, be silent 
    2727  set(ORACLE_FIND_QUIETLY TRUE) 
     28endif() 
     29 
     30if(NOT ORACLE_FIND_QUIETLY) 
     31  message(STATUS "Searching for Oracle ${Oracle_FIND_VERSION}+ OCI client library") 
    2832endif() 
    2933 
     
    4044  ${ORACLE_HOME}/include 
    4145  ${ORACLE_HOME}/sdk/include # Oracle SDK 
    42   ${ORACLE_HOME}/OCI/include # Oracle XE on Windows 
    43   ) 
     46  ${ORACLE_HOME}/OCI/include # Oracle XE on Windows) 
    4447 
    4548set(ORACLE_OCI_NAMES clntsh libclntsh oci) 
     
    4952set(ORACLE_LIB_DIR  
    5053  ${ORACLE_HOME}/lib 
    51   ${ORACLE_HOME}/OCI/lib/MSVC # Oracle XE on Windows 
    52 ) 
     54  ${ORACLE_HOME}/OCI/lib/MSVC # Oracle XE on Windows) 
    5355 
    5456find_library(ORACLE_OCI_LIBRARY  NAMES ${ORACLE_OCI_NAMES} PATHS ${ORACLE_LIB_DIR}) 
     
    7274endif() 
    7375 
     76set(ORACLE_LIBRARIES ${ORACLE_LIBRARY}) 
     77 
    7478# Handle the QUIETLY and REQUIRED arguments and set ORACLE_FOUND to TRUE 
    7579# if all listed variables are TRUE 
    76 INCLUDE(FindPackageHandleStandardArgs) 
    77 FIND_PACKAGE_HANDLE_STANDARD_ARGS(Oracle DEFAULT_MSG ORACLE_LIBRARY ORACLE_INCLUDE_DIR) 
     80include(FindPackageHandleStandardArgs) 
     81find_package_handle_standard_args(ORACLE DEFAULT_MSG ORACLE_LIBRARY ORACLE_INCLUDE_DIR) 
  • cmake/modules/FindSpatialIndex.cmake

    r1605 r1606  
    1414# 
    1515############################################################################### 
    16 MESSAGE(STATUS "Searching for SpatialIndex ${SpatialIndex_FIND_VERSION}+ library") 
    1716 
    18 IF(SPATIALINDEX_INCLUDE_DIR AND SPATIALINDEX_LIBRARY) 
     17if(SPATIALINDEX_INCLUDE_DIR AND SPATIALINDEX_LIBRARY) 
    1918  # Already in cache, be silent 
    20   SET(SPATIALINDEX_FIND_QUIETLY TRUE) 
    21 ENDIF() 
     19  set(SPATIALINDEX_FIND_QUIETLY TRUE) 
     20else() 
     21  message(STATUS "Searching for SpatialIndex ${SpatialIndex_FIND_VERSION}+ library") 
     22endif() 
    2223 
    23 IF(WIN32) 
    24   SET(OSGEO4W_IMPORT_LIBRARY spatialindex_i) 
    25   IF(DEFINED ENV{OSGEO4W_ROOT}) 
    26     SET(OSGEO4W_ROOT_DIR $ENV{OSGEO4W_ROOT}) 
    27     MESSAGE(STATUS "Trying OSGeo4W using environment variable OSGEO4W_ROOT=$ENV{OSGEO4W_ROOT}") 
    28   ELSE() 
    29     SET(OSGEO4W_ROOT_DIR c:/OSGeo4W) 
    30     MESSAGE(STATUS "Trying OSGeo4W using default location OSGEO4W_ROOT=${OSGEO4W_ROOT_DIR}") 
    31   ENDIF() 
    32 ENDIF() 
     24if(WIN32) 
     25  set(OSGEO4W_IMPORT_LIBRARY spatialindex_i) 
     26  if(DEFINED ENV{OSGEO4W_ROOT}) 
     27    set(OSGEO4W_ROOT_DIR $ENV{OSGEO4W_ROOT}) 
     28    if(NOT SPATIALINDEX_FIND_QUIETLY) 
     29      message(STATUS "Trying OSGeo4W using environment variable OSGEO4W_ROOT=$ENV{OSGEO4W_ROOT}") 
     30    endif() 
     31  else() 
     32    set(OSGEO4W_ROOT_DIR c:/OSGeo4W) 
     33    if(NOT SPATIALINDEX_FIND_QUIETLY) 
     34      message(STATUS "Trying OSGeo4W using default location OSGEO4W_ROOT=${OSGEO4W_ROOT_DIR}") 
     35    endif() 
     36  endif() 
     37endif() 
    3338 
    34 FIND_PATH(SPATIALINDEX_INCLUDE_DIR 
     39find_path(SPATIALINDEX_INCLUDE_DIR 
    3540  NAMES SpatialIndex.h RTree.h 
    3641  HINTS 
    3742  ${OSGEO4W_ROOT_DIR}/include 
    3843  PATHS 
    39   /usr 
    40   /usr/local 
    4144  ${OSGEO4W_ROOT_DIR}/include 
    4245  PATH_SUFFIXES spatialindex 
    4346  DOC "Path to include directory of SpatialIndex library") 
    4447 
    45 SET(SPATIALINDEX_NAMES ${OSGEO4W_IMPORT_LIBRARY} spatialindex) 
    46 FIND_LIBRARY(SPATIALINDEX_LIBRARY 
     48set(SPATIALINDEX_NAMES ${OSGEO4W_IMPORT_LIBRARY} spatialindex) 
     49find_library(SPATIALINDEX_LIBRARY 
    4750  NAMES ${SPATIALINDEX_NAMES} 
    4851  PATHS ${OSGEO4W_ROOT_DIR}/lib) 
    4952 
    50 IF (SPATIALINDEX_INCLUDE_DIR) 
    51   SET(SPATIALINDEX_VERSION 0) 
     53if (SPATIALINDEX_INCLUDE_DIR) 
     54  set(SPATIALINDEX_VERSION 0) 
    5255 
    53   SET(SPATIALINDEX_VERSION_H "${SPATIALINDEX_INCLUDE_DIR}/Version.h") 
     56  set(SPATIALINDEX_VERSION_H "${SPATIALINDEX_INCLUDE_DIR}/Version.h") 
    5457  if(NOT EXISTS ${SPATIALINDEX_VERSION_H}) 
    5558    set(SPATIALINDEX_VERSION_H "${SPATIALINDEX_INCLUDE_DIR}/spatialindex/Version.h") 
     
    5861  file(READ ${SPATIALINDEX_VERSION_H} SPATIALINDEX_VERSION_H_CONTENTS) 
    5962 
    60   IF (DEFINED SPATIALINDEX_VERSION_H_CONTENTS) 
    61     STRING(REGEX REPLACE ".*#define[ \t]SIDX_VERSION_MAJOR[ \t]+([0-9]+).*" "\\1" SIDX_VERSION_MAJOR "${SPATIALINDEX_VERSION_H_CONTENTS}") 
    62     STRING(REGEX REPLACE ".*#define[ \t]SIDX_VERSION_MINOR[ \t]+([0-9]+).*" "\\1" SIDX_VERSION_MINOR "${SPATIALINDEX_VERSION_H_CONTENTS}") 
    63     STRING(REGEX REPLACE ".*#define[ \t]SIDX_VERSION_REV[ \t]+([0-9]+).*"   "\\1" SIDX_VERSION_REV   "${SPATIALINDEX_VERSION_H_CONTENTS}") 
     63  if (DEFINED SPATIALINDEX_VERSION_H_CONTENTS) 
     64    string(REGEX REPLACE ".*#define[ \t]SIDX_VERSION_MAJOR[ \t]+([0-9]+).*" "\\1" SIDX_VERSION_MAJOR "${SPATIALINDEX_VERSION_H_CONTENTS}") 
     65    string(REGEX REPLACE ".*#define[ \t]SIDX_VERSION_MINOR[ \t]+([0-9]+).*" "\\1" SIDX_VERSION_MINOR "${SPATIALINDEX_VERSION_H_CONTENTS}") 
     66    string(REGEX REPLACE ".*#define[ \t]SIDX_VERSION_REV[ \t]+([0-9]+).*"   "\\1" SIDX_VERSION_REV   "${SPATIALINDEX_VERSION_H_CONTENTS}") 
    6467 
    65     IF(NOT ${SIDX_VERSION_MAJOR} MATCHES "[0-9]+") 
    66       MESSAGE(FATAL_ERROR "SpatialIndex version parsing failed for SIDX_VERSION_MAJOR!") 
    67     ENDIF() 
    68     IF(NOT ${SIDX_VERSION_MINOR} MATCHES "[0-9]+") 
    69       MESSAGE(FATAL_ERROR "SpatialIndex version parsing failed for SIDX_VERSION_MINOR!") 
    70     ENDIF() 
    71     IF(NOT ${SIDX_VERSION_REV} MATCHES "[0-9]+") 
    72       MESSAGE(FATAL_ERROR "SpatialIndex version parsing failed for SIDX_VERSION_REV!") 
    73     ENDIF() 
     68    if(NOT ${SIDX_VERSION_MAJOR} MATCHES "[0-9]+") 
     69      message(FATAL_ERROR "SpatialIndex version parsing failed for SIDX_VERSION_MAJOR!") 
     70    endif() 
     71    if(NOT ${SIDX_VERSION_MINOR} MATCHES "[0-9]+") 
     72      message(FATAL_ERROR "SpatialIndex version parsing failed for SIDX_VERSION_MINOR!") 
     73    endif() 
     74    if(NOT ${SIDX_VERSION_REV} MATCHES "[0-9]+") 
     75      message(FATAL_ERROR "SpatialIndex version parsing failed for SIDX_VERSION_REV!") 
     76    endif() 
    7477 
    75     SET(SPATIALINDEX_VERSION "${SIDX_VERSION_MAJOR}.${SIDX_VERSION_MINOR}.${SIDX_VERSION_REV}" 
     78    set(SPATIALINDEX_VERSION "${SIDX_VERSION_MAJOR}.${SIDX_VERSION_MINOR}.${SIDX_VERSION_REV}" 
    7679      CACHE INTERNAL "The version string for SpatialIndex library") 
    7780 
    78     IF (SPATIALINDEX_VERSION VERSION_EQUAL SpatialIndex_FIND_VERSION OR 
    79         SPATIALINDEX_VERSION VERSION_GREATER SpatialIndex_FIND_VERSION) 
    80       MESSAGE(STATUS "Found SpatialIndex version: ${SPATIALINDEX_VERSION}") 
    81     ELSE() 
    82       MESSAGE(FATAL_ERROR "SpatialIndex version check failed. Version ${SPATIALINDEX_VERSION} was found, at least version ${SpatialIndex_FIND_VERSION} is required") 
    83     ENDIF() 
    84   ELSE() 
    85     MESSAGE(FATAL_ERROR "Failed to open ${SPATIALINDEX_VERSION_H} file") 
    86   ENDIF() 
     81    if (SPATIALINDEX_FIND_QUIETLY AND 
     82        (SPATIALINDEX_VERSION VERSION_EQUAL SpatialIndex_FIND_VERSION OR 
     83          SPATIALINDEX_VERSION VERSION_GREATER SpatialIndex_FIND_VERSION)) 
     84      message(STATUS "Found SpatialIndex version: ${SPATIALINDEX_VERSION}") 
     85    else() 
     86        message(FATAL_ERROR "SpatialIndex version check failed. Version ${SPATIALINDEX_VERSION} was found, at least version ${SpatialIndex_FIND_VERSION} is required") 
     87    endif() 
     88  else() 
     89      message(FATAL_ERROR "Failed to open ${SPATIALINDEX_VERSION_H} file") 
     90  endif() 
    8791 
    88 ENDIF() 
     92endif() 
    8993 
    9094# Handle the QUIETLY and REQUIRED arguments and set SPATIALINDEX_FOUND to TRUE 
    9195# if all listed variables are TRUE 
    92 INCLUDE(FindPackageHandleStandardArgs) 
    93 FIND_PACKAGE_HANDLE_STANDARD_ARGS(SpatialIndex DEFAULT_MSG SPATIALINDEX_LIBRARY SPATIALINDEX_INCLUDE_DIR) 
     96include(FindPackageHandleStandardArgs) 
     97find_package_handle_standard_args(SpatialIndex DEFAULT_MSG SPATIALINDEX_LIBRARY SPATIALINDEX_INCLUDE_DIR) 
    9498 
    9599# TODO: Do we want to mark these as advanced? --mloskot 
Note: See TracChangeset for help on using the changeset viewer.