summaryrefslogtreecommitdiff
path: root/cmake/bzip2.cmake
diff options
context:
space:
mode:
authorJan Lindström <jan.lindstrom@skysql.com>2015-02-04 19:31:16 +0200
committerJan Lindström <jan.lindstrom@skysql.com>2015-02-04 19:31:16 +0200
commit41dc186aa8a5340c78e783a635a95173cc46a697 (patch)
treec7905eb05feba5373fb274ca3727fc8a702ff40a /cmake/bzip2.cmake
parentbfe703a45888107936c184076eaead28b8b8a90a (diff)
downloadmariadb-git-41dc186aa8a5340c78e783a635a95173cc46a697.tar.gz
MDEV-6633: Remove magic dependencies for InnoDB compression methods
Added options for each compression type that can be disabled i.e. bzip2, lz4, lzma and lzo.
Diffstat (limited to 'cmake/bzip2.cmake')
-rw-r--r--cmake/bzip2.cmake24
1 files changed, 16 insertions, 8 deletions
diff --git a/cmake/bzip2.cmake b/cmake/bzip2.cmake
index f0b17745b24..0c15853d0b9 100644
--- a/cmake/bzip2.cmake
+++ b/cmake/bzip2.cmake
@@ -12,14 +12,22 @@
# this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-MACRO (MYSQL_CHECK_BZIP2)
+SET(WITH_INNODB_BZIP2 AUTO CACHE STRING
+ "Build with bzip2. Possible values are 'ON', 'OFF', 'AUTO' and default is 'AUTO'")
-CHECK_INCLUDE_FILES(bzlib.h HAVE_BZLIB2_H)
-CHECK_LIBRARY_EXISTS(bz2 BZ2_bzBuffToBuffCompress "" HAVE_BZLIB2_COMPRESS)
-CHECK_LIBRARY_EXISTS(bz2 BZ2_bzBuffToBuffDecompress "" HAVE_BZLIB2_DECOMPRESS)
+MACRO (MYSQL_CHECK_BZIP2)
+ IF (WITH_INNODB_BZIP2 STREQUAL "ON" OR WITH_INNODB_BZIP2 STREQUAL "AUTO")
+ CHECK_INCLUDE_FILES(bzlib.h HAVE_BZLIB2_H)
+ CHECK_LIBRARY_EXISTS(bz2 BZ2_bzBuffToBuffCompress "" HAVE_BZLIB2_COMPRESS)
+ CHECK_LIBRARY_EXISTS(bz2 BZ2_bzBuffToBuffDecompress "" HAVE_BZLIB2_DECOMPRESS)
-IF (HAVE_BZLIB2_COMPRESS AND HAVE_BZLIB2_DECOMPRESS AND HAVE_BZLIB2_H)
- ADD_DEFINITIONS(-DHAVE_BZIP2=1)
- LINK_LIBRARIES(bz2)
-ENDIF()
+ IF (HAVE_BZLIB2_COMPRESS AND HAVE_BZLIB2_DECOMPRESS AND HAVE_BZLIB2_H)
+ ADD_DEFINITIONS(-DHAVE_BZIP2=1)
+ LINK_LIBRARIES(bz2)
+ ELSE()
+ IF (WITH_INNODB_BZIP2 STREQUAL "ON")
+ MESSAGE(FATAL_ERROR "Required bzip2 library is not found")
+ ENDIF()
+ ENDIF()
+ ENDIF()
ENDMACRO()