[with_ocf=no])
AM_CONDITIONAL(WITH_OCF, [ test "$with_ocf" = "yes" ])
+# use system leveldb?
+AC_ARG_WITH([system-leveldb],
+ [AS_HELP_STRING([--with-system-leveldb], [use system leveldb])],
+ ,
+ [with_system_leveldb=no])
+AS_IF([test "x$with_system_leveldb" = xyes],
+ [AC_CHECK_LIB([leveldb], [leveldb_open], [], [AC_MSG_FAILURE([libleveldb not found])], [-lsnappy -lpthread])])
+AS_IF([test "x$with_system_leveldb" = xcheck],
+ [AC_CHECK_LIB([leveldb], [leveldb_open], [with_system_leveldb=yes], [], [-lsnappy -lpthread])])
+AM_CONDITIONAL(WITH_SYSTEM_LEVELDB, [ test "$with_system_leveldb" = "yes" ])
+
# use libaio?
AC_ARG_WITH([libaio],
[AS_HELP_STRING([--without-libaio], [disable libaio use by journal])],
AUTOMAKE_OPTIONS = gnu
-SUBDIRS = ocf leveldb
+SUBDIRS = ocf
DIST_SUBDIRS = gtest ocf leveldb
CLEANFILES =
bin_PROGRAMS =
# osd
ceph_osd_SOURCES = ceph_osd.cc objclass/class_debug.cc \
objclass/class_api.cc
-ceph_osd_LDADD = libosd.la libos.la leveldb/libleveldb.a $(LIBGLOBAL_LDA)
+ceph_osd_LDADD = libosd.la libos.la $(LIBGLOBAL_LDA)
+ceph_osd_CXXFLAGS = ${CRYPTO_CXXFLAGS} ${AM_CXXFLAGS}
+bin_PROGRAMS += ceph-osd
+
+if WITH_SYSTEM_LEVELDB
+ceph_osd_LDADD += -lleveldb -lsnappy
+else
+ceph_osd_LDADD += leveldb/libleveldb.a
+ceph_osd_CXXFLAGS += -I$(top_srcdir)/src/leveldb/include
+SUBDIRS += leveldb
+endif
+
if LINUX
ceph_osd_LDADD += -ldl
endif
-bin_PROGRAMS += ceph-osd
-ceph_osd_CXXFLAGS = ${CRYPTO_CXXFLAGS} ${AM_CXXFLAGS} \
- -I$(top_srcdir)/src/leveldb/include
# mds
ceph_mds_SOURCES = ceph_mds.cc