Pull x11-drivers/nvidia-drivers as it doesnt support 3.11, pull app-laptop/easy-slow-down-manager being broken
This commit is contained in:
parent
3e4c552508
commit
a7f61e6eb1
@ -1,21 +0,0 @@
|
||||
# ChangeLog for app-laptop/easy-slow-down-manager
|
||||
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-laptop/easy-slow-down-manager/ChangeLog,v 1.4 2013/09/25 18:01:24 angelos Exp $
|
||||
|
||||
25 Sep 2013; <christoph@gentoo.org> metadata.xml:
|
||||
Remove myself from metadata since I do not own a Samsung laptop anymore
|
||||
|
||||
02 Jul 2013; Vicente Olivert Riera <vincent@gentoo.org>
|
||||
easy-slow-down-manager-0.3.ebuild:
|
||||
amd64 x86 stable
|
||||
|
||||
13 Jul 2011; Christoph Mende <angelos@gentoo.org>
|
||||
easy-slow-down-manager-0.3.ebuild,
|
||||
+files/easy-slow-down-manager-0.3-kv_dir.patch:
|
||||
Use KV_DIR instead of /lib/modules/KV_FULL/build (bug #374835)
|
||||
|
||||
*easy-slow-down-manager-0.3 (22 Jun 2011)
|
||||
|
||||
22 Jun 2011; Christoph Mende <angelos@gentoo.org>
|
||||
+easy-slow-down-manager-0.3.ebuild, +metadata.xml:
|
||||
Initial import
|
@ -1,6 +0,0 @@
|
||||
AUX easy-slow-down-manager-0.3-kernel-3.10-1.patch 6682 SHA256 319d06407fa43bab23b161b3c3c996c34841ef7f559142d8db3ed575cde875ec SHA512 d6e68e444abd956e96fc1542546d38ab62f7f54d81822d468b7695df761c0e3810d12a1d98ca0a71228c80e63bce7d1b198bf7d8c87d49c4f19305aae78ab0e9 WHIRLPOOL 5947a6060950972692224935e11e3b9bf180e730c592fe2d95246d2904ca204e262f569137355e0196735ba234e71b1b44f0b84fffd500c6c6b214e111030703
|
||||
AUX easy-slow-down-manager-0.3-kv_dir.patch 441 SHA256 05fa50fe4182e4d5b5886994b0be0d5b70d984f9b60614216040620540120ff3 SHA512 bd6b204b597ea0c109d51e016061b5db56a500ea5189ad7bf3f666b18e10989f799e54dfa4318caa618666d9055b325257abb0e39cb89f4862314d4686c45dd5 WHIRLPOOL 62dbf2c7c3fb826f6db6db5570a79357412b9a8d1d8c889dbe5dd71149cc95ba744940230834430391a80ebac2d0cddf5631c946bac34d12edc6d22149683b73
|
||||
DIST easy-slow-down-manager-0.3.tar.gz 5636 SHA256 c9296226d4e0d41955988d0dbd7f143ff2e06a40744705c78f89f9a51c1c0253 SHA512 9974fb3af48a529f050aa5730988614a91b615e3fd2e5b6edc5b70ac6a1faffb4f4a1423cb634aff671dc7228bb70be8ef150c274bf57895048fae5566aac77a WHIRLPOOL 8820c937e308b940f58fe7c0132394a17b0d6e78844b0b72757f8f8f76c000a548fb291a508b8e803460ba75c745ce045f54541480f25756c976129d64236ff0
|
||||
EBUILD easy-slow-down-manager-0.3-r1.ebuild 828 SHA256 79e6252e168de071ec12f97a338a46732788f36d6a6f3d6a29d100315b88787f SHA512 5f6c529c4f091d9add11c4c1a2063d03d6901c98621a9fbeddead2ea5bb1eba07099395fb54aea7af1a5a4e261f1251116e5aa77d1e6452e856b4931efb92786 WHIRLPOOL 94658a286d2a487f16fadb31f4f94be839f87bf17c38e18bcfe420cd7f173e461212693badbf9f3232fddd05e420e3651417b36ea06c24a80342fd3fb00a86a8
|
||||
MISC ChangeLog 853 SHA256 476292ff61f9a4432430790205bba5b11eb45a1e00d3c3d66d4696113739ef75 SHA512 292602e4d292419a726e1a6d60eac541b7608ec24ea760599418f5edd41ac755ee38b09e8a896bb7593c3a069050cd7edcbf4e1c88906e8a298927ca838ca6f6 WHIRLPOOL aff75d4dc6e64988f749356e69f4154d0a71287bc4ad6cbcb79b35ce33551440cbd109b0040c2a0f050298f0b6be55c71a2ba30ac13e7c755d58b64c86fb26d5
|
||||
MISC metadata.xml 306 SHA256 441074c311e18864e1b86cb36ce57cfb6c5bf929afa9f509e83fd351a24bd5dd SHA512 cde86252f9d1ef4d8490d41f439a2b0d40efe7e38e92b5942cce335a4ef0ced57130ec1f2efb2f77625ba03407cc0fffdb4c807d3da1e32d49e64e71196d4946 WHIRLPOOL 765335da94129ba429fd934a925ff0ed2ca77ef34fb58dee88b1d9b3b38ded1f87bf92f97bce54bcaf52cff09663ba433ccbf9f082d04b12fc62a5ff71eb2dd7
|
@ -1,30 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-laptop/easy-slow-down-manager/easy-slow-down-manager-0.3.ebuild,v 1.3 2013/07/02 21:59:39 vincent Exp $
|
||||
|
||||
EAPI=4
|
||||
inherit eutils linux-mod
|
||||
|
||||
DESCRIPTION="provides Linux users with functionality similar to Samsung Easy Speed Up Manager"
|
||||
HOMEPAGE="http://code.google.com/p/easy-slow-down-manager/"
|
||||
SRC_URI="http://${PN}.googlecode.com/files/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-1"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE=""
|
||||
|
||||
S=${WORKDIR}
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
MODULE_NAMES="samsung-backlight() easy_slow_down_manager()"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${P}-kv_dir.patch
|
||||
epatch "${FILESDIR}"/${P}-kernel-3.10-1.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
BUILD_PARAMS="KERN_DIR=${KV_DIR}"
|
||||
linux-mod_src_compile
|
||||
}
|
@ -1,205 +0,0 @@
|
||||
diff --git a/easy_slow_down_manager.c b/easy_slow_down_manager.c
|
||||
index 7b2d1e9..1336557 100644
|
||||
--- a/easy_slow_down_manager.c
|
||||
+++ b/easy_slow_down_manager.c
|
||||
@@ -4,6 +4,7 @@
|
||||
#include <linux/proc_fs.h>
|
||||
#include <linux/pci.h>
|
||||
#include <linux/delay.h>
|
||||
+#include <linux/version.h>
|
||||
#include <asm/uaccess.h>
|
||||
#include <linux/dmi.h>
|
||||
|
||||
@@ -101,7 +102,7 @@ MODULE_PARM_DESC(debug, "Verbose output");
|
||||
int sabi_exec_command(u8 command, u8 data, struct sabi_retval *sretval)
|
||||
{
|
||||
int retval = 0;
|
||||
-
|
||||
+
|
||||
mutex_lock(&sabi_mutex);
|
||||
|
||||
/* enable memory to be able to write to it */
|
||||
@@ -141,22 +142,25 @@ int sabi_exec_command(u8 command, u8 data, struct sabi_retval *sretval)
|
||||
return retval;
|
||||
}
|
||||
|
||||
-int easy_slow_down_read(char *page, char **start, off_t off,
|
||||
- int count, int *eof, void *data) {
|
||||
+ssize_t easy_slow_down_read(struct file *filp, char __user *buffer,
|
||||
+ size_t length, loff_t *off) {
|
||||
struct sabi_retval sretval;
|
||||
-
|
||||
- if (off > 0) {
|
||||
- *eof = 1;
|
||||
- }
|
||||
- else if (!sabi_exec_command(SABI_GET_ETIQUETTE_MODE, 0, &sretval)) {
|
||||
- page[0] = sretval.retval[0] + '0';
|
||||
+
|
||||
+ if (*off > 0)
|
||||
+ return 0;
|
||||
+
|
||||
+ if (!sabi_exec_command(SABI_GET_ETIQUETTE_MODE, 0, &sretval)) {
|
||||
+ char mode = sretval.retval[0] + '0';
|
||||
+ if (copy_to_user(buffer, &mode, 1))
|
||||
+ return -EFAULT;
|
||||
+ (*off)++;
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
-int easy_slow_down_write(struct file *file, const char __user *buffer,
|
||||
- unsigned long count, void *data) {
|
||||
+ssize_t easy_slow_down_write(struct file *filp, const char __user *buffer,
|
||||
+ size_t count, loff_t *off) {
|
||||
char mode = '0';
|
||||
if (copy_from_user(&mode, buffer, 1)) {
|
||||
return -EFAULT;
|
||||
@@ -167,22 +171,25 @@ int easy_slow_down_write(struct file *file, const char __user *buffer,
|
||||
return count;
|
||||
}
|
||||
|
||||
-int easy_backlight_read(char *page, char **start, off_t off,
|
||||
- int count, int *eof, void *data) {
|
||||
+ssize_t easy_backlight_read(struct file *filp, char __user *buffer,
|
||||
+ size_t length, loff_t *off) {
|
||||
struct sabi_retval sretval;
|
||||
-
|
||||
- if (off > 0) {
|
||||
- *eof = 1;
|
||||
- }
|
||||
- else if (!sabi_exec_command(SABI_GET_BACKLIGHT, 0, &sretval)) {
|
||||
- page[0] = sretval.retval[0] + '0';
|
||||
+
|
||||
+ if (*off > 0)
|
||||
+ return 0;
|
||||
+
|
||||
+ if (!sabi_exec_command(SABI_GET_BACKLIGHT, 0, &sretval)) {
|
||||
+ char mode = sretval.retval[0] + '0';
|
||||
+ if (copy_to_user(buffer, &mode, 1))
|
||||
+ return -EFAULT;
|
||||
+ (*off)++;
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
-int easy_backlight_write(struct file *file, const char __user *buffer,
|
||||
- unsigned long count, void *data) {
|
||||
+ssize_t easy_backlight_write(struct file *file, const char __user *buffer,
|
||||
+ size_t count, loff_t *off) {
|
||||
char mode = '0';
|
||||
if (copy_from_user(&mode, buffer, 1)) {
|
||||
return -EFAULT;
|
||||
@@ -193,22 +200,25 @@ int easy_backlight_write(struct file *file, const char __user *buffer,
|
||||
return count;
|
||||
}
|
||||
|
||||
-int easy_wifi_kill_read(char *page, char **start, off_t off,
|
||||
- int count, int *eof, void *data) {
|
||||
+ssize_t easy_wifi_kill_read(struct file *filp, char __user *buffer,
|
||||
+ size_t length, loff_t *off) {
|
||||
struct sabi_retval sretval;
|
||||
-
|
||||
- if (off > 0) {
|
||||
- *eof = 1;
|
||||
- }
|
||||
- else if (!sabi_exec_command(SABI_GET_WIRELESS_BUTTON, 0, &sretval)) {
|
||||
- page[0] = sretval.retval[0] + '0';
|
||||
+
|
||||
+ if (*off > 0)
|
||||
+ return 0;
|
||||
+
|
||||
+ if (!sabi_exec_command(SABI_GET_WIRELESS_BUTTON, 0, &sretval)) {
|
||||
+ char mode = sretval.retval[0] + '0';
|
||||
+ if (copy_to_user(buffer, &mode, 1))
|
||||
+ return -EFAULT;
|
||||
+ (*off)++;
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
-int easy_wifi_kill_write(struct file *file, const char __user *buffer,
|
||||
- unsigned long count, void *data) {
|
||||
+ssize_t easy_wifi_kill_write(struct file *file, const char __user *buffer,
|
||||
+ size_t count, loff_t *off) {
|
||||
char mode = '0';
|
||||
if (copy_from_user(&mode, buffer, 1)) {
|
||||
return -EFAULT;
|
||||
@@ -219,8 +229,26 @@ int easy_wifi_kill_write(struct file *file, const char __user *buffer,
|
||||
return count;
|
||||
}
|
||||
|
||||
+static const struct file_operations proc_fops_slow_down = {
|
||||
+ .owner = THIS_MODULE,
|
||||
+ .read = easy_slow_down_read,
|
||||
+ .write = easy_slow_down_write
|
||||
+};
|
||||
+
|
||||
+static const struct file_operations proc_fops_wifi_kill = {
|
||||
+ .owner = THIS_MODULE,
|
||||
+ .read = easy_wifi_kill_read,
|
||||
+ .write = easy_wifi_kill_write
|
||||
+};
|
||||
+
|
||||
+static const struct file_operations proc_fops_backlight = {
|
||||
+ .owner = THIS_MODULE,
|
||||
+ .read = easy_backlight_read,
|
||||
+ .write = easy_backlight_write
|
||||
+};
|
||||
+
|
||||
int __init easy_slow_down_init(void) {
|
||||
-
|
||||
+
|
||||
const char *test_str = "SwSmi@";
|
||||
int pos;
|
||||
int index = 0;
|
||||
@@ -290,19 +318,15 @@ int __init easy_slow_down_init(void) {
|
||||
}
|
||||
|
||||
|
||||
- proc_entry_slow_down = create_proc_entry("easy_slow_down_manager", 0666, NULL);
|
||||
+ proc_entry_slow_down = proc_create("easy_slow_down_manager", 0666, NULL, &proc_fops_slow_down);
|
||||
if (proc_entry_slow_down == NULL) {
|
||||
printk(KERN_INFO "Easy slow down manager: Couldn't create proc entry\n");
|
||||
iounmap(sabi_iface);
|
||||
iounmap(f0000_segment);
|
||||
return -ENOMEM;
|
||||
}
|
||||
- else {
|
||||
- proc_entry_slow_down->read_proc = easy_slow_down_read;
|
||||
- proc_entry_slow_down->write_proc = easy_slow_down_write;
|
||||
- }
|
||||
|
||||
- proc_entry_wifi_kill = create_proc_entry("easy_wifi_kill", 0666, NULL);
|
||||
+ proc_entry_wifi_kill = proc_create("easy_wifi_kill", 0666, NULL, &proc_fops_wifi_kill);
|
||||
if (proc_entry_wifi_kill == NULL) {
|
||||
printk(KERN_INFO "Easy slow down manager: Couldn't create proc entry\n");
|
||||
remove_proc_entry("easy_slow_down_manager", NULL);
|
||||
@@ -310,12 +334,8 @@ int __init easy_slow_down_init(void) {
|
||||
iounmap(f0000_segment);
|
||||
return -ENOMEM;
|
||||
}
|
||||
- else {
|
||||
- proc_entry_wifi_kill->read_proc = easy_wifi_kill_read;
|
||||
- proc_entry_wifi_kill->write_proc = easy_wifi_kill_write;
|
||||
- }
|
||||
-
|
||||
- proc_entry_backlight = create_proc_entry("easy_backlight", 0666, NULL);
|
||||
+
|
||||
+ proc_entry_backlight = proc_create("easy_backlight", 0666, NULL, &proc_fops_backlight);
|
||||
if (proc_entry_backlight == NULL) {
|
||||
printk(KERN_INFO "Easy slow down manager: Couldn't create proc entry\n");
|
||||
remove_proc_entry("easy_slow_down_manager", NULL);
|
||||
@@ -324,10 +344,6 @@ int __init easy_slow_down_init(void) {
|
||||
iounmap(f0000_segment);
|
||||
return -ENOMEM;
|
||||
}
|
||||
- else {
|
||||
- proc_entry_backlight->read_proc = easy_backlight_read;
|
||||
- proc_entry_backlight->write_proc = easy_backlight_write;
|
||||
- }
|
||||
return 0;
|
||||
}
|
||||
|
@ -1,16 +0,0 @@
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 60a649c..fbdc332 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1,8 +1,8 @@
|
||||
obj-m := easy_slow_down_manager.o samsung-backlight.o
|
||||
-KVERSION = $(shell uname -r)
|
||||
+KERN_DIR=/usr/src/linux
|
||||
|
||||
all:
|
||||
- $(MAKE) -C /lib/modules/$(KVERSION)/build M=$(PWD) modules
|
||||
+ $(MAKE) -C /$(KERN_DIR) M=$(PWD) modules
|
||||
|
||||
clean:
|
||||
- $(MAKE) -C /lib/modules/$(KVERSION)/build M=$(PWD) clean
|
||||
+ $(MAKE) -C /$(KERN_DIR) M=$(PWD) clean
|
@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer>
|
||||
<email>maintainer-needed@gentoo.org</email>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="google-code">easy-slow-down-manager</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -1,18 +0,0 @@
|
||||
AUX 50nvidia-prelink-blacklist 319 SHA256 61adce61498451898c22fb538151379438729957418eacf4f69195b3e03ec1f4 SHA512 7252b464c45669bb402859ddb2c95f4553a37027870b6aeada3e1dd58fefe7b4713d3486d301177efdcd7559dbc31ceb6078220d5c0187bdc636d817a98e1a41 WHIRLPOOL 93e14ed7c8fb5dba87295c87e1e8906afac290f63dc6ea023fa6c387ed47ff13d488b3b24c400aee42a22737856a7782925d9a3a412ddcd1984dbbd7e51579a5
|
||||
AUX 95-nvidia-settings 54 SHA256 c4b293c6c2659bebcbad9cffc1e237c6908a3763599e432aba89d07bc2826ba0 SHA512 0fdaff8701598081eeb78defcd140b78f75309ace998df67569a15d0ff653aca7ad0576912bf9a619f42990e6fb35cdb79e21f8181d3cd04dea719d912da8be9 WHIRLPOOL d71fef01f8c346089ef2556ffe62c5094f89582b73500711a7f18f25424e59baa12f6b0861bd8efd9bf4c5bbf794642927ca322cee218fd2da9fc7baa50fa827
|
||||
AUX NVIDIA_glx-defines.patch 437 SHA256 0007f3d962edb87da4788ce58869679c1b10f28223a6bf1c23696fede57305da SHA512 a9cbbe5d5d362db0eb92d5b9fe87f28cccb600df9b44ae2b323ed08da97c32d6a4a0553c7c82ea3777ab91a1a4bf6b74f04d89b6ec28e60565e677cc4af48351 WHIRLPOOL a826b11c86803530346a65612ebd1a12f77f6c6ba1d93af597435993086451648b825fbc245a2c5850e0680c58129924843744d7e29013d5087c3b4dd9fefb14
|
||||
AUX NVIDIA_glx-glheader.patch 380 SHA256 f630e24067bf6199a64f8fe8c5d6fc158cb4b153bda65ffc3f97b36a9cb08faf SHA512 366ebbe967001f4d694e9d6ae61fbd8b57e2946bba495894936809634bb87bd6ba6b10689969977e4d0eaba6983c16fe8d78830112b5b28f01c78381a0a095d6 WHIRLPOOL 8609fcedb439299189d9d05606a290a63de8b207bab855f874faa36e892396f41159d26e505dfead89fdac9d7e61aeeb50b16877aa14ad62dc3cd617353d7d60
|
||||
AUX nvidia-169.07 639 SHA256 a8c4860f008d53776fda7a17b59524f271236559af688e9a2c9845cbbcba1577 SHA512 3af295c026280dc3a2b73c2cc7772254686b09cad15f1333ab0b4de8cb0ccf78e725ced2a399b10edcf8af6ba42ab1485dc0661af67461b0c3789f786357772f WHIRLPOOL 626ae3c01c879e0cfe05bd373e0b9dfd6f462dd9ef6ae94a7d60276fe2d17c57fbb20aaa4d2a186a0ffc2a860076692aac854d00a3545bc9736e7bb8d0581055
|
||||
AUX nvidia-drivers-331.13-kernel-3.11.patch 591 SHA256 c03b8d8410482f1ee42a4b023c66382b129aa67f0947e9f8472d54ddaf1b630e SHA512 a656262407ca4ef6159e2b97073814564fb276fd76961b05fd7e608401c5c8a89fd27c1c09a46a586d9b9f119c6127c2ac97b6bcaac682b60b8ab2be4bf4f432 WHIRLPOOL b22ac117847bdc87a9ae1fc10f360c81bc3ffe734641aa8f49bfbf973ee8ae17fe1004fc1b563bcc0052e25f9898a4ee17421d4367970fca1d15f192782164f5
|
||||
AUX nvidia-drivers-331.13-pax-usercopy.patch 2127 SHA256 669ffcab77432f116c2b9bc7ed55e2a1f4e208ff19b63d43003af2b346f7c0c0 SHA512 c6ebd534d1e88fe5c1b71ef5ccced8957e34931cab72d1adb4017c703fc2e285f6e36a778bb36a319f505cfe6408be098569944aa5d78c00c8837ffe880d006a WHIRLPOOL 798d3f3edeae2361f039372f5fe13cf9df5aef20ee63c7cdc83e806cbad097b0ddccd6b30968c2b2ceb768ad0425b02aaefe1ba41709e3f0fb79a82f908579a6
|
||||
AUX nvidia-drivers-pax-const.patch 833 SHA256 74ba8aa3b03e1b4a0515fd84c159eaeb7635fa1364e77544b01ff6f571f0e6d8 SHA512 6ef94db71cab2dd47273eaed1857209d03ef648d268c7645f3ca4caf6b894590e42a8e716e4354f2eed656e7d55a4c1774b1e6a4be215fbf59fc9d0b1a5762a0 WHIRLPOOL 1b2d737ee7ccee831c85bd8af9605c0633fd025bb209e6d76c13f49a5664aa490bd5b6ce48855e541fe87380cd7b723162e1965b803e1ed630f239bf4dbd0d19
|
||||
AUX nvidia-drivers-pax-usercopy.patch 2350 SHA256 56980f43db38d582bc6a9bfd881973fce6e3e056b77ce4f4005bdcf79526a863 SHA512 54a1354ba008d014a608044610027b4d808120f8e77cc7d5ac855c3dcf4f487b0a4c0870ae4e727db0643cb56ee21513b803976e9a30c6838adf2f5414232804 WHIRLPOOL 78ac54bfe52cc3b6dfa28e17020991dfb7056984d667b0fefa41d23372b03e1a8e6d66c74e1dee234733d5b2b36e2c0813f507a89716ae2d8f1f6db917fdf01d
|
||||
AUX nvidia-drivers-settings.desktop 193 SHA256 31c062449b8bcc8adcd3ee649d8aebf0bef502400bcbbbb46124217e1efb17a3 SHA512 fbb81d2520e9025fbffb2a8e7b3647f621ddc9d36c79d063d49e901286e8d1ea45de1274f42e33ff1aece5cebd547a42829d65b421db39d808947554b0f57453 WHIRLPOOL c797eb0ec1044ecaaa979ca5180f840d9c82c5c040dd81b2d86ca4afade9f0c006fb8951f04cc4d2b206110d38b339690386d291ff8f625a22b38178a3cd970b
|
||||
AUX nvidia-smi.init 664 SHA256 c996033b81cc1512d8370d62575a0ea0c694f6e1b91cc948b4529625130601a7 SHA512 f7cc27d6cce7c13adecb0b927680979ca6a398bc742a93492ab7f85702e4442d8fc00c476f381a0177ae031a9ae45c5cbb6777f20c545d5cd695150f9551a4ce WHIRLPOOL 66bf1a70fa0038a54ca9254cd5543f61bdc69a4c070544660f4ef9b2a004d28f1defdb26b1bc102b1eabd24e679f36fec14c9b313fba4b54c7a9a51a73ca021e
|
||||
AUX nvidia-udev.sh 185 SHA256 120c0af2b64fbcbd7032217a78eec8b104874c1ca68726367bce22c57944e07e SHA512 166df3a4e7c1862ca2e0f634bf5eed7aad1bdd7e55764ca42371b91a7077c59f0bc243de5616fd38dac9694159d1695d54fbd08ac89d4d3f3649c70c7db5977e WHIRLPOOL cb9995029cdb2fe1bc7fe5ae54041ee5de8da86bf5eb3616d062475e56c44d436e1e66683ecddd986fc5bca5723d88da4b1a42f65f3cd7e15636928bd21fce14
|
||||
AUX nvidia.udev-rule 462 SHA256 37b152a5055a16d1947171567178e2841679ddf03dba9d48e7d30f1e3b469ac6 SHA512 96f9edaa0b46bea5fce17596f868bea5265b303d7185af6ba81527bbd7b8fdf92de9311317cbde51a29d222083d451c25ab77c3d6837cbc4072a50d9af89aa86 WHIRLPOOL 89ed95f33db7485a3a1acd91df33ecdfb7d0a249db2d7674f134fb85b35a54653d0458e478503315ce506ae5d3c8dcd4ac20420711fdbdd087ea4bd779627d13
|
||||
DIST NVIDIA-FreeBSD-x86-331.13.tar.gz 55428438 SHA256 a9d2c761c0c58898f536728728420b36685364fccf864b57a7d3413d74a8ba5f SHA512 96e922797cbc1a51147e07b208f33d54ae5648ad8b033ef9e7cb4f2fc5730a56b54ac265a8ea8b5004413dfd468db261d6f33a71e7879db7e431656c378adf21 WHIRLPOOL 7aab0be204e69c6f44333593150ae4bbb9e97d8967a52ae8d228acfa2051763ac174a80e170cb11978dac3c91eb285b845a5c6c5e74b5b7f398b35417b409650
|
||||
DIST NVIDIA-FreeBSD-x86_64-331.13.tar.gz 46552607 SHA256 3f42aaf4b35bb04dedd4f9511e36bb473ae4174c7609ea100396d16ec532a17f SHA512 7daae19273f31a7802852dd4fa7726a1b6c828e0c868f7fa918f5c6378b1152223638d7556a7c4f02246bb1e0ed2d32d9118c67c9b651f2d792ccc796b09bbbd WHIRLPOOL aec73e407be9280fa160fcfac4b7652f7f21f684c1442c106eedc8b82c2f99a0c5a3b4ee82f3c41244d22f819e96b9752f4989ec37ed0e975a3c8fe724236c86
|
||||
DIST NVIDIA-Linux-x86-331.13.run 36834516 SHA256 36d5402d9cca8eb24261e1141ecc67040a4120f5a9391de0481c68e9de9009be SHA512 97603a193e63dd747a38751e79dfb97425af2c9332d2a40bd0083ad82b35e003e602ba029d5c7b0683bbc4644af19e133214c72e72af0f23bf55976e61637151 WHIRLPOOL d7e18bf5f3725973b48dc57e6137c91c31c2654b90c28f8606ca193d40d970f61a2ec089bacee282753bc51673390c38b8704a9693d36c30a09cc5de7a0fbfa5
|
||||
DIST NVIDIA-Linux-x86_64-331.13.run 59835902 SHA256 571741b8ea153281916382d287849f99a9fa65b911aa54d678b48ef0091cc0cd SHA512 5c7c6a23a691b67ad5943c36829b9e4f0c5103f4e3d3b28fbdfd9ee9cd697bb69a7474239313feb67ff9e0499749b49aa6ee33aaf59c1f14c14bd14ea5b25d62 WHIRLPOOL 5587c94c050134d13076955c3bdd7e33aca86f61befa3b70522338bcd535bcd1902140b2564fecdff1dda4fce025a028bf6698c025c80939fe84970c507ed00d
|
||||
EBUILD nvidia-drivers-331.13-r1.ebuild 12270 SHA256 7b1c66c9e7d263e53d83a2ae2fed9e695a519211600d4c3e313fb290efeca690 SHA512 e7c195a5244d8cf1e235fda7f9464df397bf1b214dcb9b172bd766170cae4ffb5cc4e6211e5ef87fa240837e552bf9270f614187c4d6f232851d16d840d9a34f WHIRLPOOL b4aaf7a278984062553b2e951ca5344467533d944290747f240f4da63a647945f71a4c6d91356199f36aa58e3b816f3024e450764299ac684462497c9c070bfa
|
@ -1 +0,0 @@
|
||||
PRELINK_PATH_MASK="/usr/lib{,64}/tls/libnvidia-tls*:/usr/lib{,64}/libnvidia*:/usr/lib{,64}/libGL*:/usr/lib{,64}/opengl/nvidia/*:/usr/lib{,64}/OpenCL/vendors/nvidia/*:/usr/lib{,64}/xorg/modules/drivers/nvidia*:/usr/lib{,64}/libvdpau_nvidia*:/usr/lib{,64}/libXvMCNVIDIA*:/usr/lib{,64}/libcuda*:/usr/lib{,64}/libnvcuvid*"
|
@ -1,2 +0,0 @@
|
||||
#!/bin/sh
|
||||
/opt/bin/nvidia-settings --load-config-only
|
@ -1,11 +0,0 @@
|
||||
diff -ur NVIDIA_GLX-1.0-4191/usr/include/GL/glx.h NVIDIA_GLX-1.0-4191.new/usr/include/GL/glx.h
|
||||
--- NVIDIA_GLX-1.0-4191/usr/include/GL/glx.h 2002-12-09 21:26:55.000000000 +0100
|
||||
+++ NVIDIA_GLX-1.0-4191.new/usr/include/GL/glx.h 2003-01-30 18:20:23.000000000 +0100
|
||||
@@ -39,6 +39,7 @@
|
||||
typedef XID GLXPixmap;
|
||||
typedef XID GLXDrawable;
|
||||
typedef XID GLXPbuffer;
|
||||
+typedef XID GLXPbufferSGIX;
|
||||
typedef XID GLXWindow;
|
||||
typedef XID GLXFBConfigID;
|
||||
|
@ -1,13 +0,0 @@
|
||||
--- usr/include/GL/gl.g.orig 2004-07-17 19:56:59.789410584 +1000
|
||||
+++ usr/include/GL/gl.h 2004-07-17 19:59:08.844791184 +1000
|
||||
@@ -66,6 +66,10 @@
|
||||
typedef double GLclampd;
|
||||
typedef void GLvoid;
|
||||
|
||||
+/* Patching for some better defines in the global system */
|
||||
+#ifndef GL_GLEXT_LEGACY
|
||||
+#include <GL/glext.h>
|
||||
+#endif
|
||||
|
||||
/*************************************************************/
|
||||
|
@ -1,14 +0,0 @@
|
||||
# Nvidia drivers support
|
||||
alias char-major-195 nvidia
|
||||
alias /dev/nvidiactl char-major-195
|
||||
|
||||
# To tweak the driver the following options can be used, note that
|
||||
# you should be careful, as it could cause instability!! For more
|
||||
# options see /usr/share/doc/PACKAGE/README
|
||||
#
|
||||
# !!! SECURITY WARNING !!!
|
||||
# DO NOT MODIFY OR REMOVE THE DEVICE FILE RELATED OPTIONS UNLESS YOU KNOW
|
||||
# WHAT YOU ARE DOING.
|
||||
# ONLY ADD TRUSTED USERS TO THE VIDEO GROUP, THESE USERS MAY BE ABLE TO CRASH,
|
||||
# COMPROMISE, OR IRREPARABLY DAMAGE THE MACHINE.
|
||||
options nvidia NVreg_DeviceFileMode=432 NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=VIDEOGID NVreg_ModifyDeviceFiles=1
|
@ -1,17 +0,0 @@
|
||||
--- nvidia-331.13/kernel/nv-linux.h 2013-09-06 05:16:30.000000000 +0100
|
||||
+++ nvidia-331.13-new/kernel/nv-linux.h 2013-09-06 05:25:06.000000000 +0100
|
||||
@@ -958,7 +958,13 @@
|
||||
#endif
|
||||
|
||||
#if !defined(NV_VMWARE)
|
||||
-#define NV_NUM_PHYSPAGES num_physpages
|
||||
+
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0)
|
||||
+#define NV_NUM_PHYSPAGES get_num_physpages
|
||||
+#else
|
||||
+#define NV_NUM_PHYSPAGES num_physpages
|
||||
+#endif
|
||||
+
|
||||
#define NV_GET_CURRENT_PROCESS() current->tgid
|
||||
#define NV_IN_ATOMIC() in_atomic()
|
||||
#define NV_LOCAL_BH_DISABLE() local_bh_disable()
|
@ -1,52 +0,0 @@
|
||||
--- a/kernel/nv-linux.h
|
||||
+++ b/kernel/nv-linux.h
|
||||
@@ -757,16 +757,16 @@
|
||||
|
||||
#if defined(NV_KMEM_CACHE_CREATE_PRESENT)
|
||||
#if (NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT == 6)
|
||||
-#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type) \
|
||||
+#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type, flags) \
|
||||
{ \
|
||||
kmem_cache = kmem_cache_create(name, sizeof(type), \
|
||||
- 0, 0, NULL, NULL); \
|
||||
+ 0, flags, NULL, NULL); \
|
||||
}
|
||||
#elif (NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT == 5)
|
||||
-#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type) \
|
||||
+#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type, flags) \
|
||||
{ \
|
||||
kmem_cache = kmem_cache_create(name, sizeof(type), \
|
||||
- 0, 0, NULL); \
|
||||
+ 0, flags, NULL); \
|
||||
}
|
||||
#else
|
||||
#error "NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT value unrecognized!"
|
||||
--- a/kernel/nv.c
|
||||
+++ b/kernel/nv.c
|
||||
@@ -794,7 +794,7 @@
|
||||
NV_SPIN_LOCK_INIT(&km_lock);
|
||||
#endif
|
||||
|
||||
- NV_KMEM_CACHE_CREATE(nv_stack_t_cache, NV_STACK_CACHE_STR, nv_stack_t);
|
||||
+ NV_KMEM_CACHE_CREATE(nv_stack_t_cache, NV_STACK_CACHE_STR, nv_stack_t, SLAB_USERCOPY);
|
||||
if (nv_stack_t_cache == NULL)
|
||||
{
|
||||
nv_printf(NV_DBG_ERRORS, "NVRM: stack cache allocation failed!\n");
|
||||
@@ -924,7 +924,7 @@
|
||||
nv->os_state = (void *) &nv_ctl_device;
|
||||
nv_lock_init_locks(nv);
|
||||
|
||||
- NV_KMEM_CACHE_CREATE(nv_pte_t_cache, NV_PTE_CACHE_STR, nv_pte_t);
|
||||
+ NV_KMEM_CACHE_CREATE(nv_pte_t_cache, NV_PTE_CACHE_STR, nv_pte_t, 0);
|
||||
if (nv_pte_t_cache == NULL)
|
||||
{
|
||||
rc = -ENOMEM;
|
||||
@@ -935,7 +935,7 @@
|
||||
if (NV_BUILD_MODULE_INSTANCES == 0)
|
||||
{
|
||||
NV_KMEM_CACHE_CREATE(nvidia_p2p_page_t_cache, "nvidia_p2p_page_t",
|
||||
- nvidia_p2p_page_t);
|
||||
+ nvidia_p2p_page_t, 0);
|
||||
if (nvidia_p2p_page_t_cache == NULL)
|
||||
{
|
||||
rc = -ENOMEM;
|
@ -1,17 +0,0 @@
|
||||
Binary files kernel.orig/.nv-procfs.c.swp and kernel/.nv-procfs.c.swp differ
|
||||
diff -urp kernel.orig/nv-procfs.c kernel/nv-procfs.c
|
||||
--- kernel.orig/nv-procfs.c 2011-07-13 03:29:30.000000000 +0200
|
||||
+++ kernel/nv-procfs.c 2011-07-19 15:45:27.982993911 +0200
|
||||
@@ -707,8 +707,10 @@ int nv_register_procfs(void)
|
||||
* However, in preparation for this, we need to preserve
|
||||
* the procfs read() and write() operations.
|
||||
*/
|
||||
- nv_procfs_registry_fops.read = entry->proc_fops->read;
|
||||
- nv_procfs_registry_fops.write = entry->proc_fops->write;
|
||||
+ pax_open_kernel();
|
||||
+ *(void **)&nv_procfs_registry_fops.read = entry->proc_fops->read;
|
||||
+ *(void **)&nv_procfs_registry_fops.write = entry->proc_fops->write;
|
||||
+ pax_close_kernel();
|
||||
|
||||
entry = NV_CREATE_PROC_FILE("registry", proc_nvidia,
|
||||
nv_procfs_read_registry,
|
@ -1,54 +0,0 @@
|
||||
diff -urp kernel.orig/nv.c kernel/nv.c
|
||||
--- kernel.orig/nv.c 2011-09-24 02:32:09.000000000 +0200
|
||||
+++ kernel/nv.c 2011-10-05 19:13:41.474242252 +0200
|
||||
@@ -1105,7 +1105,7 @@ static int __init nvidia_init_module(voi
|
||||
NV_SPIN_LOCK_INIT(&km_lock);
|
||||
#endif
|
||||
|
||||
- NV_KMEM_CACHE_CREATE(nv_stack_t_cache, "nv_stack_t", nv_stack_t);
|
||||
+ NV_KMEM_CACHE_CREATE(nv_stack_t_cache, "nv_stack_t", nv_stack_t, SLAB_USERCOPY);
|
||||
if (nv_stack_t_cache == NULL)
|
||||
{
|
||||
nv_printf(NV_DBG_ERRORS, "NVRM: stack cache allocation failed!\n");
|
||||
@@ -1220,7 +1220,7 @@ static int __init nvidia_init_module(voi
|
||||
}
|
||||
#endif
|
||||
|
||||
- NV_KMEM_CACHE_CREATE(nv_pte_t_cache, "nv_pte_t", nv_pte_t);
|
||||
+ NV_KMEM_CACHE_CREATE(nv_pte_t_cache, "nv_pte_t", nv_pte_t, 0);
|
||||
if (nv_pte_t_cache == NULL)
|
||||
{
|
||||
rc = -ENOMEM;
|
||||
@@ -1229,7 +1229,7 @@ static int __init nvidia_init_module(voi
|
||||
}
|
||||
|
||||
NV_KMEM_CACHE_CREATE(nvidia_p2p_page_t_cache, "nvidia_p2p_page_t",
|
||||
- nvidia_p2p_page_t);
|
||||
+ nvidia_p2p_page_t, 0);
|
||||
if (nvidia_p2p_page_t_cache == NULL)
|
||||
{
|
||||
rc = -ENOMEM;
|
||||
diff -urp kernel.orig/nv-linux.h kernel/nv-linux.h
|
||||
--- kernel.orig/nv-linux.h 2011-09-24 02:32:09.000000000 +0200
|
||||
+++ kernel/nv-linux.h 2011-10-05 19:14:42.522238996 +0200
|
||||
@@ -695,16 +695,16 @@ extern nv_spinlock_t km_lock;
|
||||
|
||||
#if defined(NV_KMEM_CACHE_CREATE_PRESENT)
|
||||
#if (NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT == 6)
|
||||
-#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type) \
|
||||
+#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type, flags) \
|
||||
{ \
|
||||
kmem_cache = kmem_cache_create(name, sizeof(type), \
|
||||
- 0, 0, NULL, NULL); \
|
||||
+ 0, flags, NULL, NULL); \
|
||||
}
|
||||
#elif (NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT == 5)
|
||||
-#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type) \
|
||||
+#define NV_KMEM_CACHE_CREATE(kmem_cache, name, type, flags) \
|
||||
{ \
|
||||
kmem_cache = kmem_cache_create(name, sizeof(type), \
|
||||
- 0, 0, NULL); \
|
||||
+ 0, flags, NULL); \
|
||||
}
|
||||
#else
|
||||
#error "NV_KMEM_CACHE_CREATE_ARGUMENT_COUNT value unrecognized!"
|
@ -1,7 +0,0 @@
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=NVIDIA X Server Settings
|
||||
Comment=Configure NVIDIA X Server Settings
|
||||
Exec=/opt/bin/nvidia-settings
|
||||
Icon=nvidia-drivers-settings
|
||||
Categories=System;Settings;
|
@ -1,25 +0,0 @@
|
||||
#!/sbin/runscript
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/files/nvidia-smi.init,v 1.2 2013/05/09 16:32:00 jer Exp $
|
||||
|
||||
pidfile="/run/nvidia-smi.pid"
|
||||
|
||||
depend() {
|
||||
after modules
|
||||
}
|
||||
|
||||
start() {
|
||||
ebegin "Starting NVIDIA System Management Interface"
|
||||
rm -f ${pidfile}
|
||||
start-stop-daemon --start --quiet --pidfile ${pidfile} \
|
||||
--make-pidfile --background --exec /opt/bin/nvidia-smi -- \
|
||||
-q -l 300
|
||||
eend $?
|
||||
}
|
||||
|
||||
stop() {
|
||||
ebegin "Stopping NVIDIA System Management Interface"
|
||||
start-stop-daemon --stop --quiet --pidfile ${pidfile}
|
||||
eend $?
|
||||
}
|
@ -1,17 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ $# -ne 1 ]; then
|
||||
echo "Invalid args" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
case $1 in
|
||||
add|ADD)
|
||||
/opt/bin/nvidia-smi > /dev/null
|
||||
;;
|
||||
remove|REMOVE)
|
||||
rm -f /dev/nvidia*
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
@ -1,6 +0,0 @@
|
||||
ACTION=="add", DEVPATH=="/module/nvidia", SUBSYSTEM=="module", RUN+="nvidia-udev.sh $env{ACTION}"
|
||||
# Previously the ACTION was "add|remove" but one user on bug #376527 had a
|
||||
# problem until he recompiled udev-171-r5, which is one of the versions I
|
||||
# tested with and it was fine. I'm breaking the rules out just to be safe
|
||||
# so someone else doesn't have an issue
|
||||
ACTION=="remove", DEVPATH=="/module/nvidia", SUBSYSTEM=="module", RUN+="nvidia-udev.sh $env{ACTION}"
|
@ -1,456 +0,0 @@
|
||||
# Copyright 1999-2013 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-331.13.ebuild,v 1.3 2013/10/12 15:14:41 jer Exp $
|
||||
|
||||
EAPI=5
|
||||
|
||||
inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \
|
||||
portability toolchain-funcs unpacker user udev
|
||||
|
||||
NV_URI="http://us.download.nvidia.com/XFree86/"
|
||||
X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
|
||||
AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
|
||||
X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
|
||||
AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
|
||||
|
||||
DESCRIPTION="NVIDIA X11 driver and GLX libraries"
|
||||
HOMEPAGE="http://www.nvidia.com/"
|
||||
SRC_URI="
|
||||
amd64-fbsd? ( ${NV_URI}FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
|
||||
amd64? ( ${NV_URI}Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
|
||||
x86-fbsd? ( ${NV_URI}FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
|
||||
x86? ( ${NV_URI}Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
|
||||
"
|
||||
|
||||
LICENSE="GPL-2 NVIDIA-r1"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
|
||||
IUSE="acpi multilib kernel_FreeBSD kernel_linux pax_kernel +tools +X"
|
||||
RESTRICT="bindist mirror strip"
|
||||
EMULTILIB_PKG="true"
|
||||
|
||||
COMMON="
|
||||
app-admin/eselect-opencl
|
||||
kernel_linux? ( >=sys-libs/glibc-2.6.1 )
|
||||
X? (
|
||||
>=app-admin/eselect-opengl-1.0.9
|
||||
)
|
||||
"
|
||||
DEPEND="
|
||||
${COMMON}
|
||||
app-arch/xz-utils
|
||||
kernel_linux? ( virtual/linux-sources )
|
||||
"
|
||||
RDEPEND="
|
||||
${COMMON}
|
||||
acpi? ( sys-power/acpid )
|
||||
tools? (
|
||||
dev-libs/atk
|
||||
dev-libs/glib
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/pango[X]
|
||||
)
|
||||
X? (
|
||||
<x11-base/xorg-server-1.14.99
|
||||
>=x11-libs/libvdpau-0.3-r1
|
||||
multilib? (
|
||||
|| (
|
||||
(
|
||||
x11-libs/libX11[abi_x86_32]
|
||||
x11-libs/libXext[abi_x86_32]
|
||||
)
|
||||
app-emulation/emul-linux-x86-xlibs
|
||||
)
|
||||
)
|
||||
)
|
||||
"
|
||||
|
||||
REQUIRED_USE="tools? ( X )"
|
||||
|
||||
QA_PREBUILT="opt/* usr/lib*"
|
||||
|
||||
S=${WORKDIR}/
|
||||
|
||||
pkg_pretend() {
|
||||
|
||||
if use amd64 && has_multilib_profile && \
|
||||
[ "${DEFAULT_ABI}" != "amd64" ]; then
|
||||
eerror "This ebuild doesn't currently support changing your default ABI"
|
||||
die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
|
||||
fi
|
||||
|
||||
if use kernel_linux && kernel_is ge 3 11 ; then
|
||||
ewarn "Gentoo supports kernels which are supported by NVIDIA"
|
||||
ewarn "which are limited to the following kernels:"
|
||||
ewarn "<sys-kernel/gentoo-sources-3.11"
|
||||
ewarn "<sys-kernel/vanilla-sources-3.11"
|
||||
ewarn ""
|
||||
ewarn "You are free to utilize epatch_user to provide whatever"
|
||||
ewarn "support you feel is appropriate, but will not receive"
|
||||
ewarn "support as a result of those changes."
|
||||
ewarn ""
|
||||
ewarn "Do not file a bug report about this."
|
||||
fi
|
||||
|
||||
# Since Nvidia ships 3 different series of drivers, we need to give the user
|
||||
# some kind of guidance as to what version they should install. This tries
|
||||
# to point the user in the right direction but can't be perfect. check
|
||||
# nvidia-driver.eclass
|
||||
nvidia-driver-check-warning
|
||||
|
||||
# Kernel features/options to check for
|
||||
CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
|
||||
use x86 && CONFIG_CHECK+=" ~HIGHMEM"
|
||||
|
||||
# Now do the above checks
|
||||
use kernel_linux && check_extra_config
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
# try to turn off distcc and ccache for people that have a problem with it
|
||||
export DISTCC_DISABLE=1
|
||||
export CCACHE_DISABLE=1
|
||||
|
||||
if use kernel_linux; then
|
||||
linux-mod_pkg_setup
|
||||
MODULE_NAMES="nvidia(video:${S}/kernel)"
|
||||
BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
|
||||
SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)"
|
||||
# linux-mod_src_compile calls set_arch_to_kernel, which
|
||||
# sets the ARCH to x86 but NVIDIA's wrapping Makefile
|
||||
# expects x86_64 or i386 and then converts it to x86
|
||||
# later on in the build process
|
||||
BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
|
||||
fi
|
||||
|
||||
# set variables to where files are in the package structure
|
||||
if use kernel_FreeBSD; then
|
||||
use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
|
||||
use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
|
||||
NV_DOC="${S}/doc"
|
||||
NV_OBJ="${S}/obj"
|
||||
NV_SRC="${S}/src"
|
||||
NV_MAN="${S}/x11/man"
|
||||
NV_X11="${S}/obj"
|
||||
NV_SOVER=1
|
||||
elif use kernel_linux; then
|
||||
NV_DOC="${S}"
|
||||
NV_OBJ="${S}"
|
||||
NV_SRC="${S}/kernel"
|
||||
NV_MAN="${S}"
|
||||
NV_X11="${S}"
|
||||
NV_SOVER=${PV}
|
||||
else
|
||||
die "Could not determine proper NVIDIA package"
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if ! use kernel_FreeBSD; then
|
||||
cd "${S}"
|
||||
unpack_makeself
|
||||
else
|
||||
unpack ${A}
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Please add a brief description for every added patch
|
||||
|
||||
if use kernel_linux; then
|
||||
if kernel_is lt 2 6 9 ; then
|
||||
eerror "You must build this against 2.6.9 or higher kernels."
|
||||
fi
|
||||
|
||||
# If greater than 2.6.5 use M= instead of SUBDIR=
|
||||
# convert_to_m "${NV_SRC}"/Makefile.kbuild
|
||||
fi
|
||||
|
||||
if use pax_kernel; then
|
||||
ewarn "Using PAX patches is not supported. You will be asked to"
|
||||
ewarn "use a standard kernel should you have issues. Should you"
|
||||
ewarn "need support with these patches, contact the PaX team."
|
||||
epatch "${FILESDIR}"/${P}-pax-usercopy.patch
|
||||
fi
|
||||
|
||||
# Allow user patches so they can support RC kernels and whatever else
|
||||
epatch_user
|
||||
|
||||
epatch "${FILESDIR}"/${P}-kernel-3.11.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# This is already the default on Linux, as there's no toplevel Makefile, but
|
||||
# on FreeBSD there's one and triggers the kernel module build, as we install
|
||||
# it by itself, pass this.
|
||||
|
||||
cd "${NV_SRC}"
|
||||
if use kernel_FreeBSD; then
|
||||
MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
|
||||
LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
|
||||
elif use kernel_linux; then
|
||||
linux-mod_src_compile
|
||||
fi
|
||||
}
|
||||
|
||||
# Install nvidia library:
|
||||
# the first parameter is the library to install
|
||||
# the second parameter is the provided soversion
|
||||
# the third parameter is the target directory if its not /usr/lib
|
||||
donvidia() {
|
||||
# Full path to library minus SOVER
|
||||
MY_LIB="$1"
|
||||
|
||||
# SOVER to use
|
||||
MY_SOVER="$2"
|
||||
|
||||
# Where to install
|
||||
MY_DEST="$3"
|
||||
|
||||
if [[ -z "${MY_DEST}" ]]; then
|
||||
MY_DEST="/usr/$(get_libdir)"
|
||||
action="dolib.so"
|
||||
else
|
||||
exeinto ${MY_DEST}
|
||||
action="doexe"
|
||||
fi
|
||||
|
||||
# Get just the library name
|
||||
libname=$(basename $1)
|
||||
|
||||
# Install the library with the correct SOVER
|
||||
${action} ${MY_LIB}.${MY_SOVER} || \
|
||||
die "failed to install ${libname}"
|
||||
|
||||
# If SOVER wasn't 1, then we need to create a .1 symlink
|
||||
if [[ "${MY_SOVER}" != "1" ]]; then
|
||||
dosym ${libname}.${MY_SOVER} \
|
||||
${MY_DEST}/${libname}.1 || \
|
||||
die "failed to create ${libname} symlink"
|
||||
fi
|
||||
|
||||
# Always create the symlink from the raw lib to the .1
|
||||
dosym ${libname}.1 \
|
||||
${MY_DEST}/${libname} || \
|
||||
die "failed to create ${libname} symlink"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use kernel_linux; then
|
||||
linux-mod_src_install
|
||||
|
||||
VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)"
|
||||
if [ -z "$VIDEOGROUP" ]; then
|
||||
eerror "Failed to determine the video group gid."
|
||||
die "Failed to determine the video group gid."
|
||||
fi
|
||||
|
||||
# Add the aliases
|
||||
[ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR"
|
||||
sed -e 's:PACKAGE:'${PF}':g' \
|
||||
-e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \
|
||||
"${WORKDIR}"/nvidia
|
||||
insinto /etc/modprobe.d
|
||||
newins "${WORKDIR}"/nvidia nvidia.conf
|
||||
|
||||
# Ensures that our device nodes are created when not using X
|
||||
exeinto "$(udev_get_udevdir)"
|
||||
doexe "${FILESDIR}"/nvidia-udev.sh
|
||||
udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
|
||||
|
||||
elif use kernel_FreeBSD; then
|
||||
if use x86-fbsd; then
|
||||
insinto /boot/modules
|
||||
doins "${S}/src/nvidia.kld"
|
||||
fi
|
||||
|
||||
exeinto /boot/modules
|
||||
doexe "${S}/src/nvidia.ko"
|
||||
fi
|
||||
|
||||
# NVIDIA kernel <-> userspace driver config lib
|
||||
donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER}
|
||||
|
||||
# NVIDIA video encode/decode <-> CUDA
|
||||
if use kernel_linux; then
|
||||
donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER}
|
||||
donvidia ${NV_OBJ}/libnvidia-encode.so ${NV_SOVER}
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
# Xorg DDX driver
|
||||
insinto /usr/$(get_libdir)/xorg/modules/drivers
|
||||
doins ${NV_X11}/nvidia_drv.so
|
||||
|
||||
# Xorg GLX driver
|
||||
donvidia ${NV_X11}/libglx.so ${NV_SOVER} \
|
||||
/usr/$(get_libdir)/opengl/nvidia/extensions
|
||||
fi
|
||||
|
||||
# OpenCL ICD for NVIDIA
|
||||
if use kernel_linux; then
|
||||
insinto /etc/OpenCL/vendors
|
||||
doins ${NV_OBJ}/nvidia.icd
|
||||
fi
|
||||
|
||||
# Documentation
|
||||
dohtml ${NV_DOC}/html/*
|
||||
if use kernel_FreeBSD; then
|
||||
dodoc "${NV_DOC}/README"
|
||||
use X && doman "${NV_MAN}/nvidia-xconfig.1"
|
||||
use tools && doman "${NV_MAN}/nvidia-settings.1"
|
||||
else
|
||||
# Docs
|
||||
newdoc "${NV_DOC}/README.txt" README
|
||||
dodoc "${NV_DOC}/NVIDIA_Changelog"
|
||||
doman "${NV_MAN}/nvidia-smi.1.gz"
|
||||
use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
|
||||
use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
|
||||
doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz"
|
||||
fi
|
||||
|
||||
# Helper Apps
|
||||
exeinto /opt/bin/
|
||||
|
||||
if use X; then
|
||||
doexe ${NV_OBJ}/nvidia-xconfig
|
||||
fi
|
||||
|
||||
if use kernel_linux ; then
|
||||
doexe ${NV_OBJ}/nvidia-cuda-mps-control
|
||||
doexe ${NV_OBJ}/nvidia-cuda-mps-server
|
||||
doexe ${NV_OBJ}/nvidia-debugdump
|
||||
doexe ${NV_OBJ}/nvidia-modprobe
|
||||
doexe ${NV_OBJ}/nvidia-persistenced
|
||||
doexe ${NV_OBJ}/nvidia-smi
|
||||
doman nvidia-cuda-mps-control.1.gz
|
||||
doman nvidia-modprobe.1.gz
|
||||
doman nvidia-persistenced.1.gz
|
||||
newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
|
||||
fi
|
||||
|
||||
if use tools; then
|
||||
doexe ${NV_OBJ}/nvidia-settings
|
||||
fi
|
||||
|
||||
exeinto /usr/bin/
|
||||
doexe ${NV_OBJ}/nvidia-bug-report.sh
|
||||
|
||||
# Desktop entries for nvidia-settings
|
||||
if use tools ; then
|
||||
# There is no icon in the FreeBSD tarball.
|
||||
use kernel_FreeBSD || newicon ${NV_OBJ}/nvidia-settings.png ${PN}-settings.png
|
||||
domenu "${FILESDIR}"/${PN}-settings.desktop
|
||||
exeinto /etc/X11/xinit/xinitrc.d
|
||||
doexe "${FILESDIR}"/95-nvidia-settings
|
||||
fi
|
||||
|
||||
#doenvd "${FILESDIR}"/50nvidia-prelink-blacklist
|
||||
|
||||
if has_multilib_profile && use multilib ; then
|
||||
local OABI=${ABI}
|
||||
for ABI in $(get_install_abis) ; do
|
||||
src_install-libs
|
||||
done
|
||||
ABI=${OABI}
|
||||
unset OABI
|
||||
else
|
||||
src_install-libs
|
||||
fi
|
||||
|
||||
is_final_abi || die "failed to iterate through all ABIs"
|
||||
|
||||
readme.gentoo_create_doc
|
||||
}
|
||||
|
||||
src_install-libs() {
|
||||
local inslibdir=$(get_libdir)
|
||||
local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
|
||||
local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
|
||||
local libdir=${NV_OBJ}
|
||||
|
||||
if use kernel_linux && has_multilib_profile && \
|
||||
[[ ${ABI} == "x86" ]] ; then
|
||||
libdir=${NV_OBJ}/32
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
# The GLX libraries
|
||||
donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT}
|
||||
donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER}
|
||||
if use kernel_FreeBSD; then
|
||||
donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER}
|
||||
else
|
||||
donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER}
|
||||
fi
|
||||
|
||||
# VDPAU
|
||||
donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER}
|
||||
fi
|
||||
|
||||
# NVIDIA monitoring library
|
||||
if use kernel_linux ; then
|
||||
donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER}
|
||||
fi
|
||||
|
||||
# CUDA & OpenCL
|
||||
if use kernel_linux; then
|
||||
donvidia ${libdir}/libcuda.so ${NV_SOVER}
|
||||
donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER}
|
||||
donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT}
|
||||
donvidia ${libdir}/libnvidia-opencl.so ${NV_SOVER}
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
use kernel_linux && linux-mod_pkg_preinst
|
||||
|
||||
# Clean the dynamic libGL stuff's home to ensure
|
||||
# we dont have stale libs floating around
|
||||
if [ -d "${ROOT}"/usr/lib/opengl/nvidia ] ; then
|
||||
rm -rf "${ROOT}"/usr/lib/opengl/nvidia/*
|
||||
fi
|
||||
# Make sure we nuke the old nvidia-glx's env.d file
|
||||
if [ -e "${ROOT}"/etc/env.d/09nvidia ] ; then
|
||||
rm -f "${ROOT}"/etc/env.d/09nvidia
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use kernel_linux && linux-mod_pkg_postinst
|
||||
|
||||
# Switch to the nvidia implementation
|
||||
use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
|
||||
"${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
|
||||
|
||||
readme.gentoo_print_elog
|
||||
|
||||
if ! use X; then
|
||||
elog "You have elected to not install the X.org driver. Along with"
|
||||
elog "this the OpenGL libraries and VDPAU libraries were not"
|
||||
elog "installed. Additionally, once the driver is loaded your card"
|
||||
elog "and fan will run at max speed which may not be desirable."
|
||||
elog "Use the 'nvidia-smi' init script to have your card and fan"
|
||||
elog "speed scale appropriately."
|
||||
elog
|
||||
fi
|
||||
if ! use tools; then
|
||||
elog "USE=tools controls whether the nvidia-settings application"
|
||||
elog "is installed. If you would like to use it, enable that"
|
||||
elog "flag and re-emerge this ebuild. Optionally you can install"
|
||||
elog "media-video/nvidia-settings"
|
||||
elog
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
use kernel_linux && linux-mod_pkg_postrm
|
||||
use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
|
||||
}
|
Loading…
Reference in New Issue
Block a user