[Pkg-ceph-commits] [ceph] 09/59: Resync packaging for upstream project

James Downing Page jamespage at moszumanska.debian.org
Thu Feb 1 15:27:50 UTC 2018


This is an automated email from the git hooks/post-receive script.

jamespage pushed a commit to branch ubuntu/artful
in repository ceph.

commit ffc8c5133f6442e7b7306e6ccc8fec70869a88c3
Author: James Page <james.page at ubuntu.com>
Date:   Fri May 26 10:48:21 2017 +0000

    Resync packaging for upstream project
---
 debian/ceph-base.dirs                              |   1 +
 debian/ceph-base.install                           |   2 +-
 debian/ceph-common.install                         |   8 +
 debian/ceph-fs-common.install                      |   2 +-
 debian/ceph-fuse.install                           |   2 +-
 debian/ceph-mgr.dirs                               |   1 +
 debian/ceph-mgr.install                            |   2 +
 debian/ceph-mgr.postinst                           |  51 +++
 debian/ceph-mgr.prerm                              |  23 ++
 debian/ceph-osd.install                            |   4 +-
 debian/ceph-test.install                           |   4 +-
 debian/changelog                                   |  23 +-
 debian/control                                     | 375 +++++++++++++++------
 debian/libcephfs-dev.install                       |   2 +-
 debian/libcephfs-java.jlibs                        |   2 +-
 debian/libcephfs1.symbols                          | 152 ---------
 debian/{libcephfs1.install => libcephfs2.install}  |   0
 ...tian-overrides => libcephfs2.lintian-overrides} |   0
 debian/libcephfs2.symbols                          | 157 +++++++++
 debian/librados-dev.install                        |   2 +-
 debian/librados2.install                           |   1 +
 debian/librados2.symbols                           | 200 ++++++++++-
 debian/libradosstriper-dev.install                 |   2 -
 debian/libradosstriper1.symbols                    | 157 +--------
 debian/librbd-dev.install                          |   1 -
 debian/librbd1.symbols                             |  56 +++
 debian/librgw-dev.install                          |   2 -
 debian/patches/disable-boost_container-check.patch |  35 ++
 debian/patches/series                              |  19 +-
 debian/python-cephfs.install                       |   4 +-
 debian/python-rados.install                        |   2 +-
 debian/python-rbd.install                          |   4 +-
 debian/python-rgw.install                          |   2 +
 debian/python3-ceph-argparse.install               |   2 +
 debian/python3-cephfs.install                      |   3 +
 debian/python3-rados.install                       |   2 +
 debian/python3-rbd.install                         |   2 +
 debian/python3-rgw.install                         |   2 +
 debian/rados-objclass-dev.install                  |   1 +
 debian/radosgw.install                             |   4 +-
 debian/rules                                       |  78 +++--
 41 files changed, 911 insertions(+), 481 deletions(-)

diff --git a/debian/ceph-base.dirs b/debian/ceph-base.dirs
index 9881b83..a60a331 100644
--- a/debian/ceph-base.dirs
+++ b/debian/ceph-base.dirs
@@ -1,4 +1,5 @@
 var/lib/ceph/bootstrap-mds
+var/lib/ceph/bootstrap-mgr
 var/lib/ceph/bootstrap-osd
 var/lib/ceph/bootstrap-rgw
 var/lib/ceph/tmp
diff --git a/debian/ceph-base.install b/debian/ceph-base.install
index 8e1f092..c962afc 100644
--- a/debian/ceph-base.install
+++ b/debian/ceph-base.install
@@ -5,9 +5,9 @@ usr/bin/ceph-run
 usr/bin/crushtool
 usr/bin/monmaptool
 usr/bin/osdmaptool
-usr/lib/*/ceph/ceph_common.sh
 usr/lib/*/ceph/erasure-code/libec_*.so
 usr/lib/*/rados-classes/*.so
+usr/lib/ceph/ceph_common.sh
 usr/lib/python*/dist-packages/ceph_detect_init*
 usr/sbin/ceph-create-keys
 usr/sbin/ceph-detect-init
diff --git a/debian/ceph-common.install b/debian/ceph-common.install
old mode 100644
new mode 100755
index 8860cbf..7106826
--- a/debian/ceph-common.install
+++ b/debian/ceph-common.install
@@ -1,4 +1,6 @@
+#!/usr/bin/dh-exec --with=install
 etc/bash_completion.d/rados
+etc/bash_completion.d/radosgw-admin
 etc/bash_completion.d/rbd
 etc/ceph/rbdmap
 etc/default/ceph
@@ -12,11 +14,15 @@ usr/bin/ceph-post-file
 usr/bin/ceph-rbdnamer
 usr/bin/ceph-syn
 usr/bin/rados
+usr/bin/radosgw-admin
 usr/bin/rbd
 usr/bin/rbd-replay*
 usr/bin/rbdmap
+usr/lib/*/ceph/compressor/*
+usr/lib/*/ceph/crypto/* [amd64]
 usr/lib/python*/dist-packages/ceph_argparse.py*
 usr/lib/python*/dist-packages/ceph_daemon.py*
+usr/sbin/mount.ceph sbin
 usr/share/ceph/id_rsa_drop.ceph.com
 usr/share/ceph/id_rsa_drop.ceph.com.pub
 usr/share/ceph/known_hosts_drop.ceph.com
@@ -27,6 +33,8 @@ usr/share/man/man8/ceph-post-file.8
 usr/share/man/man8/ceph-rbdnamer.8
 usr/share/man/man8/ceph-syn.8
 usr/share/man/man8/ceph.8
+usr/share/man/man8/mount.ceph.8
 usr/share/man/man8/rados.8
+usr/share/man/man8/radosgw-admin.8
 usr/share/man/man8/rbd-replay*.8
 usr/share/man/man8/rbd.8
diff --git a/debian/ceph-fs-common.install b/debian/ceph-fs-common.install
index 70f6e94..a4f0bab 100644
--- a/debian/ceph-fs-common.install
+++ b/debian/ceph-fs-common.install
@@ -1,4 +1,4 @@
-usr/sbin/mount.ceph sbin
 usr/bin/cephfs
+usr/sbin/mount.ceph sbin
 usr/share/man/man8/cephfs.8
 usr/share/man/man8/mount.ceph.8
diff --git a/debian/ceph-fuse.install b/debian/ceph-fuse.install
index 364e863..d6ad4dc 100644
--- a/debian/ceph-fuse.install
+++ b/debian/ceph-fuse.install
@@ -1,3 +1,3 @@
-usr/sbin/mount.fuse.ceph sbin
 usr/bin/ceph-fuse
+usr/sbin/mount.fuse.ceph sbin
 usr/share/man/man8/ceph-fuse.8
diff --git a/debian/ceph-mgr.dirs b/debian/ceph-mgr.dirs
new file mode 100644
index 0000000..636b3cf
--- /dev/null
+++ b/debian/ceph-mgr.dirs
@@ -0,0 +1 @@
+var/lib/ceph/mgr
diff --git a/debian/ceph-mgr.install b/debian/ceph-mgr.install
new file mode 100644
index 0000000..45864b1
--- /dev/null
+++ b/debian/ceph-mgr.install
@@ -0,0 +1,2 @@
+usr/bin/ceph-mgr
+usr/lib/*/ceph/mgr
diff --git a/debian/ceph-mgr.postinst b/debian/ceph-mgr.postinst
new file mode 100644
index 0000000..6d38ccf0
--- /dev/null
+++ b/debian/ceph-mgr.postinst
@@ -0,0 +1,51 @@
+#!/bin/sh
+# vim: set noet ts=8:
+# postinst script for ceph-mgr
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#
+# 	postinst configure <most-recently-configured-version>
+# 	old-postinst abort-upgrade <new-version>
+# 	conflictor's-postinst abort-remove in-favour <package> <new-version>
+# 	postinst abort-remove
+# 	deconfigured's-postinst abort-deconfigure in-favour <failed-install-package> <version> [<removing conflicting-package> <version>]
+#
+
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+[ -f "/etc/default/ceph" ] && . /etc/default/ceph
+[ -z "$SERVER_USER" ] && SERVER_USER=ceph
+[ -z "$SERVER_GROUP" ] && SERVER_GROUP=ceph
+
+case "$1" in
+    configure)
+	[ -x /sbin/start ] && start ceph-mgr-all || :
+
+	if ! dpkg-statoverride --list /var/lib/ceph/mgr >/dev/null
+	then
+            chown $SERVER_USER:$SERVER_GROUP /var/lib/ceph/mgr
+	fi
+    ;;
+    abort-upgrade|abort-remove|abort-deconfigure)
+	:
+    ;;
+
+    *)
+        echo "postinst called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+
diff --git a/debian/ceph-mgr.prerm b/debian/ceph-mgr.prerm
new file mode 100644
index 0000000..6fb7b24
--- /dev/null
+++ b/debian/ceph-mgr.prerm
@@ -0,0 +1,23 @@
+#!/bin/sh
+# vim: set noet ts=8:
+
+set -e
+
+case "$1" in
+    remove)
+	[ -x /sbin/stop ] && stop ceph-mgr-all || :
+	invoke-rc.d ceph stop mgr || {
+	    RESULT=$?
+	    if [ $RESULT != 100 ]; then
+		exit $RESULT
+	    fi
+	}
+	;;
+
+    *)
+	;;
+esac
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/ceph-osd.install b/debian/ceph-osd.install
index 03dbb18..b77057c 100644
--- a/debian/ceph-osd.install
+++ b/debian/ceph-osd.install
@@ -1,10 +1,10 @@
 udev/95-ceph-osd.rules lib/udev/rules.d
-usr/bin/ceph-bluefs-tool
+usr/bin/ceph-bluestore-tool
 usr/bin/ceph-clsinfo
 usr/bin/ceph-objectstore-tool
 usr/bin/ceph-osd
 usr/bin/ceph_objectstore_bench
-usr/lib/*/ceph/ceph-osd-prestart.sh /usr/lib/ceph/
+usr/lib/ceph/ceph-osd-prestart.sh
 usr/lib/python*/dist-packages/ceph_disk*
 usr/sbin/ceph-disk
 usr/sbin/ceph-disk-udev
diff --git a/debian/ceph-test.install b/debian/ceph-test.install
index fb308ec..df537a1 100644
--- a/debian/ceph-test.install
+++ b/debian/ceph-test.install
@@ -1,3 +1,4 @@
+usr/bin/ceph-client-debug /usr/lib/ceph/bin
 usr/bin/ceph-coverage /usr/lib/ceph/bin
 usr/bin/ceph-kvstore-tool /usr/lib/ceph/bin
 usr/bin/ceph-monstore-tool /usr/lib/ceph/bin
@@ -22,6 +23,7 @@ usr/bin/ceph_smalliobenchrbd /usr/lib/ceph/bin
 usr/bin/ceph_test_* /usr/lib/ceph/bin
 usr/bin/ceph_tpbench /usr/lib/ceph/bin
 usr/bin/ceph_xattr_bench /usr/lib/ceph/bin
