aboutsummaryrefslogtreecommitdiff
path: root/modules/FindBZip2.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'modules/FindBZip2.cmake')
-rw-r--r--modules/FindBZip2.cmake65
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 )