From 755fea83a1ef937caeb5094915af2c5ba1e3da27 Mon Sep 17 00:00:00 2001 From: Mattias Ellert Date: Nov 16 2021 12:14:02 +0000 Subject: Update to version 5.3.3 Drop patches accepted upstream: 0001-Fix-compilation-failure-on-32-bit-architectures.patch 0001-Fix-build-failure-on-platforms-where-char-is-unsigne.patch --- diff --git a/0001-Fix-build-failure-on-platforms-where-char-is-unsigne.patch b/0001-Fix-build-failure-on-platforms-where-char-is-unsigne.patch deleted file mode 100644 index 05fd671..0000000 --- a/0001-Fix-build-failure-on-platforms-where-char-is-unsigne.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 6ab8bc65e20d2c4e8a1471bb168d9a9dffd03c33 Mon Sep 17 00:00:00 2001 -From: Mattias Ellert -Date: Tue, 2 Nov 2021 15:38:54 +0100 -Subject: [PATCH] Fix build failure on platforms where char is unsigned (ARM, - PPC and S390X) - -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc:177:22: error: comparison is always false due to limited range of data type [-Werror=type-limits] - 177 | if (doHex < 0) doHex = 0; - | ~~~~~~^~~ -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc: In member function 'XrdSysTrace& XrdSysTrace::operator<<(short int)': -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc:232:14: error: comparison is always false due to limited range of data type [-Werror=type-limits] - 232 | if (doHex < 0) doHex = 0; - | ~~~~~~^~~ -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc: In member function 'XrdSysTrace& XrdSysTrace::operator<<(int)': -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc:255:14: error: comparison is always false due to limited range of data type [-Werror=type-limits] - 255 | if (doHex < 0) doHex = 0; - | ~~~~~~^~~ -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc: In member function 'XrdSysTrace& XrdSysTrace::operator<<(long long int)': -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc:291:14: error: comparison is always false due to limited range of data type [-Werror=type-limits] - 291 | if (doHex < 0) doHex = 0; - | ~~~~~~^~~ -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc: In member function 'XrdSysTrace& XrdSysTrace::operator<<(short unsigned int)': -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc:314:14: error: comparison is always false due to limited range of data type [-Werror=type-limits] - 314 | if (doHex < 0) doHex = 0; - | ~~~~~~^~~ -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc: In member function 'XrdSysTrace& XrdSysTrace::operator<<(unsigned int)': -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc:337:14: error: comparison is always false due to limited range of data type [-Werror=type-limits] - 337 | if (doHex < 0) doHex = 0; - | ~~~~~~^~~ -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc: In member function 'XrdSysTrace& XrdSysTrace::operator<<(long long unsigned int)': -/builddir/build/BUILD/xrootd-5.3.2/src/XrdSys/XrdSysTrace.cc:373:14: error: comparison is always false due to limited range of data type [-Werror=type-limits] - 373 | if (doHex < 0) doHex = 0; - | ~~~~~~^~~ ---- - src/XrdSys/XrdSysTrace.hh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/XrdSys/XrdSysTrace.hh b/src/XrdSys/XrdSysTrace.hh -index 364c55fbe..5dd3c667e 100644 ---- a/src/XrdSys/XrdSysTrace.hh -+++ b/src/XrdSys/XrdSysTrace.hh -@@ -116,7 +116,7 @@ const char *iName; - short dPnt; - short dFree; - short vPnt; --char doHex; -+signed char doHex; - struct iovec ioVec[iovMax]; - char pBuff[pfxMax]; - char dBuff[txtMax]; --- -2.31.1 - diff --git a/0001-Fix-compilation-failure-on-32-bit-architectures.patch b/0001-Fix-compilation-failure-on-32-bit-architectures.patch deleted file mode 100644 index 55434d8..0000000 --- a/0001-Fix-compilation-failure-on-32-bit-architectures.patch +++ /dev/null @@ -1,80 +0,0 @@ -From cacb941f1dcc981538b7e15d2276f9d980588753 Mon Sep 17 00:00:00 2001 -From: Mattias Ellert -Date: Sat, 4 Sep 2021 08:23:14 +0200 -Subject: [PATCH] Fix compilation failure on 32 bit architectures: - -armel, armhf, i386, mipsel, m68k, sh4, x32 - -.../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc: In function 'ssize_t ceph_posix_pwrite(int, const void*, size_t, off64_t)': -.../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:803:97: error: no matching function for call to 'max(off64_t, uint64_t&)' - 803 | if (offset + count) fr->maxOffsetWritten = std::max(offset + count - 1, fr->maxOffsetWritten); - | ^ -In file included from /usr/include/c++/10/memory:63, - from .../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:36: -/usr/include/c++/10/bits/stl_algobase.h:254:5: note: candidate: 'template constexpr const _Tp& std::max(const _Tp&, const _Tp&)' - 254 | max(const _Tp& __a, const _Tp& __b) - | ^~~ -/usr/include/c++/10/bits/stl_algobase.h:254:5: note: template argument deduction/substitution failed: -.../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:803:97: note: deduced conflicting types for parameter 'const _Tp' ('long long int' and 'uint64_t' {aka 'long long unsigned int'}) - 803 | if (offset + count) fr->maxOffsetWritten = std::max(offset + count - 1, fr->maxOffsetWritten); - | ^ -In file included from /usr/include/c++/10/memory:63, - from .../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:36: -/usr/include/c++/10/bits/stl_algobase.h:300:5: note: candidate: 'template constexpr const _Tp& std::max(const _Tp&, const _Tp&, _Compare)' - 300 | max(const _Tp& __a, const _Tp& __b, _Compare __comp) - | ^~~ -/usr/include/c++/10/bits/stl_algobase.h:300:5: note: template argument deduction/substitution failed: -.../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:803:97: note: deduced conflicting types for parameter 'const _Tp' ('long long int' and 'uint64_t' {aka 'long long unsigned int'}) - 803 | if (offset + count) fr->maxOffsetWritten = std::max(offset + count - 1, fr->maxOffsetWritten); - | ^ -.../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc: In function 'void ceph_aio_write_complete(rados_completion_t, void*)': -.../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:822:124: error: no matching function for call to 'max(uint64_t&, __off64_t)' - 822 | fr->maxOffsetWritten = std::max(fr->maxOffsetWritten, awa->aiop->sfsAio.aio_offset + awa->aiop->sfsAio.aio_nbytes - 1); - | ^ -In file included from /usr/include/c++/10/memory:63, - from .../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:36: -/usr/include/c++/10/bits/stl_algobase.h:254:5: note: candidate: 'template constexpr const _Tp& std::max(const _Tp&, const _Tp&)' - 254 | max(const _Tp& __a, const _Tp& __b) - | ^~~ -/usr/include/c++/10/bits/stl_algobase.h:254:5: note: template argument deduction/substitution failed: -.../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:822:124: note: deduced conflicting types for parameter 'const _Tp' ('long long unsigned int' and '__off64_t' {aka 'long long int'}) - 822 | fr->maxOffsetWritten = std::max(fr->maxOffsetWritten, awa->aiop->sfsAio.aio_offset + awa->aiop->sfsAio.aio_nbytes - 1); - | ^ -In file included from /usr/include/c++/10/memory:63, - from .../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:36: -/usr/include/c++/10/bits/stl_algobase.h:300:5: note: candidate: 'template constexpr const _Tp& std::max(const _Tp&, const _Tp&, _Compare)' - 300 | max(const _Tp& __a, const _Tp& __b, _Compare __comp) - | ^~~ -/usr/include/c++/10/bits/stl_algobase.h:300:5: note: template argument deduction/substitution failed: -.../xrootd-5.3.1/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc:822:124: note: deduced conflicting types for parameter 'const _Tp' ('long long unsigned int' and '__off64_t' {aka 'long long int'}) - 822 | fr->maxOffsetWritten = std::max(fr->maxOffsetWritten, awa->aiop->sfsAio.aio_offset + awa->aiop->sfsAio.aio_nbytes - 1); - | ^ ---- - src/XrdCeph/src/XrdCeph/XrdCephPosix.cc | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc b/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc -index 3131a9c8..8fab4580 100644 ---- a/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc -+++ b/src/XrdCeph/src/XrdCeph/XrdCephPosix.cc -@@ -800,7 +800,7 @@ ssize_t ceph_posix_pwrite(int fd, const void *buf, size_t count, off64_t offset) - XrdSysMutexHelper lock(fr->statsMutex); - fr->wrcount++; - fr->bytesWritten+=count; -- if (offset + count) fr->maxOffsetWritten = std::max(offset + count - 1, fr->maxOffsetWritten); -+ if (offset + count) fr->maxOffsetWritten = std::max(uint64_t(offset + count - 1), fr->maxOffsetWritten); - return count; - } else { - return -EBADF; -@@ -819,7 +819,7 @@ static void ceph_aio_write_complete(rados_completion_t c, void *arg) { - fr->bytesAsyncWritePending -= awa->nbBytes; - fr->bytesWritten += awa->nbBytes; - if (awa->aiop->sfsAio.aio_nbytes) -- fr->maxOffsetWritten = std::max(fr->maxOffsetWritten, awa->aiop->sfsAio.aio_offset + awa->aiop->sfsAio.aio_nbytes - 1); -+ fr->maxOffsetWritten = std::max(fr->maxOffsetWritten, uint64_t(awa->aiop->sfsAio.aio_offset + awa->aiop->sfsAio.aio_nbytes - 1)); - ::timeval now; - ::gettimeofday(&now, nullptr); - double writeTime = 0.000001 * (now.tv_usec - awa->startTime.tv_usec) + 1.0 * (now.tv_sec - awa->startTime.tv_sec); --- -2.31.1 - diff --git a/sources b/sources index 20208b9..3748e3b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (xrootd-5.3.2.tar.gz) = 9d5b5d9171443718e75f9af75f76742e92388ab0ac02c0de7b32cdbaed3de3c5bf96fd366f2ed934eae6c4a440640fb9ca74846fd9e5e604ae1fbeae2dff056c +SHA512 (xrootd-5.3.3.tar.gz) = f92f9a0971e4a71b72d200a9e97725b28f719f3d50da643c1d53557f123a890733bc0c02d95f450ed0f1ec31ffb84cf17a7cb07c1cad857a4e07779f03585d29 diff --git a/xrootd.spec b/xrootd.spec index d781d4d..06d615b 100644 --- a/xrootd.spec +++ b/xrootd.spec @@ -18,22 +18,16 @@ Name: xrootd Epoch: 1 -Version: 5.3.2 +Version: 5.3.3 Release: 1%{?dist} Summary: Extended ROOT file server License: LGPLv3+ -URL: http://xrootd.org/ -Source0: http://xrootd.org/download/v%{version}/%{name}-%{version}.tar.gz -# Fix compilation failure on 32 bit architectures -# https://github.com/xrootd/xrootd-ceph/pull/16 -Patch0: 0001-Fix-compilation-failure-on-32-bit-architectures.patch +URL: https://xrootd.slac.stanford.edu/ +Source0: https://xrootd.slac.stanford.edu/download/v%{version}/%{name}-%{version}.tar.gz # Do not hardcode error numbers # https://github.com/xrootd/xrootd/pull/1542 -Patch1: 0001-Do-not-hardcode-error-numbers.patch -# Fix build failure on platforms where char is unsigned -# https://github.com/xrootd/xrootd/pull/1546 -Patch2: 0001-Fix-build-failure-on-platforms-where-char-is-unsigne.patch +Patch0: 0001-Do-not-hardcode-error-numbers.patch BuildRequires: gcc-c++ %if %{?rhel}%{!?rhel:0} == 7 @@ -290,8 +284,6 @@ This package contains the API documentation of the xrootd libraries. %prep %setup -q %patch0 -p1 -%patch1 -p1 -%patch2 -p1 %build %cmake3 \ @@ -658,6 +650,12 @@ fi %doc %{_pkgdocdir} %changelog +* Tue Nov 16 2021 Mattias Ellert - 1:5.3.3-1 +- Update to version 5.3.3 +- Drop patches accepted upstream: + - 0001-Fix-compilation-failure-on-32-bit-architectures.patch + - 0001-Fix-build-failure-on-platforms-where-char-is-unsigne.patch + * Tue Nov 02 2021 Mattias Ellert - 1:5.3.2-1 - Update to version 5.3.2 - Drop OpenSSL 3 patch accepted upstream