-usr/bin/librgw_file* /usr/lib/ceph/bin
+usr/bin/dmclock-data-struct-tests /usr/lib/ceph
+usr/bin/dmclock-tests /usr/lib/ceph
 usr/lib/*/ceph/ceph-monstore-update-crush.sh /usr/lib/ceph
 usr/share/java/libcephfs-test.jar
diff --git a/debian/changelog b/debian/changelog
index 9a5ddfe..e3f01d2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,27 @@
 ceph (12.0.3-0ubuntu1) UNRELEASED; urgency=medium
 
   * New development preview for next stable release.
-
- -- James <james.page at ubuntu.com>  Fri, 26 May 2017 09:42:42 +0000
+  * Sync packaging changes with upstream:
+    - d/control,python3-*,rules: Add Python 3 support
+    - d/control,python-rgw.*: Add Python rgw module.
+    - d/control,ceph-mgr.*,rules: Add ceph-mgr binary packages.
+    - d/*.symbols: Update for new release.
+    - d/control,rules,*.install: Switch buildsystem to cmake.
+    - d/control,rados-objclass-dev.*: Add rados-objclass-dev
+      binary package.
+    - d/control,ceph-fs-common.install: Drop ceph-fs-common, fold
+      binaries into ceph-common.
+    - d/control,ceph-common.install: Move radosgw-admin to
+      ceph-common package.
+    - d/ceph-common.install: Install crypto modules on amd64 only.
+    - d/*: wrap-and-sort.
+  * Use distro provided boost libraries:
+    - d/p/disable-boost_container-check.patch: Cherry pick fix from
+      upstream VCS to check for Boost.Container headers only.
+    - d/rules: Enable use of system boost instead of vendored copy.
+    - d/control: Add required boost dependencies >= 1.61.
+
+ -- James Page <james.page at ubuntu.com>  Fri, 26 May 2017 09:42:42 +0000
 
 ceph (10.2.7-0ubuntu1) artful; urgency=medium
 
diff --git a/debian/control b/debian/control
index db3b1a5..e097001 100644
--- a/debian/control
+++ b/debian/control
@@ -4,14 +4,17 @@ Priority: optional
 Maintainer: Ubuntu Developers <ubuntu-devel-discuss at lists.ubuntu.com>
 XSBC-Original-Maintainer: Ceph Maintainers <ceph-maintainers at lists.ceph.com>
 Uploaders: Laszlo Boszormenyi (GCS) <gcs at debian.org>,
-           James Page <jamespage at debian.org>
+           James Page <jamespage at debian.org>,
 Homepage: http://ceph.com/
 Vcs-Git: git://anonscm.debian.org/pkg-ceph/ceph.git
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-ceph/ceph.git
-Build-Depends: cython,
+Build-Depends: cmake,
+               cython,
+               cython3,
                debhelper (>= 9~),
                default-jdk,
                dh-autoreconf,
+               dh-exec,
                dh-python,
                dh-systemd (>= 1.5),
                dpkg-dev (>= 1.16.1~),
@@ -22,13 +25,17 @@ Build-Depends: cython,
                libbabeltrace-ctf-dev,
                libbabeltrace-dev,
                libblkid-dev,
-               libboost-dev (>= 1.42),
-               libboost-iostreams-dev (>= 1.42),
-               libboost-program-options-dev (>= 1.42),
-               libboost-random-dev,
-               libboost-regex-dev,
-               libboost-system-dev (>= 1.42),
-               libboost-thread-dev (>= 1.42),
+               libboost-context-dev (>= 1.61),
+               libboost-coroutine-dev (>= 1.61),
+               libboost-date-time-dev (>= 1.61),
+               libboost-dev (>= 1.61),
+               libboost-iostreams-dev (>= 1.61),
+               libboost-program-options-dev (>= 1.61),
+               libboost-python-dev (>= 1.61),
+               libboost-random-dev (>= 1.61),
+               libboost-regex-dev (>= 1.61),
+               libboost-system-dev (>= 1.61),
+               libboost-thread-dev (>= 1.61),
                libbz2-dev,
                libcurl4-gnutls-dev,
                libedit-dev,
@@ -36,6 +43,7 @@ Build-Depends: cython,
                libfcgi-dev,
                libfuse-dev,
                libgoogle-perftools-dev [i386 amd64 powerpc armhf arm64 ppc64el],
+               libibverbs-dev,
                libkeyutils-dev,
                libldap2-dev,
                libleveldb-dev,
@@ -47,29 +55,32 @@ Build-Depends: cython,
                libxml2-dev,
                lsb-release,
                pkg-config,
-               python-all (>= 2.6.6-3~),
-               python-dev,
+               python-all-dev (>= 2.6.6-3~),
                python-nose,
+               python-prettytable,
                python-setuptools,
                python-sphinx,
+               python3-all-dev,
+               python3-setuptools,
                uuid-dev,
                uuid-runtime,
                valgrind [amd64 armhf i386 powerpc],
                xfslibs-dev,
                xfsprogs,
                yasm [amd64],
-               zlib1g-dev
-Build-Conflicts: libcrypto++-dev
+               zlib1g-dev,
+Build-Conflicts: libcrypto++-dev,
 Standards-Version: 3.9.8
 X-Python-Version: >= 2.6
 XS-Testsuite: autopkgtest
 
 Package: ceph
 Architecture: linux-any
-Depends: ceph-mon (= ${binary:Version}),
+Depends: ceph-mgr (= ${binary:Version}),
+         ceph-mon (= ${binary:Version}),
          ceph-osd (= ${binary:Version}),
-         ${misc:Depends}
-Suggests: ceph-mds (= ${binary:Version})
+         ${misc:Depends},
+Suggests: ceph-mds (= ${binary:Version}),
 Description: distributed storage and file system
  Ceph is a massively scalable, open-source, distributed
  storage system that runs on commodity hardware and delivers object,
@@ -87,36 +98,36 @@ Depends: binutils,
          xfsprogs,
          ${misc:Depends},
          ${python:Depends},
-         ${shlibs:Depends}
-Pre-Depends: ${misc:Pre-Depends}
+         ${shlibs:Depends},
+Pre-Depends: ${misc:Pre-Depends},
 Breaks: ceph (<< 10.2.2-0ubuntu2~),
         ceph-common (<< 9.2.0-0ubuntu1~),
         ceph-test (<< 9.2.0-0ubuntu1~),
-        python-ceph (<< 0.94.1-1~)
+        python-ceph (<< 0.94.1-1~),
 Replaces: ceph (<< 10.2.2-0ubuntu2~),
           ceph-common (<< 9.2.0-0ubuntu1~),
           ceph-test (<< 9.2.0-0ubuntu1~),
-          python-ceph (<< 0.94.1-1~)
-Recommends: libcephfs1,
+          python-ceph (<< 0.94.1-1~),
+Recommends: libcephfs2,
             librados2,
             libradosstriper1,
             librbd1,
-            ntp | time-daemon | chrony
-Suggests: logrotate
+            ntp | time-daemon | chrony,
+Suggests: logrotate,
 Description: common ceph daemon libraries and management tools
  Ceph is a distributed storage system designed to provide excellent
  performance, reliability, and scalability.
  .
  This package contains the libraries and management tools that are common among
- the three Ceph server daemons (ceph-mon, ceph-osd, ceph-mds). These tools are
- necessary for creating, running, and administering a Ceph storage cluster.
+ the Ceph server daemons (ceph-mon, ceph-mgr, ceph-osd, ceph-mds). These tools
+ are necessary for creating, running, and administering a Ceph storage cluster.
 
 Package: rbd-mirror
 Architecture: linux-any
 Depends: ceph-common (= ${binary:Version}),
          librados2 (= ${binary:Version}),
          ${misc:Depends},
-         ${shlibs:Depends}
+         ${shlibs:Depends},
 Description: Ceph daemon for mirroring RBD images
  Ceph is a distributed storage system designed to provide excellent
  performance, reliability, and scalability.
@@ -126,7 +137,8 @@ Description: Ceph daemon for mirroring RBD images
 
 Package: rbd-nbd
 Architecture: linux-any
-Depends: ${misc:Depends}, ${shlibs:Depends}
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
 Description: NBD-based rbd client for the Ceph distributed file system
  Ceph is a massively scalable, open-source, distributed
  storage system that runs on commodity hardware and delivers object,
@@ -146,29 +158,54 @@ Depends: librbd1 (= ${binary:Version}),
          python-requests,
          ${misc:Depends},
          ${python:Depends},
-         ${shlibs:Depends}
-Conflicts: ceph-client-tools
+         ${shlibs:Depends},
+Conflicts: ceph-client-tools,
 Breaks: ceph (<< 9.2.0-0ubuntu1~),
+        ceph-fs-common (<< 12.0.3-0ubuntu1~),
         ceph-test (<< 9.2.0-0ubuntu1~),
         librbd1 (<< 0.94.1-1~),
-        python-ceph (<< 0.94.1-1~)
+        python-ceph (<< 0.94.1-1~),
+        radosgw (<< 12.0.3-0ubuntu1~),
 Replaces: ceph (<< 9.2.0-0ubuntu1~),
           ceph-client-tools,
+          ceph-fs-common (<< 12.0.3-0ubuntu1~),
           ceph-test (<< 9.2.0-0ubuntu1~),
           librbd1 (<< 0.94.1-1~),
-          python-ceph (<< 0.94.1-1~)
-Suggests: ceph, ceph-mds
+          python-ceph (<< 0.94.1-1~),
+          radosgw (<< 12.0.3-0ubuntu1~),
+Suggests: ceph,
+          ceph-mds,
 Description: common utilities to mount and interact with a ceph storage cluster
  Ceph is a distributed storage and file system designed to provide
  excellent performance, reliability, and scalability.  This is a collection
  of common tools that allow one to interact with and administer a Ceph cluster.
 
+Package: ceph-mgr
+Architecture: linux-any
+Depends: ceph-base (= ${binary:Version}),
+         ${misc:Depends},
+         ${python:Depends},
+         ${shlibs:Depends},
+Replaces: ceph (<< 0.93-417),
+Breaks: ceph (<< 0.93-417),
+Description: metadata server for the ceph distributed file system
+ Ceph is a massively scalable, open-source, distributed
+ storage system that runs on commodity hardware and delivers object,
+ block and file system storage.
+ .
+ This package contains the manager daemon, which is used to expose high
+ level management and monitoring functionality.
+
 Package: ceph-mds
 Architecture: linux-any
-Depends: ceph, ${misc:Depends}, ${shlibs:Depends}
-Recommends: ceph-fs-common, ceph-fuse, libcephfs1
-Breaks: ceph (<< 0.67.3-1)
-Replaces: ceph (<< 0.67.3-1)
+Depends: ceph,
+         ${misc:Depends},
+         ${shlibs:Depends},
+Recommends: ceph-common,
+            ceph-fuse,
+            libcephfs2,
+Breaks: ceph (<< 0.67.3-1),
+Replaces: ceph (<< 0.67.3-1),
 Description: metadata server for the ceph distributed file system
  Ceph is a distributed storage and network file system designed to
  provide excellent performance, reliability, and scalability.
@@ -179,11 +216,11 @@ Description: metadata server for the ceph distributed file system
 Package: ceph-mon
 Architecture: linux-any
 Depends: ceph-base (= ${binary:Version}),
-         python-flask,
          ${misc:Depends},
-         ${shlibs:Depends}
-Replaces: ceph (<< 10.2.2-0ubuntu2~)
-Breaks: ceph (<< 10.2.2-0ubuntu2~)
+         ${python:Depends},
+         ${shlibs:Depends},
+Replaces: ceph (<< 10.2.2-0ubuntu2~),
+Breaks: ceph (<< 10.2.2-0ubuntu2~),
 Description: monitor server for the ceph storage system
  Ceph is a massively scalable, open-source, distributed
  storage system that runs on commodity hardware and delivers object,
@@ -196,10 +233,13 @@ Description: monitor server for the ceph storage system
 
 Package: ceph-osd
 Architecture: linux-any
-Depends: ceph-base (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
-Pre-Depends: ceph-common (= ${binary:Version})
-Replaces: ceph (<< 10.2.2-0ubuntu2~)
-Breaks: ceph (<< 10.2.2-0ubuntu2~)
+Depends: ceph-base (= ${binary:Version}),
+         ${misc:Depends},
+         ${python:Depends},
+         ${shlibs:Depends},
+Pre-Depends: ceph-common (= ${binary:Version}),
+Replaces: ceph (<< 10.2.2-0ubuntu2~),
+Breaks: ceph (<< 10.2.2-0ubuntu2~),
 Description: OSD server for the ceph storage system
  Ceph is a massively scalable, open-source, distributed
  storage system that runs on commodity hardware and delivers object,
@@ -211,8 +251,9 @@ Description: OSD server for the ceph storage system
 
 Package: ceph-fuse
 Architecture: amd64
-Depends: ${misc:Depends}, ${shlibs:Depends}
-Recommends: fuse
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+Recommends: fuse,
 Description: FUSE-based client for the Ceph distributed file system
  Ceph is a distributed network file system designed to provide
  excellent performance, reliability, and scalability.  This is a
@@ -227,31 +268,21 @@ Description: FUSE-based client for the Ceph distributed file system
 
 Package: rbd-fuse
 Architecture: linux-any
-Depends: ${misc:Depends}, ${shlibs:Depends}
-Recommends: fuse
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+Recommends: fuse,
 Description: FUSE-based rbd client for the Ceph distributed file system
  Ceph is a distributed network file system designed to provide
  excellent performance, reliability, and scalability.  This is a
  FUSE-based client that allows one to map Ceph rbd images as files.
 
-Package: ceph-fs-common
-Architecture: linux-any
-Depends: ${misc:Depends}, ${shlibs:Depends}
-Breaks: ceph-common (<< 0.67.3-1)
-Conflicts: ceph-client-tools
-Replaces: ceph-client-tools, ceph-common (<< 0.67.3-1)
-Suggests: ceph-mds
-Description: common utilities to mount and interact with a ceph file system
- Ceph is a distributed network file system designed to provide
- excellent performance, reliability, and scalability.  This is a collection
- of common tools, including the mount utility, that allows one to mount the
- Ceph file system with the kernel client.
-
 Package: ceph-resource-agents
 Architecture: all
 Priority: extra
-Recommends: pacemaker
-Depends: ceph (>= ${binary:Version}), resource-agents, ${misc:Depends}
+Recommends: pacemaker,
+Depends: ceph (>= ${binary:Version}),
+         resource-agents,
+         ${misc:Depends},
 Description: OCF-compliant resource agents for Ceph
  Ceph is a distributed storage and network file system designed to provide
  excellent performance, reliability, and scalability.
@@ -263,10 +294,13 @@ Description: OCF-compliant resource agents for Ceph
 Package: librados2
 Architecture: linux-any
 Section: libs
-Conflicts: librados, librados1
-Replaces: librados, librados1
-Depends: ${misc:Depends}, ${shlibs:Depends}
-Pre-Depends: ${misc:Pre-Depends}
+Conflicts: librados,
+           librados1,
+Replaces: librados,
+          librados1,
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+Pre-Depends: ${misc:Pre-Depends},
 Description: RADOS distributed object store client library
  RADOS is a reliable, autonomic distributed object storage cluster
  developed as part of the Ceph distributed storage system.  This is a
@@ -276,9 +310,13 @@ Description: RADOS distributed object store client library
 Package: librados-dev
 Architecture: linux-any
 Section: libdevel
-Depends: librados2 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
-Conflicts: librados1-dev, librados2-dev
-Replaces: librados1-dev, librados2-dev
+Depends: librados2 (= ${binary:Version}),
+         ${misc:Depends},
+         ${shlibs:Depends},
+Conflicts: librados1-dev,
+           librados2-dev,
+Replaces: librados1-dev,
+          librados2-dev,
 Description: RADOS distributed object store client library (development files)
  RADOS is a reliable, autonomic distributed object storage cluster
  developed as part of the Ceph distributed storage system.  This is a
@@ -291,7 +329,9 @@ Description: RADOS distributed object store client library (development files)
 Package: libradosstriper1
 Architecture: linux-any
 Section: libs
-Depends: librados2 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
+Depends: librados2 (= ${binary:Version}),
+         ${misc:Depends},
+         ${shlibs:Depends},
 Description: RADOS striping interface
  Striping interface built on top of the rados library, allowing
  to stripe bigger objects onto several standard rados objects using
@@ -300,7 +340,8 @@ Description: RADOS striping interface
 Package: libradosstriper-dev
 Architecture: linux-any
 Section: libdevel
-Depends: libradosstriper1 (= ${binary:Version}), ${misc:Depends}
+Depends: libradosstriper1 (= ${binary:Version}),
+         ${misc:Depends},
 Description: RADOS striping interface (development files)
  libradosstriper is a striping interface built on top of the rados
  library, allowing to stripe bigger objects onto several standard
@@ -312,8 +353,10 @@ Description: RADOS striping interface (development files)
 Package: librbd1
 Architecture: linux-any
 Section: libs
-Depends: librados2 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
-Pre-Depends: ${misc:Pre-Depends}
+Depends: librados2 (= ${binary:Version}),
+         ${misc:Depends},
+         ${shlibs:Depends},
+Pre-Depends: ${misc:Pre-Depends},
 Description: RADOS block device client library
  RBD is a block device striped across multiple distributed objects
  in RADOS, a reliable, autonomic distributed object storage cluster
@@ -323,9 +366,11 @@ Description: RADOS block device client library
 Package: librbd-dev
 Architecture: linux-any
 Section: libdevel
-Depends: librados-dev, librbd1 (= ${binary:Version}), ${misc:Depends}
-Conflicts: librbd1-dev
-Replaces: librbd1-dev
+Depends: librados-dev,
+         librbd1 (= ${binary:Version}),
+         ${misc:Depends},
+Conflicts: librbd1-dev,
+Replaces: librbd1-dev,
 Description: RADOS block device client library (development files)
  RBD is a block device striped across multiple distributed objects
  in RADOS, a reliable, autonomic distributed object storage cluster
@@ -335,13 +380,18 @@ Description: RADOS block device client library (development files)
  This package contains development files needed for building applications that
  link against librbd1.
 
-Package: libcephfs1
+Package: libcephfs2
 Architecture: linux-any
 Section: libs
-Conflicts: libceph, libceph1, libcephfs
-Replaces: libceph, libceph1, libcephfs
-Depends: ${misc:Depends}, ${shlibs:Depends}
-Pre-Depends: ${misc:Pre-Depends}
+Conflicts: libceph,
+           libceph1,
+           libcephfs,
+Replaces: libceph,
+          libceph1,
+          libcephfs,
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+Pre-Depends: ${misc:Pre-Depends},
 Description: Ceph distributed file system client library
  Ceph is a distributed network file system designed to provide
  excellent performance, reliability, and scalability.  This is a
@@ -351,9 +401,14 @@ Description: Ceph distributed file system client library
 Package: libcephfs-dev
 Architecture: linux-any
 Section: libdevel
-Depends: libcephfs1 (= ${binary:Version}), ${misc:Depends}
-Conflicts: libceph-dev, libceph1-dev, libcephfs1-dev
-Replaces: libceph-dev, libceph1-dev, libcephfs1-dev
+Depends: libcephfs2 (= ${binary:Version}),
+         ${misc:Depends},
+Conflicts: libceph-dev,
+           libceph1-dev,
+           libcephfs2-dev,
+Replaces: libceph-dev,
+          libceph1-dev,
+          libcephfs2-dev,
 Description: Ceph distributed file system client library (development files)
  Ceph is a distributed network file system designed to provide
  excellent performance, reliability, and scalability.  This is a
@@ -361,12 +416,14 @@ Description: Ceph distributed file system client library (development files)
  file system via a POSIX-like interface.
  .
  This package contains development files needed for building applications that
- link against libcephfs1.
+ link against libcephfs2.
 
 Package: librgw2
 Architecture: linux-any
 Section: libs
-Depends: librados2 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
+Depends: librados2 (= ${binary:Version}),
+         ${misc:Depends},
+         ${shlibs:Depends},
 Description: RADOS Gateway client library
  RADOS is a distributed object store used by the Ceph distributed
  storage system.  This package provides a REST gateway to the
@@ -380,7 +437,7 @@ Architecture: linux-any
 Section: libdevel
 Depends: librados-dev (= ${binary:Version}),
          librgw2 (= ${binary:Version}),
-         ${misc:Depends}
+         ${misc:Depends},
 Description: RADOS client library (development files)
  RADOS is a distributed object store used by the Ceph distributed
  storage system.  This package provides a REST gateway to the
@@ -395,8 +452,8 @@ Architecture: linux-any
 Depends: ceph-common (= ${binary:Version}),
          librgw2 (= ${binary:Version}),
          ${misc:Depends},
-         ${shlibs:Depends}
-Suggests: logrotate
+         ${shlibs:Depends},
+Suggests: logrotate,
 Description: REST gateway for RADOS distributed object store
  RADOS is a distributed object store used by the Ceph distributed
  storage system.  This package provides a REST gateway to the
@@ -412,7 +469,7 @@ Depends: ceph-common,
          xml2,
          xmlstarlet,
          ${misc:Depends},
-         ${shlibs:Depends}
+         ${shlibs:Depends},
 Description: Ceph test and benchmarking tools
  Ceph is a distributed storage system designed to provide excellent
  performance, reliability, and scalability.
@@ -425,8 +482,9 @@ Section: python
 Depends: python-cephfs (>= ${binary:Version}),
          python-rados (>= ${binary:Version}),
          python-rbd (>= ${binary:Version}),
+         python-rgw (>= ${binary:Version}),
          ${misc:Depends},
-         ${python:Depends}
+         ${python:Depends},
 Description: Meta-package for python libraries for the Ceph libraries
  Ceph is a massively scalable, open-source, distributed
  storage system that runs on commodity hardware and delivers object,
@@ -437,9 +495,12 @@ Description: Meta-package for python libraries for the Ceph libraries
 Package: python-rados
 Architecture: linux-any
 Section: python
-Depends: librados2 (= ${binary:Version}), ${misc:Depends}, ${python:Depends}
-Replaces: python-ceph (<< 0.94.1-1~)
-Breaks: python-ceph (<< 0.94.1-1~)
+Depends: librados2 (= ${binary:Version}),
+         ${misc:Depends},
+         ${python:Depends},
+         ${shlibs:Depends},
+Replaces: python-ceph (<< 0.94.1-1~),
+Breaks: python-ceph (<< 0.94.1-1~),
 Description: Python libraries for the Ceph librados library
  Ceph is a massively scalable, open-source, distributed
  storage system that runs on commodity hardware and delivers object,
@@ -448,12 +509,30 @@ Description: Python libraries for the Ceph librados library
  This package contains Python libraries for interacting with Ceph's
  RADOS object storage.
 
+Package: python3-rados
+Architecture: linux-any
+Section: python
+Depends: librados2 (= ${binary:Version}),
+         ${misc:Depends},
+         ${python3:Depends},
+         ${shlibs:Depends},
+Description: Python 3 libraries for the Ceph librados library
+ Ceph is a massively scalable, open-source, distributed
+ storage system that runs on commodity hardware and delivers object,
+ block and file system storage.
+ .
+ This package contains Python 3 libraries for interacting with Ceph's
+ RADOS object storage.
+
 Package: python-rbd
 Architecture: linux-any
 Section: python
-Depends: librbd1 (= ${binary:Version}), ${misc:Depends}, ${python:Depends}
-Replaces: python-ceph (<< 0.94.1-1~)
-Breaks: python-ceph (<< 0.94.1-1~)
+Depends: librbd1 (= ${binary:Version}),
+         ${misc:Depends},
+         ${python:Depends},
+         ${shlibs:Depends},
+Replaces: python-ceph (<< 0.94.1-1~),
+Breaks: python-ceph (<< 0.94.1-1~),
 Description: Python libraries for the Ceph librbd library
  Ceph is a massively scalable, open-source, distributed
  storage system that runs on commodity hardware and delivers object,
@@ -462,12 +541,61 @@ Description: Python libraries for the Ceph librbd library
  This package contains Python libraries for interacting with Ceph's
  RBD block device library.
 
+Package: python3-rbd
+Architecture: linux-any
+Section: python
+Depends: librbd1 (>= ${binary:Version}),
+         ${misc:Depends},
+         ${python3:Depends},
+         ${shlibs:Depends},
+Description: Python 3 libraries for the Ceph librbd library
+ Ceph is a massively scalable, open-source, distributed
+ storage system that runs on commodity hardware and delivers object,
+ block and file system storage.
+ .
+ This package contains Python 3 libraries for interacting with Ceph's
+ RBD block device library.
+
+Package: python-rgw
+Architecture: linux-any
+Section: python
+Depends: librgw2 (>= ${binary:Version}),
+         ${misc:Depends},
+         ${python:Depends},
+         ${shlibs:Depends},
+Replaces: python-ceph (<< 0.92-1223),
+Breaks: python-ceph (<< 0.92-1223),
+Description: Python 2 libraries for the Ceph librgw library
+ Ceph is a massively scalable, open-source, distributed
+ storage system that runs on commodity hardware and delivers object,
+ block and file system storage.
+ .
+ This package contains Python 2 libraries for interacting with Ceph's
+ RGW library.
+
+Package: python3-rgw
+Architecture: linux-any
+Section: python
+Depends: librgw2 (>= ${binary:Version}),
+         ${misc:Depends},
+         ${python3:Depends},
+         ${shlibs:Depends},
+Description: Python 3 libraries for the Ceph librgw library
+ Ceph is a massively scalable, open-source, distributed
+ storage system that runs on commodity hardware and delivers object,
+ block and file system storage.
+ .
+ This package contains Python 3 libraries for interacting with Ceph's
+ RGW library.
+
 Package: python-cephfs
 Architecture: linux-any
 Section: python
-Depends: libcephfs1 (= ${binary:Version}), ${misc:Depends}, ${python:Depends}
-Replaces: python-ceph (<< 0.94.1-1~)
-Breaks: python-ceph (<< 0.94.1-1~)
+Depends: libcephfs2 (= ${binary:Version}),
+         ${misc:Depends},
+         ${python:Depends},
+Replaces: python-ceph (<< 0.94.1-1~),
+Breaks: python-ceph (<< 0.94.1-1~),
 Description: Python libraries for the Ceph libcephfs library
  Ceph is a massively scalable, open-source, distributed
  storage system that runs on commodity hardware and delivers object,
@@ -476,10 +604,40 @@ Description: Python libraries for the Ceph libcephfs library
  This package contains Python libraries for interacting with Ceph's
  CephFS file system client library.
 
+Package: python3-cephfs
+Architecture: linux-any
+Section: python
+Depends: libcephfs2 (= ${binary:Version}),
+         ${misc:Depends},
+         ${python3:Depends},
+         ${shlibs:Depends},
+Description: Python 3 libraries for the Ceph libcephfs library
+ Ceph is a massively scalable, open-source, distributed
+ storage system that runs on commodity hardware and delivers object,
+ block and file system storage.
+ .
+ This package contains Python 3 libraries for interacting with Ceph's
+ CephFS file system client library.
+
+Package: python3-ceph-argparse
+Architecture: linux-any
+Section: python
+Depends: ${misc:Depends},
+         ${python3:Depends},
+Description: Python 3 utility libraries for Ceph CLI
+ Ceph is a massively scalable, open-source, distributed
+ storage system that runs on commodity hardware and delivers object,
+ block and file system storage.
+ .
+ This package contains types and routines for Python 3 used by the
+ Ceph CLI as well as the RESTful interface.
+
 Package: libcephfs-java
 Architecture: all
 Section: java
-Depends: libcephfs-jni (>= ${binary:Version}), ${java:Depends}, ${misc:Depends}
+Depends: libcephfs-jni (>= ${binary:Version}),
+         ${java:Depends},
+         ${misc:Depends},
 Description: Java library for the Ceph File System
  Ceph is a distributed storage system designed to provide excellent
  performance, reliability, and scalability.
@@ -490,10 +648,21 @@ Description: Java library for the Ceph File System
 Package: libcephfs-jni
 Architecture: linux-any
 Section: libs
-Depends: libcephfs1 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
+Depends: libcephfs2 (= ${binary:Version}),
+         ${misc:Depends},
+         ${shlibs:Depends},
 Description: Java Native Interface library for CephFS Java bindings
  Ceph is a distributed storage system designed to provide excellent
  performance, reliability, and scalability.
  .
  This package contains the Java Native Interface library for interacting
  with the Ceph File System.
+
+Package: rados-objclass-dev
+Architecture: linux-any
+Section: libdevel
+Depends: librados-dev (= ${binary:Version}),
+         ${misc:Depends},
+Description: RADOS object class development kit.
+ .
+ This package contains development files needed for building RADOS object class plugins.
diff --git a/debian/libcephfs-dev.install b/debian/libcephfs-dev.install
index 716d003..f17a2cd 100644
--- a/debian/libcephfs-dev.install
+++ b/debian/libcephfs-dev.install
@@ -1,3 +1,3 @@
+usr/include/cephfs/ceph_statx.h
 usr/include/cephfs/libcephfs.h
-usr/lib/*/libcephfs.a
 usr/lib/*/libcephfs.so
diff --git a/debian/libcephfs-java.jlibs b/debian/libcephfs-java.jlibs
index f59632a..1029fb5 100644
--- a/debian/libcephfs-java.jlibs
+++ b/debian/libcephfs-java.jlibs
@@ -1 +1 @@
-src/java/libcephfs.jar
+debian/tmp/usr/share/java/libcephfs.jar
diff --git a/debian/libcephfs1.symbols b/debian/libcephfs1.symbols
deleted file mode 100644
index a1b223f..0000000
--- a/debian/libcephfs1.symbols
+++ /dev/null
@@ -1,152 +0,0 @@
-libcephfs.so.1 libcephfs1 #MINVER#
- (regex|c++)"^_.*" 0.87
- ceph_buffer_free at Base 0.93
- ceph_chdir at Base 0.72.2
- ceph_chmod at Base 0.72.2
- ceph_chown at Base 0.72.2
- ceph_close at Base 0.72.2
- ceph_closedir at Base 0.72.2
- ceph_conf_get at Base 0.72.2
- ceph_conf_parse_argv at Base 0.72.2
- ceph_conf_parse_env at Base 0.72.2
- ceph_conf_read_file at Base 0.72.2
- ceph_conf_set at Base 0.72.2
- ceph_create at Base 0.72.2
- ceph_create_with_context at Base 0.72.2
- ceph_create_from_rados at Base 10.1.0
- ceph_debug_get_fd_caps at Base 0.72.2
- ceph_debug_get_file_caps at Base 0.72.2
- ceph_fallocate at Base 0.72.2
- ceph_fchmod at Base 0.72.2
- ceph_fchown at Base 0.72.2
- ceph_fgetxattr at Base 9.2.0
- ceph_flistxattr at Base 9.2.0
- ceph_flock at Base 9.2.0
- ceph_fremovexattr at Base 9.2.0
- ceph_fsetxattr at Base 9.2.0
- ceph_fstat at Base 0.72.2
- ceph_fsync at Base 0.72.2
- ceph_ftruncate at Base 0.72.2
- ceph_get_file_extent_osds at Base 0.72.2
- ceph_get_file_layout at Base 0.72.2
- ceph_get_file_object_size at Base 0.72.2
- ceph_get_file_pool at Base 0.72.2
- ceph_get_file_pool_name at Base 0.72.2
- ceph_get_file_replication at Base 0.72.2
- ceph_get_file_stripe_address at Base 0.72.2
- ceph_get_file_stripe_count at Base 0.72.2
- ceph_get_file_stripe_unit at Base 0.72.2
- ceph_get_local_osd at Base 0.72.2
- ceph_get_mount_context at Base 0.72.2
- ceph_get_osd_addr at Base 0.72.2
- ceph_get_osd_crush_location at Base 0.72.2
- ceph_get_path_layout at Base 0.72.2
- ceph_get_path_object_size at Base 0.72.2
- ceph_get_path_pool at Base 0.72.2
- ceph_get_path_pool_name at Base 0.72.2
- ceph_get_path_replication at Base 0.72.2
- ceph_get_path_stripe_count at Base 0.72.2
- ceph_get_path_stripe_unit at Base 0.72.2
- ceph_get_pool_id at Base 0.72.2
- ceph_get_pool_name at Base 0.72.2
- ceph_get_pool_replication at Base 0.72.2
- ceph_get_stripe_unit_granularity at Base 0.72.2
- ceph_getcwd at Base 0.72.2
- ceph_getdents at Base 0.72.2
- ceph_getdnames at Base 0.72.2
- ceph_getxattr at Base 0.72.2
- ceph_init at Base 0.93
- ceph_is_mounted at Base 0.72.2
- ceph_lchown at Base 0.72.2
- ceph_lgetxattr at Base 0.72.2
- ceph_link at Base 0.72.2
- ceph_listxattr at Base 0.72.2
- ceph_ll_close at Base 0.79
- ceph_ll_commit_blocks at Base 0.79
- ceph_ll_create at Base 0.79
- ceph_ll_file_layout at Base 0.79
- ceph_ll_forget at Base 0.79
- ceph_ll_fsync at Base 0.79
- ceph_ll_get_inode at Base 0.79
- ceph_ll_get_internal_offset at Base 0.79
- ceph_ll_get_stripe_osd at Base 0.79
- ceph_ll_getattr at Base 0.79
- ceph_ll_getxattr at Base 0.79
- ceph_ll_link at Base 0.79
- ceph_ll_listxattr at Base 0.79
- ceph_ll_lookup at Base 0.79
- ceph_ll_lookup_inode at Base 0.79
- ceph_ll_lookup_root at Base 0.79
- ceph_ll_lseek at Base 0.79
- ceph_ll_mkdir at Base 0.79
- ceph_ll_num_osds at Base 0.79
- ceph_ll_open at Base 0.79
- ceph_ll_opendir at Base 0.79
- ceph_ll_osdaddr at Base 0.79
- ceph_ll_put at Base 0.79
- ceph_ll_read at Base 0.79
- ceph_ll_read_block at Base 0.79
- ceph_ll_readlink at Base 0.79
- ceph_ll_readv at Base 0.79
- ceph_ll_releasedir at Base 0.79
- ceph_ll_removexattr at Base 0.79
- ceph_ll_rename at Base 0.79
- ceph_ll_rmdir at Base 0.79
- ceph_ll_setattr at Base 0.79
- ceph_ll_setxattr at Base 0.79
- ceph_ll_snap_seq at Base 0.79
- ceph_ll_statfs at Base 0.79
- ceph_ll_stripe_unit at Base 0.79
- ceph_ll_symlink at Base 0.79
- ceph_ll_truncate at Base 0.79
- ceph_ll_unlink at Base 0.79
- ceph_ll_walk at Base 0.79
- ceph_ll_write at Base 0.79
- ceph_ll_write_block at Base 0.79
- ceph_ll_writev at Base 0.79
- ceph_llistxattr at Base 0.72.2
- ceph_localize_reads at Base 0.72.2
- ceph_lremovexattr at Base 0.72.2
- ceph_lseek at Base 0.72.2
- ceph_lsetxattr at Base 0.72.2
- ceph_lstat at Base 0.72.2
- ceph_mds_command at Base 0.93
- ceph_mkdir at Base 0.72.2
- ceph_mkdirs at Base 0.72.2
- ceph_mknod at Base 0.72.2
- ceph_mount at Base 0.72.2
- ceph_open at Base 0.72.2
- ceph_open_layout at Base 0.72.2
- ceph_opendir at Base 0.72.2
- ceph_preadv at Base 9.2.0
- ceph_pwritev at Base 9.2.0
- ceph_read at Base 0.72.2
- ceph_readdir at Base 0.72.2
- ceph_readdir_r at Base 0.72.2
- ceph_readdirplus_r at Base 0.72.2
- ceph_readlink at Base 0.72.2
- ceph_release at Base 0.72.2
- ceph_removexattr at Base 0.72.2
- ceph_rename at Base 0.72.2
- ceph_rewinddir at Base 0.72.2
- ceph_rmdir at Base 0.72.2
- ceph_seekdir at Base 0.72.2
- ceph_set_default_file_replication at Base 0.72.2
- ceph_set_default_file_stripe_count at Base 0.72.2
- ceph_set_default_file_stripe_unit at Base 0.72.2
- ceph_set_default_object_size at Base 0.72.2
- ceph_set_default_preferred_pg at Base 0.72.2
- ceph_setattr at Base 0.72.2
- ceph_setxattr at Base 0.72.2
- ceph_shutdown at Base 0.72.2
- ceph_stat at Base 0.72.2
- ceph_statfs at Base 0.72.2
- ceph_symlink at Base 0.72.2
- ceph_sync_fs at Base 0.72.2
- ceph_telldir at Base 0.72.2
- ceph_truncate at Base 0.72.2
- ceph_unlink at Base 0.72.2
- ceph_unmount at Base 0.72.2
- ceph_utime at Base 0.72.2
- ceph_version at Base 0.72.2
- ceph_write at Base 0.72.2
diff --git a/debian/libcephfs1.install b/debian/libcephfs2.install
similarity index 100%
rename from debian/libcephfs1.install
rename to debian/libcephfs2.install
diff --git a/debian/libcephfs1.lintian-overrides b/debian/libcephfs2.lintian-overrides
similarity index 100%
rename from debian/libcephfs1.lintian-overrides
rename to debian/libcephfs2.lintian-overrides
diff --git a/debian/libcephfs2.symbols b/debian/libcephfs2.symbols
new file mode 100644
index 0000000..fbdbba3
--- /dev/null
+++ b/debian/libcephfs2.symbols
@@ -0,0 +1,157 @@
+libcephfs.so.2 libcephfs2 #MINVER#
+ (regex|c++)"^_.*" 12.0.3
+ ceph_buffer_free at Base 12.0.3
+ ceph_chdir at Base 12.0.3
+ ceph_chmod at Base 12.0.3
+ ceph_chown at Base 12.0.3
+ ceph_close at Base 12.0.3
+ ceph_closedir at Base 12.0.3
+ ceph_conf_get at Base 12.0.3
+ ceph_conf_parse_argv at Base 12.0.3
+ ceph_conf_parse_env at Base 12.0.3
+ ceph_conf_read_file at Base 12.0.3
+ ceph_conf_set at Base 12.0.3
+ ceph_create at Base 12.0.3
+ ceph_create_from_rados at Base 12.0.3
+ ceph_create_with_context at Base 12.0.3
+ ceph_debug_get_fd_caps at Base 12.0.3
+ ceph_debug_get_file_caps at Base 12.0.3
+ ceph_fallocate at Base 12.0.3
+ ceph_fchmod at Base 12.0.3
+ ceph_fchown at Base 12.0.3
+ ceph_fgetxattr at Base 12.0.3
+ ceph_flistxattr at Base 12.0.3
+ ceph_flock at Base 12.0.3
+ ceph_fremovexattr at Base 12.0.3
+ ceph_fsetattrx at Base 12.0.3
+ ceph_fsetxattr at Base 12.0.3
+ ceph_fstatx at Base 12.0.3
+ ceph_fsync at Base 12.0.3
+ ceph_ftruncate at Base 12.0.3
+ ceph_get_file_extent_osds at Base 12.0.3
+ ceph_get_file_layout at Base 12.0.3
+ ceph_get_file_object_size at Base 12.0.3
+ ceph_get_file_pool at Base 12.0.3
+ ceph_get_file_pool_name at Base 12.0.3
+ ceph_get_file_replication at Base 12.0.3
+ ceph_get_file_stripe_address at Base 12.0.3
+ ceph_get_file_stripe_count at Base 12.0.3
+ ceph_get_file_stripe_unit at Base 12.0.3
+ ceph_get_local_osd at Base 12.0.3
+ ceph_get_mount_context at Base 12.0.3
+ ceph_get_osd_addr at Base 12.0.3
+ ceph_get_osd_crush_location at Base 12.0.3
+ ceph_get_path_layout at Base 12.0.3
+ ceph_get_path_object_size at Base 12.0.3
+ ceph_get_path_pool at Base 12.0.3
+ ceph_get_path_pool_name at Base 12.0.3
+ ceph_get_path_replication at Base 12.0.3
+ ceph_get_path_stripe_count at Base 12.0.3
+ ceph_get_path_stripe_unit at Base 12.0.3
+ ceph_get_pool_id at Base 12.0.3
+ ceph_get_pool_name at Base 12.0.3
+ ceph_get_pool_replication at Base 12.0.3
+ ceph_get_stripe_unit_granularity at Base 12.0.3
+ ceph_getcwd at Base 12.0.3
+ ceph_getdents at Base 12.0.3
+ ceph_getdnames at Base 12.0.3
+ ceph_getxattr at Base 12.0.3
+ ceph_init at Base 12.0.3
+ ceph_is_mounted at Base 12.0.3
+ ceph_lchown at Base 12.0.3
+ ceph_lgetxattr at Base 12.0.3
+ ceph_link at Base 12.0.3
+ ceph_listxattr at Base 12.0.3
+ ceph_ll_close at Base 12.0.3
+ ceph_ll_commit_blocks at Base 12.0.3
+ ceph_ll_create at Base 12.0.3
+ ceph_ll_file_layout at Base 12.0.3
+ ceph_ll_forget at Base 12.0.3
+ ceph_ll_fsync at Base 12.0.3
+ ceph_ll_get_inode at Base 12.0.3
+ ceph_ll_get_internal_offset at Base 12.0.3
+ ceph_ll_get_stripe_osd at Base 12.0.3
+ ceph_ll_getattr at Base 12.0.3
+ ceph_ll_getlk at Base 12.0.3
+ ceph_ll_getxattr at Base 12.0.3
+ ceph_ll_link at Base 12.0.3
+ ceph_ll_listxattr at Base 12.0.3
+ ceph_ll_lookup at Base 12.0.3
+ ceph_ll_lookup_inode at Base 12.0.3
+ ceph_ll_lookup_root at Base 12.0.3
+ ceph_ll_lseek at Base 12.0.3
+ ceph_ll_mkdir at Base 12.0.3
+ ceph_ll_mknod at Base 12.0.3
+ ceph_ll_num_osds at Base 12.0.3
+ ceph_ll_open at Base 12.0.3
+ ceph_ll_opendir at Base 12.0.3
+ ceph_ll_osdaddr at Base 12.0.3
+ ceph_ll_put at Base 12.0.3
+ ceph_ll_read at Base 12.0.3
+ ceph_ll_read_block at Base 12.0.3
+ ceph_ll_readlink at Base 12.0.3
+ ceph_ll_readv at Base 12.0.3
+ ceph_ll_releasedir at Base 12.0.3
+ ceph_ll_removexattr at Base 12.0.3
+ ceph_ll_rename at Base 12.0.3
+ ceph_ll_rmdir at Base 12.0.3
+ ceph_ll_setattr at Base 12.0.3
+ ceph_ll_setlk at Base 12.0.3
+ ceph_ll_setxattr at Base 12.0.3
+ ceph_ll_snap_seq at Base 12.0.3
+ ceph_ll_statfs at Base 12.0.3
+ ceph_ll_stripe_unit at Base 12.0.3
+ ceph_ll_symlink at Base 12.0.3
+ ceph_ll_unlink at Base 12.0.3
+ ceph_ll_walk at Base 12.0.3
+ ceph_ll_write at Base 12.0.3
+ ceph_ll_write_block at Base 12.0.3
+ ceph_ll_writev at Base 12.0.3
+ ceph_llistxattr at Base 12.0.3
+ ceph_localize_reads at Base 12.0.3
+ ceph_lremovexattr at Base 12.0.3
+ ceph_lseek at Base 12.0.3
+ ceph_lsetxattr at Base 12.0.3
+ ceph_mds_command at Base 12.0.3
+ ceph_mkdir at Base 12.0.3
+ ceph_mkdirs at Base 12.0.3
+ ceph_mknod at Base 12.0.3
+ ceph_mount at Base 12.0.3
+ ceph_mount_perms at Base 12.0.3
+ ceph_open at Base 12.0.3
+ ceph_open_layout at Base 12.0.3
+ ceph_opendir at Base 12.0.3
+ ceph_preadv at Base 12.0.3
+ ceph_pwritev at Base 12.0.3
+ ceph_read at Base 12.0.3
+ ceph_readdir at Base 12.0.3
+ ceph_readdir_r at Base 12.0.3
+ ceph_readdirplus_r at Base 12.0.3
+ ceph_readlink at Base 12.0.3
+ ceph_release at Base 12.0.3
+ ceph_removexattr at Base 12.0.3
+ ceph_rename at Base 12.0.3
+ ceph_rewinddir at Base 12.0.3
+ ceph_rmdir at Base 12.0.3
+ ceph_seekdir at Base 12.0.3
+ ceph_set_default_file_replication at Base 12.0.3
+ ceph_set_default_file_stripe_count at Base 12.0.3
+ ceph_set_default_file_stripe_unit at Base 12.0.3
+ ceph_set_default_object_size at Base 12.0.3
+ ceph_set_default_preferred_pg at Base 12.0.3
+ ceph_setattrx at Base 12.0.3
+ ceph_setxattr at Base 12.0.3
+ ceph_shutdown at Base 12.0.3
+ ceph_statfs at Base 12.0.3
+ ceph_statx at Base 12.0.3
+ ceph_symlink at Base 12.0.3
+ ceph_sync_fs at Base 12.0.3
+ ceph_telldir at Base 12.0.3
+ ceph_truncate at Base 12.0.3
+ ceph_unlink at Base 12.0.3
+ ceph_unmount at Base 12.0.3
+ ceph_userperm_destroy at Base 12.0.3
+ ceph_userperm_new at Base 12.0.3
+ ceph_utime at Base 12.0.3
+ ceph_version at Base 12.0.3
+ ceph_write at Base 12.0.3
diff --git a/debian/librados-dev.install b/debian/librados-dev.install
index 960a635..0b5773c 100644
--- a/debian/librados-dev.install
+++ b/debian/librados-dev.install
@@ -2,12 +2,12 @@ usr/bin/librados-config
 usr/include/rados/buffer.h
 usr/include/rados/buffer_fwd.h
 usr/include/rados/crc32c.h
+usr/include/rados/inline_memory.h
 usr/include/rados/librados.h
 usr/include/rados/librados.hpp
 usr/include/rados/memory.h
 usr/include/rados/page.h
 usr/include/rados/rados_types.h
 usr/include/rados/rados_types.hpp
-usr/lib/*/librados.a
 usr/lib/*/librados.so
 usr/share/man/man8/librados-config.8
diff --git a/debian/librados2.install b/debian/librados2.install
index a96bdb2..2020e29 100644
--- a/debian/librados2.install
+++ b/debian/librados2.install
@@ -1 +1,2 @@
+usr/lib/*/ceph/libceph-common.so*
 usr/lib/*/librados.so.*
diff --git a/debian/librados2.symbols b/debian/librados2.symbols
index 3cdd30a..5533e04 100644
--- a/debian/librados2.symbols
+++ b/debian/librados2.symbols
@@ -1,11 +1,189 @@
+libceph-common.so.0 librados2 #MINVER#
+ (regex|c++)"^_.*" 12.0.3
+ (regex)"^ceph_ver__[0-9a-f]{40}@Base$" 12.0.3
+ CEPH_CONF_FILE_DEFAULT at Base 12.0.3
+ MDS_GID_NONE at Base 12.0.3
+ MDS_RANK_NONE at Base 12.0.3
+ XXH32 at Base 12.0.3
+ XXH32_canonicalFromHash at Base 12.0.3
+ XXH32_createState at Base 12.0.3
+ XXH32_digest at Base 12.0.3
+ XXH32_freeState at Base 12.0.3
+ XXH32_hashFromCanonical at Base 12.0.3
+ XXH32_reset at Base 12.0.3
+ XXH32_update at Base 12.0.3
+ XXH64 at Base 12.0.3
+ XXH64_canonicalFromHash at Base 12.0.3
+ XXH64_createState at Base 12.0.3
+ XXH64_digest at Base 12.0.3
+ XXH64_freeState at Base 12.0.3
+ XXH64_hashFromCanonical at Base 12.0.3
+ XXH64_reset at Base 12.0.3
+ XXH64_update at Base 12.0.3
+ XXH_versionNumber at Base 12.0.3
+ (arch=ppc64el)__crc32_vpmsum at Base 12.0.3
+ boost_asio_detail_posix_thread_function at Base 12.0.3
+ (arch=amd64)ceph_arch_intel_aesni at Base 12.0.3
+ (arch=amd64)ceph_arch_intel_pclmul at Base 12.0.3
+ (arch=amd64)ceph_arch_intel_probe at Base 12.0.3
+ (arch=amd64)ceph_arch_intel_sse2 at Base 12.0.3
+ (arch=amd64)ceph_arch_intel_sse3 at Base 12.0.3
+ (arch=amd64)ceph_arch_intel_sse41 at Base 12.0.3
+ (arch=amd64)ceph_arch_intel_sse42 at Base 12.0.3
+ (arch=amd64)ceph_arch_intel_ssse3 at Base 12.0.3
+ (arch=arm64)ceph_arch_aarch64_crc32 at Base 12.0.3
+ (arch=arm64)ceph_arch_arm_probe at Base 12.0.3
+ (arch=ppc64el)ceph_arch_ppc_crc32 at Base 12.0.3
+ (arch=ppc64el)ceph_arch_ppc_probe at Base 12.0.3a
+ (arch=arm64)ceph_arch_neon at Base 12.0.3
+ ceph_arch_probe at Base 12.0.3
+ ceph_arch_probed at Base 12.0.3
+ ceph_armor at Base 12.0.3
+ ceph_armor_line_break at Base 12.0.3
+ (arch=arm64)ceph_crc32c_aarch64 at Base 12.0.3
+ ceph_crc32c_func at Base 12.0.3
+ ceph_crc32c_intel_baseline at Base 12.0.3
+ (arch=amd64)ceph_crc32c_intel_fast at Base 12.0.3
+ (arch=amd64)ceph_crc32c_intel_fast_exists at Base 12.0.3
+ (arch=ppc64el)ceph_crc32c_ppc at Base 12.0.3
+ ceph_crc32c_sctp at Base 12.0.3
+ ceph_os_fgetxattr at Base 12.0.3
+ ceph_os_flistxattr at Base 12.0.3
+ ceph_os_fremovexattr at Base 12.0.3
+ ceph_os_fsetxattr at Base 12.0.3
+ ceph_os_getxattr at Base 12.0.3
+ ceph_os_listxattr at Base 12.0.3
+ ceph_os_removexattr at Base 12.0.3
+ ceph_os_setxattr at Base 12.0.3
+ ceph_unarmor at Base 12.0.3
+ check_for_control_characters at Base 12.0.3
+ check_for_control_characters_cstr at Base 12.0.3
+ check_utf8 at Base 12.0.3
+ check_utf8_cstr at Base 12.0.3
+ code_environment_to_str at Base 12.0.3
+ (arch=amd64)crc32_iscsi_00 at Base 12.0.3
+ (arch=amd64)crc32_iscsi_00_slver at Base 12.0.3
+ (arch=amd64)crc32_iscsi_00_slver_00020014 at Base 12.0.3
+ (arch=amd64)crc32_iscsi_zero_00 at Base 12.0.3
+ (arch=amd64)crc32_iscsi_zero_00_slver at Base 12.0.3
+ (arch=amd64)crc32_iscsi_zero_00_slver_00020014 at Base 12.0.3
+ crc32_table_iscsi_base at Base 12.0.3
+ crush_add_bucket at Base 12.0.3
+ crush_add_list_bucket_item at Base 12.0.3
+ crush_add_rule at Base 12.0.3
+ crush_add_straw2_bucket_item at Base 12.0.3
+ crush_add_straw_bucket_item at Base 12.0.3
+ crush_add_tree_bucket_item at Base 12.0.3
+ crush_add_uniform_bucket_item at Base 12.0.3
+ crush_addition_is_unsafe at Base 12.0.3
+ crush_adjust_list_bucket_item_weight at Base 12.0.3
+ crush_adjust_straw2_bucket_item_weight at Base 12.0.3
+ crush_adjust_straw_bucket_item_weight at Base 12.0.3
+ crush_adjust_tree_bucket_item_weight at Base 12.0.3
+ crush_adjust_uniform_bucket_item_weight at Base 12.0.3
+ crush_bucket_add_item at Base 12.0.3
+ crush_bucket_adjust_item_weight at Base 12.0.3
+ crush_bucket_alg_name at Base 12.0.3
+ crush_bucket_remove_item at Base 12.0.3
+ crush_calc_straw at Base 12.0.3
+ crush_create at Base 12.0.3
+ crush_destroy at Base 12.0.3
+ crush_destroy_bucket at Base 12.0.3
+ crush_destroy_bucket_list at Base 12.0.3
+ crush_destroy_bucket_straw2 at Base 12.0.3
+ crush_destroy_bucket_straw at Base 12.0.3
+ crush_destroy_bucket_tree at Base 12.0.3
+ crush_destroy_bucket_uniform at Base 12.0.3
+ crush_destroy_choose_args at Base 12.0.3
+ crush_destroy_rule at Base 12.0.3
+ crush_do_rule at Base 12.0.3
+ crush_finalize at Base 12.0.3
+ crush_find_rule at Base 12.0.3
+ crush_get_bucket_item_weight at Base 12.0.3
+ crush_get_next_bucket_id at Base 12.0.3
+ crush_hash32 at Base 12.0.3
+ crush_hash32_2 at Base 12.0.3
+ crush_hash32_3 at Base 12.0.3
+ crush_hash32_4 at Base 12.0.3
+ crush_hash32_5 at Base 12.0.3
+ crush_hash_name at Base 12.0.3
+ crush_init_workspace at Base 12.0.3
+ crush_make_bucket at Base 12.0.3
+ crush_make_choose_args at Base 12.0.3
+ crush_make_list_bucket at Base 12.0.3
+ crush_make_rule at Base 12.0.3
+ crush_make_straw2_bucket at Base 12.0.3
+ crush_make_straw_bucket at Base 12.0.3
+ crush_make_tree_bucket at Base 12.0.3
+ crush_make_uniform_bucket at Base 12.0.3
+ crush_multiplication_is_unsafe at Base 12.0.3
+ crush_remove_bucket at Base 12.0.3
+ crush_remove_list_bucket_item at Base 12.0.3
+ crush_remove_straw2_bucket_item at Base 12.0.3
+ crush_remove_straw_bucket_item at Base 12.0.3
+ crush_remove_tree_bucket_item at Base 12.0.3
+ crush_remove_uniform_bucket_item at Base 12.0.3
+ crush_reweight_bucket at Base 12.0.3
+ crush_rule_set_step at Base 12.0.3
+ current_maxid at Base 12.0.3
+ decode_utf8 at Base 12.0.3
+ encode_utf8 at Base 12.0.3
+ escape_json_attr at Base 12.0.3
+ escape_json_attr_len at Base 12.0.3
+ escape_xml_attr at Base 12.0.3
+ escape_xml_attr_len at Base 12.0.3
+ g_ceph_context at Base 12.0.3
+ g_code_env at Base 12.0.3
+ g_conf at Base 12.0.3
+ g_lockdep at Base 12.0.3
+ get_linux_version at Base 12.0.3
+ get_process_name at Base 12.0.3
+ is_control_character at Base 12.0.3
+ last_freed_id at Base 12.0.3
+ mime_decode_from_qp at Base 12.0.3
+ mime_encode_as_qp at Base 12.0.3
+ module_has_param at Base 12.0.3
+ module_load at Base 12.0.3
+ pem_key at Base 12.0.3
+ pipe_cloexec at Base 12.0.3
+ resolve_addrs at Base 12.0.3
+ safe_cat at Base 12.0.3
+ safe_pread at Base 12.0.3
+ safe_pread_exact at Base 12.0.3
+ safe_pwrite at Base 12.0.3
+ safe_read at Base 12.0.3
+ safe_read_exact at Base 12.0.3
+ safe_read_file at Base 12.0.3
+ safe_splice at Base 12.0.3
+ safe_splice_exact at Base 12.0.3
+ safe_write at Base 12.0.3
+ safe_write_file at Base 12.0.3
+ sctp_crc_c at Base 12.0.3
+ sctp_crc_tableil8_o32 at Base 12.0.3
+ sctp_crc_tableil8_o40 at Base 12.0.3
+ sctp_crc_tableil8_o48 at Base 12.0.3
+ sctp_crc_tableil8_o56 at Base 12.0.3
+ sctp_crc_tableil8_o64 at Base 12.0.3
+ sctp_crc_tableil8_o72 at Base 12.0.3
+ sctp_crc_tableil8_o80 at Base 12.0.3
+ sctp_crc_tableil8_o88 at Base 12.0.3
+ set_legacy_crush_map at Base 12.0.3
+ set_optimal_crush_map at Base 12.0.3
 librados.so.2 librados2 #MINVER#
  (regex|c++)"^_.*" 0.87
  rados_aio_append at Base 0.72.2
  rados_aio_cancel at Base 0.87
+ rados_aio_cmpext at Base 12.0.3
  rados_aio_create_completion at Base 0.72.2
+ rados_aio_exec at Base 12.0.3
  rados_aio_flush at Base 0.72.2
  rados_aio_flush_async at Base 0.72.2
  rados_aio_get_return_value at Base 0.72.2
+ rados_aio_get_version at Base 12.0.3
+ rados_aio_getxattr at Base 12.0.3
+ rados_aio_getxattrs at Base 12.0.3
+ rados_aio_ioctx_selfmanaged_snap_create at Base 12.0.3
+ rados_aio_ioctx_selfmanaged_snap_remove at Base 12.0.3
  rados_aio_is_complete at Base 0.72.2
  rados_aio_is_complete_and_cb at Base 0.72.2
  rados_aio_is_safe at Base 0.72.2
@@ -15,17 +193,22 @@ librados.so.2 librados2 #MINVER#
  rados_aio_read_op_operate at Base 0.79
  rados_aio_release at Base 0.72.2
  rados_aio_remove at Base 0.72.2
+ rados_aio_rmxattr at Base 12.0.3
+ rados_aio_setxattr at Base 12.0.3
  rados_aio_stat at Base 0.72.2
+ rados_aio_unlock at Base 12.0.3
  rados_aio_unwatch at Base 10.1.0
  rados_aio_wait_for_complete at Base 0.72.2
  rados_aio_wait_for_complete_and_cb at Base 0.72.2
  rados_aio_wait_for_safe at Base 0.72.2
  rados_aio_wait_for_safe_and_cb at Base 0.72.2
+ rados_aio_watch2 at Base 12.0.3
  rados_aio_watch at Base 10.1.0
  rados_aio_watch_flush at Base 10.1.0
  rados_aio_write at Base 0.72.2
  rados_aio_write_full at Base 0.72.2
  rados_aio_write_op_operate at Base 0.79
+ rados_aio_writesame at Base 12.0.3
  rados_append at Base 0.72.2
  rados_blacklist_add at Base 0.93
  rados_break_lock at Base 0.72.2
@@ -33,9 +216,10 @@ librados.so.2 librados2 #MINVER#
  rados_cache_pin at Base 10.1.0
  rados_cache_unpin at Base 10.1.0
  rados_cct at Base 0.72.2
- rados_clone_range at Base 0.72.2
+ rados_checksum at Base 12.0.3
  rados_cluster_fsid at Base 0.72.2
  rados_cluster_stat at Base 0.72.2
+ rados_cmpext at Base 12.0.3
  rados_conf_get at Base 0.72.2
  rados_conf_parse_argv at Base 0.72.2
  rados_conf_parse_argv_remainder at Base 0.72.2
@@ -87,14 +271,17 @@ librados.so.2 librados2 #MINVER#
  rados_list_lockers at Base 0.72.2
  rados_lock_exclusive at Base 0.72.2
  rados_lock_shared at Base 0.72.2
+ rados_mgr_command at Base 12.0.3
  rados_mon_command at Base 0.72.2
  rados_mon_command_target at Base 0.72.2
  rados_monitor_log at Base 0.72.2
  rados_nobjects_list_close at Base 0.93
+ rados_nobjects_list_get_cursor at Base 12.0.3
  rados_nobjects_list_get_pg_hash_position at Base 0.93
  rados_nobjects_list_next at Base 0.93
  rados_nobjects_list_open at Base 0.93
  rados_nobjects_list_seek at Base 0.93
+ rados_nobjects_list_seek_cursor at Base 12.0.3
  rados_notify2 at Base 0.93
  rados_notify at Base 0.72.2
  rados_notify_ack at Base 0.93
@@ -128,12 +315,16 @@ librados.so.2 librados2 #MINVER#
  rados_read at Base 0.72.2
  rados_read_op_assert_exists at Base 0.79
  rados_read_op_assert_version at Base 0.93
+ rados_read_op_checksum at Base 12.0.3
+ rados_read_op_cmpext at Base 12.0.3
  rados_read_op_cmpxattr at Base 0.79
  rados_read_op_exec at Base 0.79
  rados_read_op_exec_user_buf at Base 0.79
  rados_read_op_getxattrs at Base 0.79
  rados_read_op_omap_cmp at Base 0.79
+ rados_read_op_omap_get_keys2 at Base 12.0.3
  rados_read_op_omap_get_keys at Base 0.79
+ rados_read_op_omap_get_vals2 at Base 12.0.3
  rados_read_op_omap_get_vals at Base 0.79
  rados_read_op_omap_get_vals_by_keys at Base 0.79
  rados_read_op_operate at Base 0.79
@@ -145,12 +336,14 @@ librados.so.2 librados2 #MINVER#
  rados_remove at Base 0.72.2
  rados_rmxattr at Base 0.72.2
  rados_rollback at Base 0.72.2
+ rados_set_alloc_hint2 at Base 12.0.3
  rados_set_alloc_hint at Base 0.79
  rados_setxattr at Base 0.72.2
  rados_shutdown at Base 0.72.2
  rados_stat at Base 0.72.2
  rados_tmap_get at Base 0.72.2
  rados_tmap_put at Base 0.72.2
+ rados_tmap_to_omap at Base 12.0.3
  rados_tmap_update at Base 0.72.2
  rados_trunc at Base 0.72.2
  rados_unlock at Base 0.72.2
@@ -159,6 +352,7 @@ librados.so.2 librados2 #MINVER#
  rados_version at Base 0.72.2
  rados_wait_for_latest_osdmap at Base 0.79
  rados_watch2 at Base 0.93
+ rados_watch3 at Base 12.0.3
  rados_watch at Base 0.72.2
  rados_watch_check at Base 0.93
  rados_watch_flush at Base 0.93
@@ -167,6 +361,7 @@ librados.so.2 librados2 #MINVER#
  rados_write_op_append at Base 0.79
  rados_write_op_assert_exists at Base 0.79
  rados_write_op_assert_version at Base 0.93
+ rados_write_op_cmpext at Base 12.0.3
  rados_write_op_cmpxattr at Base 0.79
  rados_write_op_create at Base 0.79
  rados_write_op_exec at Base 0.79
@@ -178,10 +373,13 @@ librados.so.2 librados2 #MINVER#
  rados_write_op_operate at Base 0.79
  rados_write_op_remove at Base 0.79
  rados_write_op_rmxattr at Base 0.79
+ rados_write_op_set_alloc_hint2 at Base 12.0.3
  rados_write_op_set_alloc_hint at Base 0.79
  rados_write_op_set_flags at Base 0.79
  rados_write_op_setxattr at Base 0.79
  rados_write_op_truncate at Base 0.79
  rados_write_op_write at Base 0.79
  rados_write_op_write_full at Base 0.79
+ rados_write_op_writesame at Base 12.0.3
  rados_write_op_zero at Base 0.79
+ rados_writesame at Base 12.0.3
diff --git a/debian/libradosstriper-dev.install b/debian/libradosstriper-dev.install
index 6f41054..4d6d7b5 100644
--- a/debian/libradosstriper-dev.install
+++ b/debian/libradosstriper-dev.install
@@ -1,5 +1,3 @@
-#usr/lib/*/libradosstriper.la
 usr/include/radosstriper/libradosstriper.h
 usr/include/radosstriper/libradosstriper.hpp
