oath-toolkit/oath-toolkit.spec
Torsten Gruner f77d459baf Accepting request 567519 from home:dmarcoux:pass-otp
- Add patch (last commit which changed source, not released in 2.6.2):
  - 0002-update_gnulibs_files.patch

OBS-URL: https://build.opensuse.org/request/show/567519
OBS-URL: https://build.opensuse.org/package/show/security/oath-toolkit?expand=0&rev=11
2018-01-19 08:10:23 +00:00

216 lines
7.1 KiB
RPMSpec

#
# spec file for package oath-toolkit
#
# Copyright (c) 2016 SUSE LINUX Products 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/
#
%if 0%{?suse_version} >= 1320 || 0%{?sle_version} >= 120100
%define build_pskc 1
%endif
Name: oath-toolkit
Version: 2.6.2
Release: 0
Summary: Toolkit for one-time password authentication systems
License: GPL-3.0+
Group: Productivity/Networking/Security
Url: http://www.nongnu.org/oath-toolkit/
Source: http://download.savannah.nongnu.org/releases/%{name}/%{name}-%{version}.tar.gz
Patch1: 0001-Fix-no-return-in-nonvoid-function-errors-reported-by.patch
Patch2: 0002-update_gnulibs_files.patch
BuildRequires: bison
BuildRequires: gengetopt
BuildRequires: gtk-doc
BuildRequires: libgcrypt-devel
BuildRequires: pam-devel
BuildRequires: pkgconfig
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%if %{build_pskc}
BuildRequires: libtool
BuildRequires: libxml2-devel
BuildRequires: pkgconfig(xmlsec1)
%endif
%description
The OATH Toolkit makes it easy to build one-time password
authentication systems. It contains shared libraries, command line
tools and a PAM module. Supported technologies include the
event-based HOTP algorithm (RFC4226) and the time-based TOTP algorithm
(RFC6238). OATH stands for Open AuTHentication, which is the
organization that specify the algorithms. For managing secret key
files, the Portable Symmetric Key Container (PSKC) format described in
RFC6030 is supported.
%package -n pam_oath
Summary: PAM module for pluggable login authentication for OATH
License: GPL-3.0+
Group: Productivity/Networking/Security
%description -n pam_oath
The OATH Toolkit makes it easy to build one-time password
authentication systems. It contains shared libraries, command line
tools and a PAM module. Supported technologies include the
event-based HOTP algorithm (RFC4226) and the time-based TOTP algorithm
(RFC6238). OATH stands for Open AuTHentication, which is the
organization that specify the algorithms. For managing secret key
files, the Portable Symmetric Key Container (PSKC) format described in
RFC6030 is supported.
%package -n liboath0
Summary: Library for Open AuTHentication (OATH) HOTP support
License: LGPL-2.1+
Group: Productivity/Networking/Security
%description -n liboath0
The OATH Toolkit makes it easy to build one-time password
authentication systems. It contains shared libraries, command line
tools and a PAM module. Supported technologies include the
event-based HOTP algorithm (RFC4226) and the time-based TOTP algorithm
(RFC6238). OATH stands for Open AuTHentication, which is the
organization that specify the algorithms. For managing secret key
files, the Portable Symmetric Key Container (PSKC) format described in
RFC6030 is supported.
%package -n liboath-devel
Summary: Library for Open AuTHentication (OATH) HOTP support -- Development Files
License: LGPL-2.1+
Group: Development/Libraries/C and C++
Requires: glibc-devel
Requires: liboath0 = %{version}
%description -n liboath-devel
The OATH Toolkit makes it easy to build one-time password
authentication systems. It contains shared libraries, command line
tools and a PAM module. Supported technologies include the
event-based HOTP algorithm (RFC4226) and the time-based TOTP algorithm
(RFC6238). OATH stands for Open AuTHentication, which is the
organization that specify the algorithms. For managing secret key
files, the Portable Symmetric Key Container (PSKC) format described in
RFC6030 is supported.
%if %{build_pskc}
%package -n libpskc0
Summary: Library for Portable Symmetric Key Container
License: LGPL-2.1+
Group: Productivity/Networking/Security
%description -n libpskc0
The OATH Toolkit makes it easy to build one-time password
authentication systems. It contains shared libraries, command line
tools and a PAM module. Supported technologies include the
event-based HOTP algorithm (RFC4226) and the time-based TOTP algorithm
(RFC6238). OATH stands for Open AuTHentication, which is the
organization that specify the algorithms. For managing secret key
files, the Portable Symmetric Key Container (PSKC) format described in
RFC6030 is supported.
%package -n libpskc-devel
Summary: Library for Portable Symmetric Key Container -- Development Files
License: LGPL-2.1+
Group: Development/Libraries/C and C++
Requires: glibc-devel
Requires: libpskc0 = %{version}
%description -n libpskc-devel
The OATH Toolkit makes it easy to build one-time password
authentication systems. It contains shared libraries, command line
tools and a PAM module. Supported technologies include the
event-based HOTP algorithm (RFC4226) and the time-based TOTP algorithm
(RFC6238). OATH stands for Open AuTHentication, which is the
organization that specify the algorithms. For managing secret key
files, the Portable Symmetric Key Container (PSKC) format described in
RFC6030 is supported.
%endif
%prep
%setup -q
%patch1 -p1
%patch2 -p1
autoreconf -fi
%build
%configure --with-pam-dir=/%{_lib}/security \
--with-libgcrypt \
--disable-silent-rules \
--with-pic \
--disable-static
make %{?_smp_mflags}
%install
make DESTDIR=%{buildroot} install %{?_smp_mflags}
mv COPYING COPYING.summary
find %{buildroot} -type f -name "*.la" -delete -print
%post -n liboath0 -p /sbin/ldconfig
%postun -n liboath0 -p /sbin/ldconfig
%if %{build_pskc}
%post -n libpskc0 -p /sbin/ldconfig
%postun -n libpskc0 -p /sbin/ldconfig
%endif
%files
%defattr(-,root,root)
%doc ChangeLog NEWS README COPYING.summary oathtool/COPYING
%{_bindir}/oathtool
%{_mandir}/man1/oathtool.*
%if %{build_pskc}
%{_bindir}/pskctool
%{_mandir}/man1/pskctool.*
%endif
%files -n pam_oath
%defattr(-,root,root)
%doc pam_oath/COPYING pam_oath/README
/%{_lib}/security/pam_oath.so
%files -n liboath0
%defattr(-,root,root)
%doc liboath/COPYING
%{_libdir}/liboath.so.*
%{_datadir}/xml/pskc/
%files -n liboath-devel
%defattr(-,root,root)
%{_libdir}/liboath.so
%{_includedir}/liboath/
%{_libdir}/pkgconfig/liboath.pc
%doc %{_datadir}/gtk-doc/html/liboath
%{_mandir}/man3/oath_*
%if %{build_pskc}
%files -n libpskc0
%defattr(-,root,root)
# there's no COPYING for libpskc, but it's LGPL, like liboath
%doc libpskc/README liboath/COPYING
%{_libdir}/libpskc.so.*
%files -n libpskc-devel
%defattr(-,root,root)
%{_libdir}/libpskc.so
%{_includedir}/pskc/
%{_libdir}/pkgconfig/libpskc.pc
%doc %{_datadir}/gtk-doc/html/libpskc
%{_mandir}/man3/pskc_*
%endif
%changelog