typesense/cmake/RocksDB.cmake
2016-10-22 20:42:02 +05:30

17 lines
881 B
CMake

# Download and build RocksDB
set(ROCKSDB_VERSION 4.11.2)
set(ROCKSDB_NAME rocksdb-${ROCKSDB_VERSION})
set(ROCKSDB_TAR_PATH ${CMAKE_SOURCE_DIR}/external/${ROCKSDB_NAME}.tar.gz)
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/external/${ROCKSDB_NAME})
message(STATUS "Downloading and extracting ${ROCKSDB_NAME}...")
file(DOWNLOAD https://github.com/facebook/rocksdb/archive/v${ROCKSDB_VERSION}.tar.gz ${ROCKSDB_TAR_PATH})
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xvzf ${ROCKSDB_TAR_PATH} WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/external/)
endif()
if( (NOT EXISTS ${CMAKE_SOURCE_DIR}/external/${ROCKSDB_NAME}/librocksdb.so) AND
(NOT EXISTS ${CMAKE_SOURCE_DIR}/external/${ROCKSDB_NAME}/librocksdb.dylib) )
message("Building ${ROCKSDB_NAME} locally...")
execute_process(COMMAND make "shared_lib" WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/external/${ROCKSDB_NAME}/)
endif()