blob: 1ca58f9410d38f32af1117b4f6a7d7103ed76458 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-crypt/gnupg/gnupg-1.4.13.ebuild,v 1.4 2013/01/02 11:21:30 jer Exp $
EAPI="4"
inherit eutils flag-o-matic toolchain-funcs
ECCVER="0.2.0"
ECCVER_GNUPG="1.4.9"
ECC_PATCH="${PN}-${ECCVER_GNUPG}-ecc${ECCVER}.diff"
MY_P=${P/_/}
DESCRIPTION="The GNU Privacy Guard, a GPL pgp replacement"
HOMEPAGE="http://www.gnupg.org/"
SRC_URI="mirror://gnupg/gnupg/${P}.tar.bz2"
# ecc? ( http://www.calcurco.cat/eccGnuPG/src/${ECC_PATCH}.bz2 )
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x86-macos"
IUSE="bzip2 curl ldap nls readline selinux smartcard static usb zlib linguas_ru"
#IUSE="bzip2 bindist curl ecc ldap nls readline selinux smartcard static usb zlib linguas_ru"
COMMON_DEPEND="
ldap? ( net-nds/openldap )
bzip2? ( app-arch/bzip2 )
zlib? ( sys-libs/zlib )
curl? ( net-misc/curl )
virtual/mta
readline? ( sys-libs/readline )
smartcard? ( =virtual/libusb-0* )
usb? ( =virtual/libusb-0* )"
RDEPEND="!static? ( ${COMMON_DEPEND} )
selinux? ( sec-policy/selinux-gpg )
nls? ( virtual/libintl )"
DEPEND="${COMMON_DEPEND}
dev-lang/perl
nls? ( sys-devel/gettext )"
S="${WORKDIR}/${MY_P}"
src_prepare() {
# if use ecc; then
# if use bindist; then
# einfo "Skipping ECC patch to comply with binary distribution (bug #148907)."
# else
# sed -i \
# "s/- VERSION='${ECCVER_GNUPG}'/- VERSION='${PV}'/" \
# "${WORKDIR}/${ECC_PATCH}"
# sed -i \
# "s/+ VERSION='${ECCVER_GNUPG}-ecc${ECCVER}'/+ VERSION='${PV}-ecc${ECCVER}'/" \
# "${WORKDIR}/${ECC_PATCH}"
#
# epatch "${WORKDIR}/${ECC_PATCH}"
# fi
# fi
# Install RU man page in right location
sed -e "/^man_MANS =/s/ gpg\.ru\.1//" -i doc/Makefile.in || die "sed doc/Makefile.in failed"
# Fix PIC definitions
sed -i -e 's:PIC:__PIC__:' mpi/i386/mpih-{add,sub}1.S intl/relocatable.c \
|| die "sed PIC failed"
sed -i -e 's:if PIC:ifdef __PIC__:' mpi/sparc32v8/mpih-mul{1,2}.S || \
die "sed PIC failed"
}
src_configure() {
# Certain sparc32 machines seem to have trouble building correctly with
# -mcpu enabled. While this is not a gnupg problem, it is a temporary
# fix until the gcc problem can be tracked down.
if [ "${ARCH}" == "sparc" ] && [ "${PROFILE_ARCH}" == "sparc" ]; then
filter-flags -mcpu=supersparc -mcpu=v8 -mcpu=v7
fi
# 'USE=static' support was requested in #29299
use static && append-ldflags -static
econf \
--docdir="${EPREFIX}/usr/share/doc/${PF}" \
$(use_enable ldap) \
--enable-mailto \
--enable-hkp \
--enable-finger \
$(use_with !zlib included-zlib) \
$(use_with curl libcurl /usr) \
$(use_enable nls) \
$(use_enable bzip2) \
$(use_enable smartcard card-support) \
$(use_enable selinux selinux-support) \
--without-capabilities \
$(use_with readline) \
$(use_with usb libusb /usr) \
--enable-static-rnd=linux \
--libexecdir="${EPREFIX}/usr/libexec" \
--enable-noexecstack \
CC_FOR_BUILD=$(tc-getBUILD_CC) \
${myconf}
}
src_install() {
emake DESTDIR="${D}" install
# keep the documentation in /usr/share/doc/...
rm -rf "${ED}usr/share/gnupg/FAQ" "${ED}usr/share/gnupg/faq.html" || die
dodoc AUTHORS BUGS ChangeLog NEWS PROJECTS README THANKS \
TODO VERSION doc/{FAQ,HACKING,DETAILS,OpenPGP}
exeinto /usr/libexec/gnupg
doexe tools/make-dns-cert
# install RU documentation in right location
if use linguas_ru; then
cp doc/gpg.ru.1 "${T}/gpg.1" || die
doman -i18n=ru "${T}/gpg.1"
fi
}
pkg_postinst() {
ewarn "If you are using a non-Linux system, or a kernel older than 2.6.9,"
ewarn "you MUST make the gpg binary setuid."
echo
# if use !bindist && use ecc; then
# ewarn
# ewarn "The elliptical curves patch is experimental"
# ewarn "Further info available at http://alumnes.eps.udl.es/%7Ed4372211/index.en.html"
# fi
elog
elog "See http://www.gentoo.org/doc/en/gnupg-user.xml for documentation on gnupg"
elog
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 the right viewer"
}
|