#
# Conditional build:
-%bcond_with openct # use PCSC directly, without OpenCT support
-
+%bcond_with openct # use OpenCT instead of PC/SC for reader access
+#
Summary: OpenSC library - for accessing SmartCard devices using PC/SC Lite
Summary(pl.UTF-8): Biblioteka OpenSC - do korzystania z kart procesorowych przy użyciu PC/SC Lite
Name: opensc
-Version: 0.12.0
-Release: 2
+Version: 0.15.0
+Release: 1
Epoch: 0
License: LGPL v2.1+
Group: Applications
-Source0: http://www.opensc-project.org/files/opensc/%{name}-%{version}.tar.gz
-# Source0-md5: 630fa3b8717d22a1d069d120153a0c52
-Source1: %{name}-initramfs-hook
-Source2: %{name}-initramfs-local-bottom
-Source3: %{name}-initramfs-local-top
-Source4: %{name}-initramfs-README
-URL: http://www.opensc-project.org/
+Source0: http://downloads.sourceforge.net/opensc/%{name}-%{version}.tar.gz
+# Source0-md5: 01e6b803865f7b7574ee65a7b2d63c17
+Patch0: %{name}-pc.patch
+Patch1: %{name}-missing.patch
+URL: https://github.com/OpenSC/OpenSC/wiki
BuildRequires: autoconf >= 2.60
BuildRequires: automake >= 1:1.10
BuildRequires: docbook-style-xsl
BuildRequires: libtool >= 1:1.4.2-9
BuildRequires: libxslt-progs
%{?with_openct:BuildRequires: openct-devel}
-BuildRequires: openldap-devel >= 2.4.6
BuildRequires: openssl-devel >= 0.9.7d
%{!?with_openct:BuildRequires: pcsc-lite-devel >= 1.6.0}
BuildRequires: pkgconfig >= 1:0.9.0
BuildRequires: readline-devel
BuildRequires: rpmbuild(macros) >= 1.364
BuildRequires: zlib-devel
+Requires: filesystem >= 4.0-28
%{!?with_openct:Requires: pcsc-lite-libs >= 1.6.0}
Obsoletes: browser-plugin-opensc
Obsoletes: mozilla-plugin-opensc
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: libltdl-devel
%{?with_openct:Requires: openct-devel}
-Requires: openssl-devel
+Requires: openssl-devel >= 0.9.7d
%{!?with_openct:Requires: pcsc-lite-devel >= 1.6.0}
+Requires: zlib-devel
%description devel
OpenSC development files.
%description static -l pl.UTF-8
Biblioteka statyczna OpenSC.
-%package initramfs
-Summary: OpenSC support scripts for initramfs-tools
-Summary(pl.UTF-8): Skrypty dla initramfs-tools ze wsparciem dla OpenSC
-Group: Base
+%package -n bash-completion-opensc
+Summary: Bash completion for OpenSC commands
+Summary(pl.UTF-8): Bashowe uzupełnianie parametrów poleceń OpenSC
+Group: Applications/Shells
Requires: %{name} = %{version}-%{release}
-Requires: initramfs-tools
-%description initramfs
-OpenSC support scripts for initramfs-tools.
+%description -n bash-completion-opensc
+Bash completion for OpenSC commands.
-%description initramfs -l pl.UTF-8
-Skrypty dla initramfs-tools ze wsparciem dla OpenSC.
+%description -n bash-completion-opensc -l pl.UTF-8
+Bashowe uzupełnianie parametrów poleceń OpenSC.
%prep
%setup -q
-cp -p %{SOURCE4} README.initramfs
+%patch0 -p1
+%patch1 -p1
%build
%{__libtoolize}
%configure \
%{?with_openct:--enable-openct --disable-pcsc} \
%{!?with_openct:--enable-pcsc --disable-openct} \
+ --disable-silent-rules \
--enable-doc \
--with-pcsc-provider=%{_libdir}/libpcsclite.so.1
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/{hooks,scripts/local-{bottom,top}}
-%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_libdir}/pkcs11}
-install -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/hooks/opensc
-install -p %{SOURCE2} $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/scripts/local-bottom/opensc
-install -p %{SOURCE3} $RPM_BUILD_ROOT%{_datadir}/initramfs-tools/scripts/local-top/opensc
+%{__make} install \
+ DESTDIR=$RPM_BUILD_ROOT \
+ completiondir=/etc/bash_completion.d
# not needed (dlopened by soname)
%{__rm} $RPM_BUILD_ROOT%{_libdir}/{onepin-opensc-pkcs11,opensc-pkcs11,pkcs11-spy}.la
+# obsoleted by pkg-config
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib{opensc,smm-local}.la
-rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc ChangeLog NEWS README doc/html.out/tools.html
+%doc ChangeLog NEWS README doc/tools/tools.html
%attr(755,root,root) %{_bindir}/cardos-tool
%attr(755,root,root) %{_bindir}/cryptoflex-tool
+%attr(755,root,root) %{_bindir}/dnie-tool
%attr(755,root,root) %{_bindir}/eidenv
+%attr(755,root,root) %{_bindir}/iasecc-tool
%attr(755,root,root) %{_bindir}/netkey-tool
+%attr(755,root,root) %{_bindir}/openpgp-tool
%attr(755,root,root) %{_bindir}/opensc-explorer
%attr(755,root,root) %{_bindir}/opensc-tool
%attr(755,root,root) %{_bindir}/piv-tool
%attr(755,root,root) %{_bindir}/pkcs15-crypt
%attr(755,root,root) %{_bindir}/pkcs15-init
%attr(755,root,root) %{_bindir}/pkcs15-tool
-%attr(755,root,root) %{_bindir}/rutoken-tool
+%attr(755,root,root) %{_bindir}/sc-hsm-tool
%attr(755,root,root) %{_bindir}/westcos-tool
%attr(755,root,root) %{_libdir}/libopensc.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libopensc.so.3
+%attr(755,root,root) %{_libdir}/libsmm-local.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libsmm-local.so.3
# PKCS11 modules
%attr(755,root,root) %{_libdir}/onepin-opensc-pkcs11.so
%attr(755,root,root) %{_libdir}/opensc-pkcs11.so
%attr(755,root,root) %{_libdir}/pkcs11-spy.so
-%dir %{_libdir}/pkcs11
%attr(755,root,root) %{_libdir}/pkcs11/onepin-opensc-pkcs11.so
%attr(755,root,root) %{_libdir}/pkcs11/opensc-pkcs11.so
%attr(755,root,root) %{_libdir}/pkcs11/pkcs11-spy.so
%config(noreplace) %verify(not md5 mtime size) %{_datadir}/opensc/*.profile
%{_mandir}/man1/cardos-tool.1*
%{_mandir}/man1/cryptoflex-tool.1*
+%{_mandir}/man1/dnie-tool.1*
+%{_mandir}/man1/eidenv.1*
+%{_mandir}/man1/iasecc-tool.1*
%{_mandir}/man1/netkey-tool.1*
+%{_mandir}/man1/openpgp-tool.1*
%{_mandir}/man1/opensc-explorer.1*
%{_mandir}/man1/opensc-tool.1*
+%{_mandir}/man1/piv-tool.1*
%{_mandir}/man1/pkcs11-tool.1*
%{_mandir}/man1/pkcs15-crypt.1*
%{_mandir}/man1/pkcs15-init.1*
%{_mandir}/man1/pkcs15-tool.1*
+%{_mandir}/man1/sc-hsm-tool.1*
%{_mandir}/man1/westcos-tool.1*
%{_mandir}/man5/pkcs15-profile.5*
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libopensc.so
-%{_libdir}/libopensc.la
+%attr(755,root,root) %{_libdir}/libsmm-local.so
+%{_pkgconfigdir}/libopensc.pc
%files static
%defattr(644,root,root,755)
%{_libdir}/libopensc.a
+%{_libdir}/libsmm-local.a
-%files initramfs
+%files -n bash-completion-opensc
%defattr(644,root,root,755)
-%doc README.initramfs
-%attr(755,root,root) %{_datadir}/initramfs-tools/hooks/opensc
-%attr(755,root,root) %{_datadir}/initramfs-tools/scripts/local-top/opensc
-%attr(755,root,root) %{_datadir}/initramfs-tools/scripts/local-bottom/opensc
+/etc/bash_completion.d/cardos-tool
+/etc/bash_completion.d/cryptoflex-tool
+/etc/bash_completion.d/dnie-tool
+/etc/bash_completion.d/eidenv
+/etc/bash_completion.d/iasecc-tool
+/etc/bash_completion.d/netkey-tool
+/etc/bash_completion.d/openpgp-tool
+/etc/bash_completion.d/opensc-explorer
+/etc/bash_completion.d/opensc-tool
+/etc/bash_completion.d/piv-tool
+/etc/bash_completion.d/pkcs11-tool
+/etc/bash_completion.d/pkcs15-crypt
+/etc/bash_completion.d/pkcs15-init
+/etc/bash_completion.d/pkcs15-tool
+/etc/bash_completion.d/sc-hsm-tool
+/etc/bash_completion.d/westcos-tool