1 |
commit: 72d39834f513ed0ec6d4c3030f8bce402e71d236 |
2 |
Author: Anthony G. Basile <blueness <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Dec 7 00:05:59 2015 +0000 |
4 |
Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Dec 7 00:05:59 2015 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=72d39834 |
7 |
|
8 |
sys-libs/efivar: address bug #567678. |
9 |
|
10 |
Package-Manager: portage-2.2.20.1 |
11 |
RepoMan-Options: --force |
12 |
|
13 |
sys-libs/efivar/Manifest | 5 +++ |
14 |
sys-libs/efivar/efivar-0.21-r99.ebuild | 29 +++++++++++++ |
15 |
sys-libs/efivar/files/0.21-initializer.patch | 42 +++++++++++++++++++ |
16 |
sys-libs/efivar/files/0.21-musl.patch | 62 ++++++++++++++++++++++++++++ |
17 |
sys-libs/efivar/metadata.xml | 11 +++++ |
18 |
5 files changed, 149 insertions(+) |
19 |
|
20 |
diff --git a/sys-libs/efivar/Manifest b/sys-libs/efivar/Manifest |
21 |
new file mode 100644 |
22 |
index 0000000..373124c |
23 |
--- /dev/null |
24 |
+++ b/sys-libs/efivar/Manifest |
25 |
@@ -0,0 +1,5 @@ |
26 |
+AUX 0.21-initializer.patch 1261 SHA256 ce6792192c9014bd0db4acbf0866f3d6eb1e608225177cbfaf6dd54b7d447bf5 SHA512 e7593fcefead06007a2314217b4be61161261b2be06c631065ede00f48098b924395605faba2ef859be9b6a242d531942460f2b51ea346d1cb93af94ecb23b3c WHIRLPOOL efcec5c85046ba5acff2b8559fad7c05175ed791ea84f47587013e90a3e2c301df507a776097795f0003625fbc40b95d79ecb1a349ee5ee08d5b4a7ad841b452 |
27 |
+AUX 0.21-musl.patch 2108 SHA256 319478e8626271f4fa17fdfeabeca84a08027d1228ac02b60169dd1a3d676deb SHA512 fb0df957015f4b34fa89786780b070df2fe9d7511882cc836d643997d83e303863d2016fb780c3a0f047b84e67093584690ab42fb1772165b2742206402e0f3d WHIRLPOOL fea636b8b89770d7d43267d5e0bb7c46ef1d76a87120a5facb6e2db20c03c9b3f784317f2c6b6d31bb800e40d33c069056c1e895e154faa67cce87b0ff7ff127 |
28 |
+DIST efivar-0.21.tar.bz2 66677 SHA256 04b9b9de9d9a1a013395400438a033daf4a4290f497ec5be04a120e2ac535094 SHA512 851b5e29c2dab213bb81c6ea5c5c211d36fb6846de8aa1086b0657f06917c2f93bf154aa3a4c2dda22103bdf1d67ca877f9771dc3f979c9311ca24e0bc09492a WHIRLPOOL d6cdb2e2f047a22677d046581490ee4e64a2ac0631be8e41bf6250241b2554f62ddf81226fa3970ee80ebb9ec62665ca21f4fec94cc5ebe05414b0c674ad38dd |
29 |
+EBUILD efivar-0.21-r99.ebuild 647 SHA256 d49af5c546ebab7985cc32f39140e1ad77eb9063d9110a934322d4ab9d1ec609 SHA512 68e5d97b57721d33dcc704af49bcaf1a490c6bd021f325c42d9ecd565c3671f84d3d1a59c57cba58b404aa614984de13e3fcccabfd8507a8fb31b0e23025cbf0 WHIRLPOOL 0bff877b33d11c65e3b0076b616ab4a442bf793f4152b8186ab1b318c13f39c350f00caf631f25c3b8e3acb4cf6f27512b1ec4e117e2dae144f14b2d8b68b04d |
30 |
+MISC metadata.xml 312 SHA256 6fb63852fa4f8d21972ff4627c67ad981bc2da2721c0dda9496ee041d32f575c SHA512 5beaf5ae393728ba4158bd61e91aaef58763078cc415d04bb4084682af9701c5a603b7762d70ee0588e343b8939619eba6a7bead4191d19db2280332e0ccefa1 WHIRLPOOL 4ee9322e45927ad75934961fdc0cda76c0e9cbe9f53a038249137b0a979047f5e3607c51b5bac7aa64a2dadcf35b2606e19863f5bc2fe7050d9c3a4b882ada95 |
31 |
|
32 |
diff --git a/sys-libs/efivar/efivar-0.21-r99.ebuild b/sys-libs/efivar/efivar-0.21-r99.ebuild |
33 |
new file mode 100644 |
34 |
index 0000000..2c95f48 |
35 |
--- /dev/null |
36 |
+++ b/sys-libs/efivar/efivar-0.21-r99.ebuild |
37 |
@@ -0,0 +1,29 @@ |
38 |
+# Copyright 1999-2015 Gentoo Foundation |
39 |
+# Distributed under the terms of the GNU General Public License v2 |
40 |
+# $Id$ |
41 |
+ |
42 |
+EAPI=5 |
43 |
+ |
44 |
+inherit eutils multilib toolchain-funcs |
45 |
+ |
46 |
+DESCRIPTION="Tools and library to manipulate EFI variables" |
47 |
+HOMEPAGE="https://github.com/rhinstaller/efivar" |
48 |
+SRC_URI="https://github.com/rhinstaller/${PN}/releases/download/${PV}/${P}.tar.bz2" |
49 |
+ |
50 |
+LICENSE="GPL-2" |
51 |
+SLOT="0" |
52 |
+KEYWORDS="amd64 x86" |
53 |
+ |
54 |
+RDEPEND="dev-libs/popt" |
55 |
+DEPEND="${RDEPEND}" |
56 |
+ |
57 |
+src_prepare() { |
58 |
+ epatch "${FILESDIR}/0.21-initializer.patch" |
59 |
+ epatch "${FILESDIR}/0.21-musl.patch" |
60 |
+} |
61 |
+ |
62 |
+src_configure() { |
63 |
+ tc-export CC |
64 |
+ export libdir="/usr/$(get_libdir)" |
65 |
+ unset LIBS # Bug 562004 |
66 |
+} |
67 |
|
68 |
diff --git a/sys-libs/efivar/files/0.21-initializer.patch b/sys-libs/efivar/files/0.21-initializer.patch |
69 |
new file mode 100644 |
70 |
index 0000000..25d0659 |
71 |
--- /dev/null |
72 |
+++ b/sys-libs/efivar/files/0.21-initializer.patch |
73 |
@@ -0,0 +1,42 @@ |
74 |
+From a3606c02fd271d32e364fcc540e34ba1899309f6 Mon Sep 17 00:00:00 2001 |
75 |
+From: Peter Jones <pjones@××××××.com> |
76 |
+Date: Tue, 14 Jul 2015 09:33:54 -0400 |
77 |
+Subject: [PATCH] Sometimes the compiler doesn't like { 0, } as an |
78 |
+ initializer... |
79 |
+ |
80 |
+Because it really wants to be { {0, },} or something, and sometimes the |
81 |
+compiler, knowing full well what we're trying to do, likes to complain |
82 |
+about the rigor applied to our technique in doing it. |
83 |
+ |
84 |
+memset() the struct ifreq to 0 instead so I don't need to figure out its |
85 |
+internal structure just to zero it out. |
86 |
+ |
87 |
+Resolves #28 |
88 |
+ |
89 |
+Signed-off-by: Peter Jones <pjones@××××××.com> |
90 |
+--- |
91 |
+ src/linux.c | 3 ++- |
92 |
+ 1 file changed, 2 insertions(+), 1 deletion(-) |
93 |
+ |
94 |
+diff --git a/src/linux.c b/src/linux.c |
95 |
+index 57f71f3..817b8e6 100644 |
96 |
+--- a/src/linux.c |
97 |
++++ b/src/linux.c |
98 |
+@@ -847,12 +847,13 @@ ssize_t |
99 |
+ __attribute__((__visibility__ ("hidden"))) |
100 |
+ make_mac_path(uint8_t *buf, ssize_t size, const char * const ifname) |
101 |
+ { |
102 |
+- struct ifreq ifr = { 0, }; |
103 |
++ struct ifreq ifr; |
104 |
+ struct ethtool_drvinfo drvinfo = { 0, }; |
105 |
+ int fd, rc; |
106 |
+ ssize_t ret = -1, sz, off=0; |
107 |
+ char busname[PATH_MAX+1] = ""; |
108 |
+ |
109 |
++ memset(&ifr, 0, sizeof (ifr)); |
110 |
+ strncpy(ifr.ifr_name, ifname, IF_NAMESIZE); |
111 |
+ drvinfo.cmd = ETHTOOL_GDRVINFO; |
112 |
+ ifr.ifr_data = (caddr_t)&drvinfo; |
113 |
+-- |
114 |
+2.4.6 |
115 |
+ |
116 |
|
117 |
diff --git a/sys-libs/efivar/files/0.21-musl.patch b/sys-libs/efivar/files/0.21-musl.patch |
118 |
new file mode 100644 |
119 |
index 0000000..2c5d7eb |
120 |
--- /dev/null |
121 |
+++ b/sys-libs/efivar/files/0.21-musl.patch |
122 |
@@ -0,0 +1,62 @@ |
123 |
+From 262acfc7c4fbb4bbc76f4235220336fd41993ca8 Mon Sep 17 00:00:00 2001 |
124 |
+From: Felix Janda <felix.janda@××××××.de> |
125 |
+Date: Tue, 14 Jul 2015 05:53:04 -0600 |
126 |
+Subject: [PATCH 1/2] Remove -fshort-wchar from CFLAGS |
127 |
+MIME-Version: 1.0 |
128 |
+Content-Type: text/plain; charset=UTF-8 |
129 |
+Content-Transfer-Encoding: 8bit |
130 |
+ |
131 |
+-fshort-wchar makes wchar_t 16bit. We are not using wchar_t anywhere, |
132 |
+so we don't need it. Removing it fixes an compilation error with musl |
133 |
+libc: |
134 |
+ |
135 |
+In file included from dp-acpi.c:21:0: |
136 |
+/usr/lib/gcc/armv7a-hardfloat-linux-musleabi/4.7.4/include/stddef.h:325:24: error: conflicting types for ‘wchar_t’ |
137 |
+In file included from /usr/include/inttypes.h:12:0, |
138 |
+ from dp-acpi.c:20: |
139 |
+/usr/include/bits/alltypes.h:18:18: note: previous declaration of ‘wchar_t’ was here |
140 |
+make[1]: *** [dp-acpi.o] Error 1 |
141 |
+make: *** [src] Error 2 |
142 |
+--- |
143 |
+ Make.defaults | 2 +- |
144 |
+ 1 file changed, 1 insertion(+), 1 deletion(-) |
145 |
+ |
146 |
+diff --git a/Make.defaults b/Make.defaults |
147 |
+index cc2baa9..7f5ae5e 100644 |
148 |
+--- a/Make.defaults |
149 |
++++ b/Make.defaults |
150 |
+@@ -13,7 +13,7 @@ clang_cflags = |
151 |
+ gcc_cflags = -Wmaybe-uninitialized |
152 |
+ cflags := $(CFLAGS) \ |
153 |
+ -Werror -Wall -Wsign-compare -Wstrict-aliasing \ |
154 |
+- -std=gnu11 -fshort-wchar -fPIC \ |
155 |
++ -std=gnu11 -fPIC \ |
156 |
+ -fvisibility=hidden \ |
157 |
+ -D_GNU_SOURCE -I${TOPDIR}/src/include/efivar/ \ |
158 |
+ $(if $(filter $(CC),clang),$(clang_cflags),) \ |
159 |
+ |
160 |
+From 841ae2fc8c911dbac595cbd228be6bfed7881cad Mon Sep 17 00:00:00 2001 |
161 |
+From: Felix Janda <felix.janda@××××××.de> |
162 |
+Date: Tue, 14 Jul 2015 05:56:05 -0600 |
163 |
+Subject: [PATCH 2/2] Use the more portable major() instead of gnu_dev_major() |
164 |
+ |
165 |
+Do the same for minor() and gnu_dev_minor() |
166 |
+--- |
167 |
+ src/linux.c | 4 ++-- |
168 |
+ 1 file changed, 2 insertions(+), 2 deletions(-) |
169 |
+ |
170 |
+diff --git a/src/linux.c b/src/linux.c |
171 |
+index c4d099e..0cbd94a 100644 |
172 |
+--- a/src/linux.c |
173 |
++++ b/src/linux.c |
174 |
+@@ -129,8 +129,8 @@ get_partition_number(const char *devpath) |
175 |
+ return -1; |
176 |
+ } |
177 |
+ |
178 |
+- maj = gnu_dev_major(statbuf.st_rdev); |
179 |
+- min = gnu_dev_minor(statbuf.st_rdev); |
180 |
++ maj = major(statbuf.st_rdev); |
181 |
++ min = minor(statbuf.st_rdev); |
182 |
+ |
183 |
+ rc = sysfs_readlink(&linkbuf, "/sys/dev/block/%u:%u", maj, min); |
184 |
+ if (rc < 0) |
185 |
|
186 |
diff --git a/sys-libs/efivar/metadata.xml b/sys-libs/efivar/metadata.xml |
187 |
new file mode 100644 |
188 |
index 0000000..52ba01d |
189 |
--- /dev/null |
190 |
+++ b/sys-libs/efivar/metadata.xml |
191 |
@@ -0,0 +1,11 @@ |
192 |
+<?xml version="1.0" encoding="UTF-8"?> |
193 |
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
194 |
+<pkgmetadata> |
195 |
+ <maintainer> |
196 |
+ <email>floppym@g.o</email> |
197 |
+ <name>Mike Gilbert</name> |
198 |
+ </maintainer> |
199 |
+ <upstream> |
200 |
+ <remote-id type="github">vathpela/efivar</remote-id> |
201 |
+ </upstream> |
202 |
+</pkgmetadata> |