PageRenderTime 48ms CodeModel.GetById 25ms RepoModel.GetById 0ms app.codeStats 0ms

/tags/rel-1-7-alpha3/bibletime/cmake/FindCLucene.cmake

#
CMake | 80 lines | 62 code | 9 blank | 9 comment | 0 complexity | daed103e2df5e3610e8c09ac173112ab MD5 | raw file
Possible License(s): GPL-2.0, AGPL-1.0
  1. SET(CLUCENE_REQUIRED_VERSION "0.9.16a")
  2. # This module looks for clucene (http://clucene.sf.net) support
  3. # It will define the following values
  4. #
  5. # CLUCENE_INCLUDE_DIR = where CLucene/StdHeader.h can be found
  6. # CLUCENE_LIBRARY_DIR = where CLucene/clucene-config.h can be found
  7. # CLUCENE_LIBRARY = the library to link against CLucene
  8. # CLucene_FOUND = set to 1 if clucene is found
  9. #
  10. INCLUDE(CheckSymbolExists)
  11. IF(EXISTS ${PROJECT_CMAKE}/CLuceneConfig.cmake)
  12. INCLUDE(${PROJECT_CMAKE}/CLuceneConfig.cmake)
  13. ENDIF(EXISTS ${PROJECT_CMAKE}/CLuceneConfig.cmake)
  14. SET(TRIAL_LIBRARY_PATHS
  15. $ENV{CLUCENE_HOME}/lib${LIB_SUFFIX}
  16. ${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}
  17. /usr/lib${LIB_SUFFIX}
  18. /usr/local/lib${LIB_SUFFIX}
  19. /sw/lib${LIB_SUFFIX}
  20. )
  21. SET(TRIAL_INCLUDE_PATHS
  22. $ENV{CLUCENE_HOME}/include
  23. ${CMAKE_INSTALL_PREFIX}/include
  24. /sw/include
  25. )
  26. FIND_LIBRARY(CLUCENE_LIBRARY clucene
  27. NAMES clucene-core
  28. PATHS ${TRIAL_LIBRARY_PATHS})
  29. IF (CLUCENE_LIBRARY)
  30. MESSAGE(STATUS "Found CLucene library: ${CLUCENE_LIBRARY}")
  31. ENDIF (CLUCENE_LIBRARY)
  32. FIND_PATH(CLUCENE_INCLUDE_DIR
  33. NAMES CLucene.h
  34. PATHS ${TRIAL_INCLUDE_PATHS})
  35. IF (CLUCENE_INCLUDE_DIR)
  36. MESSAGE(STATUS "Found CLucene include dir: ${CLUCENE_INCLUDE_DIR}")
  37. ENDIF (CLUCENE_INCLUDE_DIR)
  38. IF(NOT MSVC)
  39. FIND_PATH(CLUCENE_LIBRARY_DIR
  40. NAMES CLucene/clucene-config.h PATHS ${TRIAL_LIBRARY_PATHS})
  41. IF (CLUCENE_LIBRARY_DIR)
  42. MESSAGE(STATUS "Found CLucene library dir: ${CLUCENE_LIBRARY_DIR}")
  43. FILE(READ ${CLUCENE_LIBRARY_DIR}/CLucene/clucene-config.h CLCONTENT)
  44. STRING(REGEX MATCH "_CL_VERSION +\".*\"" CLMATCH ${CLCONTENT})
  45. IF (CLMATCH)
  46. STRING(REGEX REPLACE "_CL_VERSION +\"(.*)\"" "\\1" CLVERSION ${CLMATCH})
  47. ENDIF (CLMATCH)
  48. IF (CLVERSION STRLESS ${CLUCENE_REQUIRED_VERSION})
  49. MESSAGE(FATAL_ERROR "CLucene version is less than ${CLUCENE_REQUIRED_VERSION}")
  50. ENDIF (CLVERSION STRLESS ${CLUCENE_REQUIRED_VERSION})
  51. ENDIF (CLUCENE_LIBRARY_DIR)
  52. ELSE(NOT MSVC)
  53. #msvc doesnt use a config file
  54. SET(CLUCENE_LIBRARY_DIR ${CLUCENE_INCLUDE_DIR})
  55. ENDIF(NOT MSVC)
  56. IF(CLUCENE_INCLUDE_DIR AND CLUCENE_LIBRARY AND CLUCENE_LIBRARY_DIR)
  57. SET(CLucene_FOUND 1)
  58. IF(NOT CLucene_FIND_QUIETLY)
  59. MESSAGE(STATUS "Found CLucene: ${CLUCENE_LIBRARY}")
  60. ENDIF(NOT CLucene_FIND_QUIETLY)
  61. ELSE(CLUCENE_INCLUDE_DIR AND CLUCENE_LIBRARY AND CLUCENE_LIBRARY_DIR)
  62. SET(CLucene_FOUND 0)
  63. IF(CLucene_FIND_REQUIRED)
  64. MESSAGE(FATAL_ERROR "Could not find CLucene. Please install CLucene = 0.9.16a (http://clucene.sf.net)")
  65. ENDIF(CLucene_FIND_REQUIRED)
  66. ENDIF(CLUCENE_INCLUDE_DIR AND CLUCENE_LIBRARY AND CLUCENE_LIBRARY_DIR)
  67. MARK_AS_ADVANCED(
  68. CLUCENE_INCLUDE_DIR
  69. CLUCENE_LIBRARY_DIR
  70. CLUCENE_LIBRARY
  71. )