From 44100938da8282c32f29c0d97722ae68d653ce91 Mon Sep 17 00:00:00 2001
From: V3n3RiX <venerix@rogentos.ro>
Date: Fri, 12 Jun 2015 23:48:00 +0100
Subject: prevent genkernel to install firmware files...please read the patch
 comment @StefanCristian

---
 ...next-dont-install-firmware-due-to-linux-firmware.patch | 15 +++++++++++++++
 sys-kernel/genkernel-next/genkernel-next-63.ebuild        |  9 +++++++--
 2 files changed, 22 insertions(+), 2 deletions(-)
 create mode 100644 sys-kernel/genkernel-next/files/genkernel-next-dont-install-firmware-due-to-linux-firmware.patch

diff --git a/sys-kernel/genkernel-next/files/genkernel-next-dont-install-firmware-due-to-linux-firmware.patch b/sys-kernel/genkernel-next/files/genkernel-next-dont-install-firmware-due-to-linux-firmware.patch
new file mode 100644
index 00000000..5ff0eb34
--- /dev/null
+++ b/sys-kernel/genkernel-next/files/genkernel-next-dont-install-firmware-due-to-linux-firmware.patch
@@ -0,0 +1,15 @@
+diff -Nur a/gen_compile.sh b/gen_compile.sh
+--- a/gen_compile.sh	2015-02-16 10:03:04.000000000 +0000
++++ b/gen_compile.sh	2015-06-12 23:34:12.536580015 +0100
+@@ -293,10 +293,7 @@
+     local firmware_in_kernel_line=`fgrep CONFIG_FIRMWARE_IN_KERNEL "${KERNEL_OUTPUTDIR}"/.config`
+     if [ -n "${firmware_in_kernel_line}" -a "${firmware_in_kernel_line}" != CONFIG_FIRMWARE_IN_KERNEL=y ]
+     then
+-        print_info 1 "        >> Installing firmware ('make firmware_install') due to CONFIG_FIRMWARE_IN_KERNEL != y..."
+-        MAKEOPTS="${MAKEOPTS} -j1" compile_generic "firmware_install" kernel
+-    else
+-        print_info 1 "        >> Not installing firmware as it's included in the kernel already (CONFIG_FIRMWARE_IN_KERNEL=y)..."
++        print_info 1 "        >> Not installing firmware due to CONFIG_FIRMWARE_IN_KERNEL != y...Make sure you linux-firmware package installed"
+     fi
+ 
+     local tmp_kernel_binary=$(find_kernel_binary ${KERNEL_BINARY_OVERRIDE:-${KERNEL_BINARY}})
diff --git a/sys-kernel/genkernel-next/genkernel-next-63.ebuild b/sys-kernel/genkernel-next/genkernel-next-63.ebuild
index 95e7fd47..4daf2d31 100644
--- a/sys-kernel/genkernel-next/genkernel-next-63.ebuild
+++ b/sys-kernel/genkernel-next/genkernel-next-63.ebuild
@@ -48,8 +48,13 @@ RDEPEND="${DEPEND}
 src_prepare() {
 	sed -i "/^GK_V=/ s:GK_V=.*:GK_V=${PV}:g" "${S}/genkernel" || \
 		die "Could not setup release"
-
-	epatch_user
+	
+	# our new buildsystem revealed that genkernel installs firmware files, even
+	# if we use external linux-firmware package, thus creating conflicts during
+	# kernel building process ... this patch prevents this behaviour, and relies
+	# on linux-firmware being installed ... and since linux-firmware is a dep of
+	# our kernel anyway ... you get the point
+	epatch "${FILESDIR}/${PN}-dont-install-firmware-due-to-linux-firmware.patch"
 }
 
 src_install() {
-- 
cgit v1.2.3