diff options
Diffstat (limited to 'modules/FindBZip2.cmake')
-rw-r--r-- | modules/FindBZip2.cmake | 65 |
1 files changed, 40 insertions, 25 deletions
diff --git a/modules/FindBZip2.cmake b/modules/FindBZip2.cmake index a51662b8..d6ade67a 100644 --- a/modules/FindBZip2.cmake +++ b/modules/FindBZip2.cmake @@ -6,33 +6,48 @@ # BZIP2_LIBRARIES - Link these to use BZip2 # BZIP2_DEFINITIONS - Compiler switches required for using BZip2 # BZIP2_NEED_PREFIX - this is set if the functions are prefixed with BZ2_ -# -FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h - /usr/include - /usr/local/include -) -FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 - PATHS - /usr/lib - /usr/local/lib -) +IF (CACHED_BZIP2) + + # in cache already + IF ("${CACHED_BZIP2}" STREQUAL "YES") + SET(BZIP2_FOUND TRUE) + ENDIF ("${CACHED_BZIP2}" STREQUAL "YES") -if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) - set(BZIP2_FOUND TRUE) - INCLUDE(CheckLibraryExists) - CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) -endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) +ELSE (CACHED_BZIP2) -if (BZIP2_FOUND) - if (NOT BZip2_FIND_QUIETLY) - message(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") - endif (NOT BZip2_FIND_QUIETLY) -else (BZIP2_FOUND) - if (BZip2_FIND_REQUIRED) - message(FATAL_ERROR "Could NOT find BZip2") - endif (BZip2_FIND_REQUIRED) -endif (BZIP2_FOUND) + FIND_PATH(BZIP2_INCLUDE_DIR bzlib.h + /usr/include + /usr/local/include + ) + + FIND_LIBRARY(BZIP2_LIBRARIES NAMES bz2 bzip2 + PATHS + /usr/lib + /usr/local/lib + ) + + if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + set(BZIP2_FOUND TRUE) + INCLUDE(CheckLibraryExists) + CHECK_LIBRARY_EXISTS(${BZIP2_LIBRARIES} BZ2_bzCompressInit "" BZIP2_NEED_PREFIX) + set(CACHED_BZIP2 "YES") + else (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + set(CACHED_BZIP2 "NO") + endif (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES) + + if (BZIP2_FOUND) + if (NOT BZip2_FIND_QUIETLY) + message(STATUS "Found BZip2: ${BZIP2_LIBRARIES}") + endif (NOT BZip2_FIND_QUIETLY) + else (BZIP2_FOUND) + if (BZip2_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find BZip2") + endif (BZip2_FIND_REQUIRED) + endif (BZIP2_FOUND) + + set(CACHED_BZIP2 ${CACHED_BZIP2} CACHE INTERNAL "If bzip2 was checked") + MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) -MARK_AS_ADVANCED(BZIP2_INCLUDE_DIR BZIP2_LIBRARIES) +ENDIF( CACHED_BZIP2 ) |