Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37725219
en ru br
ALT Linux repos
S:3.4.1-alt1

Group :: Networking/Other
RPM: shibboleth-sp

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%define soname 11
%define soname_lite 11
%define runuser shibd
%define realname shibboleth
%define pkgdocdir %_docdir/%realname
%define _localstatedir %_var

Name: shibboleth-sp
Version: 3.4.1
Release: alt1

Summary: Open source system for attribute-based Web SSO

License: Apache-2.0
Group: Networking/Other
Url: https://shibboleth.net/

Source0: https://shibboleth.net/downloads/service-provider/latest/%name-%version.tar.gz
Source1: shibd.service

BuildRequires: gcc-c++ boost-devel-headers liblog4cpp-devel libxerces-c-devel libxml-security-c-devel libxmltooling-devel libsaml-devel
BuildRequires: libsystemd-devel libmemcached-devel apache2-devel libunixODBC-devel libkrb5-devel

%description
Shibboleth is a Web Single Sign-On implementations based on OpenSAML
that supports multiple protocols, federated identity, and the extensible
exchange of rich attributes subject to privacy controls.

This package contains the Shibboleth Service Provider runtime libraries,
daemon, default plugins, and Apache modules.

%package -n libshibsp%soname
Summary: Shared Library for Shibboleth
Group: System/Libraries

%description -n libshibsp%soname
Shibboleth is a Web Single Sign-On implementations based on OpenSAML
that supports multiple protocols, federated identity, and the extensible
exchange of rich attributes subject to privacy controls.

This package contains just the shared library.

%package -n libshibsp-lite%soname_lite
Summary: Shared Library for Shibboleth
Group: System/Libraries

%description -n libshibsp-lite%soname_lite
Shibboleth is a Web Single Sign-On implementations based on OpenSAML
that supports multiple protocols, federated identity, and the extensible
exchange of rich attributes subject to privacy controls.

%package devel
Summary: Shibboleth Development Headers
Group: Development/C++

%description devel
Shibboleth is a Web Single Sign-On implementations based on OpenSAML
that supports multiple protocols, federated identity, and the extensible
exchange of rich attributes subject to privacy controls.

This package includes files needed for development with Shibboleth.

%prep
%setup

sed -i "s|%_bindir/env bash|/bin/bash|" \
configs/metagen.sh

%ifarch %e2k
# lcc's cpp adds an extra space breaking this regex
sed -r -i 's,\^boost(.)lib(.)version,boost\1lib\2version,' configure m4/boost.m4
%endif

%build
export CXXFLAGS="%optflags --std=c++11"
%autoreconf
%configure --with-gssapi --enable-systemd --with-memcached
%make_build pkgdocdir=%pkgdocdir

%install
%makeinstall_std NOKEYGEN=1 pkgdocdir=%pkgdocdir

install -D -m 644 %SOURCE1 %buildroot%_unitdir/shibd.service
ln -sf /sbin/service %buildroot%_sbindir/rcshibd

# sed -i "s|/var/log/httpd|/var/log/apache2|g" \

# %buildroot%_sysconfdir%realname/native.logger


# Delete unnecessary files

pushd %buildroot%_sysconfdir/%realname
rm shibd-debian shibd-redhat shibd-amazon shibd-suse shibd-osx.plist apache.config apache2.config apache22.config shibd-systemd
rm *.dist
popd
find %buildroot -type f -name "*.la" -delete -print

# Plug the SP into the Apache

touch rpm.filelist
APACHE_CONFIG="no"
if [ -f %buildroot%_libdir/%realname/mod_shib_24.so ] ; then
APACHE_CONFIG="apache24.config"
fi

if [ "$APACHE_CONFIG" != "no" ] ; then
APACHE_CONFD="no"
if [ -d %_sysconfdir/apache2/conf.d ] ; then
APACHE_CONFD="%_sysconfdir/apache2/conf.d"
fi
if [ "$APACHE_CONFD" != "no" ] ; then
mkdir -p %buildroot$APACHE_CONFD
cp -p %buildroot%_sysconfdir/%realname/$APACHE_CONFIG %buildroot$APACHE_CONFD/shib.conf
echo "%config(noreplace) $APACHE_CONFD/shib.conf" >> rpm.filelist
fi
fi

# Get run directory created at boot time.

mkdir -p %buildroot%_tmpfilesdir
echo "%attr(0444,-,-) %_tmpfilesdir/%realname.conf" >> rpm.filelist
cat > %buildroot%_tmpfilesdir/%realname.conf <<EOF
d /run/%realname 755 %runuser %runuser -
EOF

%post
%post_service shibd.service

%preun
%preun_service shibd.service

%files -f rpm.filelist
%_sbindir/shibd
%_sbindir/rcshibd
%_bindir/mdquery
%_bindir/resolvertest
%dir %_libdir/%realname
%_libdir/%realname/*
%_unitdir/shibd.service
%attr(0750,%runuser,%runuser) %dir %_logdir/%realname
%attr(0755,%runuser,%runuser) %dir %_cachedir/%realname
# %ghost %attr(0755,%runuser,%runuser) %dir /run/%realname
%dir %_datadir/xml/%realname
%_datadir/xml/%realname/*
%dir %_datadir/%realname
%_datadir/%realname/*
%dir %_sysconfdir/%realname
%config(noreplace) %_sysconfdir/%realname/*.xml
%config(noreplace) %_sysconfdir/%realname/*.html
%config(noreplace) %_sysconfdir/%realname/*.logger
%_tmpfilesdir/%realname.conf
%_sysconfdir/%realname/apache24.config
%attr(0755,root,root) %_sysconfdir/%realname/keygen.sh
%attr(0755,root,root) %_sysconfdir/%realname/metagen.sh
%attr(0755,root,root) %_sysconfdir/%realname/seckeygen.sh
%doc %pkgdocdir
%exclude %pkgdocdir/

%files -n libshibsp%soname
%_libdir/libshibsp.so.%{soname}*

%files -n libshibsp-lite%soname_lite
%_libdir/libshibsp-lite.so.%{soname_lite}*

%files devel
%_includedir/*
%_libdir/libshibsp.so
%_libdir/libshibsp-lite.so
%_pkgconfigdir/*.pc
%doc %pkgdocdir/

%changelog

Full changelog you can see here

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin