42 lines
1.2 KiB
CMake
42 lines
1.2 KiB
CMake
if(PROJECT_ENABLE_ROCKSDB)
|
|
if(PROJECT_BUILD)
|
|
find_library(ROCKSDB_LIBRARY NAMES librocksdb.a REQUIRED)
|
|
|
|
add_definitions(-DPROJECT_ENABLE_ROCKSDB)
|
|
|
|
link_libraries(
|
|
${ROCKSDB_LIBRARY}
|
|
)
|
|
elseif(NOT PROJECT_IS_MINGW OR CMAKE_HOST_WIN32)
|
|
ExternalProject_Add(rocksdb_project
|
|
PREFIX external
|
|
URL ${PROJECT_3RD_PARTY_DIR}/rocksdb-${ROCKSDB_VERSION}.tar.gz
|
|
URL_HASH SHA256=54ca90dd782a988cd3ebc3e0e9ba9b4efd563d7eb78c5e690c2403f1b7d4a87a
|
|
LIST_SEPARATOR |
|
|
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
|
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
|
-DBUILD_STATIC_LIBS=ON
|
|
-DFAIL_ON_WARNINGS=OFF
|
|
-DPORTABLE=1
|
|
-DROCKSDB_BUILD_SHARED=${PROJECT_BUILD_SHARED_LIBS}
|
|
-DROCKSDB_INSTALL_ON_WINDOWS=ON
|
|
-DWITH_BENCHMARK=OFF
|
|
-DWITH_BENCHMARK_TOOLS=OFF
|
|
-DWITH_CORE_TOOLS=OFF
|
|
-DWITH_EXAMPLES=OFF
|
|
-DWITH_GFLAGS=OFF
|
|
-DWITH_IOSTATS_CONTEXT=OFF
|
|
-DWITH_PERF_CONTEXT=OFF
|
|
-DWITH_TESTS=OFF
|
|
-DWITH_TOOLS=OFF
|
|
-DWITH_TRACE_TOOLS=OFF
|
|
-DWITH_ZLIB=ON
|
|
)
|
|
|
|
set(PROJECT_DEPENDENCIES
|
|
${PROJECT_DEPENDENCIES}
|
|
rocksdb_project
|
|
)
|
|
endif()
|
|
endif()
|