Compare commits

...
Sign in to create a new pull request.

30 commits

Author SHA1 Message Date
Mattias Ellert
e4ad3a28d2 Update to version 6.1.1 2026-08-13 07:56:03 +02:00
Python Maint
532cdeacb7 Rebuilt for Python 3.15.0b4 ABI change 2026-07-22 10:11:56 +02:00
Fedora Release Engineering
f904ae3077 Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild 2026-07-17 09:26:15 +00:00
Mattias Ellert
fac6715ea9 Update to version 6.1.0
Drop patches accepted upstream
2026-06-24 07:04:28 +02:00
Yaakov Selkowitz
11db6b2e2b Rebuilt for openssl 4.0 2026-06-12 20:09:07 -04:00
Python Maint
ecd1ba1adf Rebuilt for Python 3.15 2026-06-05 00:05:44 +02:00
Mattias Ellert
c0cfe0cb19 Update to version 6.0.3 2026-06-02 13:02:41 +02:00
Mattias Ellert
8acacae375 Update to version 6.0.2
Adapt to OpenSSL 4.0
Drop patches accepted upstream
2026-06-01 04:22:36 +02:00
Mattias Ellert
5ee6a46add Update to version 6.0.0 2026-04-21 18:03:25 +02:00
Mattias Ellert
1bf67be74a Update to version 5.9.2
Drop patches accepted upstream or previously backported
2026-03-28 10:00:55 +01:00
Fedora Release Engineering
1ded0f02fb Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-17 20:53:34 +00:00
Mattias Ellert
db5cfc1332 Update to version 5.9.1 2025-11-21 13:08:42 +01:00
Mattias Ellert
d990e6af59 Update to version 5.9.0 2025-10-16 14:26:54 +02:00
Python Maint
2f40bdab19 Rebuilt for Python 3.14.0rc3 bytecode 2025-09-19 15:04:04 +02:00
Python Maint
c6772173e1 Rebuilt for Python 3.14.0rc2 bytecode 2025-08-15 15:23:27 +02:00
Fedora Release Engineering
7410fb1c04 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 21:04:23 +00:00
Mattias Ellert
e7d8ccb573 Update to version 5.8.4 2025-07-17 12:07:19 +02:00
Mattias Ellert
6a14539323 Update to version 5.8.3 2025-06-06 21:21:15 +02:00
Python Maint
337a27ddf3 Rebuilt for Python 3.14 2025-06-03 12:22:33 +02:00
Mattias Ellert
a1df29a855 Update to version 5.8.2
Use reserved uid and gid 194 for the xrootd user
  https://pagure.io/packaging-committee/issue/1444
  https://src.fedoraproject.org/rpms/setup/pull-request/27
2025-05-14 21:33:37 +02:00
Mattias Ellert
51e5176cee Update to version 5.8.1 2025-04-17 02:33:51 +02:00
Mattias Ellert
83ce3e63ce Update to version 5.8.0 2025-03-25 17:48:43 +01:00
Mattias Ellert
8fc3e7a48d Move user/group creation logic to sysusers.d fragment 2025-03-09 12:24:50 +01:00
Mattias Ellert
18f68e3bba Set HOSTNAME to localhost during testing 2025-02-19 07:26:00 +01:00
Björn Esser
acdcf3a99d
Add explicit BR: libxcrypt-devel
Signed-off-by: Björn Esser <besser82@fedoraproject.org>
2025-02-01 19:58:19 +01:00
Mattias Ellert
546174db8d Update to version 5.7.3
Drop patches accepted upstream
2025-01-30 13:11:38 +01:00
Mattias Ellert
c279cfe4c0 Use CMAKE_BUILD_TYPE RelWithDebInfo to avoid -Werror in compiler flags 2025-01-24 08:47:32 +01:00
Mattias Ellert
d77792cf7c Fix compilation errors with GCC 15 2025-01-19 06:57:55 +01:00
Mattias Ellert
ccc05e4af5 Fix errors in format strings 2024-12-09 08:52:11 +01:00
Mattias Ellert
fc28d9f969 Update to version 5.7.2
Drop patches accepted upstream
2024-11-30 10:40:50 +01:00
12 changed files with 366 additions and 376 deletions

View file

