X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=gnupg2.spec;h=b190288e99469411affdbcd83dba28fa39b119fd;hb=9192a15dd020e3e331eafdf781680edfb6a4678b;hp=632412ab02e4fa1263bf0f636c4bda82870a4545;hpb=a38280f6a4071d5b9ebf014d239a5cf18a788a71;p=packages%2Fgnupg2.git diff --git a/gnupg2.spec b/gnupg2.spec index 632412a..b190288 100644 --- a/gnupg2.spec +++ b/gnupg2.spec @@ -1,43 +1,59 @@ # # Conditional build: -%bcond_without pth # without pth-based based version of gnupg -%bcond_without tests # testsuite on build +%bcond_without tests # testsuite on build +%bcond_without dirmngr # dirmngr packages build +%bcond_without default_gpg # install as gpg/gpgv instead of gpg2/gpgv2 +%bcond_with gnutls # GnuTLS instead of NTBTLS +%bcond_with selinux # "SELinux hacks" # Summary: GNU Privacy Guard - tool for secure communication and data storage - enhanced version Summary(pl.UTF-8): GnuPG - narzędzie do bezpiecznej komunikacji i bezpiecznego przechowywania danych - wersja rozszerzona Name: gnupg2 -Version: 2.0.7 -Release: 1 +Version: 2.2.10 +Release: 2 License: GPL v3+ Group: Applications/File Source0: ftp://ftp.gnupg.org/gcrypt/gnupg/gnupg-%{version}.tar.bz2 -# Source0-md5: 433de7aca1f5d4342121ea09d98a2360 +# Source0-md5: 3ae8bd6246367602e72571f7a6588bcd Source1: gnupg-agent.sh Patch0: %{name}-info.patch -Patch1: %{name}-pth.patch -Patch2: %{name}-pl.po-update.patch -Patch3: %{name}-disable_tests.patch +Patch1: %{name}-nogit.patch +Patch2: %{name}-disable_tests.patch +Patch3: %{name}-pl.po-update.patch +# Patch3-md5: e7c132eb8e8228ee301bf46af839dfbd URL: http://www.gnupg.org/ BuildRequires: autoconf >= 2.61 -BuildRequires: automake >= 1:1.10 +BuildRequires: automake >= 1:1.14 BuildRequires: bzip2-devel -BuildRequires: curl-devel -BuildRequires: gettext-devel >= 0.16.1 -BuildRequires: libassuan-devel >= 1:1.0.2 -BuildRequires: libgcrypt-devel >= 1.2.2 -BuildRequires: libgpg-error-devel >= 1.4 -BuildRequires: libksba-devel >= 1.0.2 -BuildRequires: libusb-devel -BuildRequires: openldap-devel >= 2.4.6 -BuildRequires: pcsc-lite-devel -%{?with_pth:BuildRequires: pth-devel >= 2.0.0} +BuildRequires: curl-devel >= 7.10 +BuildRequires: gettext-tools >= 0.17 +%{?with_gnutls:BuildRequires: gnutls-devel >= 3.0} +BuildRequires: libassuan-devel >= 1:2.5.0 +BuildRequires: libgcrypt-devel >= 1.7.0 +BuildRequires: libgpg-error-devel >= 1.24 +BuildRequires: libksba-devel >= 1.3.4 +BuildRequires: libusb-devel >= 1.0 +BuildRequires: npth-devel >= 1.2 +%{!?with_gnutls:BuildRequires: ntbtls-devel >= 0.1.0} +%{?with_dirmngr:BuildRequires: openldap-devel >= 2.4.6} +BuildRequires: pkgconfig +BuildRequires: readline-devel BuildRequires: rpmbuild(macros) >= 1.177 +BuildRequires: sqlite3-devel >= 3.7 BuildRequires: texinfo BuildRequires: zlib-devel Requires: gnupg2-common = %{version}-%{release} +Requires: sqlite3 >= 3.7 +%if %{with default_gpg} +Obsoletes: gnupg < 2 +Obsoletes: gnupg-plugin-keys_curl < 2 +Obsoletes: gnupg-plugin-keys_hkp < 2 +Provides: gnupg = %{version}-%{release} +%endif +Suggests: gnupg-agent BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define _libexecdir %{_libdir}/gnupg2 +%define pkglibexecdir %{_libexecdir}/gnupg2 %description GnuPG is GNU's tool for secure communication and data storage. It can @@ -60,10 +76,17 @@ To jest wersja rozszerzona. Summary: GnuPG - common files Summary(pl.UTF-8): GnuPG - pliki wspólne Group: Applications/File -Requires: libassuan >= 1:1.0.2 -Requires: libgcrypt >= 1.2.2 -Requires: libgpg-error >= 1.4 -Requires: libksba >= 1.0.2 +Requires: libassuan >= 1:2.5.0 +Requires: libgcrypt >= 1.7.0 +Requires: libgpg-error >= 1.24 +Requires: libksba >= 1.3.4 +Requires: npth >= 1.2 +Obsoletes: gnupg2-plugin-keys_curl +Obsoletes: gnupg2-plugin-keys_finger +Obsoletes: gnupg2-plugin-keys_hkp +Obsoletes: gnupg2-plugin-keys_kdns +Obsoletes: gnupg2-plugin-keys_ldap +Conflicts: gnupg < 1.4.18-2 Conflicts: gnupg-agent < 1.9.14-2 %description common @@ -72,61 +95,12 @@ Common files used by tools from GnuPG project. %description common -l pl.UTF-8 Pliki wspólne używane przez różne narzędzia z projektu GnuPG. -%package plugin-keys_curl -Summary: GnuPG 2 plugin for allow talk to a HTTP/FTP keyserver -Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy HTTP/FTP -Group: Applications/File -Requires: %{name}-common = %{version}-%{release} - -%description plugin-keys_curl -GnuPG 2 plugin for allow talk to a HTTP(S)/FTP(S) keyserver. - -%description plugin-keys_curl -l pl.UTF-8 -Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy -HTTP(S)/FTP(S). - -%package plugin-keys_finger -Summary: GnuPG 2 plugin for allow talk to a FINGER keyserver -Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy FINGER -Group: Applications/File -Requires: %{name}-common = %{version}-%{release} - -%description plugin-keys_finger -GnuPG 2 plugin for allow talk to a FINGER keyserver. - -%description plugin-keys_finger -l pl.UTF-8 -Wtyczka 2 GnuPG pozwalająca komunikować się z serwerem kluczy FINGER. - -%package plugin-keys_hkp -Summary: GnuPG 2 plugin for allow talk to a HKP keyserver -Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy HKP -Group: Applications/File -Requires: %{name}-common = %{version}-%{release} - -%description plugin-keys_hkp -GnuPG 2 plugin for allow talk to a HKP keyserver. - -%description plugin-keys_hkp -l pl.UTF-8 -Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy HKP. - -%package plugin-keys_ldap -Summary: GnuPG 2 plugin for allow talk to a LDAP keyserver -Summary(pl.UTF-8): Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy LDAP -Group: Applications/File -Requires: %{name}-common = %{version}-%{release} - -%description plugin-keys_ldap -GnuPG 2 plugin for allow talk to a LDAP keyserver. - -%description plugin-keys_ldap -l pl.UTF-8 -Wtyczka GnuPG 2 pozwalająca komunikować się z serwerem kluczy LDAP. - %package -n gnupg-agent Summary: GnuPG extension - agent Summary(pl.UTF-8): Rozszerzenie GnuPG - agent Group: Applications/File Requires: %{name}-common = %{version}-%{release} -Requires: pinentry +Requires: pinentry >= 0.7.5-2 Obsoletes: newpg %description -n gnupg-agent @@ -173,31 +147,62 @@ GnuPG extension - S/MIME support. %description -n gnupg-smime -l pl.UTF-8 Rozszerzenie GnuPG - obsługa S/MIME. +%package -n dirmngr +Summary: X509/LDAP certificate and revocation list client +Summary(pl.UTF-8): Klient certyfikatów i list anulujących X509/LDAP +Group: Applications +Requires: %{name}-common = %{version}-%{release} + +%description -n dirmngr +DirMngr is a client for managing and downloading certificate +revocation lists (CRLs) for X509 certificates and for downloading the +certificates themselves. DirMngr is usually invoked by gpgsm and in +general not used directly. + +%description -n dirmngr -l pl.UTF-8 +DirMngr to klient do zarządzania i pobierania list anulujących +certyfikaty (CRLs - certificate revocation lists) dla certyfikatów +X509 oraz do pobierania samych certyfikatów. DirMngr jest zwykle +wywoływany przez gpgsm i nie używany bezpośrednio. + %prep %setup -q -n gnupg-%{version} %patch0 -p1 %patch1 -p1 -%patch2 -p1 -%{!?with_tests:%patch3 -p1} - -rm -f po/stamp-po +%{!?with_tests:%patch2 -p1} +#%patch3 -p1 -sed -i -e 's#gl_AC_TYPE_LONG_LONG#AC_TYPE_LONG_LONG_INT#g' gl/m4/allocsa.m4 +%{__rm} po/stamp-po %build %{__gettextize} -%{__aclocal} -I m4 -I gl/m4 +%{__aclocal} -I m4 %{__autoconf} %{__autoheader} %{__automake} +if (grep -q ^development_version=yes configure); then + echo "configure incorrectly rebuild with messed up development status and likely version and revision." >&2 + echo "Consider fixing nogit.patch" >&2 + exit 1 +fi + %configure \ - %{!?with_pth:--disable-threads} \ - --enable-gpg \ + --libexecdir=%{pkglibexecdir} \ + %{!?with_dirmngr:--disable-dirmngr} \ + --enable-g13 \ + %{!?with_default_gpg:--enable-gpg-is-gpg2} \ + %{?with_gnutls:--disable-ntbtls} \ + %{?with_selinux:--enable-selinux-support} \ --enable-symcryptrun \ + --enable-wks-tools \ --with-capabilities \ + --with-pinentry-pgm=%{_bindir}/pinentry \ --with-mailprog=/usr/lib/sendmail -%{__make} -j1 +# required for info rebuild +%{__make} -C doc defs.inc + +%{__make} %install rm -rf $RPM_BUILD_ROOT @@ -209,20 +214,25 @@ rm -rf $RPM_BUILD_ROOT install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/profile.d/gnupg-agent.sh install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/gnupg-agent.sh -mv ChangeLog main-ChangeLog || : -find . -name ChangeLog |awk '{src=$0; dst=$0;sub("^./","",dst);gsub("/","-",dst); print "cp " src " " dst}'|sh +%if %{without dirmngr} +%{__rm} $RPM_BUILD_ROOT%{_mandir}/{man1/dirmngr-client.1,man8/dirmngr.8} +%endif + +%{__rm} -f $RPM_BUILD_ROOT%{_datadir}/info/dir + +# files useful for users packaged as %doc +%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/gnupg %find_lang gnupg2 -rm -f $RPM_BUILD_ROOT%{_datadir}/info/dir %clean rm -rf $RPM_BUILD_ROOT -%post -[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1 +%post common -p /sbin/postshell +-/usr/sbin/fix-info-dir -c %{_infodir} -%postun -[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1 +%postun common -p /sbin/postshell +-/usr/sbin/fix-info-dir -c %{_infodir} %triggerpostun -n gnupg-agent -- gnupg-agent < 1.9.16-2 %banner gnupg-agent-1.9.16-2 << EOF @@ -232,70 +242,64 @@ EOF %files %defattr(644,root,root,755) -%doc g10-ChangeLog g10/options.skel +%if %{with default_gpg} +%attr(755,root,root) %{_bindir}/gpg +%attr(755,root,root) %{_bindir}/gpgv +%{_mandir}/man1/gpg.1* +%{_mandir}/man1/gpgv.1* +%else %attr(755,root,root) %{_bindir}/gpg2 %attr(755,root,root) %{_bindir}/gpgv2 %{_mandir}/man1/gpg2.1* %{_mandir}/man1/gpgv2.1* +%endif %files common -f gnupg2.lang %defattr(644,root,root,755) -%doc AUTHORS main-ChangeLog NEWS README THANKS TODO -%doc jnlib-ChangeLog m4-ChangeLog po-ChangeLog scripts-ChangeLog common-ChangeLog kbx-ChangeLog tools-ChangeLog doc-ChangeLog +%doc AUTHORS ChangeLog ChangeLog-2011 NEWS README THANKS TODO doc/{DETAILS,FAQ,KEYSERVER,OpenPGP} doc/examples +%attr(755,root,root) %{_bindir}/g13 %attr(755,root,root) %{_bindir}/gpg-connect-agent %attr(755,root,root) %{_bindir}/gpgconf -%attr(755,root,root) %{_bindir}/gpgkey2ssh %attr(755,root,root) %{_bindir}/gpgparsemail +%attr(755,root,root) %{_bindir}/gpgscm +%attr(755,root,root) %{_bindir}/gpgtar %attr(755,root,root) %{_bindir}/kbxutil %attr(755,root,root) %{_bindir}/watchgnupg %attr(755,root,root) %{_sbindir}/addgnupghome %attr(755,root,root) %{_sbindir}/applygnupgdefaults -%dir %{_libexecdir} +%attr(755,root,root) %{_sbindir}/g13-syshelp +%dir %{pkglibexecdir} + %{_datadir}/gnupg %{_mandir}/man1/gpg-connect-agent.1* %{_mandir}/man1/gpgconf.1* %{_mandir}/man1/gpgparsemail.1* +%{_mandir}/man1/gpgtar.1* %{_mandir}/man1/watchgnupg.1* +%{_mandir}/man7/gnupg.7* %{_mandir}/man8/addgnupghome.8* %{_mandir}/man8/applygnupgdefaults.8* -%{_infodir}/*.info* - -%files plugin-keys_curl -%defattr(644,root,root,755) -%attr(755,root,root) %{_libexecdir}/gpg2keys_curl - -%files plugin-keys_finger -%defattr(644,root,root,755) -%attr(755,root,root) %{_libexecdir}/gpg2keys_finger - -%files plugin-keys_hkp -%defattr(644,root,root,755) -%attr(755,root,root) %{_libexecdir}/gpg2keys_hkp - -%files plugin-keys_ldap -%defattr(644,root,root,755) -%attr(755,root,root) %{_libexecdir}/gpg2keys_ldap +%{_infodir}/gnupg.info* %files -n gnupg-smime %defattr(644,root,root,755) -%doc sm-ChangeLog %attr(755,root,root) %{_bindir}/gpgsm -%attr(755,root,root) %{_bindir}/gpgsm-gencert.sh %{_mandir}/man1/gpgsm.1* -%{_mandir}/man1/gpgsm-gencert.sh.1* %files -n gnupg-agent %defattr(644,root,root,755) -%doc agent-ChangeLog scd-ChangeLog %attr(755,root,root) %{_bindir}/gpg-agent -%attr(755,root,root) %{_bindir}/scdaemon +%attr(755,root,root) %{_bindir}/gpg-wks-server %attr(755,root,root) %{_bindir}/symcryptrun -%attr(755,root,root) %{_libexecdir}/gnupg-pcsc-wrapper -%attr(755,root,root) %{_libexecdir}/gpg-check-pattern -%attr(755,root,root) %{_libexecdir}/gpg-protect-tool -%attr(755,root,root) %{_libexecdir}/gpg-preset-passphrase +%attr(755,root,root) %{pkglibexecdir}/gpg-check-pattern +%attr(755,root,root) %{pkglibexecdir}/gpg-protect-tool +%attr(755,root,root) %{pkglibexecdir}/gpg-preset-passphrase +%attr(755,root,root) %{pkglibexecdir}/gpg-wks-client +%attr(755,root,root) %{pkglibexecdir}/scdaemon %{_mandir}/man1/gpg-agent.1* %{_mandir}/man1/gpg-preset-passphrase.1* +%{_mandir}/man1/gpg-wks-client.1* +%{_mandir}/man1/gpg-wks-server.1* %{_mandir}/man1/scdaemon.1* %{_mandir}/man1/symcryptrun.1* @@ -306,3 +310,13 @@ EOF %files -n gnupg-agent-xinitrc %defattr(644,root,root,755) %attr(755,root,root) /etc/X11/xinit/xinitrc.d/gnupg-agent.sh + +%if %{with dirmngr} +%files -n dirmngr +%defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/dirmngr +%attr(755,root,root) %{_bindir}/dirmngr-client +%attr(755,root,root) %{pkglibexecdir}/dirmngr_ldap +%{_mandir}/man1/dirmngr-client.1* +%{_mandir}/man8/dirmngr.8* +%endif