commit:     72d39834f513ed0ec6d4c3030f8bce402e71d236
Author:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Mon Dec  7 00:05:59 2015 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Mon Dec  7 00:05:59 2015 +0000
URL:        https://gitweb.gentoo.org/proj/musl.git/commit/?id=72d39834

sys-libs/efivar: address bug #567678.

Package-Manager: portage-2.2.20.1
RepoMan-Options: --force

 sys-libs/efivar/Manifest                     |  5 +++
 sys-libs/efivar/efivar-0.21-r99.ebuild       | 29 +++++++++++++
 sys-libs/efivar/files/0.21-initializer.patch | 42 +++++++++++++++++++
 sys-libs/efivar/files/0.21-musl.patch        | 62 ++++++++++++++++++++++++++++
 sys-libs/efivar/metadata.xml                 | 11 +++++
 5 files changed, 149 insertions(+)

diff --git a/sys-libs/efivar/Manifest b/sys-libs/efivar/Manifest
new file mode 100644
index 0000000..373124c
--- /dev/null
+++ b/sys-libs/efivar/Manifest
@@ -0,0 +1,5 @@
+AUX 0.21-initializer.patch 1261 SHA256 
ce6792192c9014bd0db4acbf0866f3d6eb1e608225177cbfaf6dd54b7d447bf5 SHA512 
e7593fcefead06007a2314217b4be61161261b2be06c631065ede00f48098b924395605faba2ef859be9b6a242d531942460f2b51ea346d1cb93af94ecb23b3c
 WHIRLPOOL 
efcec5c85046ba5acff2b8559fad7c05175ed791ea84f47587013e90a3e2c301df507a776097795f0003625fbc40b95d79ecb1a349ee5ee08d5b4a7ad841b452
+AUX 0.21-musl.patch 2108 SHA256 
319478e8626271f4fa17fdfeabeca84a08027d1228ac02b60169dd1a3d676deb SHA512 
fb0df957015f4b34fa89786780b070df2fe9d7511882cc836d643997d83e303863d2016fb780c3a0f047b84e67093584690ab42fb1772165b2742206402e0f3d
 WHIRLPOOL 
fea636b8b89770d7d43267d5e0bb7c46ef1d76a87120a5facb6e2db20c03c9b3f784317f2c6b6d31bb800e40d33c069056c1e895e154faa67cce87b0ff7ff127
+DIST efivar-0.21.tar.bz2 66677 SHA256 
04b9b9de9d9a1a013395400438a033daf4a4290f497ec5be04a120e2ac535094 SHA512 
851b5e29c2dab213bb81c6ea5c5c211d36fb6846de8aa1086b0657f06917c2f93bf154aa3a4c2dda22103bdf1d67ca877f9771dc3f979c9311ca24e0bc09492a
 WHIRLPOOL 
d6cdb2e2f047a22677d046581490ee4e64a2ac0631be8e41bf6250241b2554f62ddf81226fa3970ee80ebb9ec62665ca21f4fec94cc5ebe05414b0c674ad38dd
+EBUILD efivar-0.21-r99.ebuild 647 SHA256 
d49af5c546ebab7985cc32f39140e1ad77eb9063d9110a934322d4ab9d1ec609 SHA512 
68e5d97b57721d33dcc704af49bcaf1a490c6bd021f325c42d9ecd565c3671f84d3d1a59c57cba58b404aa614984de13e3fcccabfd8507a8fb31b0e23025cbf0
 WHIRLPOOL 
0bff877b33d11c65e3b0076b616ab4a442bf793f4152b8186ab1b318c13f39c350f00caf631f25c3b8e3acb4cf6f27512b1ec4e117e2dae144f14b2d8b68b04d
+MISC metadata.xml 312 SHA256 
6fb63852fa4f8d21972ff4627c67ad981bc2da2721c0dda9496ee041d32f575c SHA512 
5beaf5ae393728ba4158bd61e91aaef58763078cc415d04bb4084682af9701c5a603b7762d70ee0588e343b8939619eba6a7bead4191d19db2280332e0ccefa1
 WHIRLPOOL 
4ee9322e45927ad75934961fdc0cda76c0e9cbe9f53a038249137b0a979047f5e3607c51b5bac7aa64a2dadcf35b2606e19863f5bc2fe7050d9c3a4b882ada95

diff --git a/sys-libs/efivar/efivar-0.21-r99.ebuild 
b/sys-libs/efivar/efivar-0.21-r99.ebuild
new file mode 100644
index 0000000..2c95f48
--- /dev/null
+++ b/sys-libs/efivar/efivar-0.21-r99.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="Tools and library to manipulate EFI variables"
+HOMEPAGE="https://github.com/rhinstaller/efivar";
+SRC_URI="https://github.com/rhinstaller/${PN}/releases/download/${PV}/${P}.tar.bz2";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="dev-libs/popt"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+       epatch "${FILESDIR}/0.21-initializer.patch"
+       epatch "${FILESDIR}/0.21-musl.patch"
+}
+
+src_configure() {
+       tc-export CC
+       export libdir="/usr/$(get_libdir)"
+       unset LIBS # Bug 562004
+}

