summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Golubchik <sergii@pisem.net>2013-09-09 14:02:42 +0200
committerSergei Golubchik <sergii@pisem.net>2013-09-09 14:02:42 +0200
commit5b2e3b01f07e6b82e47a18c977d77eccfcd1ca13 (patch)
tree39ca99824ddb7bfc90512f4dc6b71ffb86731c2d
parent3a528261838239837fc63730b93b847e6761e692 (diff)
downloadmariadb-git-5b2e3b01f07e6b82e47a18c977d77eccfcd1ca13.tar.gz
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
-rw-r--r--cmake/jemalloc.cmake10
-rw-r--r--storage/tokudb/CMakeLists.txt27
-rw-r--r--storage/tokudb/ft-index/CMakeLists.txt2
-rw-r--r--storage/tokudb/ft-index/cmake_modules/FindValgrind.cmake2
-rw-r--r--storage/tokudb/mysql-test/rpl/include/have_tokudb.opt2
-rw-r--r--storage/tokudb/mysql-test/tokudb/r/information-schema-global-status.result2
6 files changed, 31 insertions, 14 deletions
diff --git a/cmake/jemalloc.cmake b/cmake/jemalloc.cmake
index f39d9e17670..50aa7768317 100644
--- a/cmake/jemalloc.cmake
+++ b/cmake/jemalloc.cmake
@@ -1,3 +1,10 @@
+# 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()
diff --git a/storage/tokudb/CMakeLists.txt b/storage/tokudb/CMakeLists.txt
index 398c7d642e0..6d8796ff967 100644
--- a/storage/tokudb/CMakeLists.txt
+++ b/storage/tokudb/CMakeLists.txt
@@ -1,17 +1,22 @@
-# 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})
diff --git a/storage/tokudb/ft-index/CMakeLists.txt b/storage/tokudb/ft-index/CMakeLists.txt
index cb6a82113ca..c2b79bcb8ac 100644
--- a/storage/tokudb/ft-index/CMakeLists.txt
+++ b/storage/tokudb/ft-index/CMakeLists.txt
@@ -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
diff --git a/storage/tokudb/ft-index/cmake_modules/FindValgrind.cmake b/storage/tokudb/ft-index/cmake_modules/FindValgrind.cmake
index 03335c5bbe8..73841723ce9 100644
--- a/storage/tokudb/ft-index/cmake_modules/FindValgrind.cmake
+++ b/storage/tokudb/ft-index/cmake_modules/FindValgrind.cmake
@@ -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)
diff --git a/storage/tokudb/mysql-test/rpl/include/have_tokudb.opt b/storage/tokudb/mysql-test/rpl/include/have_tokudb.opt
index b385af22b1d..39d3fa12ec5 100644
--- a/storage/tokudb/mysql-test/rpl/include/have_tokudb.opt
+++ b/storage/tokudb/mysql-test/rpl/include/have_tokudb.opt
@@ -1 +1 @@
---tokudb --plugin-load=$HA_TOKUDB_SO
+--loose-tokudb --plugin-load=$HA_TOKUDB_SO
diff --git a/storage/tokudb/mysql-test/tokudb/r/information-schema-global-status.result b/storage/tokudb/mysql-test/tokudb/r/information-schema-global-status.result
index 8b7ddf29e4c..48b0021b14f 100644
--- a/storage/tokudb/mysql-test/tokudb/r/information-schema-global-status.result
+++ b/storage/tokudb/mysql-test/tokudb/r/information-schema-global-status.result
@@ -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