1 |
commit: e63fa46a8e884034a17bd63661331b132a407f09 |
2 |
Author: Mikle Kolyada <zlogene <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Jun 12 18:33:48 2021 +0000 |
4 |
Commit: Mikle Kolyada <zlogene <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Jun 12 18:34:16 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e63fa46a |
7 |
|
8 |
app-crypt/gnupg: Version bump (v2.2.28) |
9 |
|
10 |
Package-Manager: Portage-3.0.18, Repoman-3.0.2 |
11 |
Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org> |
12 |
|
13 |
app-crypt/gnupg/Manifest | 1 + |
14 |
app-crypt/gnupg/gnupg-2.2.28.ebuild | 160 ++++++++++++++++++++++++++++++++++++ |
15 |
2 files changed, 161 insertions(+) |
16 |
|
17 |
diff --git a/app-crypt/gnupg/Manifest b/app-crypt/gnupg/Manifest |
18 |
index fd650f9f011..dbeb3c42d90 100644 |
19 |
--- a/app-crypt/gnupg/Manifest |
20 |
+++ b/app-crypt/gnupg/Manifest |
21 |
@@ -1,3 +1,4 @@ |
22 |
DIST gnupg-2.2.16-scdaemon_shared-access.patch 2586 BLAKE2B 42fd5482c4e86751ce62836125997c2295c44bc5db0671a06460fd306b2ed93f290fb898fc1b1e463a863eddf9ab5f99ea3c90a55499ef45ca1ed6edf2854663 SHA512 38abaa4200114ae6b6f220fabc0a84a056761949c97bd0564557f4411a299b9a1939893555c27e26da2d8e8da4bc97a298fa7e68f1e80fe99c3f88cc329eaa84 |
23 |
DIST gnupg-2.2.27.tar.bz2 7191555 BLAKE2B d652aad382cf07cc458b29ff82718edd47457d8236dcbeee51f22d88503be141f009e9ea45b6dafe614115d9558fe371509579e58ce17a5f04540a31aa406ea3 SHA512 cf336962116c9c08ac80b1299654b94948033ef51d6d5e7f54c2f07bbf7d92c7b0bddb606ceee2cdd837063f519b8d59af5a82816b840a0fc47d90c07b0e95ab |
24 |
+DIST gnupg-2.2.28.tar.bz2 7218833 BLAKE2B 61e90a39f4572f41da687c6a6983a897eec1784d60b6ff6579f895c07214d273ad2a25a1a5cb4c26210028afee32c58a8fb0752683a0ab9a5f8a73438492b80b SHA512 d79594fac93773639fc5b95cdfad1003829879e1bc9c415261bccfc64bd56cbeec5d8571d1468e4e3fd982c546e3b9cfc2161412d544717f48eabe3a360caae8 |
25 |
DIST gnupg-2.3.1.tar.bz2 7570431 BLAKE2B f7c7d3246b0807798917ecd711c74ea7c52dd24530106765a1f4a6e9af098c9a99c5d0f44fc2c253d013b11f862fccf0b1630593d07b2e1950a91b3473c671c1 SHA512 d2cc82c1b47bbd79acd6ef787c01684fb084b1c5507bbca6cf7ca8834ed978ae7a44c01d652cc3afbd70e2906583c8701aebc8d9fd3fc5e0401769ad4cd46af1 |
26 |
|
27 |
diff --git a/app-crypt/gnupg/gnupg-2.2.28.ebuild b/app-crypt/gnupg/gnupg-2.2.28.ebuild |
28 |
new file mode 100644 |
29 |
index 00000000000..f03938727e3 |
30 |
--- /dev/null |
31 |
+++ b/app-crypt/gnupg/gnupg-2.2.28.ebuild |
32 |
@@ -0,0 +1,160 @@ |
33 |
+# Copyright 1999-2021 Gentoo Authors |
34 |
+# Distributed under the terms of the GNU General Public License v2 |
35 |
+ |
36 |
+EAPI=7 |
37 |
+ |
38 |
+inherit flag-o-matic systemd toolchain-funcs |
39 |
+ |
40 |
+MY_P="${P/_/-}" |
41 |
+ |
42 |
+DESCRIPTION="The GNU Privacy Guard, a GPL OpenPGP implementation" |
43 |
+HOMEPAGE="https://gnupg.org/" |
44 |
+SRC_URI="mirror://gnupg/gnupg/${MY_P}.tar.bz2 |
45 |
+ scd-shared-access? ( https://raw.githubusercontent.com/GPGTools/MacGPG2/5ca182f54b7b6cd635d1c0a4713953834489fdd9/patches/gnupg/scdaemon_shared-access.patch -> ${PN}-2.2.16-scdaemon_shared-access.patch )" |
46 |
+ |
47 |
+LICENSE="GPL-3" |
48 |
+SLOT="0" |
49 |
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" |
50 |
+IUSE="bzip2 doc ldap nls readline scd-shared-access selinux +smartcard ssl tofu tools usb user-socket wks-server" |
51 |
+ |
52 |
+# Existence of executables is checked during configuration. |
53 |
+DEPEND=">=dev-libs/libassuan-2.5.0 |
54 |
+ >=dev-libs/libgcrypt-1.8.0 |
55 |
+ >=dev-libs/libgpg-error-1.29 |
56 |
+ >=dev-libs/libksba-1.3.4 |
57 |
+ >=dev-libs/npth-1.2 |
58 |
+ >=net-misc/curl-7.10 |
59 |
+ bzip2? ( app-arch/bzip2 ) |
60 |
+ ldap? ( net-nds/openldap ) |
61 |
+ readline? ( sys-libs/readline:0= ) |
62 |
+ smartcard? ( usb? ( virtual/libusb:1 ) ) |
63 |
+ ssl? ( >=net-libs/gnutls-3.0:0= ) |
64 |
+ sys-libs/zlib |
65 |
+ tofu? ( >=dev-db/sqlite-3.7 )" |
66 |
+ |
67 |
+RDEPEND="${DEPEND} |
68 |
+ app-crypt/pinentry |
69 |
+ nls? ( virtual/libintl ) |
70 |
+ selinux? ( sec-policy/selinux-gpg ) |
71 |
+ wks-server? ( virtual/mta )" |
72 |
+ |
73 |
+BDEPEND="virtual/pkgconfig |
74 |
+ doc? ( sys-apps/texinfo ) |
75 |
+ nls? ( sys-devel/gettext )" |
76 |
+ |
77 |
+S="${WORKDIR}/${MY_P}" |
78 |
+ |
79 |
+DOCS=( |
80 |
+ ChangeLog NEWS README THANKS TODO VERSION |
81 |
+ doc/FAQ doc/DETAILS doc/HACKING doc/TRANSLATE doc/OpenPGP doc/KEYSERVER |
82 |
+) |
83 |
+ |
84 |
+PATCHES=( |
85 |
+ "${FILESDIR}/${PN}-2.1.20-gpgscm-Use-shorter-socket-path-lengts-to-improve-tes.patch" |
86 |
+) |
87 |
+ |
88 |
+src_prepare() { |
89 |
+ default |
90 |
+ |
91 |
+ # Made optional because it's a non-official patch |
92 |
+ if use scd-shared-access ; then |
93 |
+ # Patch taken from |
94 |
+ # https://github.com/GPGTools/MacGPG2/tree/dev/patches/gnupg |
95 |
+ eapply "${DISTDIR}/${PN}-2.2.16-scdaemon_shared-access.patch" |
96 |
+ fi |
97 |
+ |
98 |
+ # Inject SSH_AUTH_SOCK into user's sessions after enabling gpg-agent-ssh.socket in systemctl --user mode, |
99 |
+ # idea borrowed from libdbus, see |
100 |
+ # https://gitlab.freedesktop.org/dbus/dbus/-/blob/master/bus/systemd-user/dbus.socket.in#L6 |
101 |
+ # |
102 |
+ # This cannot be upstreamed, as it requires determining the exact prefix of 'systemctl', |
103 |
+ # which in turn requires discovery in Autoconf, something that upstream deeply resents. |
104 |
+ sed -e "/DirectoryMode=/a ExecStartPost=-${EPREFIX}/bin/systemctl --user set-environment SSH_AUTH_SOCK=%t/gnupg/S.gpg-agent.ssh" \ |
105 |
+ -i doc/examples/systemd-user/gpg-agent-ssh.socket || die |
106 |
+} |
107 |
+ |
108 |
+src_configure() { |
109 |
+ local myconf=( |
110 |
+ $(use_enable bzip2) |
111 |
+ $(use_enable nls) |
112 |
+ $(use_enable smartcard scdaemon) |
113 |
+ $(use_enable ssl gnutls) |
114 |
+ $(use_enable tofu) |
115 |
+ $(use smartcard && use_enable usb ccid-driver || echo '--disable-ccid-driver') |
116 |
+ $(use_enable wks-server wks-tools) |
117 |
+ $(use_with ldap) |
118 |
+ $(use_with readline) |
119 |
+ --with-mailprog=/usr/libexec/sendmail |
120 |
+ --disable-ntbtls |
121 |
+ --enable-all-tests |
122 |
+ --enable-gpg |
123 |
+ --enable-gpgsm |
124 |
+ --enable-large-secmem |
125 |
+ CC_FOR_BUILD="$(tc-getBUILD_CC)" |
126 |
+ GPG_ERROR_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpg-error-config" |
127 |
+ KSBA_CONFIG="${ESYSROOT}/usr/bin/ksba-config" |
128 |
+ LIBASSUAN_CONFIG="${ESYSROOT}/usr/bin/libassuan-config" |
129 |
+ LIBGCRYPT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-libgcrypt-config" |
130 |
+ NPTH_CONFIG="${ESYSROOT}/usr/bin/npth-config" |
131 |
+ $("${S}/configure" --help | grep -o -- '--without-.*-prefix') |
132 |
+ ) |
133 |
+ |
134 |
+ if use prefix && use usb; then |
135 |
+ # bug #649598 |
136 |
+ append-cppflags -I"${EPREFIX}/usr/include/libusb-1.0" |
137 |
+ fi |
138 |
+ |
139 |
+ #bug 663142 |
140 |
+ if use user-socket; then |
141 |
+ myconf+=( --enable-run-gnupg-user-socket ) |
142 |
+ fi |
143 |
+ |
144 |
+ # glib fails and picks up clang's internal stdint.h causing weird errors |
145 |
+ [[ ${CC} == *clang ]] && \ |
146 |
+ export gl_cv_absolute_stdint_h=/usr/include/stdint.h |
147 |
+ |
148 |
+ # Hardcode mailprog to /usr/libexec/sendmail even if it does not exist. |
149 |
+ # As of GnuPG 2.3, the mailprog substitution is used for the binary called |
150 |
+ # by wks-client & wks-server; and if it's autodetected but not not exist at |
151 |
+ # build time, then then 'gpg-wks-client --send' functionality will not |
152 |
+ # work. This has an unwanted side-effect in stage3 builds: there was a |
153 |
+ # [R]DEPEND on virtual/mta, which also brought in virtual/logger, bloating |
154 |
+ # the build where the install guide previously make the user chose the |
155 |
+ # logger & mta early in the install. |
156 |
+ |
157 |
+ econf "${myconf[@]}" |
158 |
+} |
159 |
+ |
160 |
+src_compile() { |
161 |
+ default |
162 |
+ |
163 |
+ use doc && emake -C doc html |
164 |
+} |
165 |
+ |
166 |
+src_test() { |
167 |
+ #Bug: 638574 |
168 |
+ use tofu && export TESTFLAGS=--parallel |
169 |
+ default |
170 |
+} |
171 |
+ |
172 |
+src_install() { |
173 |
+ default |
174 |
+ |
175 |
+ use tools && |
176 |
+ dobin \ |
177 |
+ tools/{convert-from-106,gpg-check-pattern} \ |
178 |
+ tools/{gpg-zip,gpgconf,gpgsplit,lspgpot,mail-signed-keys} \ |
179 |
+ tools/make-dns-cert |
180 |
+ |
181 |
+ dosym gpg /usr/bin/gpg2 |
182 |
+ dosym gpgv /usr/bin/gpgv2 |
183 |
+ echo ".so man1/gpg.1" > "${ED}"/usr/share/man/man1/gpg2.1 || die |
184 |
+ echo ".so man1/gpgv.1" > "${ED}"/usr/share/man/man1/gpgv2.1 || die |
185 |
+ |
186 |
+ dodir /etc/env.d |
187 |
+ echo "CONFIG_PROTECT=/usr/share/gnupg/qualified.txt" >> "${ED}"/etc/env.d/30gnupg || die |
188 |
+ |
189 |
+ use doc && dodoc doc/gnupg.html/* doc/*.png |
190 |
+ |
191 |
+ systemd_douserunit doc/examples/systemd-user/*.{service,socket} |
192 |
+} |