Compare commits

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

4 commits

Author SHA1 Message Date
Mattias Ellert
d3ad7631cb Update to version 4.12.6 2020-12-11 16:23:26 +01:00
Mattias Ellert
2860d85150 Update to version 4.12.5 2020-10-16 11:04:32 +02:00
Mattias Ellert
b551b31db9 Update to version 4.12.4
Drop patches (accepted upstream or previously backported)
2020-09-04 20:24:32 +02:00
Mattias Ellert
572d47fe3f Parallel installable compat package 2020-08-27 18:54:00 +02:00
3 changed files with 306 additions and 0 deletions

1
.gitignore vendored
View file

@ -0,0 +1 @@
/*.tar.gz

View file

@ -0,0 +1 @@
SHA512 (xrootd-4.12.6.tar.gz) = c186f7812636a20366001912a423f6913a73ed00ba281452a34e4670d309eed193fc2a486f727d62dcdc72ecd41ce0badf5e07d8f91a54f33985d5a47bf0b0b2

304
xrootd-compat.spec Normal file
View file

@ -0,0 +1,304 @@
Name: xrootd-compat
Version: 4.12.6
Release: 1%{?dist}
Summary: Extended ROOT file server - compat version 4
License: LGPLv3+
URL: http://xrootd.org/
Source0: http://xrootd.org/download/v%{version}/xrootd-%{version}.tar.gz
BuildRequires: gcc-c++
BuildRequires: cmake
BuildRequires: krb5-devel
BuildRequires: libcurl-devel
BuildRequires: libxml2-devel
BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: readline-devel
BuildRequires: zlib-devel
BuildRequires: systemd-devel
BuildRequires: json-c-devel
BuildRequires: libmacaroons-devel
BuildRequires: libuuid-devel
BuildRequires: voms-devel >= 2.0.6
%description
The Extended root file server consists of a file server called xrootd
and a cluster management server called cmsd.
The xrootd server was developed for the root analysis framework to
serve root files. However, the server is agnostic to file types and
provides POSIX-like access to any type of file.
The cmsd server is the next generation version of the olbd server,
originally developed to cluster and load balance Objectivity/DB AMS
database servers. It provides enhanced capability along with lower
latency and increased throughput.
This package contains the xrootd 4 version of the server.
%package -n xrootd4
Summary: Extended ROOT file server - compat version 4
Requires: xrootd4-server%{?_isa} = %{version}-%{release}
Requires: xrootd-selinux >= 1:5.0.0
%description -n xrootd4
The Extended root file server consists of a file server called xrootd
and a cluster management server called cmsd.
The xrootd server was developed for the root analysis framework to
serve root files. However, the server is agnostic to file types and
provides POSIX-like access to any type of file.
The cmsd server is the next generation version of the olbd server,
originally developed to cluster and load balance Objectivity/DB AMS
database servers. It provides enhanced capability along with lower
latency and increased throughput.
This package contains the xrootd 4 version of the server.
%package -n xrootd4-server
Summary: Xrootd server daemons - compat version 4
Requires: xrootd4-libs%{?_isa} = %{version}-%{release}
Requires: xrootd4-client-libs%{?_isa} = %{version}-%{release}
Requires: xrootd4-server-libs%{?_isa} = %{version}-%{release}
Requires: xrootd-server >= 1:5.0.0
%{?systemd_requires}
%description -n xrootd4-server
This package contains the xrootd servers without the SELinux support.
Unless you are installing on a system without SELinux also install the
xrootd-selinux package.
This package contains the xrootd 4 version of the server.
%package -n xrootd4-libs
Summary: Libraries used by xrootd servers and clients - compat version 4
Conflicts: xrootd-libs < 1:5.0.0
%description -n xrootd4-libs
This package contains libraries used by the xrootd servers and clients
(compat version 4).
%package -n xrootd4-client-libs
Summary: Libraries used by xrootd clients - compat version 4
Requires: xrootd4-libs%{?_isa} = %{version}-%{release}
Conflicts: xrootd-client-libs < 1:5.0.0
%description -n xrootd4-client-libs
This package contains libraries used by xrootd clients (compat version 4).
%package -n xrootd4-server-libs
Summary: Libraries used by xrootd servers - compat version 4
Requires: xrootd4-libs%{?_isa} = %{version}-%{release}
Requires: xrootd4-client-libs%{?_isa} = %{version}-%{release}
Conflicts: xrootd-server-libs < 1:5.0.0
%description -n xrootd4-server-libs
This package contains libraries used by xrootd servers (compat version 4).
%package -n xrootd4-voms
Summary: VOMS attribute extractor plug-in for XRootD - compat version 4
Requires: xrootd4-libs%{?_isa} = %{version}-%{release}
%description -n xrootd4-voms
The VOMS attribute extractor plug-in for XRootD (compat version 4).
%prep
%setup -q -n xrootd-%{version}
%build
%cmake \
-H. -B%{_vpath_builddir} \
-DUSE_LIBC_SEMAPHORE:BOOL=ON \
-DENABLE_FUSE:BOOL=OFF \
-DENABLE_PYTHON:BOOL=OFF
%make_build -C %{_vpath_builddir}
%install
%make_install -C %{_vpath_builddir}
# Service unit files
mkdir -p %{buildroot}%{_unitdir}
sed -e 's!%{_bindir}/xrootd!&4!' \
< packaging/common/xrootd@.service \
> %{buildroot}%{_unitdir}/xrootd4@.service
sed -e 's!xrootd@!xrootd4@!' \
< packaging/common/xrootd@.socket \
> %{buildroot}%{_unitdir}/xrootd4@.socket
sed -e 's!xrootd@!xrootd4@!' \
< packaging/common/xrdhttp@.socket \
> %{buildroot}%{_unitdir}/xrdhttp4@.socket
sed -e 's!%{_bindir}/cmsd!&4!' \
< packaging/common/cmsd@.service \
> %{buildroot}%{_unitdir}/cmsd4@.service
sed -e 's!%{_bindir}/frm_xfrd!&4!' \
< packaging/common/frm_xfrd@.service \
> %{buildroot}%{_unitdir}/frm_xfrd4@.service
sed -e 's!%{_bindir}/frm_purged!&4!' \
< packaging/common/frm_purged@.service \
> %{buildroot}%{_unitdir}/frm_purged4@.service
# Remove server binaries not needed for compat package
rm -rf %{buildroot}%{_datadir}
rm %{buildroot}%{_bindir}/cconfig
rm %{buildroot}%{_bindir}/frm_admin
rm %{buildroot}%{_bindir}/frm_xfragent
rm %{buildroot}%{_bindir}/mpxstats
rm %{buildroot}%{_bindir}/wait41
rm %{buildroot}%{_bindir}/xrdacctest
rm %{buildroot}%{_bindir}/xrdpfc_print
rm %{buildroot}%{_bindir}/xrdpwdadmin
rm %{buildroot}%{_bindir}/xrdsssadmin
# Remove client binaries not needed for compat package
rm %{buildroot}%{_bindir}/xprep
rm %{buildroot}%{_bindir}/xrd
rm %{buildroot}%{_bindir}/xrdadler32
rm %{buildroot}%{_bindir}/xrdcopy
rm %{buildroot}%{_bindir}/xrdcp
rm %{buildroot}%{_bindir}/xrdcp-old
rm %{buildroot}%{_bindir}/xrdfs
rm %{buildroot}%{_bindir}/xrdgsiproxy
rm %{buildroot}%{_bindir}/xrdgsitest
rm %{buildroot}%{_bindir}/xrdmapc
rm %{buildroot}%{_bindir}/xrdstagetool
# Remove devel files not needed for compat package
rm -rf %{buildroot}%{_includedir}
rm %{buildroot}%{_bindir}/xrootd-config
rm %{buildroot}%{_libdir}/libXrdAppUtils.so
rm %{buildroot}%{_libdir}/libXrdCl.so
rm %{buildroot}%{_libdir}/libXrdClient.so
rm %{buildroot}%{_libdir}/libXrdCrypto.so
rm %{buildroot}%{_libdir}/libXrdCryptoLite.so
rm %{buildroot}%{_libdir}/libXrdFfs.so
rm %{buildroot}%{_libdir}/libXrdHttpUtils.so
rm %{buildroot}%{_libdir}/libXrdPosix.so
rm %{buildroot}%{_libdir}/libXrdPosixPreload.so
rm %{buildroot}%{_libdir}/libXrdServer.so
rm %{buildroot}%{_libdir}/libXrdSsiLib.so
rm %{buildroot}%{_libdir}/libXrdSsiShMap.so
rm %{buildroot}%{_libdir}/libXrdUtils.so
rm %{buildroot}%{_libdir}/libXrdXml.so
# Rename server binaries to allow parallel install
mv %{buildroot}%{_bindir}/cmsd %{buildroot}%{_bindir}/cmsd4
mv %{buildroot}%{_bindir}/frm_purged %{buildroot}%{_bindir}/frm_purged4
mv %{buildroot}%{_bindir}/frm_xfrd %{buildroot}%{_bindir}/frm_xfrd4
mv %{buildroot}%{_bindir}/xrootd %{buildroot}%{_bindir}/xrootd4
%ldconfig_scriptlets -n xrootd4-libs
%ldconfig_scriptlets -n xrootd4-client-libs
%ldconfig_scriptlets -n xrootd4-server-libs
%post -n xrootd4-server
if [ $1 -eq 1 ] ; then
systemctl daemon-reload >/dev/null 2>&1 || :
fi
%preun -n xrootd4-server
if [ $1 -eq 0 ] ; then
for DAEMON in xrootd4 cmsd4 frm_purged4 frm_xfrd4; do
for INSTANCE in `systemctl | grep $DAEMON@ | awk '{print $1;}'`; do
systemctl --no-reload disable $INSTANCE > /dev/null 2>&1 || :
systemctl stop $INSTANCE > /dev/null 2>&1 || :
done
done
fi
%postun -n xrootd4-server
if [ $1 -ge 1 ] ; then
systemctl daemon-reload >/dev/null 2>&1 || :
for DAEMON in xrootd4 cmsd4 frm_purged4 frm_xfrd4; do
for INSTANCE in `systemctl | grep $DAEMON@ | awk '{print $1;}'`; do
systemctl try-restart $INSTANCE >/dev/null 2>&1 || :
done
done
fi
%files -n xrootd4
# Empty
%files -n xrootd4-server
%{_bindir}/cmsd4
%{_bindir}/frm_purged4
%{_bindir}/frm_xfrd4
%{_bindir}/xrootd4
%{_unitdir}/*
%files -n xrootd4-libs
%{_libdir}/libXrdAppUtils.so.*
%{_libdir}/libXrdCrypto.so.*
%{_libdir}/libXrdCryptoLite.so.*
%{_libdir}/libXrdUtils.so.*
%{_libdir}/libXrdXml.so.*
# Plugins
%{_libdir}/libXrdCksCalczcrc32-4.so
%{_libdir}/libXrdCryptossl-4.so
%{_libdir}/libXrdSec-4.so
%{_libdir}/libXrdSecProt-4.so
%{_libdir}/libXrdSecgsi-4.so
%{_libdir}/libXrdSecgsiAUTHZVO-4.so
%{_libdir}/libXrdSecgsiGMAPDN-4.so
%{_libdir}/libXrdSeckrb5-4.so
%{_libdir}/libXrdSecpwd-4.so
%{_libdir}/libXrdSecsss-4.so
%{_libdir}/libXrdSecunix-4.so
%license COPYING* LICENSE
%files -n xrootd4-client-libs
%{_libdir}/libXrdCl.so.*
%{_libdir}/libXrdClient.so.*
%{_libdir}/libXrdFfs.so.*
%{_libdir}/libXrdPosix.so.*
%{_libdir}/libXrdPosixPreload.so.*
%{_libdir}/libXrdSsiLib.so.*
%{_libdir}/libXrdSsiShMap.so.*
# Plugins
%{_libdir}/libXrdClProxyPlugin-4.so
%files -n xrootd4-server-libs
%{_libdir}/libXrdHttpUtils.so.*
%{_libdir}/libXrdServer.so.*
# Plugins
%{_libdir}/libXrdBlacklistDecision-4.so
%{_libdir}/libXrdBwm-4.so
%{_libdir}/libXrdCmsRedirectLocal-4.so
%{_libdir}/libXrdFileCache-4.so
%{_libdir}/libXrdHttp-4.so
%{_libdir}/libXrdHttpTPC-4.so
%{_libdir}/libXrdMacaroons-4.so
%{_libdir}/libXrdN2No2p-4.so
%{_libdir}/libXrdOssSIgpfsT-4.so
%{_libdir}/libXrdPss-4.so
%{_libdir}/libXrdSsi-4.so
%{_libdir}/libXrdSsiLog-4.so
%{_libdir}/libXrdThrottle-4.so
%{_libdir}/libXrdXrootd-4.so
%files -n xrootd4-voms
%{_libdir}/libXrdVoms-4.so
%{_libdir}/libXrdSecgsiVOMS-4.so
%changelog
* Fri Dec 11 2020 Mattias Ellert <mattias.ellert@physics.uu.se> - 4.12.6-1
- Update to version 4.12.6
* Fri Oct 16 2020 Mattias Ellert <mattias.ellert@physics.uu.se> - 4.12.5-1
- Update to version 4.12.5
* Fri Sep 04 2020 Mattias Ellert <mattias.ellert@physics.uu.se> - 4.12.4-1
- Update to version 4.12.4
- Drop patches (accepted upstream or previously backported)
* Wed Aug 26 2020 Mattias Ellert <mattias.ellert@physics.uu.se> - 4.12.3-1
- Parallel installable compat package