diff options
author | Sage Weil <sage@inktank.com> | 2012-12-20 10:49:34 -0800 |
---|---|---|
committer | Sage Weil <sage@inktank.com> | 2012-12-20 10:49:34 -0800 |
commit | f38d891138bc59809a6daf389ed3f66e81357daa (patch) | |
tree | b81311ecf90d7fa96942dae015a49d38078df813 | |
parent | a803159b02abec070ef2561591d4779fb894af42 (diff) | |
parent | d9c2396b550a13b6f1018e02c2ef92abdcce92cf (diff) | |
download | ceph-f38d891138bc59809a6daf389ed3f66e81357daa.tar.gz |
Merge branch 'wip-build-fixes' into next
-rw-r--r-- | ceph.spec.in | 50 | ||||
-rw-r--r-- | debian/control | 2 | ||||
-rwxr-xr-x | debian/rules | 52 |
3 files changed, 82 insertions, 22 deletions
diff --git a/ceph.spec.in b/ceph.spec.in index ba1cce459bc..7aae6fefedb 100644 --- a/ceph.spec.in +++ b/ceph.spec.in @@ -74,6 +74,9 @@ performance, reliability, and scalability. Summary: Ceph fuse-based client Group: System Environment/Base Requires: %{name} +Requires: fuse-libs +Requires: libstdc++ +Requires: libuuid BuildRequires: fuse-devel %description fuse FUSE based client for Ceph distributed network file system @@ -186,8 +189,26 @@ Requires: libcephfs1 = %{version}-%{release} %description -n ceph-test This package contains Ceph benchmarks and test tools. -# Enable building of debug package on distributions that don't automatically -# build it. +%package -n libcephfs-jni +Summary: Java Native Interface library for CephFS Java bindings. +Group: System Environment/Libraries +License: LGPL-2.0 +Requires: java +Requires: libcephfs1 = %{version}-%{release} +BuildRequires: java-devel +%description -n libcephfs-jni +This package contains the Java Native Interface library for CephFS Java +bindings. + +%package -n libcephfs-java +Summary: Java libraries for the Ceph File System. +Group: System Environment/Libraries +License: LGPL-2.0 +Requires: java +Requires: libcephfs-jni = %{version}-%{release}- +BuildRequires: java-devel +%description -n libcephfs-java +This package contains the Java libraries for the Ceph File System. %if (0%{?centos} || 0%{?opensuse} || 0%{?suse_version}) %debug_package @@ -200,6 +221,11 @@ This package contains Ceph benchmarks and test tools. %setup -q %build +# Find jni.h +for i in /usr/{lib64,lib}/jvm/java/include{,/linux}; do + [ -d $i ] && java_inc="$java_inc -I$i" +done + ./autogen.sh MY_CONF_OPT="" @@ -209,7 +235,8 @@ export RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS | sed -e 's/i386/i486/'` # be explicit about --with/without-tcmalloc because the # autoconf default differs from what's needed for rpm -%{configure} --prefix=/usr \ +%{configure} CPPFLAGS="$java_inc" \ + --prefix=/usr \ --sbindir=/sbin \ --localstatedir=/var \ --sysconfdir=/etc \ @@ -219,6 +246,7 @@ export RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS | sed -e 's/i386/i486/'` --without-cryptopp \ --with-rest-bench \ --with-debug \ + --enable-cephfs-java \ $MY_CONF_OPT \ %{?_with_ocf} \ %{?with_tcmalloc:--with-tcmalloc} %{!?with_tcmalloc:--without-tcmalloc} \ @@ -250,6 +278,13 @@ mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/ceph/ mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/run/ceph/ mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/ceph/ +# Relocate java packages to expected locations in buildroot. +mkdir -p $RPM_BUILD_ROOT/usr/lib/jni +mv $RPM_BUILD_ROOT/usr/lib64/libcephfs_jni.so* $RPM_BUILD_ROOT/usr/lib/jni/. +mkdir -p $RPM_BUILD_ROOT/usr/share/java +mv $RPM_BUILD_ROOT/usr/lib64/libcephfs.jar $RPM_BUILD_ROOT/usr/share/java/. +mv $RPM_BUILD_ROOT/usr/lib64/libcephfs-test.jar $RPM_BUILD_ROOT/usr/share/java/. + %clean rm -rf $RPM_BUILD_ROOT @@ -520,4 +555,13 @@ fi %{_bindir}/tpbench %{_bindir}/xattr_bench +%files -n libcephfs-jni +%defattr(-,root,root,-) +/usr/lib/jni/libcephfs_jni.so* + +%files -n libcephfs-java +%defattr(-,root,root,-) +/usr/share/java/libcephfs.jar +/usr/share/java/libcephfs-test.jar + %changelog diff --git a/debian/control b/debian/control index 2f0c311225f..2ad36d94acb 100644 --- a/debian/control +++ b/debian/control @@ -6,7 +6,7 @@ Vcs-Git: git://github.com/ceph/ceph.git Vcs-Browser: https://github.com/ceph/ceph Maintainer: Laszlo Boszormenyi (GCS) <gcs@debian.hu> Uploaders: Sage Weil <sage@newdream.net> -Build-Depends: debhelper (>= 6.0.7~), autotools-dev, autoconf, automake, libfuse-dev, libboost-dev (>= 1.34), libboost-thread-dev, libedit-dev, libnss3-dev, libtool, libexpat1-dev, libfcgi-dev, libatomic-ops-dev, libgoogle-perftools-dev [i386 amd64], pkg-config, libcurl4-gnutls-dev, libkeyutils-dev, uuid-dev, libaio-dev, python (>= 2.6.6-3~), libxml2-dev, javahelper, default-jdk +Build-Depends: debhelper (>= 6.0.7~), autotools-dev, autoconf, automake, libfuse-dev, libboost-dev (>= 1.34), libboost-thread-dev, libedit-dev, libnss3-dev, libtool, libexpat1-dev, libfcgi-dev, libatomic-ops-dev, libgoogle-perftools-dev [i386 amd64], pkg-config, libcurl4-gnutls-dev, libkeyutils-dev, uuid-dev, libaio-dev, python (>= 2.6.6-3~), libxml2-dev, javahelper, default-jdk, junit4, libboost-program-options-dev Standards-Version: 3.9.3 Package: ceph diff --git a/debian/rules b/debian/rules index 32380a41850..8f0b4ef2762 100755 --- a/debian/rules +++ b/debian/rules @@ -94,28 +94,44 @@ install: build # Add here commands to install the package into debian/testpack. # Build architecture-independent files here. binary-indep: build install + dh_testdir + dh_testroot jh_installlibs -v -i + dh_installchangelogs -i + dh_installdocs -i --all ChangeLog + dh_installexamples -i + dh_install -i --sourcedir=$(DESTDIR) --list-missing + dh_installman -i + dh_lintian -i + dh_link -i + dh_compress -i + dh_fixperms -i + dh_python2 -i + dh_installdeb -i + dh_gencontrol -i + dh_md5sums -i + dh_builddeb -i # We have nothing to do by default. # Build architecture-dependent files here. binary-arch: build install dh_testdir dh_testroot - dh_installchangelogs - dh_installdocs --all ChangeLog - dh_installexamples - dh_install --sourcedir=$(DESTDIR) --list-missing - dh_installlogrotate - dh_installinit --no-start + dh_installchangelogs -a + dh_installdocs -a --all ChangeLog + dh_installexamples -a + dh_install -a --sourcedir=$(DESTDIR) --list-missing + dh_installlogrotate -a + dh_installinit -a --no-start # dh_installinit is only set up to handle one upstart script # per package, so do this ourselves install -d -m0755 debian/ceph/etc/init install -m0644 src/upstart/ceph*.conf debian/ceph/etc/init install -d -m0755 debian/radosgw/etc/init install -m0644 src/upstart/radosgw*.conf debian/radosgw/etc/init - dh_installman - dh_lintian - dh_link + dh_installman -a + dh_lintian -a + dh_link -a dh_strip -pceph --dbg-package=ceph-dbg -k --exclude=libcls_ dh_strip -pceph-mds --dbg-package=ceph-mds-dbg @@ -129,15 +145,15 @@ binary-arch: build install dh_strip -prest-bench --dbg-package=rest-bench-dbg dh_strip -pceph-test --dbg-package=ceph-test-dbg - dh_compress - dh_fixperms - dh_makeshlibs -X/usr/lib/rados-classes # exclude .so files in ceph package - dh_python2 - dh_installdeb - dh_shlibdeps - dh_gencontrol - dh_md5sums - dh_builddeb + dh_compress -a + dh_fixperms -a + dh_makeshlibs -a -X/usr/lib/rados-classes # exclude .so files in ceph package + dh_python2 -a + dh_installdeb -a + dh_shlibdeps -a + dh_gencontrol -a + dh_md5sums -a + dh_builddeb -a binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install configure |