Commit 5b2e3b01 authored by Sergei Golubchik's avatar Sergei Golubchik

fixes for buildbot

* disable jemalloc on windows (cannot run ./configure)
* disable jemalloc on ancient cmake (ExternalProject does not work)
* rewrite TokuDB compiler test to check for features, not versions (to work on cmake before 2.8.11)
* fix ft-index to not add VALGRIND_INCLUDE_DIR to includes, if no valgrind was found
* correct the package name in FindValgrind.cmake (for find_package(... REQUIRED) to work)
* disable ft-index tests by default (faster compilation and they aren't used anyway)
* don't build ft-index with valgrind by default (otherwise it *requires* valgrind, it doesn't auto-detect)
* use --loose-tokudb in the .opt file
parent 3a528261
# old cmake does not have ExternalProject file
IF(CMAKE_VERSION VERSION_LESS "2.8.6")
MACRO (CHECK_JEMALLOC)
ENDMACRO()
RETURN()
ENDIF()
INCLUDE(ExternalProject)
MACRO (USE_BUNDLED_JEMALLOC)
......@@ -27,6 +34,9 @@ SET(WITH_JEMALLOC "yes" CACHE STRING
#"Which jemalloc to use (possible values are 'no', 'bundled', 'system', 'yes' (system if possible, otherwise bundled)")
MACRO (CHECK_JEMALLOC)
IF(WIN32)
SET(WITH_JEMALLOC "no")
ENDIF()
IF(WITH_JEMALLOC STREQUAL "bundled" OR WITH_JEMALLOC STREQUAL "yes")
USE_BUNDLED_JEMALLOC()
ENDIF()
......
# ft-index can be compiled only with gcc-4.7+, cmake-2.8.8+
# and supports only x86-64 platform
IF(NOT CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR
CMAKE_VERSION VERSION_LESS "2.8.8" OR
NOT CMAKE_COMPILER_IS_GNUCXX OR
CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.7")
IF (NOT WITHOUT_TOKUDB)
MESSAGE("TokuDB is disabled: not supported
(${CMAKE_SYSTEM_PROCESSOR}-${CMAKE_VERSION}-<${CMAKE_COMPILER_IS_GNUCXX}>-${CMAKE_CXX_COMPILER_VERSION}")
ENDIF()
# ft-index only supports x86-64 and cmake-2.8.8+
IF(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" AND
NOT CMAKE_VERSION VERSION_LESS "2.8.8")
CHECK_CXX_SOURCE_COMPILES(
"
struct a {int b; int c; };
struct a d = { .b=1, .c=2 };
int main() { return 0; }
" TOKUDB_OK)
ENDIF()
IF(NOT TOKUDB_OK)
RETURN()
ENDIF()
SET(ENV{TOKUDB_VERSION} "7.0.2")
SET(ENV{TOKUDB_VERSION} "7.0.4")
SET(USE_BDB OFF CACHE BOOL "")
SET(USE_VALGRIND OFF CACHE BOOL "")
SET(BUILD_TESTING OFF CACHE BOOL "")
############################################
IF(DEFINED ENV{TOKUDB_VERSION})
......
......@@ -19,9 +19,11 @@ include(TokuMergeLibs)
set(LIBTOKUPORTABILITY "tokuportability" CACHE STRING "Name of libtokuportability.so")
set(LIBTOKUDB "tokufractaltree" CACHE STRING "Name of libtokufractaltree.so")
if(USE_VALGRIND)
include_directories(
${VALGRIND_INCLUDE_DIR}
)
endif()
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/include
${CMAKE_CURRENT_SOURCE_DIR}/toku_include
......
......@@ -11,7 +11,7 @@
find_path(VALGRIND_INCLUDE_DIR valgrind/memcheck.h)
find_program(VALGRIND_PROGRAM NAMES valgrind)
find_package_handle_standard_args(VALGRIND DEFAULT_MSG
find_package_handle_standard_args(Valgrind DEFAULT_MSG
VALGRIND_INCLUDE_DIR
VALGRIND_PROGRAM)
......
--tokudb --plugin-load=$HA_TOKUDB_SO
--loose-tokudb --plugin-load=$HA_TOKUDB_SO
......@@ -61,7 +61,7 @@ TOKUDB_DESCRIPTOR_SET
TOKUDB_DICTIONARY_BROADCAST_UPDATES
TOKUDB_DICTIONARY_UPDATES
TOKUDB_FILESYSTEM_FSYNC_NUM
TOKUDB_FILESYSTEM_FSYNC_TIME
TOKUDB_FILESYSTEM_FSYNC_SECONDS
TOKUDB_FILESYSTEM_THREADS_BLOCKED_BY_FULL_DISK
TOKUDB_LEAF_COMPRESSION_TO_MEMORY_SECONDS
TOKUDB_LEAF_DECOMPRESSION_TO_MEMORY_SECONDS
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment