sys-power/bbswitch: Bump to 0.8-r1 and fix compiling w/ kernel 4.12, #623736
authorNP-Hardass <NP-Hardass@gentoo.org>
Mon, 24 Jul 2017 20:39:22 +0000 (16:39 -0400)
committerNP-Hardass <NP-Hardass@gentoo.org>
Mon, 24 Jul 2017 20:42:24 +0000 (16:42 -0400)
Package-Manager: Portage-2.3.6, Repoman-2.3.3

sys-power/bbswitch/bbswitch-0.8-r1.ebuild [new file with mode: 0644]
sys-power/bbswitch/bbswitch-9999.ebuild [new file with mode: 0644]
sys-power/bbswitch/files/bbswitch-0.8-kernel-4.12.patch [new file with mode: 0644]
sys-power/bbswitch/metadata.xml

diff --git a/sys-power/bbswitch/bbswitch-0.8-r1.ebuild b/sys-power/bbswitch/bbswitch-0.8-r1.ebuild
new file mode 100644 (file)
index 0000000..bb29cb2
--- /dev/null
@@ -0,0 +1,54 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit linux-mod
+
+if [[ ${PV} == 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/Bumblebee-Project/${PN}.git"
+       EGIT_BRANCH="develop"
+else
+       PATCHES=( "${FILESDIR}/${PN}-0.8-kernel-4.12.patch" )
+       SRC_URI="https://github.com/Bumblebee-Project/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+       KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Toggle discrete NVIDIA Optimus graphics card"
+HOMEPAGE="https://github.com/Bumblebee-Project/bbswitch"
+
+SLOT="0"
+LICENSE="GPL-3+"
+IUSE=""
+
+DEPEND="
+       virtual/linux-sources
+       sys-kernel/linux-headers
+"
+RDEPEND=""
+
+MODULE_NAMES="bbswitch(acpi)"
+
+pkg_setup() {
+       linux-mod_pkg_setup
+
+       BUILD_TARGETS="default"
+       BUILD_PARAMS="KVERSION=${KV_FULL}"
+}
+
+src_prepare() {
+       # Fix build failure, bug #513542
+       sed -i 's/^KDIR.*$/KDIR\ \:= \/usr\/src\/linux/g' Makefile || die
+
+       default
+}
+
+src_install() {
+       einstalldocs
+
+       insinto /etc/modprobe.d
+       newins "${FILESDIR}"/bbswitch.modprobe bbswitch.conf
+
+       linux-mod_src_install
+}
diff --git a/sys-power/bbswitch/bbswitch-9999.ebuild b/sys-power/bbswitch/bbswitch-9999.ebuild
new file mode 100644 (file)
index 0000000..bb29cb2
--- /dev/null
@@ -0,0 +1,54 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit linux-mod
+
+if [[ ${PV} == 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/Bumblebee-Project/${PN}.git"
+       EGIT_BRANCH="develop"
+else
+       PATCHES=( "${FILESDIR}/${PN}-0.8-kernel-4.12.patch" )
+       SRC_URI="https://github.com/Bumblebee-Project/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+       KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="Toggle discrete NVIDIA Optimus graphics card"
+HOMEPAGE="https://github.com/Bumblebee-Project/bbswitch"
+
+SLOT="0"
+LICENSE="GPL-3+"
+IUSE=""
+
+DEPEND="
+       virtual/linux-sources
+       sys-kernel/linux-headers
+"
+RDEPEND=""
+
+MODULE_NAMES="bbswitch(acpi)"
+
+pkg_setup() {
+       linux-mod_pkg_setup
+
+       BUILD_TARGETS="default"
+       BUILD_PARAMS="KVERSION=${KV_FULL}"
+}
+
+src_prepare() {
+       # Fix build failure, bug #513542
+       sed -i 's/^KDIR.*$/KDIR\ \:= \/usr\/src\/linux/g' Makefile || die
+
+       default
+}
+
+src_install() {
+       einstalldocs
+
+       insinto /etc/modprobe.d
+       newins "${FILESDIR}"/bbswitch.modprobe bbswitch.conf
+
+       linux-mod_src_install
+}
diff --git a/sys-power/bbswitch/files/bbswitch-0.8-kernel-4.12.patch b/sys-power/bbswitch/files/bbswitch-0.8-kernel-4.12.patch
new file mode 100644 (file)
index 0000000..1db623d
--- /dev/null
@@ -0,0 +1,18 @@
+diff -uNr bbswitch-0.8/bbswitch.c bbswitch-0.8-new/bbswitch.c
+--- bbswitch-0.8/bbswitch.c    2013-12-04 18:22:06.000000000 -0500
++++ bbswitch-0.8-new/bbswitch.c        2017-07-08 01:11:54.588545766 -0400
+@@ -31,7 +31,14 @@
+ #include <linux/pci.h>
+ #include <linux/acpi.h>
+ #include <linux/module.h>
++#include <linux/version.h>
++
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0)
++#include <linux/uaccess.h>
++#else
+ #include <asm/uaccess.h>
++#endif
++
+ #include <linux/suspend.h>
+ #include <linux/seq_file.h>
+ #include <linux/pm_runtime.h>
index 8a332bf34a01b945fdfbff9f2a0cec2010742cd9..437e2daa175e45692e4e8569a52ed393ef04b7f5 100644 (file)
@@ -18,8 +18,8 @@
                <name>Proxy Maintainers</name>
        </maintainer>
        <longdescription>
-    Kernel module which automatically detects the required ACPI calls for two
-    kinds of Optimus laptops for safe disabling/enabling the discrete graphics card.
+       Kernel module which automatically detects the required ACPI calls for two
+       kinds of Optimus laptops for safe disabling/enabling the discrete graphics card.
 </longdescription>
        <upstream>
                <remote-id type="github">Bumblebee-Project/bbswitch</remote-id>