]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rocksdb: disable jemalloc explicitly 21234/head
authorKefu Chai <kchai@redhat.com>
Wed, 4 Apr 2018 08:39:12 +0000 (16:39 +0800)
committerKefu Chai <kchai@redhat.com>
Wed, 4 Apr 2018 08:43:59 +0000 (16:43 +0800)
rocksdb's makefile tries to detect jemalloc automatically and compiles
with it enabled if it's found, but if ceph disable jemalloc, it won't
link against jemalloc. this causes link failure if we compile ceph
without jemalloc enabled in a host with jemalloc library installed.

Signed-off-by: Kefu Chai <kchai@redhat.com>
Conflicts:
src/kv/Makefile.am: this change is not cherry-picked from
master. as master does not use autotools anymore. and master is
using rocksdb's cmake script for building, the latter does not
jemalloc by default.

src/kv/Makefile.am

index 9dd8b0d8d1e0bd3ca2d93195751855e28e1fc5b6..819df97c083dcd1718bb0bcfb35f30d96e8e3581 100644 (file)
@@ -20,8 +20,15 @@ NPROC = nproc
 if FREEBSD
         NPROC = sysctl -n hw.ncpu
 endif
+
+ROCKSDB_MAKE_VARS = CC="${CC}" CXX="${CXX}" EXTRA_CXXFLAGS=-fPIC
+ROCKSDB_MAKE_VARS += PORTABLE=1
+if !WITH_JEMALLOC
+ROCKSDB_MAKE_VARS += DISABLE_JEMALLOC=1
+endif
+
 rocksdb/librocksdb.a:
-       cd rocksdb && CC="${CC}" CXX="${CXX}" EXTRA_CXXFLAGS=-fPIC PORTABLE=1 $(MAKE) -j$(shell ${NPROC}) static_lib
+       cd rocksdb && $(ROCKSDB_MAKE_VARS) $(MAKE) -j$(shell ${NPROC}) static_lib
 libkv_a_CXXFLAGS += -I rocksdb/include -fPIC
 libkv_a_SOURCES += kv/RocksDBStore.cc
 libkv_a_LIBADD += rocksdb/librocksdb.a