-usr/lib/*/libradosstriper.a
 usr/lib/*/libradosstriper.so
diff --git a/debian/libradosstriper1.symbols b/debian/libradosstriper1.symbols
index df6d8df..7fc1e36 100644
--- a/debian/libradosstriper1.symbols
+++ b/debian/libradosstriper1.symbols
@@ -1,143 +1,11 @@
 libradosstriper.so.1 libradosstriper1 #MINVER#
- CEPH_CONF_FILE_DEFAULT at Base 0.93
- MDS_GID_NONE at Base 0.93
- MDS_RANK_NONE at Base 0.93
- XXH32 at Base 10.1.0
- XXH32_canonicalFromHash at Base 10.1.0
- XXH32_createState at Base 10.1.0
- XXH32_digest at Base 10.1.0
- XXH32_freeState at Base 10.1.0
- XXH32_hashFromCanonical at Base 10.1.0
- XXH32_reset at Base 10.1.0
- XXH32_update at Base 10.1.0
- XXH64 at Base 10.1.0
- XXH64_canonicalFromHash at Base 10.1.0
- XXH64_createState at Base 10.1.0
- XXH64_digest at Base 10.1.0
- XXH64_freeState at Base 10.1.0
- XXH64_hashFromCanonical at Base 10.1.0
- XXH64_reset at Base 10.1.0
- XXH64_update at Base 10.1.0
- XXH_versionNumber at Base 10.1.0
  (regex|c++)"^_.*" 0.87
