diff options
| -rw-r--r-- | modules/FindSoprano.cmake | 27 | 
1 files changed, 20 insertions, 7 deletions
| diff --git a/modules/FindSoprano.cmake b/modules/FindSoprano.cmake index f4920af2..3e39bf56 100644 --- a/modules/FindSoprano.cmake +++ b/modules/FindSoprano.cmake @@ -1,14 +1,14 @@ -if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) +#if(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES)    # read from cache -  set(Soprano_FOUND TRUE) -  set(SopranoServer_FOUND TRUE) -  set(SopranoClient_FOUND TRUE) -  set(SopranoIndex_FOUND TRUE) +#  set(Soprano_FOUND TRUE) +#  set(SopranoServer_FOUND TRUE) +#  set(SopranoClient_FOUND TRUE) +#  set(SopranoIndex_FOUND TRUE) -else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) +#else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES)    INCLUDE(FindLibraryWithDebug)    FIND_PATH(SOPRANO_INCLUDE_DIR  @@ -72,6 +72,19 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S      set(SopranoServer_FOUND TRUE)    endif(Soprano_FOUND AND SOPRANO_SERVER_LIBRARIES) +  # check Soprano version +  if(Soprano_FOUND) +    FILE(READ ${SOPRANO_INCLUDE_DIR}/soprano/version.h SOPRANO_VERSION_CONTENT) +    STRING(REGEX MATCH "SOPRANO_VERSION_STRING \".*\"\n" SOPRANO_VERSION_MATCH ${SOPRANO_VERSION_CONTENT}) +    IF (SOPRANO_VERSION_MATCH) +      STRING(REGEX REPLACE "SOPRANO_VERSION_STRING \"(.*)\"\n" "\\1" SOPRANO_VERSION ${SOPRANO_VERSION_MATCH}) +      if(SOPRANO_VERSION STRLESS "1.97.1") +        set(Soprano_FOUND FALSE) +        message(FATAL_ERROR "Soprano version ${SOPRANO_VERSION} is too old. Please install 1.97.1 or newer") +      endif(SOPRANO_VERSION STRLESS "1.97.1") +    ENDIF (SOPRANO_VERSION_MATCH) +  endif(Soprano_FOUND) +      if(Soprano_FOUND)      if(NOT Soprano_FIND_QUIETLY)        message(STATUS "Found Soprano: ${SOPRANO_LIBRARIES}") @@ -97,4 +110,4 @@ else(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND S      endif(Soprano_FIND_REQUIRED)    endif(Soprano_FOUND) -endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) +#endif(SOPRANO_INCLUDE_DIR AND SOPRANO_LIBRARIES AND SOPRANO_INDEX_LIBRARIES AND SOPRANO_SERVER_LIBRARIES) | 
