summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Strogin <steils@gentoo.org>2019-07-27 02:30:43 +0300
committerStefan Strogin <steils@gentoo.org>2019-07-27 03:21:56 +0300
commit0d2ffd3ca0142f69bf52e19f151ae7d2f6c8e707 (patch)
tree64039d856395e6ba4b770379b8f49900c3fa6573 /app-crypt/pesign
parentarm64/use.mask: unmask some more stuff (diff)
downloadgentoo-0d2ffd3ca0142f69bf52e19f151ae7d2f6c8e707.tar.gz
gentoo-0d2ffd3ca0142f69bf52e19f151ae7d2f6c8e707.tar.bz2
gentoo-0d2ffd3ca0142f69bf52e19f151ae7d2f6c8e707.zip
app-crypt/pesign: bump version to 113
Closes: https://bugs.gentoo.org/689590 Package-Manager: Portage-2.3.69, Repoman-2.3.16 Signed-off-by: Stefan Strogin <steils@gentoo.org>
Diffstat (limited to 'app-crypt/pesign')
-rw-r--r--app-crypt/pesign/Manifest1
-rw-r--r--app-crypt/pesign/files/pesign-113-nss.patch47
-rw-r--r--app-crypt/pesign/pesign-113.ebuild52
3 files changed, 100 insertions, 0 deletions
diff --git a/app-crypt/pesign/Manifest b/app-crypt/pesign/Manifest
index 51dcd1c94d69..0dca49cdc756 100644
--- a/app-crypt/pesign/Manifest
+++ b/app-crypt/pesign/Manifest
@@ -1 +1,2 @@
DIST pesign-0.112.tar.gz 107632 BLAKE2B 737b75aec7efa9f41dbdb509405dede914cd5aa563572f0d2ede96a321f4a669170c696c7bd93bad1a5c1a6f2c65715b66317544fa6fc55d6b7f85436d778e8a SHA512 9a0cd266f973fbd7bbbd23939d0be3c34dbccd9ab20941bf967ca1b18aa5bf5d2c41cdef0799399e09e7b0fc59a0b34bc660afb6da292eb1c127db2893362018
+DIST pesign-113.tar.gz 124618 BLAKE2B 36cdface6ecdf9003251da3058b21b2ee8e94eb655e47a8668b38c4ea576d990a71860952eea277d5e029bb007039c8e3ded9918e89d47f6db404423acbd1cc7 SHA512 e71dc90c2ab8085d1b000c0d2cf9cb00ddaed1ea1393db75c2d19a96f1b1c188a26b76850533ba97ec254a3b48db6b07a69b597c329ac891e64422780a358c24
diff --git a/app-crypt/pesign/files/pesign-113-nss.patch b/app-crypt/pesign/files/pesign-113-nss.patch
new file mode 100644
index 000000000000..5a227a87268b
--- /dev/null
+++ b/app-crypt/pesign/files/pesign-113-nss.patch
@@ -0,0 +1,47 @@
+From b535d1ac5cbcdf18a97d97a92581e38080d9e521 Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Tue, 14 May 2019 11:28:38 -0400
+Subject: [PATCH] efikeygen: Fix the build with nss 3.44
+
+NSS 3.44 adds some certificate types, which changes a type and makes
+some encoding stuff weird. As a result, we get:
+
+gcc8 -I/wrkdirs/usr/ports/sysutils/pesign/work/pesign-0.110/include -O2 -pipe -fstack-protector-strong -Wl,-rpath=/usr/local/lib/gcc8 -isystem /usr/local/include -fno-strict-aliasing -g -O0 -g -O0 -Wall -fshort-wchar -fno-strict-aliasing -fno-merge-constants --std=gnu99 -D_GNU_SOURCE -Wno-unused-result -Wno-unused-function -I../include/ -I/usr/local/include/nss -I/usr/local/include/nss/nss -I/usr/local/include/nspr -Werror -fPIC -isystem /usr/local/include -DCONFIG_amd64 -DCONFIG_amd64 -c efikeygen.c -o efikeygen.o
+In file included from /usr/local/include/nss/nss/cert.h:22,
+ from efikeygen.c:39:
+efikeygen.c: In function 'add_cert_type':
+/usr/local/include/nss/nss/certt.h:445:5: error: unsigned conversion from 'int' to 'unsigned char' changes value from '496' to '240' [-Werror=overflow]
+ (NS_CERT_TYPE_SSL_CLIENT | NS_CERT_TYPE_SSL_SERVER | NS_CERT_TYPE_EMAIL | \
+ ^
+efikeygen.c:208:23: note: in expansion of macro 'NS_CERT_TYPE_APP'
+ unsigned char type = NS_CERT_TYPE_APP;
+ ^~~~~~~~~~~~~~~~
+cc1: all warnings being treated as errors
+
+This is fixed by just making it an int.
+
+Fixes github issue #48.
+
+Signed-off-by: Peter Jones <pjones@redhat.com>
+Upstream-Status: Accepted
+[https://github.com/rhboot/pesign/commit/b535d1ac5cbcdf18a97d97a92581e38080d9e521]
+---
+ src/efikeygen.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/efikeygen.c b/src/efikeygen.c
+index ede76ef..2cd953e 100644
+--- a/src/efikeygen.c
++++ b/src/efikeygen.c
+@@ -208,7 +208,7 @@ static int
+ add_cert_type(cms_context *cms, void *extHandle, int is_ca)
+ {
+ SECItem bitStringValue;
+- unsigned char type = NS_CERT_TYPE_APP;
++ int type = NS_CERT_TYPE_APP;
+
+ if (is_ca)
+ type |= NS_CERT_TYPE_SSL_CA |
+--
+2.22.0
+
diff --git a/app-crypt/pesign/pesign-113.ebuild b/app-crypt/pesign/pesign-113.ebuild
new file mode 100644
index 000000000000..40d481c35cc5
--- /dev/null
+++ b/app-crypt/pesign/pesign-113.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Tools for manipulating signed PE-COFF binaries"
+HOMEPAGE="https://github.com/rhboot/pesign"
+SRC_URI="https://github.com/rhboot/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="libressl"
+
+RDEPEND="
+ dev-libs/nspr
+ dev-libs/nss
+ dev-libs/popt
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ sys-apps/util-linux
+ sys-libs/efivar
+"
+DEPEND="${RDEPEND}
+ sys-apps/help2man
+ sys-boot/gnu-efi
+ virtual/pkgconfig
+"
+
+PATCHES=( "${FILESDIR}"/${PN}-113-nss.patch )
+
+src_compile() {
+ emake AR="$(tc-is-gcc && echo "$(tc-getCC)-ar" || tc-getAR)" \
+ ARFLAGS="-cvqs" \
+ AS="$(tc-getAS)" \
+ CC="$(tc-getCC)" \
+ LD="$(tc-getLD)" \
+ OBJCOPY="$(tc-getOBJCOPY)" \
+ PKG_CONFIG="$(tc-getPKG_CONFIG)" \
+ RANLIB="$(tc-getRANLIB)"
+}
+
+src_install() {
+ emake DESTDIR="${ED}" VERSION="${PVR}" install
+ einstalldocs
+
+ # remove some files that don't make sense for Gentoo installs
+ rm -rf "${ED%/}/etc/" "${ED%/}/var/" \
+ "${ED%/}/usr/share/doc/${PF}/COPYING" || die
+}