- (regex)"^ceph_ver__[0-9a-f]{40}@Base$" 0.87
- boost_asio_detail_posix_thread_function at Base 10.1.0
- ceph_arch_aarch64_crc32 at Base 9.2.0
- ceph_arch_arm_probe at Base 0.93
- ceph_arch_intel_pclmul at Base 0.93
- ceph_arch_intel_probe at Base 0.93
- ceph_arch_intel_sse2 at Base 0.93
- ceph_arch_intel_sse3 at Base 0.93
- ceph_arch_intel_sse41 at Base 0.93
- ceph_arch_intel_sse42 at Base 0.93
- ceph_arch_intel_ssse3 at Base 0.93
- ceph_arch_neon at Base 0.93
- ceph_arch_probe at Base 0.93
- ceph_arch_probed at Base 0.93
- ceph_armor at Base 0.93
- ceph_armor_line_break at Base 0.93
- ceph_crc32c_func at Base 0.93
- ceph_crc32c_intel_baseline at Base 0.93
- ceph_crc32c_intel_fast at Base 0.93
- ceph_crc32c_intel_fast_exists at Base 0.93
- ceph_crc32c_sctp at Base 0.93
- ceph_os_fgetxattr at Base 0.93
- ceph_os_flistxattr at Base 0.93
- ceph_os_fremovexattr at Base 0.93
- ceph_os_fsetxattr at Base 0.93
- ceph_os_getxattr at Base 0.93
- ceph_os_listxattr at Base 0.93
- ceph_os_removexattr at Base 0.93
- ceph_os_setxattr at Base 0.93
- ceph_unarmor at Base 0.93
- check_for_control_characters at Base 0.93
- check_for_control_characters_cstr at Base 0.93
- check_utf8 at Base 0.93
- check_utf8_cstr at Base 0.93
- code_environment_to_str at Base 0.93
- config_optionsp at Base 0.93
- (arch=amd64)crc32_iscsi_00 at Base 0.93
- (arch=amd64)crc32_iscsi_00_slver at Base 0.93
- (arch=amd64)crc32_iscsi_00_slver_00020014 at Base 0.93
- (arch=amd64)crc32_iscsi_zero_00 at Base 0.93
- (arch=amd64)crc32_iscsi_zero_00_slver at Base 0.93
- (arch=amd64)crc32_iscsi_zero_00_slver_00020014 at Base 0.93
- crc32_table_iscsi_base at Base 0.93
- crush_add_bucket at Base 0.93
- crush_add_list_bucket_item at Base 0.93
- crush_add_rule at Base 0.93
- crush_add_straw2_bucket_item at Base 0.93
- crush_add_straw_bucket_item at Base 0.93
- crush_add_tree_bucket_item at Base 0.93
- crush_add_uniform_bucket_item at Base 0.93
- crush_addition_is_unsafe at Base 0.93
- crush_adjust_list_bucket_item_weight at Base 0.93
- crush_adjust_straw2_bucket_item_weight at Base 0.93
- crush_adjust_straw_bucket_item_weight at Base 0.93
- crush_adjust_tree_bucket_item_weight at Base 0.93
- crush_adjust_uniform_bucket_item_weight at Base 0.93
- crush_bucket_add_item at Base 0.93
- crush_bucket_adjust_item_weight at Base 0.93
- crush_bucket_alg_name at Base 0.93
- crush_bucket_remove_item at Base 0.93
- crush_calc_straw at Base 0.93
- crush_create at Base 0.93
- crush_destroy at Base 0.93
- crush_destroy_bucket at Base 0.93
- crush_destroy_bucket_list at Base 0.93
- crush_destroy_bucket_straw at Base 0.93
- crush_destroy_bucket_straw2 at Base 0.94
- crush_destroy_bucket_tree at Base 0.93
- crush_destroy_bucket_uniform at Base 0.93
- crush_destroy_rule at Base 0.93
- crush_do_rule at Base 0.93
- crush_finalize at Base 0.93
- crush_find_rule at Base 0.93
- crush_get_bucket_item_weight at Base 0.93
- crush_get_next_bucket_id at Base 0.93
- crush_hash32 at Base 0.93
- crush_hash32_2 at Base 0.93
- crush_hash32_3 at Base 0.93
- crush_hash32_4 at Base 0.93
- crush_hash32_5 at Base 0.93
- crush_hash_name at Base 0.93
- crush_make_bucket at Base 0.93
- crush_make_list_bucket at Base 0.93
- crush_make_rule at Base 0.93
- crush_make_straw2_bucket at Base 0.93
- crush_make_straw_bucket at Base 0.93
- crush_make_tree_bucket at Base 0.93
- crush_make_uniform_bucket at Base 0.93
- crush_multiplication_is_unsafe at Base 0.93
- crush_remove_bucket at Base 0.93
- crush_remove_list_bucket_item at Base 0.93
- crush_remove_straw2_bucket_item at Base 0.93
- crush_remove_straw_bucket_item at Base 0.93
- crush_remove_tree_bucket_item at Base 0.93
- crush_remove_uniform_bucket_item at Base 0.93
- crush_reweight_bucket at Base 0.93
- crush_rule_set_step at Base 0.93
- decode_utf8 at Base 0.93
  default_file_layout at Base 10.1.0