@ -1,40 +0,0 @@
From ca9c703a58c9f3332cfca592481c5f1e694cf536 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Mon, 9 Sep 2024 06:58:29 +0200
Subject: [PATCH] Change type in XrdSutCacheArg_t to long long
The XrdSutCacheArg_t type is used to pass arguments of different
types. The type used must be wide enough to fit the widest of the
types passed. One of the types passed is time_t, which can be 64 bits
wide also on 32-bit systems. So a long, which is 32 bits wide on a
32-bit system is not sufficient.
This commit changes the type to long long.
Fixes: #2272
---
src/XrdSut/XrdSutCache.hh | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/XrdSut/XrdSutCache.hh b/src/XrdSut/XrdSutCache.hh
index b9635d4e1..6c39f87e8 100644
--- a/src/XrdSut/XrdSutCache.hh
+++ b/src/XrdSut/XrdSutCache.hh
@@ -40,10 +40,10 @@
typedef bool (*XrdSutCacheGet_t)(XrdSutCacheEntry *, void *);
typedef struct {
- long arg1;
- long arg2;
- long arg3;
- long arg4;
+ long long arg1;
+ long long arg2;
+ long long arg3;
+ long long arg4;
} XrdSutCacheArg_t;
class XrdSutCache {
--
2.46.0

View file

@ -1,54 +0,0 @@
From ce836985eed0f6e496113b9e5c65c8d4a53a112d Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Tue, 17 Sep 2024 05:08:21 +0200
Subject: [PATCH] Increase client timeouts for XRootD server tests
The XRootD server tests currently uses very short settings for the
client timeouts:
- XRD_REQUESTTIMEOUT: 2
- XRD_STREAMTIMEOUT: 2
- XRD_TIMEOUTRESOLUTION: 1
This is a major reduction from the default values:
- XRD_REQUESTTIMEOUT: 1800
- XRD_STREAMTIMEOUT: 60
- XRD_TIMEOUTRESOLUTION: 15
According to the comment in the test script, this is done in order to
"catch errors quickly and prevent the test suite from getting stuck
waiting for timeouts while running".
However, the very short timeouts make some tests fail with timeout
errors when run on small or slow systems.
This commit increases the timeout values to avoid errors:
- XRD_REQUESTTIMEOUT: 180
- XRD_STREAMTIMEOUT: 30
- XRD_TIMEOUTRESOLUTION: 10
---
tests/XRootD/test.sh | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/XRootD/test.sh b/tests/XRootD/test.sh
index 60a402920..fe001a029 100755
--- a/tests/XRootD/test.sh
+++ b/tests/XRootD/test.sh
@@ -47,9 +47,9 @@ export XRD_LOGLEVEL XRD_LOGFILE
# Reduce default timeouts to catch errors quickly and prevent the test
# suite from getting stuck waiting for timeouts while running.
-: "${XRD_REQUESTTIMEOUT:=2}"
-: "${XRD_STREAMTIMEOUT:=2}"
-: "${XRD_TIMEOUTRESOLUTION:=1}"
+: "${XRD_REQUESTTIMEOUT:=180}"
+: "${XRD_STREAMTIMEOUT:=30}"
+: "${XRD_TIMEOUTRESOLUTION:=10}"
export XRD_REQUESTTIMEOUT XRD_STREAMTIMEOUT XRD_TIMEOUTRESOLUTION
--
2.46.0

View file

@ -0,0 +1,30 @@
From 8b924dbc92d3cce474421fbd7974f3d22d64d51c Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Wed, 12 Aug 2026 17:00:45 +0200
Subject: [PATCH] Make documentation self-contained
---
README.md | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/README.md b/README.md
index bafd1112d..167d476e0 100644
--- a/README.md
+++ b/README.md
@@ -1,12 +1,5 @@
-[![Repology](https://img.shields.io/badge/repology-xrootd-blue)](https://repology.org/project/xrootd/packages)
-[![CDash](https://img.shields.io/badge/CDash-XRootD-limegreen)](https://my.cdash.org/index.php?project=XRootD)
-[![ABI](https://github.com/xrootd/xrootd/actions/workflows/ABI.yml/badge.svg)](https://github.com/xrootd/xrootd/actions/workflows/ABI.yml)
-[![CI](https://github.com/xrootd/xrootd/actions/workflows/CI.yml/badge.svg)](https://github.com/xrootd/xrootd/actions/workflows/CI.yml)
-[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/11900/badge)](https://www.bestpractices.dev/projects/11900)
-[![LFX Health Score](https://insights.linuxfoundation.org/api/badge/health-score?project=xrootd)](https://insights.linuxfoundation.org/project/xrootd)
-
<p align="center">
- <img src="https://xrootd.org/images/xrootd-logo.png"/>
+ <img src="xrootd-logo.png"/>
</p>
## XRootD: eXtended ROOT Daemon
--
2.55.0

View file

@ -1,59 +0,0 @@
From 7836a0f2d778b082c632a92846ecf756e78fbb24 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Sat, 7 Sep 2024 18:04:26 +0200
Subject: [PATCH 1/2] Protect against array index out of bounds
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Seen on hppa Linux where EBADE is 160.
In function int {anonymous}::initErrTable(),
inlined from void __static_initialization_and_destruction_0() at /<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc:92:28,
inlined from (static initializers for /<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc) at /<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc:128:1:
/<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc:70:26: warning: array subscript 160 is above array bounds of const char* [144] [-Warray-bounds=]
70 | if (Errno2String[EBADE]) {
| ~~~~~~~~~~~~~~~~~~^
/<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc: In function (static initializers for /<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc):
/<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc:48:28: note: while referencing {anonymous}::Errno2String
48 | const char* Errno2String[errSlots] = {0};
| ^~~~~~~~~~~~
In function int {anonymous}::initErrTable(),
inlined from void __static_initialization_and_destruction_0() at /<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc:92:28,
inlined from (static initializers for /<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc) at /<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc:128:1:
/<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc:74:22: warning: array subscript 160 is above array bounds of const char* [144] [-Warray-bounds=]
74 | Errno2String[EBADE] = "authentication failed - possible invalid exchange";
| ~~~~~~~~~~~~~~~~~~^
/<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc: In function (static initializers for /<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc):
/<<PKGBUILDDIR>>/src/XrdSys/XrdSysE2T.cc:48:28: note: while referencing {anonymous}::Errno2String
48 | const char* Errno2String[errSlots] = {0};
| ^~~~~~~~~~~~
---
src/XrdSys/XrdSysE2T.cc | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/src/XrdSys/XrdSysE2T.cc b/src/XrdSys/XrdSysE2T.cc
index 83b62e317..9f615a911 100644
--- a/src/XrdSys/XrdSysE2T.cc
+++ b/src/XrdSys/XrdSysE2T.cc
@@ -67,11 +67,13 @@ int initErrTable()
// EAUTH is remapped to EBADE ('invalid exchange'). Given there's no current XRootD use of a
// syscall that can return EBADE, we assume EBADE really means authentication denied.
#if defined(EBADE)
- if (Errno2String[EBADE]) {
- free((char*)Errno2String[EBADE]);
+ if (EBADE - ERRNOBASE > 0 && EBADE - ERRNOBASE < errSlots) {
+ if (Errno2String[EBADE - ERRNOBASE])
+ free((char*)Errno2String[EBADE - ERRNOBASE]);
+ Errno2String[EBADE - ERRNOBASE] = "authentication failed - possible invalid exchange";
+ if (EBADE - ERRNOBASE > lastGood)
+ lastGood = EBADE - ERRNOBASE;
}
-
- Errno2String[EBADE] = "authentication failed - possible invalid exchange";
#endif
// Supply generic message for missing ones
--
2.46.0

View file

@ -1,34 +0,0 @@
From 6372f261574a13f7a14bd8b55c45d2bedfd5e4c8 Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Fri, 13 Sep 2024 16:24:54 +0200
Subject: [PATCH] Reproducible doxygen output.
The files generated by doxygen whose file names contain the string
unnamedN where N is a number are not generated using predictable
names.
This happens when running doxygen using multiple threads.
Set NUM_PROC_THREADS=1 to work around this issue.
See: https://github.com/doxygen/doxygen/issues/11138
---
Doxyfile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Doxyfile b/Doxyfile
index a85babb7c..f3bc4c524 100644
--- a/Doxyfile
+++ b/Doxyfile
@@ -492,7 +492,7 @@ LOOKUP_CACHE_SIZE = 2
# DOT_NUM_THREADS setting.
# Minimum value: 0, maximum value: 32, default value: 1.
-NUM_PROC_THREADS = 0
+NUM_PROC_THREADS = 1
# If the TIMESTAMP tag is set different from NO then each generated page will
# contain the date or date and time when the page was generated. Setting this to
--
2.46.0

View file

@ -1,29 +0,0 @@
From bdd966dba0b2ad0757811b0b53d5540ae403f16b Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Thu, 5 Sep 2024 22:05:34 +0200
Subject: [PATCH] =?UTF-8?q?[Server]=20Correct=20spelling=20(permision=20?=
=?UTF-8?q?=E2=86=92=20permission)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/Xrd/XrdConfig.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/Xrd/XrdConfig.cc b/src/Xrd/XrdConfig.cc
index e5b51eb59..55b31b841 100644
--- a/src/Xrd/XrdConfig.cc
+++ b/src/Xrd/XrdConfig.cc
@@ -1432,7 +1432,7 @@ int XrdConfig::SetupAPath()
//
#ifndef WIN32
if (chmod(AdminPath, AdminMode & ~S_IWGRP))
- {Log.Emsg("Config", errno, "set permision for admin path", AdminPath);
+ {Log.Emsg("Config", errno, "set permission for admin path", AdminPath);
return 1;
}
#endif
--
2.46.0

25
0001-Unbundle-gtest.patch Normal file
View file

@ -0,0 +1,25 @@
From cd11f615e749a1fcdd353edd30505c4e8da897db Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Tue, 11 Aug 2026 23:53:15 +0200
Subject: [PATCH] Unbundle gtest
---
cmake/XRootDFindLibs.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cmake/XRootDFindLibs.cmake b/cmake/XRootDFindLibs.cmake
index e47dfb83e..3788f5ed4 100644
--- a/cmake/XRootDFindLibs.cmake
+++ b/cmake/XRootDFindLibs.cmake
@@ -89,7 +89,7 @@ if( ENABLE_XRDOSSARC )
endif()
if( ENABLE_TESTS )
- add_subdirectory(vendor/googletest EXCLUDE_FROM_ALL)
+ find_package( GTest REQUIRED )
set( BUILD_TESTS TRUE )
--
2.55.0

View file

@ -0,0 +1,62 @@
From bd81e2e922bd44c755ad77cf29ca45570cc934ec Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Tue, 21 Apr 2026 00:38:07 +0200
Subject: [PATCH] Unbundle tinyxml
---
cmake/FindTinyXml.cmake | 18 ++++++++++++++++++
src/XrdXml/tinyxml/CMakeLists.txt | 12 ++++++++++++
2 files changed, 30 insertions(+)
create mode 100644 cmake/FindTinyXml.cmake
diff --git a/cmake/FindTinyXml.cmake b/cmake/FindTinyXml.cmake
new file mode 100644
index 000000000..75c752707
--- /dev/null
+++ b/cmake/FindTinyXml.cmake
@@ -0,0 +1,18 @@
+FIND_PATH(TINYXML_INCLUDE_DIR tinyxml.h
+ HINTS
+ ${TINYXML_DIR}
+ $ENV{TINYXML_DIR}
+ /usr
+ PATH_SUFFIXES include
+)
+
+FIND_LIBRARY(TINYXML_LIBRARIES tinyxml
+ HINTS
+ ${TINYXML_DIR}
+ $ENV{TINYXML_DIR}
+ /usr
+ PATH_SUFFIXES lib
+)
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(TinyXml DEFAULT_MSG TINYXML_LIBRARIES TINYXML_INCLUDE_DIR)
diff --git a/src/XrdXml/tinyxml/CMakeLists.txt b/src/XrdXml/tinyxml/CMakeLists.txt
index db7d4924e..f87ed8f46 100644
--- a/src/XrdXml/tinyxml/CMakeLists.txt
+++ b/src/XrdXml/tinyxml/CMakeLists.txt
@@ -1,3 +1,13 @@
+find_package(TinyXml)
+
+if(TINYXML_FOUND)
+
+add_library(XrdTinyXml INTERFACE IMPORTED GLOBAL)
+set_property(TARGET XrdTinyXml PROPERTY INTERFACE_INCLUDE_DIRECTORIES "${TINYXML_INCLUDE_DIR}")
+set_property(TARGET XrdTinyXml PROPERTY INTERFACE_LINK_LIBRARIES "${TINYXML_LIBRARIES}")
+
+else()
+
add_library(XrdTinyXml OBJECT
tinystr.cpp tinystr.h
tinyxml.cpp tinyxml.h
@@ -13,3 +23,5 @@ set_target_properties(XrdTinyXml
target_include_directories(XrdTinyXml
PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
)
+
+endif()
--
2.53.0

View file

@ -1,26 +0,0 @@
From f633e0faf13baee78625cf7085bd1442fab39d9c Mon Sep 17 00:00:00 2001
From: Mattias Ellert <mattias.ellert@physics.uu.se>
Date: Tue, 10 Sep 2024 15:29:18 +0200
Subject: [PATCH 2/2] Add error string to e2sMap if EBADE is out of range
---
src/XrdSys/XrdSysE2T.cc | 3 +++
1 file changed, 3 insertions(+)
diff --git a/src/XrdSys/XrdSysE2T.cc b/src/XrdSys/XrdSysE2T.cc
index 9f615a911..64daa9827 100644
--- a/src/XrdSys/XrdSysE2T.cc
+++ b/src/XrdSys/XrdSysE2T.cc
@@ -74,6 +74,9 @@ int initErrTable()
if (EBADE - ERRNOBASE > lastGood)
lastGood = EBADE - ERRNOBASE;
}
+ else {
+ e2sMap[EBADE] = "authentication failed - possible invalid exchange";
+ }
#endif
// Supply generic message for missing ones
--
2.46.0

View file

@ -1 +1 @@
SHA512 (xrootd-5.7.1.tar.gz) = 7b6e802d808950332dd2f99c45f6befbf557a33962e97f6e0846c657fd7ef20001b2b116bd7e235d542cbc7433e6afbe2d4006c92c12e370a7dd4389600e3a27
SHA512 (xrootd-6.1.1.tar.gz) = ac1286cc54c60611bf17b6140b8cd7ef17a8318a4082cae38e5da040199ce4405490e583b376074c3ed29cf2d87c9bbda5da15c6a3091c83c7877abdc3343ebf

2
xrootd-sysusers.conf Normal file
View file

@ -0,0 +1,2 @@
# Name ID GECOS Home directory Shell
u xrootd 194 "XRootD runtime user" /var/spool/xrootd -

View file

@ -8,29 +8,22 @@
%global ceph 0
%endif
# Needed for EPEL 8
%undefine __cmake_in_source_build
Name: xrootd
Epoch: 1
Version: 5.7.1
Release: 2%{?dist}
Version: 6.1.1
Release: 1%{?dist}
Summary: Extended ROOT file server
License: LGPL-3.0-or-later AND BSD-2-Clause AND BSD-3-Clause AND curl AND MIT AND Zlib
License: LGPL-3.0-or-later AND BSD-2-Clause AND BSD-3-Clause AND curl AND MIT AND Zlib AND Apache-2.0 AND MPL-2.0
URL: https://xrootd.web.cern.ch
Source0: %{url}/download/v%{version}/%{name}-%{version}.tar.gz
# https://github.com/xrootd/xrootd/pull/2328
Patch0: 0001-Server-Correct-spelling-permision-permission.patch
# https://github.com/xrootd/xrootd/pull/2329
Patch1: 0001-Protect-against-array-index-out-of-bounds.patch
Patch2: 0002-Add-error-string-to-e2sMap-if-EBADE-is-out-of-range.patch
# https://github.com/xrootd/xrootd/pull/2330
Patch3: 0001-Change-type-in-XrdSutCacheArg_t-to-long-long.patch
# https://github.com/xrootd/xrootd/pull/2337
# https://github.com/doxygen/doxygen/issues/11138
Patch4: 0001-Reproducible-doxygen-output.patch
# https://github.com/xrootd/xrootd/pull/2340
Patch5: 0001-Increase-client-timeouts-for-XRootD-server-tests.patch
Source1: %{name}-sysusers.conf
# Unbundle tinyxml library
Patch0: 0001-Unbundle-tinyxml.patch
# Unbundle googletest/googlemock
Patch1: 0001-Unbundle-gtest.patch
# Make documentation self-contained
Patch2: 0001-Make-documentation-self-contained.patch
BuildRequires: cmake
BuildRequires: gcc-c++
@ -41,13 +34,16 @@ BuildRequires: krb5-devel
BuildRequires: libcurl-devel
BuildRequires: tinyxml-devel
BuildRequires: libxml2-devel
BuildRequires: libzip-devel
BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: perl-generators
%if %{?fedora}%{!?fedora:0}
# picojson not in RHEL/EPEL
BuildRequires: picojson-devel
%endif
BuildRequires: readline-devel
BuildRequires: zlib-devel
BuildRequires: doxygen
BuildRequires: graphviz
BuildRequires: selinux-policy-devel
BuildRequires: systemd-rpm-macros
BuildRequires: systemd-devel
@ -55,13 +51,13 @@ BuildRequires: python3-devel
BuildRequires: python3-pip
BuildRequires: python3-setuptools
BuildRequires: python3-wheel
BuildRequires: python3-sphinx
BuildRequires: json-c-devel
BuildRequires: json-devel
BuildRequires: libmacaroons-devel
BuildRequires: libuuid-devel
BuildRequires: voms-devel
BuildRequires: scitokens-cpp-devel
BuildRequires: davix-devel
BuildRequires: libxcrypt-devel
%if %{ceph}
BuildRequires: librados-devel
BuildRequires: libradosstriper-devel
@ -69,11 +65,21 @@ BuildRequires: libradosstriper-devel
%ifnarch %{ix86}
BuildRequires: isa-l-devel
%endif
# For documentation
BuildRequires: doxygen
BuildRequires: graphviz
BuildRequires: python3-sphinx
# For tests
BuildRequires: attr
BuildRequires: davix
BuildRequires: curl
BuildRequires: gtest-devel
BuildRequires: gmock-devel
BuildRequires: jq
BuildRequires: krb5-server
BuildRequires: krb5-workstation
BuildRequires: openssl
BuildRequires: procps
BuildRequires: sqlite
Requires: %{name}-server%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-selinux = %{epoch}:%{version}-%{release}
@ -98,7 +104,7 @@ Requires: %{name}-client-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-server-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: expect
Requires: logrotate
Requires(pre): shadow-utils
%{?sysusers_requires_compat}
%{?systemd_requires}
%description server
@ -135,6 +141,8 @@ development.
%package client-libs
Summary: Libraries used by xrootd clients
Provides: xrdcl-http = %{epoch}:%{version}-%{release}
Obsoletes: xrdcl-http < 1:6.0.0
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
%description client-libs
@ -229,19 +237,11 @@ SciToken passed during a transfer. Configured appropriately, this
allows the XRootD server admin to delegate authorization decisions for
a subset of the namespace to an external issuer.
%package -n xrdcl-http
Summary: HTTP client plugin for XRootD
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-client-libs%{?_isa} = %{epoch}:%{version}-%{release}
%description -n xrdcl-http
xrdcl-http is an XRootD client plugin which allows XRootD to interact
with HTTP repositories.
%if %{ceph}
%package ceph
Summary: XRootD plugin for interfacing with the Ceph storage platform
Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-server-libs%{?_isa} = %{epoch}:%{version}-%{release}
%description ceph
The xrootd-ceph is an OSS layer plugin for the XRootD server for
@ -266,22 +266,30 @@ This package contains the API documentation of the xrootd libraries.
%prep
%setup -q
%patch -P0 -p1
%patch -P1 -p1
%patch -P2 -p1
%patch -P3 -p1
%patch -P4 -p1
%patch -P5 -p1
# Delete bundled dependencies
rm src/XrdXml/tinyxml/tiny*
rm -r vendor/bats
rm -r vendor/googletest
%if %{?fedora}%{!?fedora:0}
# picojson not in RHEL/EPEL
rm -r vendor/picojson
%endif
%build
%cmake \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DFORCE_ENABLED:BOOL=ON \
-DENABLE_TESTS:BOOL=ON \
%if %{ceph}
-DENABLE_CEPH:BOOL=ON \
%endif
%ifarch %{ix86}
-DENABLE_XRDEC:BOOL=OFF \
%ifnarch %{ix86}
-DENABLE_XRDEC:BOOL=ON \
%endif
%if %{?fedora}%{!?fedora:0} || %{?rhel}%{!?rhel:0} >= 9
-DPIP_OPTIONS="--no-deps --use-pep517 --no-build-isolation --disable-pip-version-check --verbose" \
@ -291,12 +299,9 @@ This package contains the API documentation of the xrootd libraries.
-DXRD_PYTHON_REQ_VERSION=%{python3_version}
%cmake_build
make -C packaging/common -f /usr/share/selinux/devel/Makefile
make -C config -f /usr/share/selinux/devel/Makefile
doxygen Doxyfile
# Use local image instead of remote
sed 's!src=".*/xrootd-logo.png"!src="xrootd-logo.png"!' \
-i doxydoc/html/index.html
cp -p docs/images/xrootd-logo.png doxydoc/html
%install
@ -312,45 +317,48 @@ rm -f %{buildroot}%{python3_sitearch}/xrootd-*.*-info/RECORD
sed s/pip/rpm/ \
-i %{buildroot}%{python3_sitearch}/xrootd-*.*-info/INSTALLER
rm -f %{buildroot}%{_libdir}/cmake/XRootD/uninstall.cmake
LD_LIBRARY_PATH=%{buildroot}%{_libdir} \
PYTHONPATH=%{buildroot}%{python3_sitearch} \
PYTHONDONTWRITEBYTECODE=1 \
make -C bindings/python/docs html
make -C python/docs html
# Service unit files
mkdir -p %{buildroot}%{_unitdir}
install -m 644 packaging/common/xrootd@.service %{buildroot}%{_unitdir}
install -m 644 packaging/common/xrootd@.socket %{buildroot}%{_unitdir}
install -m 644 packaging/common/xrdhttp@.socket %{buildroot}%{_unitdir}
install -m 644 packaging/common/cmsd@.service %{buildroot}%{_unitdir}
install -m 644 packaging/common/frm_xfrd@.service %{buildroot}%{_unitdir}
install -m 644 packaging/common/frm_purged@.service %{buildroot}%{_unitdir}
mkdir -p %{buildroot}%{_tmpfilesdir}
install -m 644 packaging/rhel/xrootd.tmpfiles %{buildroot}%{_tmpfilesdir}/%{name}.conf
install -m 644 -p systemd/xrootd@.service %{buildroot}%{_unitdir}
install -m 644 -p systemd/xrootd@.socket %{buildroot}%{_unitdir}
install -m 644 -p systemd/xrdhttp@.socket %{buildroot}%{_unitdir}
install -m 644 -p systemd/cmsd@.service %{buildroot}%{_unitdir}
install -m 644 -p systemd/frm_xfrd@.service %{buildroot}%{_unitdir}
install -m 644 -p systemd/frm_purged@.service %{buildroot}%{_unitdir}
mkdir -p %{buildroot}%{_sysusersdir}
install -m 644 -p %{SOURCE1} %{buildroot}%{_sysusersdir}/%{name}.conf
# Server config
mkdir -p %{buildroot}%{_sysconfdir}/%{name}
install -m 644 -p packaging/common/%{name}-clustered.cfg \
install -m 644 -p config/%{name}-clustered.cfg \
%{buildroot}%{_sysconfdir}/%{name}/%{name}-clustered.cfg
install -m 644 -p packaging/common/%{name}-standalone.cfg \
install -m 644 -p config/%{name}-standalone.cfg \
%{buildroot}%{_sysconfdir}/%{name}/%{name}-standalone.cfg
install -m 644 -p packaging/common/%{name}-filecache-clustered.cfg \
install -m 644 -p config/%{name}-filecache-clustered.cfg \
%{buildroot}%{_sysconfdir}/%{name}/%{name}-filecache-clustered.cfg
install -m 644 -p packaging/common/%{name}-filecache-standalone.cfg \
install -m 644 -p config/%{name}-filecache-standalone.cfg \
%{buildroot}%{_sysconfdir}/%{name}/%{name}-filecache-standalone.cfg
sed 's!/usr/lib64/!!' packaging/common/%{name}-http.cfg > \
install -m 644 -p config/%{name}-http.cfg \
%{buildroot}%{_sysconfdir}/%{name}/%{name}-http.cfg
# Client config
mkdir -p %{buildroot}%{_sysconfdir}/%{name}/client.plugins.d
install -m 644 -p packaging/common/client.conf \
install -m 644 -p config/client.conf \
%{buildroot}%{_sysconfdir}/%{name}/client.conf
sed 's!/usr/lib/!!' packaging/common/client-plugin.conf.example > \
%{buildroot}%{_sysconfdir}/%{name}/client.plugins.d/client-plugin.conf.example
sed -e 's!/usr/lib64/!!' -e 's!-5!!' packaging/common/recorder.conf > \
install -m 644 -p config/client.plugins.d/http.conf \
%{buildroot}%{_sysconfdir}/%{name}/client.plugins.d/http.conf
install -m 644 -p config/client.plugins.d/recorder.conf \
%{buildroot}%{_sysconfdir}/%{name}/client.plugins.d/recorder.conf
sed 's!/usr/lib64/!!' packaging/common/http.client.conf.example > \
%{buildroot}%{_sysconfdir}/%{name}/client.plugins.d/xrdcl-http-plugin.conf
install -m 644 -p config/client.plugins.d/s3.conf \
%{buildroot}%{_sysconfdir}/%{name}/client.plugins.d/s3.conf
chmod 644 %{buildroot}%{_datadir}/%{name}/utils/XrdCmsNotify.pm
@ -365,63 +373,63 @@ mkdir -p %{buildroot}%{_sysconfdir}/%{name}/config.d
mkdir -p %{buildroot}%{_localstatedir}/log/%{name}
mkdir -p %{buildroot}%{_localstatedir}/spool/%{name}
mkdir -p %{buildroot}%{_rundir}/%{name}
mkdir -p %{buildroot}%{_sysconfdir}/logrotate.d
install -m 644 -p packaging/common/%{name}.logrotate \
install -m 644 -p config/%{name}.logrotate \
%{buildroot}%{_sysconfdir}/logrotate.d/%{name}
mkdir -p %{buildroot}%{_datadir}/selinux/packages/%{name}
install -m 644 -p packaging/common/%{name}.pp \
install -m 644 -p config/%{name}.pp \
%{buildroot}%{_datadir}/selinux/packages/%{name}
# Documentation
mkdir -p %{buildroot}%{_pkgdocdir}
cp -pr doxydoc/html %{buildroot}%{_pkgdocdir}
cp -pr bindings/python/docs/build/html %{buildroot}%{_pkgdocdir}/python
cp -pr python/docs/build/html %{buildroot}%{_pkgdocdir}/python
rm %{buildroot}%{_pkgdocdir}/python/.buildinfo
%check
export HOSTNAME=localhost
# Reduce socket path lengths used during tests
# rpm 4.20 uses a longer path to the build directory than earlier versions
# Tests fail with sockets in the build directory with rpm 4.20
adminpath=$(mktemp -d -p /var/tmp)
sed "s!all.adminpath .*!all.adminpath ${adminpath}!" \
-i %{_vpath_builddir}/tests/cluster/common.cfg \
tests/XRootD/common.cfg
trap "rm -rf ${adminpath}" EXIT
sed "s!all.adminpath .*!all.adminpath ${adminpath}/XRootD!" \
-i tests/XRootD/common.cfg
for x in authenticated_cluster badredir cluster TPCTests xcachewithcsi ; do
sed "s!all.adminpath .*!all.adminpath ${adminpath}/${x}!" \
-i %{_vpath_builddir}/tests/${x}/common.cfg
done
# The badredir test fails when there is no network - exclude
# The posix test is broken for 32 bit archs ...
# https://github.com/xrootd/xrootd/issues/2559
touch testfile
if ( setfattr -n user.testattr -v testvalue testfile ) ; then
%ctest
%ctest -- -E \
XRootD::badredir\|\
%ifarch %{ix86} %{arm}
XRootD::posix\|\
%endif
XrdCl::FileSystemTest.PlugInTest\|\
XrdCl::FileTest.PlugInTest
else
echo "Extended file attributes not supported by file system"
echo "Don't run tests that require them"
exclude="\
XrdCl::FileCopyTest|\
XrdCl::FileSystemTest.PlugInTest|\
XrdCl::FileSystemTest.ServerQueryTest|\
XrdCl::FileSystemTest.XAttrTest|\
XrdCl::FileTest.XAttrTest|\
XrdCl::LocalFileHandlerTest.XAttrTest|\
XrdCl::ThreadingTest|\
XrdCl::WorkflowTest.CheckpointTest|\
XrdCl::WorkflowTest.XAttrWorkflowTest|\
XrdEc::|\
XRootD::cluster::test"
%ctest -- -E $exclude
echo "*** NOT RUNNING TESTS ***"
fi
rm testfile
rm -rf ${adminpath}
%pre server
getent group %{name} >/dev/null || groupadd -r %{name}
getent passwd %{name} >/dev/null || useradd -r -g %{name} -s /sbin/nologin \
-d %{_localstatedir}/spool/%{name} -c "XRootD runtime user" %{name}
%sysusers_create_compat %{SOURCE1}
%post server
%tmpfiles_create %{name}.conf
if [ $1 -eq 1 ] ; then
systemctl daemon-reload >/dev/null 2>&1 || :
fi
@ -484,7 +492,7 @@ fi
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/utils
%{_unitdir}/*
%{_tmpfilesdir}/%{name}.conf
%{_sysusersdir}/%{name}.conf
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%dir %{_sysconfdir}/%{name}/config.d
%attr(-,xrootd,xrootd) %config(noreplace) %{_sysconfdir}/%{name}/*.cfg
@ -503,18 +511,18 @@ fi
%{_libdir}/libXrdUtils.so.*
%{_libdir}/libXrdXml.so.*
# Plugins
%{_libdir}/libXrdCksCalczcrc32-5.so
%{_libdir}/libXrdCryptossl-5.so
%{_libdir}/libXrdSec-5.so
%{_libdir}/libXrdSecProt-5.so
%{_libdir}/libXrdSecgsi-5.so
%{_libdir}/libXrdSecgsiAUTHZVO-5.so
%{_libdir}/libXrdSecgsiGMAPDN-5.so
%{_libdir}/libXrdSeckrb5-5.so
%{_libdir}/libXrdSecpwd-5.so
%{_libdir}/libXrdSecsss-5.so
%{_libdir}/libXrdSecunix-5.so
%{_libdir}/libXrdSecztn-5.so
%{_libdir}/libXrdCksCalczcrc32-6.so
%{_libdir}/libXrdCryptossl-6.so
%{_libdir}/libXrdSec-6.so
%{_libdir}/libXrdSecProt-6.so
%{_libdir}/libXrdSecgsi-6.so
%{_libdir}/libXrdSecgsiAUTHZVO-6.so
%{_libdir}/libXrdSecgsiGMAPDN-6.so
%{_libdir}/libXrdSeckrb5-6.so
%{_libdir}/libXrdSecpwd-6.so
%{_libdir}/libXrdSecsss-6.so
%{_libdir}/libXrdSecunix-6.so
%{_libdir}/libXrdSecztn-6.so
%license COPYING* LICENSE
%files devel
@ -535,6 +543,7 @@ fi
%{_libdir}/libXrdUtils.so
%{_libdir}/libXrdXml.so
%{_libdir}/cmake/XRootD
%{_mandir}/man1/xrootd-config.1*
%files client-libs
%{_libdir}/libXrdCl.so.*
@ -549,16 +558,20 @@ fi
%{_libdir}/libXrdSsiLib.so.*
%{_libdir}/libXrdSsiShMap.so.*
# Plugins
%{_libdir}/libXrdClProxyPlugin-5.so
%{_libdir}/libXrdClRecorder-5.so
%{_libdir}/libXrdClHttp-6.so
%{_libdir}/libXrdClProxyPlugin-6.so
%{_libdir}/libXrdClRecorder-6.so
%{_libdir}/libXrdClS3-6.so
%dir %{_sysconfdir}/%{name}
%config(noreplace) %{_sysconfdir}/%{name}/client.conf
%dir %{_sysconfdir}/%{name}/client.plugins.d
%config(noreplace) %{_sysconfdir}/%{name}/client.plugins.d/client-plugin.conf.example
%config(noreplace) %{_sysconfdir}/%{name}/client.plugins.d/http.conf
%config(noreplace) %{_sysconfdir}/%{name}/client.plugins.d/recorder.conf
%config(noreplace) %{_sysconfdir}/%{name}/client.plugins.d/s3.conf
%files client-devel
%{_includedir}/%{name}/XrdCl
%{_includedir}/%{name}/XrdClHttp
%{_includedir}/%{name}/XrdPosix
%{_libdir}/libXrdCl.so
%{_libdir}/libXrdFfs.so
@ -568,23 +581,28 @@ fi
%{_libdir}/libXrdHttpUtils.so.*
%{_libdir}/libXrdServer.so.*
# Plugins
%{_libdir}/libXrdBlacklistDecision-5.so
%{_libdir}/libXrdBwm-5.so
%{_libdir}/libXrdCmsRedirectLocal-5.so
%{_libdir}/libXrdFileCache-5.so
%{_libdir}/libXrdHttp-5.so
%{_libdir}/libXrdHttpTPC-5.so
%{_libdir}/libXrdMacaroons-5.so
%{_libdir}/libXrdN2No2p-5.so
%{_libdir}/libXrdOfsPrepGPI-5.so
%{_libdir}/libXrdOssCsi-5.so
%{_libdir}/libXrdOssSIgpfsT-5.so
%{_libdir}/libXrdPfc-5.so
%{_libdir}/libXrdPss-5.so
%{_libdir}/libXrdSsi-5.so
%{_libdir}/libXrdSsiLog-5.so
%{_libdir}/libXrdThrottle-5.so
%{_libdir}/libXrdXrootd-5.so
%{_libdir}/libXrdBlacklistDecision-6.so
%{_libdir}/libXrdBwm-6.so
%{_libdir}/libXrdCmsRedirectLocal-6.so
%{_libdir}/libXrdFileCache-6.so
%{_libdir}/libXrdHttp-6.so
%{_libdir}/libXrdHttpCors-6.so
%{_libdir}/libXrdHttpTPC-6.so
%{_libdir}/libXrdMacaroons-6.so
%{_libdir}/libXrdN2No2p-6.so
%{_libdir}/libXrdOfsPrepGPI-6.so
%{_libdir}/libXrdOssArc-6.so
%{_libdir}/libXrdOssCsi-6.so
%{_libdir}/libXrdOssMirage-6.so
%{_libdir}/libXrdOssSIgpfsT-6.so
%{_libdir}/libXrdOssStats-6.so
%{_libdir}/libXrdPfc-6.so
%{_libdir}/libXrdPfcPurgeQuota-6.so
%{_libdir}/libXrdPss-6.so
%{_libdir}/libXrdSsi-6.so
%{_libdir}/libXrdSsiLog-6.so
%{_libdir}/libXrdThrottle-6.so
%{_libdir}/libXrdXrootd-6.so
%files server-devel
%{_includedir}/%{name}/XrdAcc
@ -631,25 +649,21 @@ fi
%{_mandir}/man1/xrootdfs.1*
%files voms
%{_libdir}/libXrdVoms-5.so
%{_libdir}/libXrdHttpVOMS-5.so
%{_libdir}/libXrdSecgsiVOMS-5.so
%{_libdir}/libXrdVoms-6.so
%{_libdir}/libXrdHttpVOMS-6.so
%{_libdir}/libXrdSecgsiVOMS-6.so
%doc %{_mandir}/man1/libXrdVoms.1*
%doc %{_mandir}/man1/libXrdSecgsiVOMS.1*
%doc src/XrdVoms/README.md
%files scitokens
%{_libdir}/libXrdAccSciTokens-5.so
%{_libdir}/libXrdAccSciTokens-6.so
%doc src/XrdSciTokens/README.md
%files -n xrdcl-http
%{_libdir}/libXrdClHttp-5.so
%config(noreplace) %{_sysconfdir}/%{name}/client.plugins.d/xrdcl-http-plugin.conf
%if %{ceph}
%files ceph
%{_libdir}/libXrdCeph-5.so
%{_libdir}/libXrdCephXattr-5.so
%{_libdir}/libXrdCeph-6.so
%{_libdir}/libXrdCephXattr-6.so
%{_libdir}/libXrdCephPosix.so.*
%endif
@ -662,6 +676,105 @@ fi
%doc %{_pkgdocdir}
%changelog
* Wed Aug 12 2026 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:6.1.1-1
- Update to version 6.1.1
* Wed Jul 22 2026 Python Maint <python-maint@redhat.com> - 1:6.1.0-3
- Rebuilt for Python 3.15.0b4 ABI change
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 1:6.1.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Tue Jun 23 2026 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:6.1.0-1
- Update to version 6.1.0
- Drop patches accepted upstream
* Sat Jun 13 2026 Yaakov Selkowitz <yselkowi@redhat.com> - 1:6.0.3-3
- Rebuilt for openssl 4.0
* Thu Jun 04 2026 Python Maint <python-maint@redhat.com> - 1:6.0.3-2
- Rebuilt for Python 3.15
* Tue Jun 02 2026 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:6.0.3-1
- Update to version 6.0.3
* Thu May 21 2026 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:6.0.2-1
- Update to version 6.0.2
- Adapt to OpenSSL 4.0
- Drop patches accepted upstream
* Sat Apr 11 2026 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:6.0.0-1
- Update to version 6.0.0
* Fri Mar 27 2026 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.9.2-1
- Update to version 5.9.2
- Drop patches accepted upstream or previously backported
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.9.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Tue Nov 18 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.9.1-1
- Update to version 5.9.1
* Fri Oct 10 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.9.0-1
- Update to version 5.9.0
* Fri Sep 19 2025 Python Maint <python-maint@redhat.com> - 1:5.8.4-4
- Rebuilt for Python 3.14.0rc3 bytecode
* Fri Aug 15 2025 Python Maint <python-maint@redhat.com> - 1:5.8.4-3
- Rebuilt for Python 3.14.0rc2 bytecode
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1:5.8.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Sun Jul 13 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.8.4-1
- Update to version 5.8.4
* Fri Jun 06 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.8.3-1
- Update to version 5.8.3
* Tue Jun 03 2025 Python Maint <python-maint@redhat.com> - 1:5.8.2-2
- Rebuilt for Python 3.14
* Sun May 11 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.8.2-1
- Update to version 5.8.2
- Use reserved uid and gid 194 for the xrootd user
- https://pagure.io/packaging-committee/issue/1444
- https://src.fedoraproject.org/rpms/setup/pull-request/27
* Wed Apr 16 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.8.1-1
- Update to version 5.8.1
* Sat Mar 22 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.8.0-1
- Update to version 5.8.0
* Sat Mar 08 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.7.3-4
- Move user/group creation logic to sysusers.d fragment
* Wed Feb 19 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.7.3-3
- Set HOSTNAME to localhost during testing
* Sat Feb 01 2025 Björn Esser <besser82@fedoraproject.org> - 1:5.7.3-2
- Add explicit BR: libxcrypt-devel
* Wed Jan 29 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.7.3-1
- Update to version 5.7.3
- Drop patches accepted upstream
* Thu Jan 23 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.7.2-4
- Use CMAKE_BUILD_TYPE RelWithDebInfo to avoid -Werror in compiler flags
* Sun Jan 19 2025 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.7.2-3
- Fix compilation errors with GCC 15
* Sun Dec 08 2024 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.7.2-2
- Fix errors in format strings
* Fri Nov 29 2024 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.7.2-1
- Update to version 5.7.2
- Drop patches accepted upstream
* Mon Sep 16 2024 Mattias Ellert <mattias.ellert@physics.uu.se> - 1:5.7.1-2
- Workaround doxygen non-reproducibility - make doc package noarch again
- Increase client timeouts for XRootD server tests