commit: d19be01596dc1d8590b47a5da70f636da7cbdcea
Author: Mike Frysinger gentoo org>
AuthorDate: Sun Nov 27 23:50:07 2016 +
Commit: Mike Frysinger gentoo org>
CommitDate: Sun Nov 27 23:50:07 2016 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d19be015
sys-block/tgt: fix build w/newer glibc #580594
sys-block/tgt/files/tgt-1.0.69-sysmacros.patch | 38 ++
sys-block/tgt/tgt-1.0.69.ebuild| 2 ++
2 files changed, 40 insertions(+)
diff --git a/sys-block/tgt/files/tgt-1.0.69-sysmacros.patch
b/sys-block/tgt/files/tgt-1.0.69-sysmacros.patch
new file mode 100644
index ..0b28f02
--- /dev/null
+++ b/sys-block/tgt/files/tgt-1.0.69-sysmacros.patch
@@ -0,0 +1,38 @@
+https://bugs.gentoo.org/580594
+https://github.com/fujita/tgt/pull/25
+
+From b092c6fe330a2eacf4b1d4eb093fad8e2fbcaed9 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger
+Date: Sun, 27 Nov 2016 18:47:24 -0500
+Subject: [PATCH] fix build w/newer glibc
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Building with newer glibc versions fails like so:
+bs_sg.c: In function ‘chk_sg_device’:
+bs_sg.c:354:6: error: implicit declaration of function ‘major’
[-Werror=implicit-function-declaration]
+ if (major(st.st_rdev) == SCSI_GENERIC_MAJOR)
+
+This is because glibc is dropping the implicit sys/sysmacros.h include
+from sys/types.h and making the few projects that need it include it
+explicitly.
+---
+ usr/bs_sg.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/usr/bs_sg.c b/usr/bs_sg.c
+index 66f4a3b22a18..fb544056f258 100644
+--- a/usr/bs_sg.c
b/usr/bs_sg.c
+@@ -32,6 +32,7 @@
+ #include
+ #include
+ #include
++#include
+ #include
+ #include
+ #include
+--
+2.11.0.rc2
+
diff --git a/sys-block/tgt/tgt-1.0.69.ebuild b/sys-block/tgt/tgt-1.0.69.ebuild
index 916d0f7..8a0ff08 100644
--- a/sys-block/tgt/tgt-1.0.69.ebuild
+++ b/sys-block/tgt/tgt-1.0.69.ebuild
@@ -37,6 +37,8 @@ pkg_setup() {
}
src_prepare() {
+ epatch "${FILESDIR}"/${P}-sysmacros.patch #580594
+
sed -i -e 's:\($(CC)\) $^:\1 $(LDFLAGS) $^:' usr/Makefile || die
# make sure xml docs are generated before trying to install them