- encode_utf8 at Base 0.93
- escape_json_attr at Base 0.93
- escape_json_attr_len at Base 0.93
- escape_xml_attr at Base 0.93
- escape_xml_attr_len at Base 0.93
- g_code_env at Base 0.93
- g_lockdep at Base 0.93
- get_linux_version at Base 0.93
- get_process_name at Base 0.93
- is_control_character at Base 0.93
- mime_decode_from_qp at Base 0.93
- mime_encode_as_qp at Base 0.93
- module_has_param at Base 0.93
- module_load at Base 0.93
- pem_key at Base 0.93
- pipe_cloexec at Base 0.93
  rados_striper_aio_append at Base 0.87
  rados_striper_aio_flush at Base 0.87
  rados_striper_aio_read at Base 0.87
+ rados_striper_aio_remove at Base 12.0.3
+ rados_striper_aio_stat at Base 12.0.3
  rados_striper_aio_write at Base 0.87
  rados_striper_aio_write_full at Base 0.87
  rados_striper_append at Base 0.87
@@ -169,24 +37,3 @@ libradosstriper.so.1 libradosstriper1 #MINVER#
  rados_striper_trunc at Base 0.87
  rados_striper_write at Base 0.87
  rados_striper_write_full at Base 0.87
- resolve_addrs at Base 0.93
- safe_cat at Base 0.93
- safe_pread at Base 0.93
- safe_pread_exact at Base 0.93
- safe_pwrite at Base 0.93
- safe_read at Base 0.93
- safe_read_exact at Base 0.93
- safe_read_file at Base 0.93
- safe_splice at Base 0.93
- safe_splice_exact at Base 0.93
- safe_write at Base 0.93
- safe_write_file at Base 0.93
- sctp_crc_c at Base 0.93
- sctp_crc_tableil8_o32 at Base 0.93
- sctp_crc_tableil8_o40 at Base 0.93
- sctp_crc_tableil8_o48 at Base 0.93
- sctp_crc_tableil8_o56 at Base 0.93
- sctp_crc_tableil8_o64 at Base 0.93
- sctp_crc_tableil8_o72 at Base 0.93
- sctp_crc_tableil8_o80 at Base 0.93
- sctp_crc_tableil8_o88 at Base 0.93
diff --git a/debian/librbd-dev.install b/debian/librbd-dev.install
index a7ee137..c6b455e 100644
--- a/debian/librbd-dev.install
+++ b/debian/librbd-dev.install
@@ -1,5 +1,4 @@
 usr/include/rbd/features.h
 usr/include/rbd/librbd.h
 usr/include/rbd/librbd.hpp
