summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2011-04-16 23:56:26 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2011-04-16 23:56:26 +0000
commit96905ff26dd868ff4e6ffcab8ea1e4bae1f55be4 (patch)
tree00600aec5aba312eeea92d3c631c0e857d864d89
parentVersion bump. Drop old patches. (diff)
downloadgentoo-2-96905ff26dd868ff4e6ffcab8ea1e4bae1f55be4.tar.gz
gentoo-2-96905ff26dd868ff4e6ffcab8ea1e4bae1f55be4.tar.bz2
gentoo-2-96905ff26dd868ff4e6ffcab8ea1e4bae1f55be4.zip
Revision bump: patch gpgsm-gencert.sh to actually work; remove openct and pcsc-lite USE flags: smartcard USE flag now enables scdaemon, and usb enables the internal CCID driver; don't depend on a particular implementation since there are multiple options; use EAPI=4 and REQUIRED_USE to block static support with smartcard.
(Portage version: 2.2.0_alpha30/cvs/Linux x86_64)
-rw-r--r--app-crypt/gnupg/ChangeLog13
-rw-r--r--app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch32
-rw-r--r--app-crypt/gnupg/gnupg-2.0.17-r1.ebuild144
-rw-r--r--app-crypt/gnupg/metadata.xml47
4 files changed, 222 insertions, 14 deletions
diff --git a/app-crypt/gnupg/ChangeLog b/app-crypt/gnupg/ChangeLog
index 321f712c5fe7..7cfec0e7b4c6 100644
--- a/app-crypt/gnupg/ChangeLog
+++ b/app-crypt/gnupg/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for app-crypt/gnupg
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/ChangeLog,v 1.411 2011/03/23 20:37:17 xarthisius Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/ChangeLog,v 1.412 2011/04/16 23:56:26 flameeyes Exp $
+
+*gnupg-2.0.17-r1 (16 Apr 2011)
+
+ 16 Apr 2011; Diego E. Pettenò <flameeyes@gentoo.org>
+ +gnupg-2.0.17-r1.ebuild, +files/gnupg-2.0.17-gpgsm-gencert.patch,
+ metadata.xml:
+ Revision bump: patch gpgsm-gencert.sh to actually work; remove openct and
+ pcsc-lite USE flags: smartcard USE flag now enables scdaemon, and usb enables
+ the internal CCID driver; don't depend on a particular implementation since
+ there are multiple options; use EAPI=4 and REQUIRED_USE to block static
+ support with smartcard.
23 Mar 2011; Kacper Kowalik <xarthisius@gentoo.org> gnupg-2.0.17.ebuild:
ppc/ppc64 stable wrt #355265
diff --git a/app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch b/app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch
new file mode 100644
index 000000000000..88a95fac0072
--- /dev/null
+++ b/app-crypt/gnupg/files/gnupg-2.0.17-gpgsm-gencert.patch
@@ -0,0 +1,32 @@
+From c34486a64c223bcbfbb57d9abcf107d684b815b6 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Diego=20Elio=20Petten=C3=B2?= <flameeyes@gmail.com>
+Date: Sun, 17 Apr 2011 01:34:39 +0200
+Subject: [PATCH] gpgsm-gencert.sh: make sure not to abort after creating temp
+ file.
+
+---
+ tools/gpgsm-gencert.sh | 8 ++++----
+ 1 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/tools/gpgsm-gencert.sh b/tools/gpgsm-gencert.sh
+index b209c8e..e7c812f 100755
+--- a/tools/gpgsm-gencert.sh
++++ b/tools/gpgsm-gencert.sh
+@@ -178,10 +178,10 @@ Key-Length: $KEY_LENGTH
+ Key-Usage: $KEY_USAGE
+ Name-DN: $NAME
+ EOF
+-[ -n "$KEY_GRIP" ] && echo "Key-Grip: $KEY_GRIP"
+-[ -n "$EMAIL_ADDRESSES" ] && echo "$EMAIL_ADDRESSES"
+-[ -n "$DNS_ADDRESSES" ] && echo "$DNS_ADDRESSES"
+-[ -n "$URI_ADDRESSES" ] && echo "$URI_ADDRESSES"
++[ -n "$KEY_GRIP" ] && echo "Key-Grip: $KEY_GRIP" || true
++[ -n "$EMAIL_ADDRESSES" ] && echo "$EMAIL_ADDRESSES" || true
++[ -n "$DNS_ADDRESSES" ] && echo "$DNS_ADDRESSES" || true
++[ -n "$URI_ADDRESSES" ] && echo "$URI_ADDRESSES" || true
+ ) > "$file_parameter"
+
+
+--
+1.7.5.rc1
+
diff --git a/app-crypt/gnupg/gnupg-2.0.17-r1.ebuild b/app-crypt/gnupg/gnupg-2.0.17-r1.ebuild
new file mode 100644
index 000000000000..5194ce7728fa
--- /dev/null
+++ b/app-crypt/gnupg/gnupg-2.0.17-r1.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/gnupg-2.0.17-r1.ebuild,v 1.1 2011/04/16 23:56:26 flameeyes Exp $
+
+EAPI="4"
+
+inherit flag-o-matic toolchain-funcs
+
+DESCRIPTION="The GNU Privacy Guard, a GPL pgp replacement"
+HOMEPAGE="http://www.gnupg.org/"
+SRC_URI="mirror://gnupg/gnupg/${P}.tar.bz2"
+# SRC_URI="ftp://ftp.gnupg.org/gcrypt/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~x64-freebsd ~x86-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="adns bzip2 caps doc ldap nls static selinux smartcard usb"
+
+COMMON_DEPEND_LIBS="
+ >=dev-libs/libassuan-2
+ >=dev-libs/libgcrypt-1.4
+ >=dev-libs/libgpg-error-1.7
+ >=dev-libs/libksba-1.0.7
+ >=dev-libs/pth-1.3.7
+ >=net-misc/curl-7.10
+ adns? ( >=net-libs/adns-1.4 )
+ bzip2? ( app-arch/bzip2 )
+ smartcard? ( usb? ( =virtual/libusb-0* ) )
+ ldap? ( net-nds/openldap )"
+COMMON_DEPEND_BINS="|| ( app-crypt/pinentry app-crypt/pinentry-qt )"
+
+# Existence of executables is checked during configuration.
+DEPEND="${COMMON_DEPEND_LIBS}
+ ${COMMON_DEPEND_BINS}
+ static? (
+ >=dev-libs/libassuan-2[static-libs]
+ >=dev-libs/libgcrypt-1.4[static-libs]
+ >=dev-libs/libgpg-error-1.7[static-libs]
+ >=dev-libs/libksba-1.0.7[static-libs]
+ )
+ nls? ( sys-devel/gettext )
+ doc? ( sys-apps/texinfo )"
+
+RDEPEND="!static? ( ${COMMON_DEPEND_LIBS} )
+ ${COMMON_DEPEND_BINS}
+ virtual/mta
+ !app-crypt/gpg-agent
+ !<=app-crypt/gnupg-2.0.1
+ selinux? ( sec-policy/selinux-gnupg )
+ nls? ( virtual/libintl )"
+
+REQUIRED_USE="smartcard? ( !static )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gpgsm-gencert.patch
+}
+
+src_configure() {
+ local myconf=
+
+ # 'USE=static' support was requested:
+ # gnupg1: bug #29299
+ # gnupg2: bug #159623
+ use static && append-ldflags -static
+
+ if use smartcard; then
+ myconf+=" --enable-scdaemon $(use_enable usb ccid-driver)"
+ else
+ myconf+=" --disable-scdaemon"
+ fi
+
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --enable-gpg \
+ --enable-gpgsm \
+ --enable-agent \
+ ${myconf} \
+ $(use_with adns) \
+ $(use_enable bzip2) \
+ $(use_enable !elibc_SunOS symcryptrun) \
+ $(use_enable nls) \
+ $(use_enable ldap) \
+ $(use_with caps capabilities) \
+ CC_FOR_BUILD="$(tc-getBUILD_CC)"
+}
+
+src_compile() {
+ emake || die "emake failed"
+
+ if use doc; then
+ cd doc
+ emake html || die "emake html failed"
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ emake DESTDIR="${D}" -f doc/Makefile uninstall-nobase_dist_docDATA || die
+ rm -r "${ED}usr/share/gnupg/help"* || die
+
+ dodoc ChangeLog NEWS README THANKS TODO VERSION doc/FAQ doc/DETAILS \
+ doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER doc/help* || die "dodoc failed"
+
+ dosym gpg2 /usr/bin/gpg || die
+ dosym gpgv2 /usr/bin/gpgv || die
+ dosym gpg2keys_hkp /usr/libexec/gpgkeys_hkp || die
+ dosym gpg2keys_finger /usr/libexec/gpgkeys_finger || die
+ dosym gpg2keys_curl /usr/libexec/gpgkeys_curl || die
+ if use ldap; then
+ dosym gpg2keys_ldap /usr/libexec/gpgkeys_ldap || die
+ fi
+ echo ".so man1/gpg2.1" > "${ED}usr/share/man/man1/gpg.1"
+ echo ".so man1/gpgv2.1" > "${ED}usr/share/man/man1/gpgv.1"
+
+ dodir /etc/env.d || die
+ echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >>"${ED}etc/env.d/30gnupg"
+
+ if use doc; then
+ dohtml doc/gnupg.html/* doc/*.png || die "dohtml failed"
+ fi
+}
+
+pkg_postinst() {
+ elog "If you wish to view images emerge:"
+ elog "media-gfx/xloadimage, media-gfx/xli or any other viewer"
+ elog "Remember to use photo-viewer option in configuration file to activate"
+ elog "the right viewer."
+ elog
+ if use smartcard; then
+ elog "To use your OpenPGP smartcard (or token) with GnuPG you need one of"
+ use usb && elog " - a CCID-compatible reader, used directly through dev-libs/libusb;"
+ elog " - sys-apps/pcsc-lite and a compatible reader device;"
+ elog " - dev-libs/openct and a compatible reader device;"
+ elog " - a reader device and drivers exporting either PC/SC or CT-API interfaces."
+ elog ""
+ elog "General hint: you probably want to try installing sys-apps/pcsc-lite and"
+ elog "app-crypt/ccid first."
+ fi
+
+ ewarn "Please remember to restart gpg-agent if a different version"
+ ewarn "of the agent is currently used. If you are unsure of the gpg"
+ ewarn "agent you are using please run 'killall gpg-agent',"
+ ewarn "and to start a fresh daemon just run 'gpg-agent --daemon'."
+}
diff --git a/app-crypt/gnupg/metadata.xml b/app-crypt/gnupg/metadata.xml
index 4123a58ff39f..59580940df2c 100644
--- a/app-crypt/gnupg/metadata.xml
+++ b/app-crypt/gnupg/metadata.xml
@@ -1,17 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>crypto</herd>
-<maintainer>
- <email>crypto@gentoo.org</email>
- <name>Crypto Herd</name>
-</maintainer>
-<longdescription>
-GnuPG is a complete and free replacement for PGP. Because it does not use the patented IDEA algorithm, it can be used without any restrictions. GnuPG is a RFC2440 (OpenPGP) compliant application.
-</longdescription>
-<use>
- <flag name='idea'>Use the patented IDEA algorithm</flag>
- <flag name='openct'>build using <pkg>dev-libs/openct</pkg> compat</flag>
- <flag name='pcsc-lite'>build with <pkg>sys-apps/pcsc-lite</pkg></flag>
-</use>
+ <herd>crypto</herd>
+ <maintainer>
+ <email>crypto@gentoo.org</email>
+ <name>Crypto Herd</name>
+ </maintainer>
+ <longdescription>
+ GnuPG is a complete and free replacement for PGP. Because it does
+ not use the patented IDEA algorithm, it can be used without any
+ restrictions. GnuPG is a RFC2440 (OpenPGP) compliant application.
+ </longdescription>
+ <use>
+ <flag name='idea'>Use the patented IDEA algorithm</flag>
+ <flag name='openct'>
+ Bring in <pkg>dev-libs/openct</pkg> as a dependency; enable
+ scdaemon.
+ </flag>
+ <flag name='pcsc-lite'>
+ Bring in <pkg>sys-apps/pcsc-lite</pkg> as a dependency; enable
+ scdaemon.
+ </flag>
+ <flag name='smartcard' restrict='&lt;app-crypt/gnupg-2.0.17-r1'>
+ Bring in <pkg>dev-libs/libusb</pkg> as a dependency; enable
+ scdaemon.
+ </flag>
+ <flag name='smartcard' restrict='&gt;=app-crypt/gnupg-2.0.17-r1'>
+ Build scdaemon software. Enables usage of OpenPGP cards. For
+ other type of smartcards, try
+ <pkg>app-crypt/gnupg-pkcs11-scd</pkg>.
+ </flag>
+ <flag name='usb' restrict='&gt;=app-crypt/gnupg-2.0.17-r1'>
+ Build direct CCID access for scdaemon; requires
+ <pkg>dev-libs/libusb</pkg>.
+ </flag>
+ </use>
</pkgmetadata>