diff options
Diffstat (limited to 'app-crypt/pesign')
-rw-r--r-- | app-crypt/pesign/Manifest | 4 | ||||
-rw-r--r-- | app-crypt/pesign/files/pesign-0.112-fix-cli-opts.patch | 73 | ||||
-rw-r--r-- | app-crypt/pesign/files/pesign-0.112-fix-initializer.patch | 13 | ||||
-rw-r--r-- | app-crypt/pesign/pesign-0.112.ebuild | 54 |
4 files changed, 144 insertions, 0 deletions
diff --git a/app-crypt/pesign/Manifest b/app-crypt/pesign/Manifest index a87e3928df69..bb28254bf8d3 100644 --- a/app-crypt/pesign/Manifest +++ b/app-crypt/pesign/Manifest @@ -1,4 +1,8 @@ +AUX pesign-0.112-fix-cli-opts.patch 2228 BLAKE2B 6037340b1bc0c659ec2be5358d781b29f0fe755a17e7c17f612ef7c8dc514dc5d5ed2c49121463caa269e01a206a160ec725f7545a004fe10ffc35841f23625a SHA512 62d2ec0059ff518b576b6399a217f47b1f361c41292055b8a7326e81cda30190b4a62dad7dd8150855b2025af1ad25458a2cbbfd3ae89ca6c870067224662695 +AUX pesign-0.112-fix-initializer.patch 388 BLAKE2B e5beacd2503dbde5c6e4ba748c4dc5151747028b3448e91fcb2e52f6e2622ba5f84cb29a816c67979dcf7ab40b9f3d2ea10ff31033027c18b68c863ab2eed86e SHA512 1b76c6dfe7ddc76a2051038894b7e2da72c01ebc05a46d4b6ebc05a092a55d699161e04c4df73d1afb7752e6a138ed8c9c28eda55897c82934ca852be42dae84 AUX pesign-113-nss.patch 2092 BLAKE2B f75730c2ab48f0ff6af4237fc46c535b3ceead357e31a548c28b78648fec7d52a5cc1bc9dfdb9db4e6cf22b7312cc452afb04a3088810140055ae88b55fb2f1d SHA512 7a4ebd4c875cf6678a6d2ca4083eafea552259e2c1692d167d0b948ac73d50244db3feea1c6d7c403e152236421609da5d92cd6405fb3107e1c3933c2f94fece +DIST pesign-0.112.tar.gz 107632 BLAKE2B 737b75aec7efa9f41dbdb509405dede914cd5aa563572f0d2ede96a321f4a669170c696c7bd93bad1a5c1a6f2c65715b66317544fa6fc55d6b7f85436d778e8a SHA512 9a0cd266f973fbd7bbbd23939d0be3c34dbccd9ab20941bf967ca1b18aa5bf5d2c41cdef0799399e09e7b0fc59a0b34bc660afb6da292eb1c127db2893362018 DIST pesign-113.tar.gz 124618 BLAKE2B 36cdface6ecdf9003251da3058b21b2ee8e94eb655e47a8668b38c4ea576d990a71860952eea277d5e029bb007039c8e3ded9918e89d47f6db404423acbd1cc7 SHA512 e71dc90c2ab8085d1b000c0d2cf9cb00ddaed1ea1393db75c2d19a96f1b1c188a26b76850533ba97ec254a3b48db6b07a69b597c329ac891e64422780a358c24 +EBUILD pesign-0.112.ebuild 1222 BLAKE2B c72e2506d5a391db63c12f2f299772d3531aa029eb4116ce731e6608f9f10496c64489475d56473e5896b2649c0312359c3f6ea009cb3a1c9357a9d34c53b60c SHA512 17314da5a476af1543bb5ce71e764e0a93bd4ddd7ea61f0ced626aebf5abb9683f204af08845d13b7e84f591c580cb8fb4ef205134cb38c1087d717585a6f00a EBUILD pesign-113.ebuild 1177 BLAKE2B 2ac7fc3a2197194d5e1518ea110789054947eb94b2001190c34dcc6883559052681517361152ffdf39b807572d338f7764511a3dc109b27daf11c47ea557c8f7 SHA512 42308998cf9546dc4e844c96688c3c9990e51ee001925783e2e985cec4ec5470e63d62302cd8d81a5ae55492fc64e15eec8ff07a03da56c0bc53d1239a2ffdb1 MISC metadata.xml 248 BLAKE2B 53654091f15005bbc49262b840fd687c88b36450646c7639f9767a891a973f393dbbdc093143b3b120e50b1263e383d674e227c44de4c204b34a3a7892ed59e7 SHA512 c77276afdf688db707b87d976aa741c359c9152d0de1ffbdb9d3202a3b62aa2797cd8beb86354dad9fa2158be17948f53995ab9b92ea04ef79e6dd8ac3ede1fa diff --git a/app-crypt/pesign/files/pesign-0.112-fix-cli-opts.patch b/app-crypt/pesign/files/pesign-0.112-fix-cli-opts.patch new file mode 100644 index 000000000000..6271a999859a --- /dev/null +++ b/app-crypt/pesign/files/pesign-0.112-fix-cli-opts.patch @@ -0,0 +1,73 @@ +From 5be0515dee24308fd7e270bf2e0fb5e5a7a78f32 Mon Sep 17 00:00:00 2001 +From: Julien Cristau <jcristau@debian.org> +Date: Thu, 9 Jun 2016 14:30:37 +0200 +Subject: [PATCH 2/2] Fix command line parsing + +The gettext translation domain should be passed as .arg, not .descrip, +otherwise popt won't process any of the command line options (it stops +looping over the struct poptOption array when an entry has unset +longName, shortName and arg). + +Signed-off-by: Julien Cristau <jcristau@debian.org> +--- + src/client.c | 2 +- + src/efikeygen.c | 2 +- + src/efisiglist.c | 2 +- + src/pesigcheck.c | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/client.c b/src/client.c +index 028419f..575c873 100644 +--- a/src/client.c ++++ b/src/client.c +@@ -555,7 +555,7 @@ main(int argc, char *argv[]) + + struct poptOption options[] = { + {.argInfo = POPT_ARG_INTL_DOMAIN, +- .descrip = "pesign" }, ++ .arg = "pesign" }, + {.longName = "token", + .shortName = 't', + .argInfo = POPT_ARG_STRING|POPT_ARGFLAG_SHOW_DEFAULT, +diff --git a/src/efikeygen.c b/src/efikeygen.c +index 6278849..8a515a5 100644 +--- a/src/efikeygen.c ++++ b/src/efikeygen.c +@@ -486,7 +486,7 @@ int main(int argc, char *argv[]) + poptContext optCon; + struct poptOption options[] = { + {.argInfo = POPT_ARG_INTL_DOMAIN, +- .descrip = "pesign" }, ++ .arg = "pesign" }, + /* global nss-ish things */ + {.longName = "dbdir", + .shortName = 'd', +diff --git a/src/efisiglist.c b/src/efisiglist.c +index cd3f1ae..40d6a93 100644 +--- a/src/efisiglist.c ++++ b/src/efisiglist.c +@@ -126,7 +126,7 @@ main(int argc, char *argv[]) + + struct poptOption options[] = { + {.argInfo = POPT_ARG_INTL_DOMAIN, +- .descrip = "pesign" }, ++ .arg = "pesign" }, + {.longName = "infile", + .shortName = 'i', + .argInfo = POPT_ARG_STRING, +diff --git a/src/pesigcheck.c b/src/pesigcheck.c +index 1328fe9..0d49c1a 100644 +--- a/src/pesigcheck.c ++++ b/src/pesigcheck.c +@@ -214,7 +214,7 @@ main(int argc, char *argv[]) + poptContext optCon; + struct poptOption options[] = { + {.argInfo = POPT_ARG_INTL_DOMAIN, +- .descrip = "pesign" }, ++ .arg = "pesign" }, + {.longName = "dbfile", + .shortName = 'D', + .argInfo = POPT_ARG_CALLBACK|POPT_CBFLAG_POST, +-- +2.9.2 + diff --git a/app-crypt/pesign/files/pesign-0.112-fix-initializer.patch b/app-crypt/pesign/files/pesign-0.112-fix-initializer.patch new file mode 100644 index 000000000000..b6147fe68e6d --- /dev/null +++ b/app-crypt/pesign/files/pesign-0.112-fix-initializer.patch @@ -0,0 +1,13 @@ +This addresses a -Werror=missing-braces build failure from GCC bug #53119. + +--- a/libdpe/pe_allocspace.c ++++ b/libdpe/pe_allocspace.c +@@ -61,7 +61,7 @@ + struct pe32plus_opt_hdr *opthdr = pe->state.pe32plus_exe.opthdr; + + Pe_Scn *scn = NULL; +- struct section_header shdr = { 0, }, tmp_shdr; ++ struct section_header shdr = { { 0, } }, tmp_shdr; + if (pehdr->sections < 1) + return -1; + diff --git a/app-crypt/pesign/pesign-0.112.ebuild b/app-crypt/pesign/pesign-0.112.ebuild new file mode 100644 index 000000000000..3937fb8fdcd6 --- /dev/null +++ b/app-crypt/pesign/pesign-0.112.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2018 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/vathpela/pesign" +SRC_URI="https://github.com/vathpela/${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}-0.112-fix-cli-opts.patch + "${FILESDIR}"/${PN}-0.112-fix-initializer.patch +) + +src_compile() { + emake AR="$(tc-is-gcc && echo "$(tc-getCC)-ar" || tc-getAR)" \ + 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 +} |