-usr/lib/*/librbd.a
 usr/lib/*/librbd.so
diff --git a/debian/librbd1.symbols b/debian/librbd1.symbols
index ac26516..390e372 100644
--- a/debian/librbd1.symbols
+++ b/debian/librbd1.symbols
@@ -7,14 +7,23 @@ librbd.so.1 librbd1 #MINVER#
  rbd_aio_get_arg at Base 10.1.0
  rbd_aio_get_return_value at Base 0.72.2
  rbd_aio_is_complete at Base 0.72.2
+ rbd_aio_mirror_image_demote at Base 12.0.3
+ rbd_aio_mirror_image_get_info at Base 12.0.3
+ rbd_aio_mirror_image_get_status at Base 12.0.3
+ rbd_aio_mirror_image_promote at Base 12.0.3
  rbd_aio_open at Base 10.1.0
+ rbd_aio_open_by_id at Base 12.0.3
+ rbd_aio_open_by_id_read_only at Base 12.0.3
  rbd_aio_open_read_only at Base 10.1.0
  rbd_aio_read2 at Base 0.93
  rbd_aio_read at Base 0.72.2
+ rbd_aio_readv at Base 12.0.3
  rbd_aio_release at Base 0.72.2
  rbd_aio_wait_for_complete at Base 0.72.2
  rbd_aio_write2 at Base 0.93
  rbd_aio_write at Base 0.72.2
