-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'merge-tokudb-5.6' into 10.0
- Loading branch information
Showing
3,128 changed files
with
628,221 additions
and
218,419 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules") | ||
|
||
project(TokuDB) | ||
|
||
# suppress -rdynamic | ||
set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "") | ||
set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "") | ||
|
||
## Versions of gcc >= 4.9.0 require special version of 'ar' and 'ranlib' for | ||
## link-time optimizations to work properly. | ||
## | ||
## From https://gcc.gnu.org/gcc-4.9/changes.html: | ||
## | ||
## When using a linker plugin, compiling with the -flto option now | ||
## generates slim objects files (.o) which only contain intermediate | ||
## language representation for LTO. Use -ffat-lto-objects to create | ||
## files which contain additionally the object code. To generate | ||
## static libraries suitable for LTO processing, use gcc-ar and | ||
## gcc-ranlib; to list symbols from a slim object file use | ||
## gcc-nm. (Requires that ar, ranlib and nm have been compiled with | ||
## plugin support.) | ||
if ((CMAKE_CXX_COMPILER_ID STREQUAL GNU) AND | ||
NOT (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.9.0")) | ||
find_program(gcc_ar "gcc-ar") | ||
if (gcc_ar) | ||
set(CMAKE_AR "${gcc_ar}") | ||
endif () | ||
find_program(gcc_ranlib "gcc-ranlib") | ||
if (gcc_ranlib) | ||
set(CMAKE_RANLIB "${gcc_ranlib}") | ||
endif () | ||
endif() | ||
|
||
include(TokuFeatureDetection) | ||
include(TokuSetupCompiler) | ||
include(TokuSetupCTest) | ||
include(TokuThirdParty) | ||
|
||
set(TOKU_CMAKE_SCRIPT_DIR "${CMAKE_CURRENT_SOURCE_DIR}/cmake") | ||
include(TokuMergeLibs) | ||
|
||
## need a way to change the name of libs we build | ||
set(LIBTOKUPORTABILITY "tokuportability" CACHE STRING "Name of libtokuportability.so") | ||
set(LIBTOKUDB "tokufractaltree" CACHE STRING "Name of libtokufractaltree.so") | ||
|
||
set(INSTALL_LIBDIR "lib" CACHE STRING "where to install libs") | ||
|
||
if (USE_VALGRIND AND NOT VALGRIND_INCLUDE_DIR MATCHES NOTFOUND) | ||
include_directories( | ||
${VALGRIND_INCLUDE_DIR} | ||
) | ||
endif() | ||
include_directories( | ||
${CMAKE_CURRENT_SOURCE_DIR}/portability | ||
${CMAKE_CURRENT_SOURCE_DIR} ## so you can include <ft/ft-ops.h> from inside src/ | ||
${CMAKE_CURRENT_BINARY_DIR} ## for logging code | ||
) | ||
## include where config.h will be generated | ||
include_directories(${CMAKE_CURRENT_BINARY_DIR}/portability) | ||
|
||
## build db.h and include where it will be generated | ||
add_subdirectory(buildheader) | ||
include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR}/buildheader) | ||
|
||
## default includes and libraries | ||
include_directories(SYSTEM | ||
/usr/local/include | ||
${ZLIB_INCLUDE_DIRS} | ||
) | ||
|
||
## add subdirectories | ||
add_subdirectory(util) | ||
add_subdirectory(portability) | ||
add_subdirectory(ft) | ||
add_subdirectory(locktree) | ||
add_subdirectory(src) | ||
add_subdirectory(ftcxx) | ||
add_subdirectory(tools) | ||
|
||
INSTALL_DOCUMENTATION(README.md COPYING.AGPLv3 COPYING.GPLv2 PATENTS | ||
COMPONENT Server) | ||
|
||
## build tags | ||
#include(TokuBuildTagDatabases) |
Oops, something went wrong.