|
|
@ -42,11 +42,6 @@ endif() |
|
|
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules/") |
|
|
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules/") |
|
|
|
|
|
|
|
|
|
|
|
if(WIN32) |
|
|
|
if(WIN32) |
|
|
|
if (DEFINED AVX2) |
|
|
|
|
|
|
|
set(USE_AVX2 ${AVX2}) |
|
|
|
|
|
|
|
else () |
|
|
|
|
|
|
|
set(USE_AVX2 1) |
|
|
|
|
|
|
|
endif () |
|
|
|
|
|
|
|
include(${CMAKE_CURRENT_SOURCE_DIR}/thirdparty.inc) |
|
|
|
include(${CMAKE_CURRENT_SOURCE_DIR}/thirdparty.inc) |
|
|
|
else() |
|
|
|
else() |
|
|
|
option(WITH_JEMALLOC "build with JeMalloc" OFF) |
|
|
|
option(WITH_JEMALLOC "build with JeMalloc" OFF) |
|
|
@ -110,18 +105,24 @@ if (NOT WIN32) |
|
|
|
string(STRIP "${ROCKSDB_VERSION_MAJOR}" ROCKSDB_VERSION_MAJOR) |
|
|
|
string(STRIP "${ROCKSDB_VERSION_MAJOR}" ROCKSDB_VERSION_MAJOR) |
|
|
|
endif() |
|
|
|
endif() |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if(WIN32) |
|
|
|
|
|
|
|
option(WITH_AVX2 "build with AVX2" ON) |
|
|
|
|
|
|
|
if(WITH_AVX2) |
|
|
|
|
|
|
|
if(MSVC) |
|
|
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /arch:AVX2") |
|
|
|
|
|
|
|
else() |
|
|
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mavx2") |
|
|
|
|
|
|
|
endif() |
|
|
|
|
|
|
|
endif() |
|
|
|
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
|
|
|
set(BUILD_VERSION_CC ${CMAKE_BINARY_DIR}/build_version.cc) |
|
|
|
set(BUILD_VERSION_CC ${CMAKE_BINARY_DIR}/build_version.cc) |
|
|
|
configure_file(util/build_version.cc.in ${BUILD_VERSION_CC} @ONLY) |
|
|
|
configure_file(util/build_version.cc.in ${BUILD_VERSION_CC} @ONLY) |
|
|
|
add_library(build_version OBJECT ${BUILD_VERSION_CC}) |
|
|
|
add_library(build_version OBJECT ${BUILD_VERSION_CC}) |
|
|
|
target_include_directories(build_version PRIVATE |
|
|
|
target_include_directories(build_version PRIVATE |
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/util) |
|
|
|
${CMAKE_CURRENT_SOURCE_DIR}/util) |
|
|
|
if(MSVC) |
|
|
|
if(MSVC) |
|
|
|
if (${USE_AVX2} EQUAL 1) |
|
|
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zi /nologo /arch:AVX2 /EHsc /GS /Gd /GR /GF /fp:precise /Zc:wchar_t /Zc:forScope /errorReport:queue") |
|
|
|
|
|
|
|
else () |
|
|
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zi /nologo /EHsc /GS /Gd /GR /GF /fp:precise /Zc:wchar_t /Zc:forScope /errorReport:queue") |
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zi /nologo /EHsc /GS /Gd /GR /GF /fp:precise /Zc:wchar_t /Zc:forScope /errorReport:queue") |
|
|
|
endif () |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /FC /d2Zi+ /W3 /wd4127 /wd4800 /wd4996 /wd4351") |
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /FC /d2Zi+ /W3 /wd4127 /wd4800 /wd4996 /wd4351") |
|
|
|
else() |
|
|
|
else() |
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -W -Wextra -Wall") |
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -W -Wextra -Wall") |
|
|
|