+ rbd_aio_writesame at Base 12.0.3
+ rbd_aio_writev at Base 12.0.3
  rbd_break_lock at Base 0.72.2
  rbd_clone2 at Base 0.72.2
  rbd_clone3 at Base 10.1.0
@@ -22,8 +31,11 @@ librbd.so.1 librbd1 #MINVER#
  rbd_close at Base 0.72.2
  rbd_copy2 at Base 0.72.2
  rbd_copy3 at Base 10.1.0
+ rbd_copy4 at Base 12.0.3
  rbd_copy at Base 0.72.2
  rbd_copy_with_progress2 at Base 0.72.2
+ rbd_copy_with_progress3 at Base 12.0.3
+ rbd_copy_with_progress4 at Base 12.0.3
  rbd_copy_with_progress at Base 0.72.2
  rbd_create2 at Base 0.72.2
  rbd_create3 at Base 0.72.2
@@ -33,21 +45,38 @@ librbd.so.1 librbd1 #MINVER#
  rbd_diff_iterate at Base 0.72.2
  rbd_discard at Base 0.72.2
  rbd_flatten at Base 0.72.2
+ rbd_flatten_with_progress at Base 12.0.3
  rbd_flush at Base 0.72.2
+ rbd_get_block_name_prefix at Base 12.0.3
+ rbd_get_data_pool_id at Base 12.0.3
  rbd_get_features at Base 0.72.2
  rbd_get_flags at Base 0.93
+ rbd_get_id at Base 12.0.3
  rbd_get_old_format at Base 0.72.2
  rbd_get_overlap at Base 0.72.2
+ rbd_get_parent_info2 at Base 12.0.3
  rbd_get_parent_info at Base 0.72.2
  rbd_get_size at Base 0.72.2
  rbd_get_stripe_count at Base 0.72.2
  rbd_get_stripe_unit at Base 0.72.2
+ rbd_group_create at Base 12.0.3
+ rbd_group_image_add at Base 12.0.3
+ rbd_group_image_list at Base 12.0.3
+ rbd_group_image_remove at Base 12.0.3
+ rbd_group_image_remove_by_id at Base 12.0.3
+ rbd_group_image_status_cleanup at Base 12.0.3
+ rbd_group_image_status_list_cleanup at Base 12.0.3
+ rbd_group_list at Base 12.0.3
+ rbd_group_remove at Base 12.0.3
+ rbd_group_spec_cleanup at Base 12.0.3
+ rbd_image_get_group at Base 12.0.3
  rbd_image_options_clear at Base 10.1.0
  rbd_image_options_create at Base 10.1.0
  rbd_image_options_destroy at Base 10.1.0
  rbd_image_options_get_string at Base 10.1.0
  rbd_image_options_get_uint64 at Base 10.1.0
  rbd_image_options_is_empty at Base 10.1.0
+ rbd_image_options_is_set at Base 12.0.3
  rbd_image_options_set_string at Base 10.1.0
  rbd_image_options_set_uint64 at Base 10.1.0
  rbd_image_options_unset at Base 10.1.0
@@ -56,7 +85,12 @@ librbd.so.1 librbd1 #MINVER#
  rbd_list at Base 0.72.2
  rbd_list_children at Base 0.72.2
  rbd_list_lockers at Base 0.72.2
+ rbd_lock_acquire at Base 12.0.3
+ rbd_lock_break at Base 12.0.3
  rbd_lock_exclusive at Base 0.72.2
+ rbd_lock_get_owners at Base 12.0.3
+ rbd_lock_get_owners_cleanup at Base 12.0.3
+ rbd_lock_release at Base 12.0.3
  rbd_lock_shared at Base 0.72.2
  rbd_metadata_get at Base 9.2.0
  rbd_metadata_list at Base 9.2.0
@@ -66,8 +100,12 @@ librbd.so.1 librbd1 #MINVER#
  rbd_mirror_image_disable at Base 10.1.0
  rbd_mirror_image_enable at Base 10.1.0
  rbd_mirror_image_get_info at Base 10.1.0
+ rbd_mirror_image_get_status at Base 12.0.3
  rbd_mirror_image_promote at Base 10.1.0
  rbd_mirror_image_resync at Base 10.1.0
+ rbd_mirror_image_status_list at Base 12.0.3
+ rbd_mirror_image_status_list_cleanup at Base 12.0.3
+ rbd_mirror_image_status_summary at Base 12.0.3
  rbd_mirror_mode_get at Base 10.1.0
  rbd_mirror_mode_set at Base 10.1.0
  rbd_mirror_peer_add at Base 10.1.0
@@ -77,6 +115,8 @@ librbd.so.1 librbd1 #MINVER#
  rbd_mirror_peer_set_client at Base 10.1.0
  rbd_mirror_peer_set_cluster at Base 10.1.0
  rbd_open at Base 0.72.2
+ rbd_open_by_id at Base 12.0.3
+ rbd_open_by_id_read_only at Base 12.0.3
  rbd_open_read_only at Base 0.72.2
  rbd_poll_io_events at Base 10.1.0
  rbd_read2 at Base 0.93
@@ -87,23 +127,39 @@ librbd.so.1 librbd1 #MINVER#
  rbd_remove at Base 0.72.2
  rbd_remove_with_progress at Base 0.72.2
  rbd_rename at Base 0.72.2
+ rbd_resize2 at Base 12.0.3
  rbd_resize at Base 0.72.2
  rbd_resize_with_progress at Base 0.72.2
  rbd_set_image_notification at Base 10.1.0
  rbd_snap_create at Base 0.72.2
+ rbd_snap_get_limit at Base 12.0.3
+ rbd_snap_get_timestamp at Base 12.0.3
  rbd_snap_is_protected at Base 0.72.2
  rbd_snap_list at Base 0.72.2
  rbd_snap_list_end at Base 0.72.2
  rbd_snap_protect at Base 0.72.2
+ rbd_snap_remove2 at Base 12.0.3
  rbd_snap_remove at Base 0.72.2
  rbd_snap_rename at Base 10.1.0
  rbd_snap_rollback at Base 0.72.2
  rbd_snap_rollback_with_progress at Base 0.72.2
  rbd_snap_set at Base 0.72.2
+ rbd_snap_set_limit at Base 12.0.3
  rbd_snap_unprotect at Base 0.72.2
  rbd_stat at Base 0.72.2
+ rbd_trash_get at Base 12.0.3
+ rbd_trash_get_cleanup at Base 12.0.3
+ rbd_trash_list at Base 12.0.3
+ rbd_trash_list_cleanup at Base 12.0.3
+ rbd_trash_move at Base 12.0.3
+ rbd_trash_remove at Base 12.0.3
+ rbd_trash_remove_with_progress at Base 12.0.3
+ rbd_trash_restore at Base 12.0.3
  rbd_unlock at Base 0.72.2
  rbd_update_features at Base 9.2.0
+ rbd_update_unwatch at Base 12.0.3
+ rbd_update_watch at Base 12.0.3
  rbd_version at Base 0.72.2
  rbd_write2 at Base 0.93
  rbd_write at Base 0.72.2
+ rbd_writesame at Base 12.0.3
diff --git a/debian/librgw-dev.install b/debian/librgw-dev.install
index cea921a..56d4da0 100644
--- a/debian/librgw-dev.install
+++ b/debian/librgw-dev.install
@@ -1,5 +1,3 @@
 usr/include/rados/librgw.h
 usr/include/rados/rgw_file.h
