Gentoo Archives: gentoo-commits

From: "Göktürk Yüksek" <gokturk@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-crypt/pesign/files/, app-crypt/pesign/
Date: Thu, 09 Feb 2017 23:41:55
Message-Id: 1486683677.bc18c616f9a7e080e08092b848032c5af38120f1.gokturk@gentoo
1 commit: bc18c616f9a7e080e08092b848032c5af38120f1
2 Author: David Michael <david.michael <AT> coreos <DOT> com>
3 AuthorDate: Tue Feb 7 21:23:11 2017 +0000
4 Commit: Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
5 CommitDate: Thu Feb 9 23:41:17 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc18c616
7
8 app-crypt/pesign: Add an ebuild for 0.112 #608572
9
10 app-crypt/pesign/Manifest | 1 +
11 .../pesign/files/pesign-0.112-fix-cli-opts.patch | 73 ++++++++++++++++++++++
12 .../files/pesign-0.112-fix-initializer.patch | 13 ++++
13 app-crypt/pesign/pesign-0.112.ebuild | 47 ++++++++++++++
14 4 files changed, 134 insertions(+)
15
16 diff --git a/app-crypt/pesign/Manifest b/app-crypt/pesign/Manifest
17 index 4d114926bd..14a304d16b 100644
18 --- a/app-crypt/pesign/Manifest
19 +++ b/app-crypt/pesign/Manifest
20 @@ -1 +1,2 @@
21 DIST pesign-0.108.tar.gz 96838 SHA256 2019882be0286df1c58efa8c588332106b89418a6bd0fce3de8da4ca16636986 SHA512 f72fb9c3e843341300b68e06bb153690734f6e506cdd9f0d9362c760ff48194ed1ed29e0b58a5050e7331069ad47a9902cc9e34bf616667baf84208f2b69a918 WHIRLPOOL 0af005d0b6dbdff23787c009153cae07c6907d111f57831611e85c49656e29e150ffd71683f349880cfb8975547ea3a3e655cdce31b047b355ecf097e7c7ba77
22 +DIST pesign-0.112.tar.gz 107632 SHA256 df4f5459137126e2fdb06484d755a81b6ec9a7b50099dcc3088ea2d41047cd06 SHA512 9a0cd266f973fbd7bbbd23939d0be3c34dbccd9ab20941bf967ca1b18aa5bf5d2c41cdef0799399e09e7b0fc59a0b34bc660afb6da292eb1c127db2893362018 WHIRLPOOL e5f3d3801ff7df7d643e87bc851f2645931e18df140b25a7add4136db1bd89c2a8da75d8f018533d5b16ab80695740d00ac379e166993a1912ba9ad2abee6791
23
24 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
25 new file mode 100644
26 index 0000000000..6271a99985
27 --- /dev/null
28 +++ b/app-crypt/pesign/files/pesign-0.112-fix-cli-opts.patch
29 @@ -0,0 +1,73 @@
30 +From 5be0515dee24308fd7e270bf2e0fb5e5a7a78f32 Mon Sep 17 00:00:00 2001
31 +From: Julien Cristau <jcristau@××××××.org>
32 +Date: Thu, 9 Jun 2016 14:30:37 +0200
33 +Subject: [PATCH 2/2] Fix command line parsing
34 +
35 +The gettext translation domain should be passed as .arg, not .descrip,
36 +otherwise popt won't process any of the command line options (it stops
37 +looping over the struct poptOption array when an entry has unset
38 +longName, shortName and arg).
39 +
40 +Signed-off-by: Julien Cristau <jcristau@××××××.org>
41 +---
42 + src/client.c | 2 +-
43 + src/efikeygen.c | 2 +-
44 + src/efisiglist.c | 2 +-
45 + src/pesigcheck.c | 2 +-
46 + 4 files changed, 4 insertions(+), 4 deletions(-)
47 +
48 +diff --git a/src/client.c b/src/client.c
49 +index 028419f..575c873 100644
50 +--- a/src/client.c
51 ++++ b/src/client.c
52 +@@ -555,7 +555,7 @@ main(int argc, char *argv[])
53 +
54 + struct poptOption options[] = {
55 + {.argInfo = POPT_ARG_INTL_DOMAIN,
56 +- .descrip = "pesign" },
57 ++ .arg = "pesign" },
58 + {.longName = "token",
59 + .shortName = 't',
60 + .argInfo = POPT_ARG_STRING|POPT_ARGFLAG_SHOW_DEFAULT,
61 +diff --git a/src/efikeygen.c b/src/efikeygen.c
62 +index 6278849..8a515a5 100644
63 +--- a/src/efikeygen.c
64 ++++ b/src/efikeygen.c
65 +@@ -486,7 +486,7 @@ int main(int argc, char *argv[])
66 + poptContext optCon;
67 + struct poptOption options[] = {
68 + {.argInfo = POPT_ARG_INTL_DOMAIN,
69 +- .descrip = "pesign" },
70 ++ .arg = "pesign" },
71 + /* global nss-ish things */
72 + {.longName = "dbdir",
73 + .shortName = 'd',
74 +diff --git a/src/efisiglist.c b/src/efisiglist.c
75 +index cd3f1ae..40d6a93 100644
76 +--- a/src/efisiglist.c
77 ++++ b/src/efisiglist.c
78 +@@ -126,7 +126,7 @@ main(int argc, char *argv[])
79 +
80 + struct poptOption options[] = {
81 + {.argInfo = POPT_ARG_INTL_DOMAIN,
82 +- .descrip = "pesign" },
83 ++ .arg = "pesign" },
84 + {.longName = "infile",
85 + .shortName = 'i',
86 + .argInfo = POPT_ARG_STRING,
87 +diff --git a/src/pesigcheck.c b/src/pesigcheck.c
88 +index 1328fe9..0d49c1a 100644
89 +--- a/src/pesigcheck.c
90 ++++ b/src/pesigcheck.c
91 +@@ -214,7 +214,7 @@ main(int argc, char *argv[])
92 + poptContext optCon;
93 + struct poptOption options[] = {
94 + {.argInfo = POPT_ARG_INTL_DOMAIN,
95 +- .descrip = "pesign" },
96 ++ .arg = "pesign" },
97 + {.longName = "dbfile",
98 + .shortName = 'D',
99 + .argInfo = POPT_ARG_CALLBACK|POPT_CBFLAG_POST,
100 +--
101 +2.9.2
102 +
103
104 diff --git a/app-crypt/pesign/files/pesign-0.112-fix-initializer.patch b/app-crypt/pesign/files/pesign-0.112-fix-initializer.patch
105 new file mode 100644
106 index 0000000000..b6147fe68e
107 --- /dev/null
108 +++ b/app-crypt/pesign/files/pesign-0.112-fix-initializer.patch
109 @@ -0,0 +1,13 @@
110 +This addresses a -Werror=missing-braces build failure from GCC bug #53119.
111 +
112 +--- a/libdpe/pe_allocspace.c
113 ++++ b/libdpe/pe_allocspace.c
114 +@@ -61,7 +61,7 @@
115 + struct pe32plus_opt_hdr *opthdr = pe->state.pe32plus_exe.opthdr;
116 +
117 + Pe_Scn *scn = NULL;
118 +- struct section_header shdr = { 0, }, tmp_shdr;
119 ++ struct section_header shdr = { { 0, } }, tmp_shdr;
120 + if (pehdr->sections < 1)
121 + return -1;
122 +
123
124 diff --git a/app-crypt/pesign/pesign-0.112.ebuild b/app-crypt/pesign/pesign-0.112.ebuild
125 new file mode 100644
126 index 0000000000..7e59afdb78
127 --- /dev/null
128 +++ b/app-crypt/pesign/pesign-0.112.ebuild
129 @@ -0,0 +1,47 @@
130 +# Copyright 1999-2017 Gentoo Foundation
131 +# Distributed under the terms of the GNU General Public License v2
132 +# $Id$
133 +
134 +EAPI=6
135 +
136 +inherit eutils toolchain-funcs
137 +
138 +DESCRIPTION="Tools for manipulating signed PE-COFF binaries"
139 +HOMEPAGE="https://github.com/vathpela/pesign"
140 +SRC_URI="https://github.com/vathpela/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
141 +
142 +LICENSE="GPL-2"
143 +SLOT="0"
144 +KEYWORDS="~amd64 ~x86"
145 +IUSE="libressl"
146 +
147 +RDEPEND="
148 + dev-libs/nspr
149 + !libressl? ( dev-libs/openssl:0= )
150 + libressl? ( dev-libs/libressl:0= )
151 + sys-apps/util-linux
152 +"
153 +DEPEND="${RDEPEND}
154 + sys-apps/help2man
155 + sys-boot/gnu-efi
156 + sys-libs/efivar
157 + virtual/pkgconfig
158 +"
159 +
160 +PATCHES=(
161 + "${FILESDIR}"/${PN}-0.112-fix-cli-opts.patch
162 + "${FILESDIR}"/${PN}-0.112-fix-initializer.patch
163 +)
164 +
165 +src_compile() {
166 + emake CC="$(tc-getCC)"
167 +}
168 +
169 +src_install() {
170 + emake DESTDIR="${ED}" VERSION="${PVR}" install
171 + einstalldocs
172 +
173 + # remove some files that don't make sense for Gentoo installs
174 + rm -rf "${ED%/}/etc/" "${ED%/}/var/" \
175 + "${ED%/}/usr/share/doc/${PF}/COPYING" || die
176 +}