[manifest]
name = rocksdb

[download]
url = https://github.com/facebook/rocksdb/archive/refs/tags/v7.7.3.tar.gz
sha256 = b8ac9784a342b2e314c821f6d701148912215666ac5e9bdbccd93cf3767cb611

[dependencies]
lz4
snappy

[build]
builder = cmake
subdir = rocksdb-7.7.3

[cmake.defines]
WITH_SNAPPY=ON
WITH_LZ4=ON
WITH_TESTS=OFF
WITH_BENCHMARK_TOOLS=OFF
# We get relocation errors with the static gflags lib,
# and there's no clear way to make it pick the shared gflags
# so just turn it off.
WITH_GFLAGS=OFF
# mac pro machines don't have some of the newer features that
# rocksdb enables by default; ask it to disable their use even
# when building on new hardware
PORTABLE = ON
# Disable the use of -Werror
FAIL_ON_WARNINGS = OFF

[cmake.defines.os=windows]
ROCKSDB_INSTALL_ON_WINDOWS=ON
# RocksDB hard codes the paths to the snappy libs to something
# that doesn't exist; ignoring the usual cmake rules.  As a result,
# we can't build it with snappy without either patching rocksdb or
# without introducing more complex logic to the build system to
# connect the snappy build outputs to rocksdb's custom logic here.
# Let's just turn it off on windows.
WITH_SNAPPY=OFF
WITH_LZ4=ON
ROCKSDB_SKIP_THIRDPARTY=ON