-usr/lib/*/librgw.a
-usr/lib/*/librgw.la
 usr/lib/*/librgw.so
diff --git a/debian/patches/disable-boost_container-check.patch b/debian/patches/disable-boost_container-check.patch
new file mode 100644
index 0000000..b1086ad
--- /dev/null
+++ b/debian/patches/disable-boost_container-check.patch
@@ -0,0 +1,35 @@
+From 23b073237e6e321f7deaba65a810b187a84be0a0 Mon Sep 17 00:00:00 2001
+From: Bassam Tabbara <bassam.tabbara at quantum.com>
+Date: Thu, 18 May 2017 00:32:59 -0700
+Subject: [PATCH] cmake: fix boost components for WITH_SYSTEM_BOOST
+
+when using WITH_SYSTEM_BOOST dont set header-only packages
+for BOOST_COMPONENTS. On some distros these packages dont
+exist.
+
+Signed-off-by: Bassam Tabbara <bassam.tabbara at quantum.com>
+---
+ CMakeLists.txt | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -514,7 +514,9 @@ endif()
+ option(WITH_SYSTEM_BOOST "require and build with system Boost" OFF)
+ 
+ set(BOOST_COMPONENTS
+-	container thread system regex random program_options date_time iostreams coroutine context)
++	thread system regex random program_options date_time iostreams coroutine context)
++set(BOOST_HEADER_COMPONENTS container)
++
+ if(WITH_MGR)
+ 	list(APPEND BOOST_COMPONENTS python)
+ endif()
+@@ -534,6 +536,7 @@ else()
+   set(BOOST_SOURCE_DIR "${PROJECT_SOURCE_DIR}/src/boost")
+   set(BOOST_PREFIX "${PROJECT_BINARY_DIR}/boost")
+   set(BOOST_BUILD "${PROJECT_BINARY_DIR}/boost-build")
++  list(APPEND BOOST_COMPONENTS ${BOOST_HEADER_COMPONENTS})
+   string(REPLACE ";" "," BOOST_WITH_LIBS "${BOOST_COMPONENTS}")
+   execute_process(COMMAND "./bootstrap.sh"
+     "--prefix=${BOOST_PREFIX}"
diff --git a/debian/patches/series b/debian/patches/series
index 0ecbd07..bdaa133 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,18 +1,19 @@
 ## Backported / Upstream
-sleep-recover.patch
+#sleep-recover.patch
 
 ## Debian
 #rbdmap3-lazyumount.patch
-arch.patch
-sample.ceph.conf.patch
+#arch.patch
+#sample.ceph.conf.patch
 # Disabled until adopted upstream
 # use_system_jerasure.patch
-virtualenv-never-download.patch
+#virtualenv-never-download.patch
 # Testing patches
-tests-disable.patch
+#tests-disable.patch
 
 ## From Ubuntu
-fix-argparse-defaults.patch
-fix-cycles-arch.patch
-skip-setup.py-makefiles.patch
-powerpc_libatomic.patch
+#fix-argparse-defaults.patch
+#fix-cycles-arch.patch
+#skip-setup.py-makefiles.patch
+#powerpc_libatomic.patch
+disable-boost_container-check.patch
diff --git a/debian/python-cephfs.install b/debian/python-cephfs.install
index f7a9fcf..8a52e38 100644
--- a/debian/python-cephfs.install
+++ b/debian/python-cephfs.install
@@ -1,2 +1,2 @@
-usr/lib/python*/dist-packages/ceph_volume_client.py*
-usr/lib/python*/dist-packages/cephfs*
+usr/lib/python2*/dist-packages/ceph_volume_client.py*
+usr/lib/python2*/dist-packages/cephfs*
diff --git a/debian/python-rados.install b/debian/python-rados.install
index 2960b51..d8110d9 100644
--- a/debian/python-rados.install
+++ b/debian/python-rados.install
@@ -1 +1 @@
-usr/lib/python*/dist-packages/rados*
+usr/lib/python2*/dist-packages/rados*
diff --git a/debian/python-rbd.install b/debian/python-rbd.install
index 25584fb..4a170ce 100644
--- a/debian/python-rbd.install
+++ b/debian/python-rbd.install
@@ -1,2 +1,2 @@
-usr/lib/python*/dist-packages/rbd-*.egg-info
-usr/lib/python*/dist-packages/rbd.so
+usr/lib/python2*/dist-packages/rbd-*.egg-info
+usr/lib/python2*/dist-packages/rbd.so
diff --git a/debian/python-rgw.install b/debian/python-rgw.install
new file mode 100644
index 0000000..05e6936
--- /dev/null
+++ b/debian/python-rgw.install
@@ -0,0 +1,2 @@
+usr/lib/python2*/dist-packages/rgw-*.egg-info
+usr/lib/python2*/dist-packages/rgw.so
diff --git a/debian/python3-ceph-argparse.install b/debian/python3-ceph-argparse.install
new file mode 100644
index 0000000..274b8b4
--- /dev/null
+++ b/debian/python3-ceph-argparse.install
@@ -0,0 +1,2 @@
+usr/lib/python3*/dist-packages/ceph_argparse.py
+usr/lib/python3*/dist-packages/ceph_daemon.py
diff --git a/debian/python3-cephfs.install b/debian/python3-cephfs.install
new file mode 100644
index 0000000..6eb8836
--- /dev/null
+++ b/debian/python3-cephfs.install
@@ -0,0 +1,3 @@
+usr/lib/python3*/dist-packages/ceph_volume_client.py
+usr/lib/python3*/dist-packages/cephfs-*.egg-info
+usr/lib/python3*/dist-packages/cephfs.cpython*.so
diff --git a/debian/python3-rados.install b/debian/python3-rados.install
new file mode 100644
index 0000000..98b5d76
--- /dev/null
+++ b/debian/python3-rados.install
@@ -0,0 +1,2 @@
+usr/lib/python3*/dist-packages/rados-*.egg-info
+usr/lib/python3*/dist-packages/rados.cpython*.so
diff --git a/debian/python3-rbd.install b/debian/python3-rbd.install
new file mode 100644
index 0000000..5f4e6e1
--- /dev/null
+++ b/debian/python3-rbd.install
@@ -0,0 +1,2 @@
+usr/lib/python3*/dist-packages/rbd-*.egg-info
+usr/lib/python3*/dist-packages/rbd.cpython*.so
diff --git a/debian/python3-rgw.install b/debian/python3-rgw.install
new file mode 100644
index 0000000..57f4559
--- /dev/null
+++ b/debian/python3-rgw.install
@@ -0,0 +1,2 @@
+usr/lib/python3*/dist-packages/rgw-*.egg-info
+usr/lib/python3*/dist-packages/rgw.cpython*.so
diff --git a/debian/rados-objclass-dev.install b/debian/rados-objclass-dev.install
new file mode 100644
index 0000000..ac8f90e
--- /dev/null
+++ b/debian/rados-objclass-dev.install
@@ -0,0 +1 @@
+usr/include/rados/objclass.h
diff --git a/debian/radosgw.install b/debian/radosgw.install
index 25f0cdd..b7e89cb 100644
--- a/debian/radosgw.install
+++ b/debian/radosgw.install
@@ -1,6 +1,4 @@
-etc/bash_completion.d/radosgw-admin
 usr/bin/radosgw
-usr/bin/radosgw-admin
 usr/bin/radosgw-object-expirer
-usr/share/man/man8/radosgw-admin.8
+usr/bin/radosgw-token
 usr/share/man/man8/radosgw.8
diff --git a/debian/rules b/debian/rules
index 1b5d960..75d0de6 100755
--- a/debian/rules
+++ b/debian/rules
@@ -18,43 +18,25 @@ export JAVA_HOME=/usr/lib/jvm/default-java
 ## Set JAVAC to prevent FTBFS due to incorrect use of 'gcj' if found (see "m4/ac_prog_javac.m4").
 export JAVAC=javac
 
-extraopts += --disable-silent-rules
-extraopts += --with-ocf --with-nss
-extraopts += --with-debug
-extraopts += --enable-cephfs-java
-extraopts += --with-babeltrace
-## do not build with lttng just yet, see #765842.
-extraopts += --without-lttng
-
-# rocksdb is not packaged by anyone.  build it if we can.
-extraopts += --with-librocksdb-static=check
+extraopts += -DWITH_OCF=ON -DWITH_NSS=ON -DWITH_PYTHON3=ON -DWITH_DEBUG=ON
+extraopts += -DWITH_CEPHFS_JAVA=ON
+extraopts += -DWITH_LTTNG=OFF -DWITH_EMBEDDED=OFF
+extraopts += -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib
+extraopts += -DWITH_SYSTEM_BOOST=ON
+
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+  NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+  extraopts += -DBOOST_J=$(NUMJOBS)
+endif
 
 ifeq ($(DEB_HOST_ARCH), armel)
   # armel supports ARMv4t or above instructions sets.
   # libatomic-ops is only usable with Ceph for ARMv6 or above.
-  extraopts += --without-libatomic-ops
+  extraopts += -DWITH_ATOMIC_OPS=OFF
 endif
 
-# Only selected architectures support gperftools
-gperftools_archs = i386 amd64 powerpc armhf ppc64el arm64
-ifneq (,$(filter $(DEB_HOST_ARCH), $(gperftools_archs)))
-  extraopts += --with-tcmalloc
-else
-  extraopts += --without-tcmalloc
-endif
-
-# Setup max parallel builds based on architecture
-ifeq ($(DEB_HOST_ARCH), arm64)
-  maxparallel=1
-else
-  maxparallel=2
-endif
-
-# Use system provided libs3
-extraopts += --with-system-libs3
-
 %:
-	dh $@ --with javahelper,python2,autoreconf,systemd --parallel --max-parallel=$(maxparallel)
+	dh $@ --buildsystem=cmake --with javahelper,python2,python3,autoreconf,systemd --parallel --max-parallel=4
 
 # use --as-needed only if supported by dh-autoreconf (to simplify backporting)
 DH_AS_NEEDED=$(shell dpkg --compare-versions $$(dpkg --status dh-autoreconf | grep Version | cut -d' ' -f2) ge 6 && echo --as-needed)
@@ -62,10 +44,10 @@ override_dh_autoreconf:
 	dh_autoreconf $(DH_AS_NEEDED)
 
 override_dh_auto_configure:
-	dh_auto_configure -- $(extraopts)
+	dh_auto_configure --buildsystem=cmake -- $(extraopts)
 
 override_dh_auto_install:
-	dh_auto_install --destdir=$(CURDIR)/debian/tmp
+	dh_auto_install --destdir=$(CURDIR)/debian/tmp --buildsystem=cmake
 	# NOTE: manually install python modules to avoid virtualenvs
 	#       during the package build process.
 	set -e; for comp in ceph-detect-init ceph-disk; do \
@@ -94,18 +76,15 @@ override_dh_installinit:
 	install -d -m0755 debian/ceph-mon/lib/systemd/system
 	install -d -m0755 debian/ceph-osd/lib/systemd/system
 	install -m0644 systemd/ceph-mon at .service debian/ceph-mon/lib/systemd/system
-	install -m0644 systemd/ceph-create-keys at .service debian/ceph-base/lib/systemd/system
 	install -m0644 systemd/ceph-osd at .service debian/ceph-osd/lib/systemd/system
 	install -m0644 systemd/ceph-disk at .service debian/ceph-osd/lib/systemd/system
 	sed -i s./etc/sysconfig/./etc/default/.g debian/ceph-mon/lib/systemd/system/ceph-mon at .service
-	sed -i s./etc/sysconfig/./etc/default/.g debian/ceph-base/lib/systemd/system/ceph-create-keys at .service
 	sed -i s./etc/sysconfig/./etc/default/.g debian/ceph-osd/lib/systemd/system/ceph-osd at .service
 	sed -i s./etc/sysconfig/./etc/default/.g debian/ceph-osd/lib/systemd/system/ceph-disk at .service
 	install -m0644 systemd/ceph-mon.target debian/ceph-mon/lib/systemd/system
 	install -m0644 systemd/ceph-osd.target debian/ceph-osd/lib/systemd/system
-	# NOTE(jamespage): Install previous ceph-mon/create-keys service from packaging for upgrades
+	# NOTE(jamespage): Install previous ceph-mon service from packaging for upgrades
 	install -m0644 debian/lib-systemd/system/ceph-mon.service debian/ceph-mon/lib/systemd/system
-	install -m0644 debian/lib-systemd/system/ceph-create-keys.service debian/ceph-base/lib/systemd/system
 	# systemd:ceph-mds
 	install -d -m0755 debian/ceph-mds/lib/systemd/system
 	install -m0644 systemd/ceph-mds at .service debian/ceph-mds/lib/systemd/system
@@ -113,6 +92,16 @@ override_dh_installinit:
 	install -m0644 systemd/ceph-mds.target debian/ceph-mds/lib/systemd/system
 	# NOTE(jamespage): Install previous ceph-mds service from packaging for upgrades
 	install -m0644 debian/lib-systemd/system/ceph-mds.service debian/ceph-mds/lib/systemd/system
+	install -d -m0755 debian/ceph-fuse/lib/systemd/system
+	# systemd:ceph-fuse
+	install -m0644 systemd/ceph-fuse at .service debian/ceph-fuse/lib/systemd/system
+	sed -i s./etc/sysconfig/./etc/default/.g debian/ceph-fuse/lib/systemd/system/ceph-fuse at .service
+	install -m0644 systemd/ceph-fuse.target debian/ceph-fuse/lib/systemd/system
+	# systemd:ceph-mgr
+	install -d -m0755 debian/ceph-mgr/lib/systemd/system
+	install -m0644 systemd/ceph-mgr at .service debian/ceph-mgr/lib/systemd/system
+	sed -i s./etc/sysconfig/./etc/default/.g debian/ceph-mgr/lib/systemd/system/ceph-mgr at .service
+	install -m0644 systemd/ceph-mgr.target debian/ceph-mgr/lib/systemd/system
 	# systemd:radosgw
 	install -d -m0755 debian/radosgw/lib/systemd/system
 	install -m0644 systemd/ceph-radosgw at .service debian/radosgw/lib/systemd/system
@@ -141,6 +130,21 @@ override_dh_makeshlibs:
 	dh_makeshlibs -V -X/usr/lib/jni -X/usr/lib/$(DEB_HOST_MULTIARCH)/ceph/erasure-code
 
 override_dh_auto_test:
-	-dh_auto_test -v || cat src/test-suite.log
+	# do not run tests
+
+override_dh_python2:
+	for binding in rados cephfs rbd rgw; do \
+		dh_python2 -p python-$$binding;       \
+	done
+	dh_python2 -p ceph-common
+	dh_python2 -p ceph-base
+	dh_python2 -p ceph-osd
+	dh_python2 -p ceph-mgr
+
+override_dh_python3:
+	for binding in rados cephfs rbd rgw; do \
+		dh_python3 -p python3-$$binding;      \
+        done
+	dh_python3 -p python3-ceph-argparse
 
 .PHONY: override_dh_auto_configure override_dh_installinit override_dh_makeshlibs override_dh_auto_test

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ceph/ceph.git



More information about the Pkg-ceph-commits mailing list