[ceph] upstream ceph.spec file

Kaleb S. KEITHLEY kkeithle at fedoraproject.org
Fri Jul 4 16:45:52 UTC 2014


commit 4be65c200be2bee7e2a2a71959d22cc20f41eaec
Author: Kaleb S. KEITHLEY <kkeithle at redhat.com>
Date:   Fri Jul 4 12:45:53 2014 -0400

    upstream ceph.spec file

 ceph-0.81.0-Makefile.in.patch       |   40 +++++++++++++++++++++++
 ceph-0.81.0-configure.ac.patch      |   14 ++++++++
 ceph-0.81.0-test-librbd-fsx.c.patch |   11 ++++++
 ceph.spec                           |   60 +++++++++++++++++++++++++++++------
 4 files changed, 115 insertions(+), 10 deletions(-)
---
diff --git a/ceph-0.81.0-Makefile.in.patch b/ceph-0.81.0-Makefile.in.patch
new file mode 100644
index 0000000..f5c7154
--- /dev/null
+++ b/ceph-0.81.0-Makefile.in.patch
@@ -0,0 +1,40 @@
+--- ceph-0.81/src/Makefile.in.orig	2014-07-02 09:07:44.888133273 -0400
++++ ceph-0.81/src/Makefile.in	2014-07-03 13:32:30.213133273 -0400
+@@ -3875,6 +3875,7 @@
+ 	${WARN_IGNORED_QUALIFIERS} \
+ 	-Winit-self \
+ 	-Wpointer-arith \
++	-Wformat \
+ 	-Werror=format-security \
+ 	-fno-strict-aliasing \
+ 	-fsigned-char
+@@ -4928,7 +4929,7 @@
+ @LINUX_TRUE at ceph_test_librbd_fsx_SOURCES = test/librbd/fsx.c
+ @LINUX_TRUE at nodist_EXTRA_ceph_test_librbd_fsx_SOURCES = dummy.cc # force c++ linking
+ @LINUX_TRUE at ceph_test_librbd_fsx_LDADD = $(LIBKRBD) $(LIBRBD) $(LIBRADOS)
+- at LINUX_TRUE@ceph_test_librbd_fsx_CFLAGS = ${AM_CFLAGS} -Wno-format
++ at LINUX_TRUE@ceph_test_librbd_fsx_CFLAGS = ${AM_CFLAGS}
+ ceph_test_cls_rbd_SOURCES = test/cls_rbd/test_cls_rbd.cc
+ ceph_test_cls_rbd_LDADD = $(LIBRADOS) libcls_rbd_client.la libcls_lock_client.la $(UNITTEST_LDADD) $(RADOS_TEST_LDADD)
+ ceph_test_cls_rbd_CXXFLAGS = $(UNITTEST_CXXFLAGS)
+--- ceph-0.81/src/Makefile-env.am.orig	2014-07-02 09:23:02.126133273 -0400
++++ ceph-0.81/src/Makefile-env.am	2014-07-03 11:50:14.063133273 -0400
+@@ -64,6 +64,7 @@
+ 	${WARN_IGNORED_QUALIFIERS} \
+ 	-Winit-self \
+ 	-Wpointer-arith \
++	-Wformat \
+ 	-Werror=format-security \
+ 	-fno-strict-aliasing \
+ 	-fsigned-char
+--- ceph-0.81/src/test/Makefile.am.orig	2014-07-04 06:36:22.016099589 -0400
++++ ceph-0.81/src/test/Makefile.am	2014-07-04 06:37:26.156099589 -0400
+@@ -642,7 +642,7 @@
+ ceph_test_librbd_fsx_SOURCES = test/librbd/fsx.c
+ nodist_EXTRA_ceph_test_librbd_fsx_SOURCES = dummy.cc # force c++ linking
+ ceph_test_librbd_fsx_LDADD = $(LIBKRBD) $(LIBRBD) $(LIBRADOS)
+-ceph_test_librbd_fsx_CFLAGS = ${AM_CFLAGS} -Wno-format
++ceph_test_librbd_fsx_CFLAGS = ${AM_CFLAGS}
+ bin_DEBUGPROGRAMS += ceph_test_librbd_fsx
+ endif
+ 
diff --git a/ceph-0.81.0-configure.ac.patch b/ceph-0.81.0-configure.ac.patch
new file mode 100644
index 0000000..898b7c1
--- /dev/null
+++ b/ceph-0.81.0-configure.ac.patch
@@ -0,0 +1,14 @@
+--- ceph-0.81/configure.ac.orig	2014-07-04 10:00:39.193099589 -0400
++++ ceph-0.81/configure.ac	2014-07-04 10:03:54.739099589 -0400
+@@ -425,9 +425,9 @@
+         # the search path.
+         AS_IF([test "x$with_debug" = "xyes"], [
+         	dir='/usr/share/java'
+-	        junit4_jar=`find $dir -name junit4.jar | head -n 1`
++	        junit4_jar=`find $dir -name junit.jar | head -n 1`
+ 		AS_IF([test -r "$junit4_jar"], [
+-		      EXTRA_CLASSPATH_JAR=`dirname $junit4_jar`/junit4.jar
++		      EXTRA_CLASSPATH_JAR=`dirname $junit4_jar`/junit.jar
+ 		      AC_SUBST(EXTRA_CLASSPATH_JAR)
+ 		      [have_junit4=1]], [
+ 		      AC_MSG_NOTICE([Cannot find junit4.jar (apt-get install junit4)])
diff --git a/ceph-0.81.0-test-librbd-fsx.c.patch b/ceph-0.81.0-test-librbd-fsx.c.patch
new file mode 100644
index 0000000..6cfa1b1
--- /dev/null
+++ b/ceph-0.81.0-test-librbd-fsx.c.patch
@@ -0,0 +1,11 @@
+--- ceph-0.81/src/test/librbd/fsx.c.orig	2014-07-04 07:23:03.485099589 -0400
++++ ceph-0.81/src/test/librbd/fsx.c	2014-07-04 08:11:04.208099589 -0400
+@@ -1360,7 +1360,7 @@
+ 	int ret, fd;
+ 	struct rbd_ctx cur_ctx = RBD_CTX_INIT;
+ 	struct stat file_info;
+-	char *good_buf, *temp_buf;
++	char *good_buf, *temp_buf = NULL;
+ 
+ 	clone_imagename(imagename, sizeof(imagename), clonenum);
+ 	if ((ret = ops->open(imagename, &cur_ctx)) < 0) {
diff --git a/ceph.spec b/ceph.spec
index 87a734e..7ba02fd 100644
--- a/ceph.spec
+++ b/ceph.spec
@@ -1,3 +1,6 @@
+
+%global _hardened_build 1
+
 %bcond_with ocf
 
 %if ! (0%{?fedora} > 12 || 0%{?rhel} > 5)
@@ -10,12 +13,18 @@
 #################################################################################
 Name:		ceph
 Version:	0.81.0
-Release:	3%{?dist}
+Release:	4%{?dist}
 Summary:	User space components of the Ceph file system
 License:	GPL-2.0
 Group:		System Environment/Base
 URL:		http://ceph.com/
 Source0:        https://ceph.com/download/%{name}-0.81.tar.bz2
+Patch0:         ceph-0.81.0-test-librbd-fsx.c.patch
+Patch1:         ceph-0.81.0-Makefile.in.patch
+Patch2:         ceph-0.81.0-configure.ac.patch
+%if ( 0%{?rhel} && 0%{?rhel} < 7 )
+ExcludeArch:	ppc ppc64
+%endif
 Requires:	librbd1 = %{version}-%{release}
 Requires:	librados2 = %{version}-%{release}
 Requires:	libcephfs1 = %{version}-%{release}
@@ -49,9 +58,11 @@ BuildRequires:  libuuid-devel
 BuildRequires:  libblkid-devel >= 2.17
 BuildRequires:  libudev-devel
 BuildRequires:  leveldb-devel > 1.2
+%if ( ! (0%{?rhel} && 0%{?rhel} < 7) )
 BuildRequires:  xfsprogs-devel
+%endif
 BuildRequires:  yasm
-%if 0%{?rhel_version} || 0%{?centos_version} || 0%{?fedora}
+%if 0%{?rhel} || 0%{?centos} || 0%{?fedora}
 BuildRequires:  snappy-devel
 %endif
 
@@ -85,7 +96,16 @@ Requires:	gdisk
 Requires(post):	chkconfig
 Requires(preun):chkconfig
 Requires(preun):initscripts
-BuildRequires:  gperftools-devel
+# google-perftools is not available on these:
+%if ( ! (0%{?rhel} && 0%{?rhel} <= 6 ) )
+%ifnarch ppc s390 s390x
+BuildRequires: gperftools-devel
+%endif
+%else
+%ifnarch ppc ppc64 s390 s390x
+BuildRequires: gperftools-devel
+%endif
+%endif
 %endif
 
 %description
@@ -159,7 +179,7 @@ managers such as Pacemaker.
 Summary:	RADOS distributed object store client library
 Group:		System Environment/Libraries
 License:	LGPL-2.0
-%if 0%{?rhel_version} || 0%{?centos_version} || 0%{?fedora}
+%if 0%{?rhel} || 0%{?centos} || 0%{?fedora}
 Obsoletes:	ceph-libs
 %endif
 %description -n librados2
@@ -172,7 +192,7 @@ store using a simple file-like interface.
 Summary:	RADOS block device client library
 Group:		System Environment/Libraries
 License:	LGPL-2.0
-%if 0%{?rhel_version} || 0%{?centos_version} || 0%{?fedora}
+%if 0%{?rhel} || 0%{?centos} || 0%{?fedora}
 Obsoletes:	ceph-libs
 %endif
 %description -n librbd1
@@ -185,7 +205,7 @@ shared library allowing applications to manage these block devices.
 Summary:	Ceph distributed file system client library
 Group:		System Environment/Libraries
 License:	LGPL-2.0
-%if 0%{?rhel_version} || 0%{?centos_version} || 0%{?fedora}
+%if 0%{?rhel} || 0%{?centos} || 0%{?fedora}
 Obsoletes:	ceph-libs
 %endif
 %description -n libcephfs1
@@ -247,12 +267,12 @@ License:	LGPL-2.0
 Requires:	java
 Requires:	libcephfs_jni1 = %{version}-%{release}
 BuildRequires:  java-devel
-%if (0%{?fedora} > 18 || 0%{?rhel} > 6)
-Requires:       junit
-BuildRequires:  junit
-%else
+%if ( 0%{?rhel} && 0%{?rhel} < 7 )
 Requires:       junit4
 BuildRequires:  junit4
+%else
+Requires:       junit
+BuildRequires:  junit
 %endif
 %description -n cephfs-java
 This package contains the Java libraries for the Ceph File System.
@@ -266,6 +286,11 @@ This package contains the Java libraries for the Ceph File System.
 #################################################################################
 %prep
 %setup -q -n ceph-0.81
+%patch0 -p1
+%patch1 -p1
+%if ( 0%{?fedora} && 0%{?fedora} > 20 )
+%patch2 -p1
+%endif
 
 %build
 # Find jni.h
@@ -292,6 +317,18 @@ export RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS | sed -e 's/i386/i486/'`
 		--enable-cephfs-java \
 		$MY_CONF_OPT \
 		%{?_with_ocf} \
+%if ( 0%{?rhel} && 0%{?rhel} < 7 )
+		--without-libxfs \
+%endif
+%if ( ! (0%{?rhel} && 0%{?rhel} <= 6 ) )
+%ifarch ppc s390 s390x
+		--without-tcmalloc \
+%endif
+%else
+%ifarch ppc ppc64 s390 s390x
+		--without-tcmalloc \
+%endif
+%endif
 		CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS"
 
 # fix bug in specific version of libedit-devel
@@ -651,6 +688,9 @@ ln -sf %{_libdir}/librbd.so.1 /usr/lib64/qemu/librbd.so.1
 
 
 %changelog
+* Fri Jul 4 2014 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 0.81.0-4
+- upstream ceph.spec file
+
 * Tue Jul 1 2014 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 0.81.0-3
 - upstream ceph.spec file
 


More information about the scm-commits mailing list