File signon.spec of Package signon
#
# spec file for package signon
#
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define _soname 1
Name: signon
Version: 8.57
Release: 0
Summary: Single Sign On Framework
License: LGPL-2.0
Group: System/Libraries
Url: https://code.google.com/p/accounts-sso/
Source: signon-%{version}.tar.bz2
Patch0: 0001_Multilib.patch
# PATCH-FIX-OPENSUSE Fixes an incomplete type compilation error
Patch1: fix-incomplete-type.patch
BuildRequires: doxygen
BuildRequires: fdupes
BuildRequires: graphviz
BuildRequires: pkgconfig
BuildRequires: pkgconfig(Qt5Core)
BuildRequires: pkgconfig(Qt5DBus)
BuildRequires: pkgconfig(Qt5Gui)
BuildRequires: pkgconfig(Qt5Network)
BuildRequires: pkgconfig(Qt5Sql)
BuildRequires: pkgconfig(Qt5Test)
BuildRequires: pkgconfig(Qt5Xml)
BuildRequires: pkgconfig(libproxy-1.0)
BuildRequires: pkgconfig(libssl)
%description
(no files installed)
%package -n libsignon-qt5-%{_soname}
Summary: Single Sign On Framework for Qt
Group: System/Libraries
%description -n libsignon-qt5-%{_soname}
Framework that provides credential storage and authentication service.
%package -n libsignon-qt5-devel
Summary: Development files for libsignon-qt%{_soname}
Group: Development/Libraries/C and C++
Requires: libsignon-qt5-%{_soname} = %{version}
Requires: pkgconfig(Qt5Core)
%description -n libsignon-qt5-devel
This package contains the development files for the signon-qt library.
%package -n libsignon-qt5-docs
Summary: Documentation for libsignon-qt%{_soname}
Group: Documentation/HTML
BuildArch: noarch
%description -n libsignon-qt5-docs
This package contains the documentation for the signon-qt library.
%package -n signond
Summary: Single Sign On Framework
Group: System/Libraries
%description -n signond
Framework that provides credential storage and authentication service.
%package -n signond-libs
Summary: Single Sign On Framework
Group: System/Libraries
%description -n signond-libs
Framework that provides credential storage and authentication service.
%package -n signond-libs-devel
Summary: Development files for signond-libs
Group: Development/Libraries/C and C++
Requires: signond = %{version}
Requires: signond-libs = %{version}
Requires: pkgconfig(Qt5Core)
%description -n signond-libs-devel
This package contains the development files for signond-libs.
%package -n signond-docs
Summary: Single Sign On Framework - Documentation
Group: Documentation/HTML
BuildArch: noarch
%description -n signond-docs
This package contains the documentation for signond.
%package -n signon-plugins
Summary: Plugins for the Single Sign On Framework
Group: System/Libraries
Requires: signond = %{version}
%description -n signon-plugins
This package contains the following plugins for the Single Sign On Framework:
- Password plugin
- Test plugin
%package -n signon-plugins-devel
Summary: Development files for the Single Sign On Framework's plugins
Group: Development/Libraries/C and C++
Requires: libsignon-qt5-devel = %{version}
Requires: signon-plugins = %{version}
%description -n signon-plugins-devel
This package contains the development files necessary for creating plugins for
the Single Sign On Framework.
%package -n signon-plugins-docs
Summary: Documentation for the Single Sign On Framework's plugins
Group: Documentation/HTML
BuildArch: noarch
%description -n signon-plugins-docs
This package contains the documentation for the Single Sign On Framework's
plugins.
%prep
%setup -q
# Use correct libdir
%patch0 -p1 -b .multilib
%patch1 -p1
sed -i 's|@LIB@|%{_lib}|g' \
lib/plugins/signon-plugins.pc.in \
lib/plugins/signon-plugins-common/signon-plugins-common.pc.in \
src/signond/signondaemon.h \
src/remotepluginprocess/remotepluginprocess.h \
src/plugins/example/exampleplugin.pro
# Fix documentation directory
sed -i -e '/^documentation.path/ s|share/doc|share/doc/packages|g' \
doc/doc.pri \
lib/plugins/doc/doc.pri \
lib/SignOn/doc/doc.pri
sed -i -e '/^example.path/ s|share/doc|share/doc/packages|g' \
src/plugins/example/example.pro
sed -i 's|qdbusxml2cpp|qdbusxml2cpp-qt5|g' \
src/signond/signond.pro
%build
qmake-qt5 \
PREFIX=%{_prefix} \
LIBDIR=%{_libdir} \
QMAKE_CXXFLAGS="%{optflags}"
#make %{?_smp_mflags}
make
%install
make install INSTALL_ROOT=%{buildroot}
# Remove tests
find %{buildroot} -type f -name '*tests*' -delete
%fdupes -s %{buildroot}
%post -n libsignon-qt5-%{_soname} -p /sbin/ldconfig
%postun -n libsignon-qt5-%{_soname} -p /sbin/ldconfig
%post -n signond-libs -p /sbin/ldconfig
%postun -n signond-libs -p /sbin/ldconfig
%files -n libsignon-qt5-%{_soname}
%defattr(-,root,root)
%{_libdir}/libsignon-qt5.so.*
%files -n libsignon-qt5-devel
%defattr(-,root,root)
%dir %{_includedir}/signon-qt5/
%dir %{_includedir}/signon-qt5/SignOn/
%{_includedir}/signon-qt5/SignOn/*
%{_libdir}/libsignon-qt5.so
%{_libdir}/libsignon-qt5.a
%{_libdir}/pkgconfig/libsignon-qt5.pc
%{_libdir}/cmake/SignOnQt5/
%files -n libsignon-qt5-docs
%defattr(-,root,root)
%doc %{_docdir}/libsignon-qt/
%files -n signond
%defattr(-,root,root)
%doc COPYING
%{_bindir}/signond
%{_bindir}/signonpluginprocess
%config(noreplace) %{_sysconfdir}/signond.conf
%{_datadir}/dbus-1/services/com.google.code.AccountsSSO.SingleSignOn.service
%{_datadir}/dbus-1/services/com.nokia.SingleSignOn.Backup.service
%files -n signond-libs
%defattr(-,root,root)
%{_libdir}/libsignon-extension.so.*
%{_libdir}/libsignon-plugins-common.so.*
%files -n signond-libs-devel
%defattr(-,root,root)
%dir %{_includedir}/signond/
%{_includedir}/signond/*.h
%dir %{_includedir}/signon-extension/
%dir %{_includedir}/signon-extension/SignOn/
%{_includedir}/signon-extension/SignOn/*
%{_libdir}/libsignon-extension.so
%{_libdir}/libsignon-plugins-common.so
%{_libdir}/pkgconfig/signond.pc
%{_libdir}/pkgconfig/SignOnExtension.pc
%{_datadir}/dbus-1/interfaces/com.google.code.AccountsSSO.SingleSignOn.AuthService.xml
%{_datadir}/dbus-1/interfaces/com.google.code.AccountsSSO.SingleSignOn.AuthSession.xml
%{_datadir}/dbus-1/interfaces/com.google.code.AccountsSSO.SingleSignOn.Identity.xml
%files -n signond-docs
%defattr(-,root,root)
%doc %{_docdir}/signon/
%files -n signon-plugins
%defattr(-,root,root)
%{_libdir}/libsignon-plugins.so.*
%dir %{_libdir}/signon/
%{_libdir}/signon/libexampleplugin.so
%{_libdir}/signon/libpasswordplugin.so
%{_libdir}/signon/libssotest2plugin.so
%{_libdir}/signon/libssotestplugin.so
%files -n signon-plugins-devel
%defattr(-,root,root)
%doc %{_docdir}/signon-plugins-dev/
%dir %{_includedir}/signon-plugins/
%dir %{_includedir}/signon-plugins/SignOn/
%{_includedir}/signon-plugins/SignOn/*.h
%{_includedir}/signon-plugins/*
%{_libdir}/libsignon-plugins.so
%{_libdir}/pkgconfig/signon-plugins-common.pc
%{_libdir}/pkgconfig/signon-plugins.pc
#%{_datadir}/qt4/mkspecs/features/signon-plugins-common.prf
#%{_datadir}/qt4/mkspecs/features/signon-plugins.prf
%files -n signon-plugins-docs
%defattr(-,root,root)
%doc %{_docdir}/signon-plugins/
%changelog