summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xadmin/build-doc8
-rw-r--r--ceph.spec.in1
-rw-r--r--configure.ac14
-rw-r--r--debian/control1
4 files changed, 20 insertions, 4 deletions
diff --git a/admin/build-doc b/admin/build-doc
index 74892321b8f..37411667dcf 100755
--- a/admin/build-doc
+++ b/admin/build-doc
@@ -7,7 +7,7 @@ TOPDIR=`pwd`
install -d -m0755 build-doc
if command -v dpkg >/dev/null; then
- for package in python-dev python-pip python-virtualenv doxygen ditaa ant libxml2-dev libxslt1-dev; do
+ for package in python-dev python-pip python-virtualenv doxygen ditaa ant libxml2-dev libxslt1-dev cython; do
if [ "$(dpkg --status -- $package|sed -n 's/^Status: //p')" != "install ok installed" ]; then
# add a space after old values
missing="${missing:+$missing }$package"
@@ -19,7 +19,7 @@ if command -v dpkg >/dev/null; then
exit 1
fi
elif command -v yum >/dev/null; then
- for package in python-devel python-pip python-virtualenv doxygen ditaa ant libxml-devel libxslt-devel; do
+ for package in python-devel python-pip python-virtualenv doxygen ditaa ant libxml-devel libxslt-devel Cython; do
if ! rpm -q $package >/dev/null ; then
missing="${missing:+$missing }$package"
fi
@@ -30,7 +30,7 @@ elif command -v yum >/dev/null; then
exit 1
fi
else
- for command in virtualenv doxygen ant ditaa; do
+ for command in virtualenv doxygen ant ditaa cython; do
command -v "$command" > /dev/null;
ret_code=$?
if [ $ret_code -ne 0 ]; then
@@ -56,7 +56,7 @@ cd build-doc
[ -z "$vdir" ] && vdir="./virtualenv"
if [ ! -e $vdir ]; then
- virtualenv --no-site-packages $vdir
+ virtualenv --system-site-packages $vdir
fi
$vdir/bin/pip install --quiet -r ../admin/doc-requirements.txt
diff --git a/ceph.spec.in b/ceph.spec.in
index b5b8412a74a..ea5dc0dcf13 100644
--- a/ceph.spec.in
+++ b/ceph.spec.in
@@ -106,6 +106,7 @@ BuildRequires: boost-devel
BuildRequires: cmake
BuildRequires: cryptsetup
BuildRequires: fuse-devel
+BuildRequires: Cython
BuildRequires: gdbm
BuildRequires: hdparm
BuildRequires: leveldb-devel > 1.2
diff --git a/configure.ac b/configure.ac
index 77fe957d83d..d5acbc5c798 100644
--- a/configure.ac
+++ b/configure.ac
@@ -125,6 +125,12 @@ AC_ARG_WITH([rbd],
AM_CONDITIONAL(WITH_RBD, test "$with_rbd" = "yes")
#AS_IF([test "$with_rbd" = "yes"], [AC_DEFINE([WITH_RADOS, WITH_RBD])])
+AC_ARG_WITH([cython],
+ [AS_HELP_STRING([--with-cython], [build python bindings for librbd])],
+ [],
+ [with_cython=yes])
+AM_CONDITIONAL(WITH_CYTHON, test "$with_cython" = "yes")
+
# cephfs?
# cephfs requires rados
AC_ARG_WITH([cephfs],
@@ -201,6 +207,14 @@ AC_ARG_ENABLE([server],
AM_CONDITIONAL(ENABLE_SERVER, test "$enable_server" = "yes")
#AS_IF([test "$enable_server" = "yes"], [AC_DEFINE([WITH_MON, WITH_OSD, WITH_MDS, ENABLE_SERVER])])
+# cython is required to build librbd python bindings
+if test x"$with_cython" = xyes; then
+ AC_CHECK_PROG(CYTHON_CHECK, cython, yes)
+ if test x"$CYTHON_CHECK" != xyes; then
+ AC_MSG_FAILURE([cython not found])
+ fi
+fi
+
# cond-check if snappy-devel is installed, needed by leveldb that is need by server parts of the project
AS_IF([test "$enable_server" = "yes" -a \( "$with_osd" = "yes" -o "$with_mon" = "yes" \)],
[AC_CHECK_LIB([snappy], [snappy_compress], [true], [AC_MSG_FAILURE([libsnappy not found])])])
diff --git a/debian/control b/debian/control
index d757e05b7da..4581619a49e 100644
--- a/debian/control
+++ b/debian/control
@@ -13,6 +13,7 @@ Build-Depends: autoconf,
libbz2-dev,
cmake,
cryptsetup-bin | cryptsetup,
+ cython,
debhelper (>= 6.0.7~),
default-jdk,
git,