ceph: update to 12.0.3

- remove now-upstreamed systemd service units
- upstream switch to cmake
- new dependencies: python2-sphinx, python2-cython
- add check() function
This commit is contained in:
Chaoting Liu 2017-06-02 15:06:03 +01:00
parent 0b3eabd077
commit 19ea44eae5

View File

@ -1,20 +1,18 @@
# Contributor: Sébastien "Seblu" Luttringer <seblu@archlinux.org>
pkgname=ceph
pkgver=0.94.5
pkgrel=2
pkgver=12.0.3
pkgrel=1
pkgdesc='Distributed, fault-tolerant storage platform delivering object, block, and file system'
arch=('x86_64')
url='http://ceph.com/'
license=('GPL')
makedepends=('boost' 'systemd' 'xfsprogs')
makedepends=('boost' 'xfsprogs' 'python2-sphinx')
depends=('boost-libs'
'curl'
'expat'
'fcgi'
'fuse'
'gcc-libs'
'glibc'
'gperftools'
'keyutils'
'leveldb'
@ -26,51 +24,54 @@ depends=('boost-libs'
'ncurses'
'nss'
'python2'
'snappy')
'snappy'
'python2-cython')
optdepends=('xfsprogs: support xfs backend')
options=('emptydirs')
source=("http://ceph.com/download/$pkgname-$pkgver.tar.bz2"
'ceph-osd@.service'
'ceph-mon@.service'
'ceph-mds@.service')
md5sums=('e7c35581f8d36d34f7cde16a862e54fb'
'9104b5b90349d2aa7802eb89158456e8'
'63a584aa2a4e2b0efbee4e8fd32593f0'
'd2411c41208d95743baa6d899cc1e0b0')
source=("https://download.ceph.com/tarballs/$pkgname-$pkgver.tar.gz")
sha256sums=('b0f2655c826bcba12c25828a8434f4e3d4cfdf41b5f59999da54132b96521de7')
#prepare() {
# patch -p1 -d $pkgname-$pkgver < 01-boost-158.patch
#}
prepare() {
[[ -d build ]] && rm -rfv build
mkdir build
# we install python2 version sphinx-build as sphinx-build2, which is not recognized by the script
sed 's,sphinx-build,sphinx-build2,g' -i $pkgname-$pkgver/CMakeLists.txt
}
build() {
cd $pkgname-$pkgver
export PYTHON=/usr/bin/python2
./configure \
--prefix=/usr \
--sbindir=/usr/bin \
--libexecdir=/usr/lib \
--sysconfdir=/etc \
--localstatedir=/var \
--with-radosgw
cd build
cmake -DCMAKE_BUILD_TYPE="Release" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_FULL_SBINDIR=/usr/bin \
-DCMAKE_INSTALL_FULL_LIBDIR=/usr/lib \
-DCMAKE_INSTALL_LIBDIR=/usr/lib \
-DCMAKE_INSTALL_LIBEXECDIR=/usr/lib \
-DCMAKE_INSTALL_SYSCONFDIR=/etc \
-DWITH_SYSTEMD=ON \
-DWITH_LTTNG=OFF \
-DHAVE_BABELTRACE=OFF \
../$pkgname-$pkgver
# FIXME: LTTng and Babeltrace are modules we didn't import yet
make
}
check() {
cd build
make test
}
package() {
make -C $pkgname-$pkgver DESTDIR="$pkgdir" install
make -C build DESTDIR="$pkgdir" install
cd "$pkgdir"
# systemd
install -dm755 usr/lib/{systemd/system,udev/rules.d}
install -Dm644 "$srcdir"/ceph-{osd,mon,mds}@.service usr/lib/systemd/system
install -Dm644 "$srcdir"/$pkgname-$pkgver/udev/* usr/lib/udev/rules.d
# fix directories path
mv sbin/* usr/bin
rmdir sbin
# install bash-completions to /usr/share
install -d -m 755 usr/share/bash-completion
mv etc/bash_completion.d usr/share/bash-completion/completions
# remove upstart scripts
rm -rf etc/init.d
# fix python2 shebang, did not do it in prepare() anymore because it
# confuse automake
find . -type f -exec \