diff --git a/sys-libs/efivar/files/0.21-initializer.patch 
b/sys-libs/efivar/files/0.21-initializer.patch
new file mode 100644
index 0000000..25d0659
--- /dev/null
+++ b/sys-libs/efivar/files/0.21-initializer.patch
@@ -0,0 +1,42 @@
+From a3606c02fd271d32e364fcc540e34ba1899309f6 Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjo...@redhat.com>
+Date: Tue, 14 Jul 2015 09:33:54 -0400
+Subject: [PATCH] Sometimes the compiler doesn't like { 0, } as an
+ initializer...
+
+Because it really wants to be { {0, },} or something, and sometimes the
+compiler, knowing full well what we're trying to do, likes to complain
+about the rigor applied to our technique in doing it.
+
+memset() the struct ifreq to 0 instead so I don't need to figure out its
+internal structure just to zero it out.
+
+Resolves #28
+
+Signed-off-by: Peter Jones <pjo...@redhat.com>
+---
+ src/linux.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/linux.c b/src/linux.c
+index 57f71f3..817b8e6 100644
+--- a/src/linux.c
++++ b/src/linux.c
+@@ -847,12 +847,13 @@ ssize_t
+ __attribute__((__visibility__ ("hidden")))
+ make_mac_path(uint8_t *buf, ssize_t size, const char * const ifname)
+ {
+-      struct ifreq ifr = { 0, };
++      struct ifreq ifr;
+       struct ethtool_drvinfo drvinfo = { 0, };
+       int fd, rc;
+       ssize_t ret = -1, sz, off=0;
+       char busname[PATH_MAX+1] = "";
+ 
++      memset(&ifr, 0, sizeof (ifr));
+       strncpy(ifr.ifr_name, ifname, IF_NAMESIZE);
+       drvinfo.cmd = ETHTOOL_GDRVINFO;
+       ifr.ifr_data = (caddr_t)&drvinfo;
+-- 
+2.4.6
+

diff --git a/sys-libs/efivar/files/0.21-musl.patch 
b/sys-libs/efivar/files/0.21-musl.patch
new file mode 100644
index 0000000..2c5d7eb
--- /dev/null
+++ b/sys-libs/efivar/files/0.21-musl.patch
@@ -0,0 +1,62 @@
+From 262acfc7c4fbb4bbc76f4235220336fd41993ca8 Mon Sep 17 00:00:00 2001
+From: Felix Janda <felix.ja...@posteo.de>
+Date: Tue, 14 Jul 2015 05:53:04 -0600
+Subject: [PATCH 1/2] Remove -fshort-wchar from CFLAGS
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+-fshort-wchar makes wchar_t 16bit. We are not using wchar_t anywhere,
+so we don't need it. Removing it fixes an compilation error with musl
+libc:
+
+In file included from dp-acpi.c:21:0:
+/usr/lib/gcc/armv7a-hardfloat-linux-musleabi/4.7.4/include/stddef.h:325:24: 
error: conflicting types for ‘wchar_t’
+In file included from /usr/include/inttypes.h:12:0,
+                 from dp-acpi.c:20:
+/usr/include/bits/alltypes.h:18:18: note: previous declaration of ‘wchar_t’ 
was here
+make[1]: *** [dp-acpi.o] Error 1
+make: *** [src] Error 2
+---
+ Make.defaults | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Make.defaults b/Make.defaults
+index cc2baa9..7f5ae5e 100644
+--- a/Make.defaults
++++ b/Make.defaults
+@@ -13,7 +13,7 @@ clang_cflags =
+ gcc_cflags = -Wmaybe-uninitialized
+ cflags        := $(CFLAGS) \
+       -Werror -Wall -Wsign-compare -Wstrict-aliasing \
+-      -std=gnu11 -fshort-wchar -fPIC \
++      -std=gnu11 -fPIC \
+       -fvisibility=hidden \
+       -D_GNU_SOURCE -I${TOPDIR}/src/include/efivar/ \
+       $(if $(filter $(CC),clang),$(clang_cflags),) \
+
+From 841ae2fc8c911dbac595cbd228be6bfed7881cad Mon Sep 17 00:00:00 2001
+From: Felix Janda <felix.ja...@posteo.de>
+Date: Tue, 14 Jul 2015 05:56:05 -0600
+Subject: [PATCH 2/2] Use the more portable major() instead of gnu_dev_major()
+
+Do the same for minor() and gnu_dev_minor()
+---
+ src/linux.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/linux.c b/src/linux.c
+index c4d099e..0cbd94a 100644
+--- a/src/linux.c
++++ b/src/linux.c
+@@ -129,8 +129,8 @@ get_partition_number(const char *devpath)
+               return -1;
+       }
+ 
+-      maj = gnu_dev_major(statbuf.st_rdev);
+-      min = gnu_dev_minor(statbuf.st_rdev);
++      maj = major(statbuf.st_rdev);
++      min = minor(statbuf.st_rdev);
+ 
+       rc = sysfs_readlink(&linkbuf, "/sys/dev/block/%u:%u", maj, min);
+       if (rc < 0)

diff --git a/sys-libs/efivar/metadata.xml b/sys-libs/efivar/metadata.xml
new file mode 100644
index 0000000..52ba01d
--- /dev/null
+++ b/sys-libs/efivar/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer>
+               <email>flop...@gentoo.org</email>
+               <name>Mike Gilbert</name>
+       </maintainer>
+       <upstream>
+               <remote-id type="github">vathpela/efivar</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to