Gentoo Archives: gentoo-commits

From: "Anthony G. Basile" <blueness@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/musl:master commit in: sys-libs/efivar/, sys-libs/efivar/files/
Date: Sun, 06 Dec 2015 23:58:43
Message-Id: 1449446759.72d39834f513ed0ec6d4c3030f8bce402e71d236.blueness@gentoo
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>