diff --git a/.gitignore b/.gitignore index 3312bbf..e2c323e 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -opensc-0.11.11.tar.gz +opensc-0.11.13.tar.gz diff --git a/opensc-0.11.12-no-add-needed.patch b/opensc-0.11.12-no-add-needed.patch new file mode 100644 index 0000000..f93da21 --- /dev/null +++ b/opensc-0.11.12-no-add-needed.patch @@ -0,0 +1,98 @@ +diff -up opensc-0.11.12/src/pkcs11/Makefile.am.no-add-needed opensc-0.11.12/src/pkcs11/Makefile.am +--- opensc-0.11.12/src/pkcs11/Makefile.am.no-add-needed 2010-02-14 22:59:02.000000000 +0200 ++++ opensc-0.11.12/src/pkcs11/Makefile.am 2010-02-14 22:59:09.000000000 +0200 +@@ -23,6 +23,7 @@ OPENSC_PKCS11_LIBS = $(OPTIONAL_OPENSSL_ + $(top_builddir)/src/scconf/libscconf.la + + libpkcs11_la_SOURCES = libpkcs11.c ++libpkcs11_la_LIBADD = $(LTLIB_LIBS) + + opensc_pkcs11_la_SOURCES = $(OPENSC_PKCS11_SRC) $(OPENSC_PKCS11_INC) hack-disabled.c + opensc_pkcs11_la_LIBADD = $(OPENSC_PKCS11_LIBS) +diff -up opensc-0.11.12/src/pkcs11/Makefile.in.no-add-needed opensc-0.11.12/src/pkcs11/Makefile.in +--- opensc-0.11.12/src/pkcs11/Makefile.in.no-add-needed 2010-02-14 22:59:27.000000000 +0200 ++++ opensc-0.11.12/src/pkcs11/Makefile.in 2010-02-14 22:59:50.000000000 +0200 +@@ -82,10 +82,10 @@ am__base_list = \ + am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkcs11dir)" \ + "$(DESTDIR)$(openscincludedir)" + LTLIBRARIES = $(lib_LTLIBRARIES) $(noinst_LTLIBRARIES) +-libpkcs11_la_LIBADD = ++am__DEPENDENCIES_1 = ++libpkcs11_la_DEPENDENCIES = $(am__DEPENDENCIES_1) + am_libpkcs11_la_OBJECTS = libpkcs11.lo + libpkcs11_la_OBJECTS = $(am_libpkcs11_la_OBJECTS) +-am__DEPENDENCIES_1 = + am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(top_builddir)/src/pkcs15init/libpkcs15init.la \ + $(top_builddir)/src/libopensc/libopensc.la \ +@@ -348,6 +348,7 @@ OPENSC_PKCS11_LIBS = $(OPTIONAL_OPENSSL_ + $(top_builddir)/src/scconf/libscconf.la + + libpkcs11_la_SOURCES = libpkcs11.c ++libpkcs11_la_LIBADD = $(LTLIB_LIBS) + opensc_pkcs11_la_SOURCES = $(OPENSC_PKCS11_SRC) $(OPENSC_PKCS11_INC) \ + hack-disabled.c $(am__append_1) + opensc_pkcs11_la_LIBADD = $(OPENSC_PKCS11_LIBS) +diff -up opensc-0.11.12/src/tools/Makefile.am.no-add-needed opensc-0.11.12/src/tools/Makefile.am +--- opensc-0.11.12/src/tools/Makefile.am.no-add-needed 2009-12-13 11:14:26.000000000 +0200 ++++ opensc-0.11.12/src/tools/Makefile.am 2010-02-14 22:57:35.000000000 +0200 +@@ -22,6 +22,7 @@ LIBS = $(top_builddir)/src/libopensc/lib + $(top_builddir)/src/common/libcompat.la + + opensc_tool_SOURCES = opensc-tool.c util.c ++opensc_tool_LDADD = $(top_builddir)/src/scconf/libscconf.la + piv_tool_SOURCES = piv-tool.c util.c + piv_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS) + opensc_explorer_SOURCES = opensc-explorer.c util.c +@@ -39,6 +40,7 @@ pkcs15_init_SOURCES = pkcs15-init.c util + pkcs15_init_LDADD = $(OPTIONAL_OPENSSL_LIBS) \ + $(top_builddir)/src/pkcs15init/libpkcs15init.la + cardos_tool_SOURCES = cardos-tool.c util.c ++cardos_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS) + eidenv_SOURCES = eidenv.c + netkey_tool_SOURCES = netkey-tool.c + netkey_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS) +diff -up opensc-0.11.12/src/tools/Makefile.in.no-add-needed opensc-0.11.12/src/tools/Makefile.in +--- opensc-0.11.12/src/tools/Makefile.in.no-add-needed 2009-12-18 15:26:19.000000000 +0200 ++++ opensc-0.11.12/src/tools/Makefile.in 2010-02-14 22:59:51.000000000 +0200 +@@ -85,13 +85,13 @@ am__cardos_tool_SOURCES_DIST = cardos-to + am_cardos_tool_OBJECTS = cardos-tool.$(OBJEXT) util.$(OBJEXT) \ + $(am__objects_1) + cardos_tool_OBJECTS = $(am_cardos_tool_OBJECTS) +-cardos_tool_LDADD = $(LDADD) ++am__DEPENDENCIES_1 = ++cardos_tool_DEPENDENCIES = $(am__DEPENDENCIES_1) + am__cryptoflex_tool_SOURCES_DIST = cryptoflex-tool.c util.c \ + versioninfo.rc + am_cryptoflex_tool_OBJECTS = cryptoflex-tool.$(OBJEXT) util.$(OBJEXT) \ + $(am__objects_1) + cryptoflex_tool_OBJECTS = $(am_cryptoflex_tool_OBJECTS) +-am__DEPENDENCIES_1 = + cryptoflex_tool_DEPENDENCIES = $(am__DEPENDENCIES_1) + am__eidenv_SOURCES_DIST = eidenv.c versioninfo.rc + am_eidenv_OBJECTS = eidenv.$(OBJEXT) $(am__objects_1) +@@ -111,7 +111,7 @@ am__opensc_tool_SOURCES_DIST = opensc-to + am_opensc_tool_OBJECTS = opensc-tool.$(OBJEXT) util.$(OBJEXT) \ + $(am__objects_1) + opensc_tool_OBJECTS = $(am_opensc_tool_OBJECTS) +-opensc_tool_LDADD = $(LDADD) ++opensc_tool_DEPENDENCIES = $(top_builddir)/src/scconf/libscconf.la + am__piv_tool_SOURCES_DIST = piv-tool.c util.c versioninfo.rc + am_piv_tool_OBJECTS = piv-tool.$(OBJEXT) util.$(OBJEXT) \ + $(am__objects_1) +@@ -390,6 +390,7 @@ dist_bin_SCRIPTS = cardos-info $(am__app + AM_CFLAGS = $(OPTIONAL_OPENSSL_CFLAGS) $(OPTIONAL_READLINE_CFLAGS) + INCLUDES = -I$(top_srcdir)/src/common -I$(top_builddir)/src/include + opensc_tool_SOURCES = opensc-tool.c util.c $(am__append_3) ++opensc_tool_LDADD = $(top_builddir)/src/scconf/libscconf.la + piv_tool_SOURCES = piv-tool.c util.c $(am__append_4) + piv_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS) + opensc_explorer_SOURCES = opensc-explorer.c util.c $(am__append_5) +@@ -409,6 +410,7 @@ pkcs15_init_LDADD = $(OPTIONAL_OPENSSL_L + $(top_builddir)/src/pkcs15init/libpkcs15init.la + + cardos_tool_SOURCES = cardos-tool.c util.c $(am__append_11) ++cardos_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS) + eidenv_SOURCES = eidenv.c $(am__append_12) + netkey_tool_SOURCES = netkey-tool.c $(am__append_13) + netkey_tool_LDADD = $(OPTIONAL_OPENSSL_LIBS) diff --git a/opensc-0.11.13-build-readerstate.patch b/opensc-0.11.13-build-readerstate.patch new file mode 100644 index 0000000..f5f3ca7 --- /dev/null +++ b/opensc-0.11.13-build-readerstate.patch @@ -0,0 +1,51 @@ +diff -up opensc-0.11.13/src/libopensc/internal-winscard.h.build opensc-0.11.13/src/libopensc/internal-winscard.h +--- opensc-0.11.13/src/libopensc/internal-winscard.h.build 2010-02-16 10:03:28.000000000 +0100 ++++ opensc-0.11.13/src/libopensc/internal-winscard.h 2010-09-07 10:34:20.000000000 +0200 +@@ -88,7 +88,7 @@ SCARD_IO_REQUEST, *PSCARD_IO_REQUEST, *L + + typedef const SCARD_IO_REQUEST *LPCSCARD_IO_REQUEST; + typedef SCARD_READERSTATE_A SCARD_READERSTATE, *PSCARD_READERSTATE_A, +- *LPSCARD_READERSTATE_A; ++ *LPSCARD_READERSTATE_A, *LPSCARD_READERSTATE; + + #endif /* HAVE_SCARD_H */ + +@@ -113,7 +113,7 @@ typedef LONG (PCSC_API *SCardEndTransact + typedef LONG (PCSC_API *SCardStatus_t)(SCARDHANDLE hCard, LPSTR mszReaderNames, LPDWORD pcchReaderLen, + LPDWORD pdwState, LPDWORD pdwProtocol, LPBYTE pbAtr, LPDWORD pcbAtrLen); + typedef LONG (PCSC_API *SCardGetStatusChange_t)(SCARDCONTEXT hContext, DWORD dwTimeout, +- LPSCARD_READERSTATE_A rgReaderStates, DWORD cReaders); ++ LPSCARD_READERSTATE rgReaderStates, DWORD cReaders); + typedef LONG (PCSC_API *SCardControlOLD_t)(SCARDHANDLE hCard, LPCVOID pbSendBuffer, DWORD cbSendLength, + LPVOID pbRecvBuffer, LPDWORD lpBytesReturned); + typedef LONG (PCSC_API *SCardControl_t)(SCARDHANDLE hCard, DWORD dwControlCode, LPCVOID pbSendBuffer, +diff -up opensc-0.11.13/src/libopensc/reader-pcsc.c.build opensc-0.11.13/src/libopensc/reader-pcsc.c +--- opensc-0.11.13/src/libopensc/reader-pcsc.c.build 2010-02-16 10:03:28.000000000 +0100 ++++ opensc-0.11.13/src/libopensc/reader-pcsc.c 2010-09-07 10:34:51.000000000 +0200 +@@ -80,7 +80,7 @@ struct pcsc_private_data { + + struct pcsc_slot_data { + SCARDHANDLE pcsc_card; +- SCARD_READERSTATE_A reader_state; ++ SCARD_READERSTATE reader_state; + DWORD verify_ioctl; + DWORD verify_ioctl_start; + DWORD verify_ioctl_finish; +@@ -353,7 +353,7 @@ static int pcsc_wait_for_event(sc_reader + sc_context_t *ctx; + SCARDCONTEXT pcsc_ctx; + LONG ret; +- SCARD_READERSTATE_A rgReaderStates[SC_MAX_READERS]; ++ SCARD_READERSTATE rgReaderStates[SC_MAX_READERS]; + unsigned long on_bits, off_bits; + time_t end_time, now, delta; + size_t i; +@@ -401,7 +401,7 @@ static int pcsc_wait_for_event(sc_reader + /* Wait for a status change and return if it's a card insert/removal + */ + for( ; ; ) { +- SCARD_READERSTATE_A *rsp; ++ SCARD_READERSTATE *rsp; + + /* Scan the current state of all readers to see if they + * match any of the events we're polling for */ diff --git a/opensc-0.11.13-libassuan1.patch b/opensc-0.11.13-libassuan1.patch new file mode 100644 index 0000000..0a9afd1 --- /dev/null +++ b/opensc-0.11.13-libassuan1.patch @@ -0,0 +1,12 @@ +diff -up opensc-0.11.13/aclocal.m4.libassuan1 opensc-0.11.13/aclocal.m4 +--- opensc-0.11.13/aclocal.m4.libassuan1 2010-02-16 03:32:15.000000000 -0600 ++++ opensc-0.11.13/aclocal.m4 2010-08-11 13:39:21.483606389 -0500 +@@ -1108,7 +1108,7 @@ AC_SUBST([am__untar]) + ]) # _AM_PROG_TAR + + m4_include([m4/acx_pthread.m4]) +-m4_include([m4/libassuan.m4]) ++m4_include([libassuan1.m4]) + m4_include([m4/libtool.m4]) + m4_include([m4/ltoptions.m4]) + m4_include([m4/ltsugar.m4]) diff --git a/opensc.spec b/opensc.spec index b4b3d17..53a4b83 100644 --- a/opensc.spec +++ b/opensc.spec @@ -1,8 +1,8 @@ -%define plugindir %{_libdir}/mozilla/plugins +%global plugindir %{_libdir}/mozilla/plugins Name: opensc -Version: 0.11.11 -Release: 1%{?dist} +Version: 0.11.13 +Release: 5%{?dist} Summary: Smart card library and applications Group: System Environment/Libraries @@ -10,17 +10,17 @@ License: LGPLv2+ URL: http://www.opensc-project.org/opensc/ Source0: http://www.opensc-project.org/files/opensc/%{name}-%{version}.tar.gz Patch1: %{name}-0.11.7-develconfig.patch +Patch2: %{name}-0.11.12-no-add-needed.patch +Patch3: opensc-0.11.13-libassuan1.patch +Patch4: opensc-0.11.13-build-readerstate.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -BuildRequires: pcsc-lite-devel >= 1.1.1 +BuildRequires: pcsc-lite-devel BuildRequires: readline-devel -# ncurses-devel for < F7 (not pulled in by readline-devel) -BuildRequires: ncurses-devel BuildRequires: openct-devel -BuildRequires: openssl-devel >= 0.9.7a +BuildRequires: openssl-devel BuildRequires: libtool-ltdl-devel BuildRequires: libtool -BuildRequires: pkgconfig Requires: pcsc-lite-libs%{?_isa} %description @@ -35,8 +35,12 @@ eID cards have also been confirmed to work. Summary: Digital signature plugin for web browsers Group: Applications/Internet BuildRequires: libXt-devel -BuildRequires: libassuan-devel -Requires: %{plugindir} +%if 0%{?fedora} > 13 +BuildRequires: libassuan1-devel libassuan1-static automake +%else +BuildRequires: libassuan-devel libassuan-static +%endif +Requires: mozilla-filesystem%{?_isa} Requires: pinentry-gui %description -n mozilla-opensc-signer @@ -57,12 +61,21 @@ OpenSC development files. %prep %setup -q %patch1 -p1 -b .config +%patch2 -p1 -b .no-add-needed sed -i -e 's|"/lib /usr/lib\b|"/%{_lib} %{_libdir}|' configure # lib64 rpaths cp -p src/pkcs15init/README ./README.pkcs15init cp -p src/scconf/README.scconf . # No %{_libdir} here to avoid multilib conflicts; it's just an example sed -i -e 's|/usr/local/towitoko/lib/|/usr/lib/ctapi/|' etc/opensc.conf.in +# hacks for libassuan1 +%if 0%{?fedora} > 13 +rm -f m4/libassuan.m4 +%patch3 -p1 -b .libassuan1 +%patch4 -p1 -b .build +./bootstrap +%endif + %build %configure --disable-static \ @@ -72,7 +85,7 @@ sed -i -e 's|/usr/local/towitoko/lib/|/usr/lib/ctapi/|' etc/opensc.conf.in --enable-doc \ --with-pcsc-provider=libpcsclite.so.1 \ --with-plugindir=%{plugindir} \ - --with-pin-entry=%{_bindir}/pinentry + --with-pinentry=%{_bindir}/pinentry make %{?_smp_mflags} @@ -124,6 +137,7 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/lib*.so.* %{_libdir}/onepin-opensc-pkcs11.so %{_libdir}/opensc-pkcs11.so +%dir %{_libdir}/pkcs11 %{_libdir}/pkcs11/onepin-opensc-pkcs11.so %{_libdir}/pkcs11/opensc-pkcs11.so %{_datadir}/opensc/ @@ -157,6 +171,33 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Tue Oct 19 2010 Tomas Mraz - 0.11.13-5 +- own the _libdir/pkcs11 subdirectory (#644527) + +* Tue Sep 7 2010 Tomas Mraz - 0.11.13-4 +- fix build with new pcsc-lite + +* Wed Aug 11 2010 Rex Dieter - 0.11.13-3 +- build against libassuan1 (f14+) + +* Wed Jun 9 2010 Tomas Mraz - 0.11.13-2 +- replace file dependency (#601943) + +* Tue Feb 16 2010 Kalev Lember - 0.11.13-1 +- new upstream version + +* Sun Feb 14 2010 Kalev Lember - 0.11.12-2 +- Added patch to fix linking with the new --no-add-needed default (#564758) + +* Mon Dec 21 2009 Kalev Lember - 0.11.12-1 +- new upstream version +- replaced %%define with %%global +- BR clean up from items not applicable to current Fedora releases + +* Tue Dec 8 2009 Michael Schwendt - 0.11.11-2 +- Explicitly BR libassuan-static in accordance with the Packaging + Guidelines (libassuan-devel is still static-only). + * Thu Nov 19 2009 Tomas Mraz - 0.11.11-1 - new upstream version diff --git a/sources b/sources index 748384d..40b529e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -9c3290f7cb82273136b1584e198157dc opensc-0.11.11.tar.gz +98fa151e947941f9c3f27420fdf47c11 opensc-0.11.13.tar.gz