works por deps fixed...
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
<PISI>
|
||||
<Name>kernel.drivers</Name>
|
||||
</PISI>
|
||||
@@ -0,0 +1,170 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file http://www.gnu.org/licenses/gpl.txt
|
||||
|
||||
from pisi.actionsapi import kerneltools
|
||||
from pisi.actionsapi import shelltools
|
||||
from pisi.actionsapi import pisitools
|
||||
from pisi.actionsapi import get
|
||||
|
||||
WorkDir = "./"
|
||||
KDIR = kerneltools.getKernelVersion()
|
||||
NoStrip = ["/lib/modules"]
|
||||
|
||||
BuildDir = "common/lib/modules/fglrx/build_mod"
|
||||
|
||||
if get.buildTYPE() == 'emul32':
|
||||
Target = "x86"
|
||||
Libdir = "/usr/lib32"
|
||||
else:
|
||||
Target = get.ARCH().replace("i686", "x86")
|
||||
Libdir = "/usr/lib"
|
||||
|
||||
XDir = "xpic" + ("_64a" if Target == "x86_64" else "")
|
||||
|
||||
|
||||
def setup():
|
||||
shelltools.makedirs("%s/common" % get.workDIR())
|
||||
shelltools.move("lib", "%s/common/" % get.workDIR())
|
||||
shelltools.move("usr", "%s/common/" % get.workDIR())
|
||||
shelltools.move("etc", "%s/common/" % get.workDIR())
|
||||
#shelltools.export("SETUP_NOCHECK", "1")
|
||||
#shelltools.system("sh amd-driver-installer-*-x86.x86_64.run --extract .")
|
||||
|
||||
if get.buildTYPE() == "emul32":
|
||||
return
|
||||
|
||||
# Needed during kernel module compiling
|
||||
shelltools.sym("../../../../../arch/%s/lib/modules/fglrx/build_mod/libfglrx_ip.a" % Target, "%s/libfglrx_ip.a" % BuildDir)
|
||||
|
||||
pisitools.dosed("%s/make.sh" % BuildDir, r"^linuxincludes=.*", "linuxincludes=/lib/modules/%s/build/include" % KDIR)
|
||||
pisitools.dosed("%s/make.sh" % BuildDir, r"^uname_r=.*", "uname_r=%s" % KDIR)
|
||||
pisitools.dosed("common/etc/ati/authatieventsd.sh", "/var/lib/xdm/authdir/authfiles", "/var/run/xauth")
|
||||
|
||||
|
||||
shelltools.system("patch -p1 < desktop-files.patch")
|
||||
|
||||
#shelltools.system("patch -p1 < fglrx_gpl_symbol.patch")
|
||||
#shelltools.system("patch -p1 < kolasa_4.0-cr4-strn.patch")
|
||||
#shelltools.system("patch -p1 < lano1106_fglrx_intel_iommu.patch")
|
||||
#shelltools.system("patch -p1 < lano1106_kcl_agp_13_4.patch")
|
||||
shelltools.system("patch -p1 < makefile_compat.patch")
|
||||
|
||||
|
||||
|
||||
def build():
|
||||
if get.buildTYPE() == "emul32":
|
||||
return
|
||||
|
||||
shelltools.cd(BuildDir)
|
||||
shelltools.system("sh make.sh")
|
||||
|
||||
def install():
|
||||
# Controlcenter binaries
|
||||
if not get.buildTYPE() == 'emul32':
|
||||
pisitools.dobin("arch/%s/usr/X11R6/bin/*" % Target)
|
||||
pisitools.dobin("common/usr/X11R6/bin/*")
|
||||
pisitools.dosbin("arch/%s/usr/sbin/*" % Target)
|
||||
pisitools.dobin("arch/%s/usr/bin/*" % Target)
|
||||
pisitools.dosbin("common/usr/sbin/*")
|
||||
|
||||
# Controlcenter libraries
|
||||
# The other files under /usr/share are common files like icon,man,doc ,etc ..
|
||||
DIRS = {
|
||||
"common/usr/share/doc/fglrx/examples/etc/acpi/events": "/etc/acpi",
|
||||
"common/etc/*": "/etc",
|
||||
"arch/%s/etc/OpenCL/*" % Target: "/etc/OpenCL",
|
||||
"arch/%s/usr/X11R6/lib*/*" % Target: Libdir,
|
||||
"arch/%s/usr/lib*/*" % Target: Libdir,
|
||||
"common/usr/share/*": "/usr/share"
|
||||
}
|
||||
|
||||
# Emul32 package don't need files that belongs to /usr/share
|
||||
if get.buildTYPE() == "emul32":
|
||||
del DIRS["common/usr/share/*"]
|
||||
del DIRS["common/etc/*"]
|
||||
del DIRS["common/usr/share/doc/fglrx/examples/etc/acpi/events"]
|
||||
|
||||
for source, target in DIRS.items():
|
||||
pisitools.insinto(target, source)
|
||||
|
||||
# pisitools.insinto("usr/share/ati/lib64", "arch/%s/usr/share/ati/lib*/*" % Target)
|
||||
|
||||
# X.org drivers
|
||||
pisitools.domove("%s/modules" % Libdir, "%s/fglrx" % Libdir)
|
||||
pisitools.insinto("%s/fglrx/modules" % Libdir, "%s/usr/X11R6/lib*/modules/*" % XDir)
|
||||
pisitools.insinto("%s/xorg/modules" % Libdir, "%s/usr/X11R6/lib*/modules/*" % XDir)
|
||||
|
||||
# libGl library name changed to fglrx-libGl since 1.15
|
||||
pisitools.domove("%s/fglrx/fglrx-libGL.so.1.2" % Libdir, "%s/fglrx" % Libdir, "libGL.so.1.2.0")
|
||||
|
||||
pisitools.domove("%s/fglrx/modules/dri" % Libdir, "%s/xorg/modules/" % Libdir)
|
||||
|
||||
pisitools.domove("%s/fglrx/modules/extensions/fglrx/fglrx-libglx.so" % Libdir,
|
||||
"%s/fglrx/modules/extensions" % Libdir, "libglx.so")
|
||||
|
||||
|
||||
# Necessary symlinks
|
||||
pisitools.dosym("%s/xorg/modules/dri/fglrx_dri.so" % Libdir, "%s/dri/fglrx_dri.so" % Libdir)
|
||||
|
||||
pisitools.dosym("libatiuki.so.1.0", "%s/libatiuki.so.1" % Libdir)
|
||||
pisitools.dosym("libatiuki.so.1", "%s/libatiuki.so" % Libdir)
|
||||
|
||||
pisitools.dosym("libfglrx_dm.so.1.0", "%s/libfglrx_dm.so.1" % Libdir)
|
||||
pisitools.dosym("libfglrx_dm.so.1", "%s/libfglrx_dm.so" % Libdir)
|
||||
|
||||
pisitools.dosym("libAMDXvBA.so.1.0", "%s/libAMDXvBA.so.1" % Libdir)
|
||||
pisitools.dosym("libAMDXvBA.so.1", "%s/libAMDXvBA.so" % Libdir)
|
||||
|
||||
pisitools.dosym("libXvBAW.so.1.0", "%s/libXvBAW.so.1" % Libdir)
|
||||
pisitools.dosym("libXvBAW.so.1", "%s/libXvBAW.so" % Libdir)
|
||||
|
||||
# remove static libs
|
||||
pisitools.remove("%s/*.a" % Libdir)
|
||||
if shelltools.isFile("%s%s/fglrx/modules/esut.a" % (get.installDIR(), Libdir)):
|
||||
pisitools.remove("%s/fglrx/modules/esut.a" % Libdir)
|
||||
|
||||
# compatibility links
|
||||
pisitools.dosym("xorg/modules", "%s/modules" % Libdir)
|
||||
|
||||
# OK, That's the end of emul32 build, it's time to exit.
|
||||
if get.buildTYPE() == "emul32":
|
||||
return
|
||||
|
||||
# Another compatibility link
|
||||
pisitools.dosym("/usr", "/usr/X11R6")
|
||||
|
||||
pisitools.dosym("../security/console.apps/amdcccle-su", "/etc/pam.d/amdcccle-su")
|
||||
|
||||
# copy compiled kernel module
|
||||
pisitools.insinto("/lib/modules/%s/extra/fglrx" % KDIR, "common/lib/modules/fglrx/fglrx.%s.ko" % KDIR, "fglrx.ko")
|
||||
pisitools.insinto("/lib/modules/%s/kernel/drivers/char/drm" % KDIR, "common/lib/modules/fglrx/fglrx.%s.ko" % KDIR, "fglrx.ko")
|
||||
|
||||
# control script for ACPI lid state and AC adapter state
|
||||
pisitools.insinto("/etc/acpi", "common/usr/share/doc/fglrx/examples/etc/acpi/ati-powermode.sh")
|
||||
|
||||
# not needed as xdg-utils package provides xdg-su
|
||||
pisitools.remove("/usr/bin/amdxdg-su")
|
||||
|
||||
pisitools.domove("/usr/share/icons/ccc_large.xpm", "/usr/share/pixmaps", "amdcccle.xpm")
|
||||
pisitools.removeDir("/usr/share/icons")
|
||||
|
||||
#LICENSE information
|
||||
pisitools.dodoc("LICENSE.TXT")
|
||||
|
||||
# Fix file permissions
|
||||
exec_file_suffixes = (".sh", ".so", ".so.1.2.0")
|
||||
exec_dir_suffixes = ("/bin", "/sbin", "/lib")
|
||||
|
||||
import os
|
||||
for root, dirs, files in os.walk(get.installDIR()):
|
||||
for name in files:
|
||||
filePath = os.path.join(root, name)
|
||||
if os.path.islink(filePath):
|
||||
continue
|
||||
if root.endswith(exec_dir_suffixes) \
|
||||
or name.endswith(exec_file_suffixes):
|
||||
shelltools.chmod(filePath, 0755)
|
||||
else:
|
||||
shelltools.chmod(filePath, 0644)
|
||||
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
import os
|
||||
|
||||
libdir = "/usr/lib32/fglrx"
|
||||
|
||||
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
|
||||
os.system("/usr/sbin/alternatives \
|
||||
--install /usr/lib32/libGL.so.1.2.0 libGL-32bit %(libdir)s/libGL.so.1.2.0 50 \
|
||||
--slave /usr/lib32/xorg/modules/volatile xorg-modules-volatile-32bit %(libdir)s/modules"
|
||||
% {"libdir": libdir})
|
||||
|
||||
def preRemove():
|
||||
# FIXME This is not needed when upgrading package; but pisi does not
|
||||
# provide a way to learn operation type.
|
||||
#os.system("/usr/sbin/alternatives --remove libGL-32bit %s/libGL.so.1.2" % libdir)
|
||||
pass
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
import os
|
||||
|
||||
libdir = "/usr/lib/fglrx"
|
||||
|
||||
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
|
||||
os.system("/usr/sbin/alternatives \
|
||||
--install /usr/lib/libGL.so.1.2.0 libGL %(libdir)s/libGL.so.1.2.0 50 \
|
||||
--slave /usr/lib/xorg/modules/volatile xorg-modules-volatile %(libdir)s/modules"
|
||||
% {"libdir": libdir})
|
||||
|
||||
def preRemove():
|
||||
# FIXME This is not needed when upgrading package; but pisi does not
|
||||
# provide a way to learn operation type.
|
||||
#os.system("/usr/sbin/alternatives --remove libGL %s/libGL.so.1.2" % libdir)
|
||||
pass
|
||||
@@ -0,0 +1,21 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
serviceType = "local"
|
||||
serviceDesc = _({"en": "ATI Events Daemon",
|
||||
"tr": "ATI Olay Servisi"})
|
||||
serviceConf = "atieventsd"
|
||||
|
||||
from comar.service import *
|
||||
|
||||
@synchronized
|
||||
def start():
|
||||
startService(command="/usr/sbin/atieventsd",
|
||||
args=config.get("ATIEVENTSDOPTS", ""),
|
||||
donotify=True)
|
||||
|
||||
@synchronized
|
||||
def stop():
|
||||
stopService(command="/usr/sbin/atieventsd",
|
||||
donotify=True)
|
||||
|
||||
def status():
|
||||
return isServiceRunning(command="/usr/sbin/atieventsd")
|
||||
@@ -0,0 +1,188 @@
|
||||
|
||||
AMD Software End User License Agreement
|
||||
|
||||
PLEASE READ THIS LICENSE CAREFULLY BEFORE USING THE SOFTWARE. BY
|
||||
DOWNLOADING, INSTALLING, COPYING OR USING THE SOFTWARE, YOU ARE AGREEING TO
|
||||
BE BOUND BY THE TERMS OF THIS LICENSE. IF YOU ARE ACCESSING THE SOFTWARE
|
||||
ELECTRONICALLY, SIGNIFY YOUR AGREEMENT BY CLICKING THE "AGREE/ACCEPT"
|
||||
BUTTON. IF YOU DO NOT AGREE TO THE TERMS OF THIS LICENSE, PROMPTLY RETURN
|
||||
THE SOFTWARE TO THE PLACE WHERE YOU OBTAINED IT AND (IF APPLICABLE) YOUR
|
||||
MONEY WILL BE REFUNDED OR IF THE SOFTWARE WAS ACCESSED ELECTRONICALLY CLICK
|
||||
"DISAGREE/DECLINE".
|
||||
|
||||
1. License. Advanced Micro Devices, Inc., on behalf of itself, its
|
||||
subsidiaries and licensors (referred collectively as "AMD") grants to you
|
||||
the following non-exclusive, right to use the software accompanying
|
||||
this License (hereinafter "Software") subject to the following terms and
|
||||
limitations:
|
||||
|
||||
|
||||
(a) Regardless of the media upon which it is distributed, the Software is
|
||||
licensed to you for use solely in conjunction with AMD hardware products to
|
||||
which the Software relates ("AMD Hardware").
|
||||
|
||||
(b) You own the medium on which the Software is recorded, but AMD and, if
|
||||
applicable, its licensors retain title to the Software and related
|
||||
documentation.
|
||||
|
||||
(c) You may:
|
||||
|
||||
i) use the Software solely in connection with the AMD Hardware on a
|
||||
single computer;
|
||||
|
||||
ii) make one copy of the Software in machine-readable form for backup
|
||||
purposes only. You must reproduce on such copy AMD's copyright notice and
|
||||
any other proprietary legends that were on the original copy of the
|
||||
Software;
|
||||
|
||||
iii) transfer all your license rights in the Software provided you must
|
||||
also transfer a copy of this License, the backup copy of the Software,
|
||||
the AMD Hardware and the related documentation and provided the other
|
||||
party reads and agrees to accept the terms and conditions of this
|
||||
License. Upon such transfer your license rights are then terminated.
|
||||
|
||||
(d) In addition to the license terms above, with respect to portions of
|
||||
the Software in source code or binary form designed exclusively for use
|
||||
with the Linux operating system ("AMD Linux Code"), you may use, display,
|
||||
modify, copy, distribute, allow others to re-distribute, package and re-
|
||||
package such AMD Linux Code for commercial and non-commercial purposes,
|
||||
provided that:
|
||||
|
||||
i) all binary components of the AMD Linux Code are not modified in any
|
||||
way;
|
||||
|
||||
ii) the AMD Linux Code is only used as part of the Software and in
|
||||
connection with AMD Hardware;
|
||||
|
||||
iii) all copyright notices of AMD are reproduced and you refer to these
|
||||
license terms;
|
||||
|
||||
iv) you may not offer or impose any terms on the use of AMD Linux
|
||||
Code that alter or restrict this License; and
|
||||
|
||||
v) if you have modified the AMD Linux Code, such modifications will be
|
||||
made publicly available and are licensed under the same terms provided
|
||||
herein to AMD or any other third party without further restriction,
|
||||
royalty or any other license requirement;
|
||||
|
||||
vi) to the extent there is any AMD sample or control panel source
|
||||
code included in the AMD Linux Code, no rights are granted to modify such
|
||||
code except for portions thereof that may be subject to third party
|
||||
license terms that grant such rights;
|
||||
|
||||
vii) no rights are granted to distribute the binary form of the AMD Linux
|
||||
Kernel Module made by linking the AMD Proprietary Kernel Library and the
|
||||
AMD Kernel Compatibility Layer binary compiled using Linux kernel
|
||||
headers;
|
||||
|
||||
viii) AMD is not obligated to provide any maintenance or technical
|
||||
support for any code resulting from AMD Linux Code.
|
||||
|
||||
2. Restrictions. The Software contains copyrighted and patented material,
|
||||
trade secrets and other proprietary material. In order to protect them,
|
||||
and except as permitted by this license or applicable legislation, you may
|
||||
not:
|
||||
|
||||
a) decompile, reverse engineer, disassemble or otherwise reduce the
|
||||
Software to a human-perceivable form;
|
||||
|
||||
b) modify, network, rent, lend, loan, distribute or create derivative
|
||||
works based upon the Software in whole or in part; or
|
||||
|
||||
c) electronically transmit the Software from one computer to another or
|
||||
over a network or otherwise transfer the Software except as permitted by
|
||||
this License.
|
||||
|
||||
3. Termination. This License is effective until terminated. You may
|
||||
terminate this License at any time by destroying the Software, related
|
||||
documentation and all copies thereof. This License will terminate
|
||||
immediately without notice from AMD if you fail to comply with any
|
||||
provision of this License. Upon termination you must destroy the Software,
|
||||
related documentation and all copies thereof.
|
||||
|
||||
4. Government End Users. If you are acquiring the Software on behalf of
|
||||
any unit or agency of the United States Government, the following
|
||||
provisions apply. The Government agrees the Software and documentation
|
||||
were developed at private expense and are provided with "RESTRICTED
|
||||
RIGHTS". Use, duplication, or disclosure by the Government is subject to
|
||||
restrictions as set forth in DFARS 227.7202-1(a) and 227.7202-3(a) (1995),
|
||||
DFARS 252.227-7013(c)(1)(ii) (Oct 1988), FAR 12.212(a)(1995), FAR 52.227-
|
||||
19, (June 1987) or FAR 52.227-14(ALT III) (June 1987),as amended from time
|
||||
to time. In the event that this License, or any part thereof, is deemed
|
||||
inconsistent with the minimum rights identified in the Restricted Rights
|
||||
provisions, the minimum rights shall prevail.
|
||||
|
||||
5. No Other License. No rights or licenses are granted by AMD under this
|
||||
License, expressly or by implication, with respect to any proprietary
|
||||
information or patent, copyright, trade secret or other intellectual
|
||||
property right owned or controlled by AMD, except as expressly provided in
|
||||
this License.
|
||||
|
||||
6. Additional Licenses. DISTRIBUTION OR USE OF THE SOFTWARE WITH AN
|
||||
OPERATING SYSTEM MAY REQUIRE ADDITIONAL LICENSES FROM THE OPERATING SYSTEM
|
||||
VENDOR.
|
||||
|
||||
7. Disclaimer of Warranty on Software. You expressly acknowledge and
|
||||
agree that use of the Software is at your sole risk. The Software and
|
||||
related documentation are provided "AS IS" and without warranty of any kind
|
||||
and AMD EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESS AND IMPLIED, INCLUDING,
|
||||
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
||||
FORA PARTICULAR PURPOSE, OF QUALITY, OF QUIET ENJOYMENT AND OF NON-
|
||||
INFRINGEMENT OF THIRD PARTY RIGHTS. AMD DOES NOT WARRANT THAT THE
|
||||
FUNCTIONS CONTAINED IN THE SOFTWARE WILL MEET YOUR REQUIREMENTS, OR THAT
|
||||
THE OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE, OR THAT
|
||||
DEFECTS IN THE SOFTWARE WILL BE CORRECTED. THE ENTIRE RISK AS TO THE
|
||||
RESULTS AND PERFORMANCE OF THE SOFTWARE IS ASSUMED BY YOU. FURTHERMORE,
|
||||
AMD DOES NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE ORTHE
|
||||
RESULTS OF THE USE OF THE SOFTWARE OR RELATED DOCUMENTATION IN TERMS OF
|
||||
THEIR CORRECTNESS, ACCURACY, RELIABILITY, CURRENTNESS, OR OTHERWISE. NO
|
||||
ORAL OR WRITTEN INFORMATION OR ADVICE GIVEN BY AMD OR AMD'S AUTHORIZED
|
||||
REPRESENTATIVE SHALL CREATE A WARRANTY OR IN ANY WAY INCREASE THE SCOPE OF
|
||||
THIS WARRANTY. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU (AND NOT AMD OR
|
||||
AMD'S AUTHORIZED REPRESENTATIVE) ASSUME THE ENTIRE COST OF ALL NECESSARY
|
||||
SERVICING, REPAIR OR CORRECTION. THE SOFTWARE IS NOT INTENDED FOR USE IN
|
||||
MEDICAL, LIFE SAVING OR LIFE SUSTAINING APPLICATIONS. SOME JURISDICTIONS
|
||||
DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THE ABOVE EXCLUSION
|
||||
MAY NOT APPLY TO YOU.
|
||||
|
||||
8. Limitation of Liability. TO THE MAXIMUM EXTENT PERMITTED BY LAW, UNDER
|
||||
NO CIRCUMSTANCES INCLUDING NEGLIGENCE, SHALL AMD, OR ITS DIRECTORS,
|
||||
OFFICERS, EMPLOYEES OR AGENTS, BE LIABLE TO YOU FOR ANY INCIDENTAL,
|
||||
INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES (INCLUDING DAMAGES FOR LOSS OF
|
||||
BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, AND
|
||||
THE LIKE) ARISING OUT OF THE USE, MISUSE OR INABILITY TO USE THE SOFTWARE
|
||||
OR RELATED DOCUMENTATION, BREACH OR DEFAULT, INCLUDING THOSE ARISING FROM
|
||||
INFRINGEMENT OR ALLEGED INFRINGEMENT OF ANY PATENT, TRADEMARK, COPYRIGHT OR
|
||||
OTHER INTELLECTUAL PROPERTY RIGHT, BY AMD, EVEN IF AMD OR AMD'S AUTHORIZED
|
||||
REPRESENTATIVE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME
|
||||
JURISDICTIONS DO NOT ALLOW THE LIMITATION OR EXCLUSION OF LIABILITY FOR
|
||||
INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THE ABOVE LIMITATION OR EXCLUSION
|
||||
MAY NOT APPLY TO YOU. AMD will not be liable for 1) loss of, or damage to,
|
||||
your records or data or 2) any damages claimed by you based on any third
|
||||
party claim. In no event shall AMD's total liability to you for all
|
||||
damages, losses, and causes of action (whether in contract, tort (including
|
||||
negligence) or otherwise) exceed the amount paid by you for the Software.
|
||||
The foregoing limitations will apply even if the above stated limitation
|
||||
fails of its essential purpose.
|
||||
|
||||
9. Controlling Law and Severability. This License shall be governed by
|
||||
and construed under the laws of the Province of Ontario, Canada without
|
||||
reference to its conflict of law principles. Any dispute related hereto
|
||||
will be brought only in the courts in Toronto, Ontario, Canada and such
|
||||
courts are agreed to be the convenient forum. In the event of any
|
||||
conflicts between foreign law, rules, and regulations, and Canadian law,
|
||||
rules, and regulations, Canadian law, rules and regulations shall prevail
|
||||
and govern. The United Nations Convention on Contracts for the
|
||||
International Sale of Goods shall not apply to this License. If for any
|
||||
reason a court of competent jurisdiction finds any provision of this
|
||||
License or portion thereof, to be unenforceable, that provision of the
|
||||
License shall be enforced to the maximum extent permissible so as to effect
|
||||
the intent of the parties, and the remainder of this License shall continue
|
||||
in full force and effect.
|
||||
|
||||
10. Complete Agreement. This License constitutes the entire agreement
|
||||
between the parties with respect to the use of the Software and the related
|
||||
documentation, and supersedes all prior or contemporaneous understandings
|
||||
or agreements, written or oral, regarding such subject matter. No
|
||||
amendment to or modification of this License will be binding unless in
|
||||
writing and signed by a duly authorized representative of AMD.
|
||||
@@ -0,0 +1,19 @@
|
||||
Index: work/common/usr/share/doc/fglrx/examples/etc/acpi/ati-powermode.sh
|
||||
===================================================================
|
||||
--- work.orig/common/usr/share/doc/fglrx/examples/etc/acpi/ati-powermode.sh
|
||||
+++ work/common/usr/share/doc/fglrx/examples/etc/acpi/ati-powermode.sh
|
||||
@@ -4,10 +4,12 @@
|
||||
# Control script for ACPI lid state and AC adapter state
|
||||
#
|
||||
|
||||
+test -d /sys/module/fglrx || exit 0
|
||||
+
|
||||
getXuser() {
|
||||
- user=`finger| grep -m1 ":$displaynum " | awk '{print $1}'`
|
||||
+ user=`who | grep -m1 ":$displaynum " | awk '{print $1}'`
|
||||
if [ x"$user" = x"" ]; then
|
||||
- user=`finger| grep -m1 ":$displaynum" | awk '{print $1}'`
|
||||
+ user=`who | grep -m1 ":$displaynum" | awk '{print $1}'`
|
||||
fi
|
||||
if [ x"$user" != x"" ]; then
|
||||
userhome=`getent passwd $user | cut -d: -f6`
|
||||
@@ -0,0 +1 @@
|
||||
ATIEVENTSDOPTS=""
|
||||
@@ -0,0 +1,8 @@
|
||||
[Unit]
|
||||
Description=ATI Events Daemon
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/sbin/atieventsd --nodaemon
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -0,0 +1,3 @@
|
||||
# Advanced Micro Devices, Inc.
|
||||
# radeon conflicts with AMD Linux Graphics Driver
|
||||
blacklist radeon
|
||||
@@ -0,0 +1,14 @@
|
||||
--- 14.1/common/lib/modules/fglrx/build_mod/firegl_public.c 2014-02-23 19:26:52.215995002 +0100
|
||||
+++ 14.1/common/lib/modules/fglrx/build_mod/firegl_public.c 2014-02-23 19:27:59.320999596 +0100
|
||||
@@ -1761,7 +1761,11 @@
|
||||
#else
|
||||
|
||||
#ifdef current_euid
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,14,0)
|
||||
+ return __kuid_val(current_euid());
|
||||
+#else
|
||||
return current_euid();
|
||||
+#endif
|
||||
#else
|
||||
return current->euid;
|
||||
#endif
|
||||
@@ -0,0 +1,52 @@
|
||||
Index: work/common/usr/share/applications/amdcccle.desktop
|
||||
===================================================================
|
||||
--- work.orig/common/usr/share/applications/amdcccle.desktop
|
||||
+++ work/common/usr/share/applications/amdcccle.desktop
|
||||
@@ -1,9 +1,10 @@
|
||||
[Desktop Entry]
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
-Exec=amdcccle
|
||||
-Icon=ccc_large
|
||||
+Exec=amdcccle
|
||||
+Icon=amdcccle
|
||||
Categories=GNOME;KDE;GTK;Qt;HardwareSettings;Settings;
|
||||
+TryExec=/sys/module/fglrx
|
||||
|
||||
|
||||
Name=AMD Catalyst Control Center
|
||||
@@ -44,7 +45,7 @@ Name[sv]=AMD Catalyst Control Center
|
||||
Comment[sv]=Möjliggör konfiguration av inställningar för AMD-grafikmaskinvara.
|
||||
Name[th]=AMD Catalyst Control Center
|
||||
Comment[th]=ยอมให้ตั้งค่าฮาร์ดแวร์กราฟิก AMD
|
||||
-Name[tr]=AMD Catalyst Control Center
|
||||
+Name[tr]=AMD Catalyst Denetim Merkezi
|
||||
Comment[tr]=AMD grafik donanım ayarlarının yapılandırılmasına olanak sağlar.
|
||||
Name[zh_CN]=AMD Catalyst Control Center
|
||||
Comment[zh_CN]=允许配置 AMD 图形硬件设置。
|
||||
Index: work/common/usr/share/applications/amdccclesu.desktop
|
||||
===================================================================
|
||||
--- work.orig/common/usr/share/applications/amdccclesu.desktop
|
||||
+++ work/common/usr/share/applications/amdccclesu.desktop
|
||||
@@ -1,9 +1,10 @@
|
||||
[Desktop Entry]
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
-Exec=amdxdg-su -c amdcccle
|
||||
+Exec=xdg-su -c amdcccle
|
||||
Categories=GNOME;KDE;GTK;Qt;HardwareSettings;Settings;
|
||||
-Icon=ccc_large
|
||||
+Icon=amdcccle
|
||||
+TryExec=/sys/module/fglrx
|
||||
|
||||
Name=AMD Catalyst Control Center (Administrative)
|
||||
Comment=Allows the configuration of the AMD graphics hardware settings that requires administrative access.
|
||||
@@ -43,7 +44,7 @@ Name[sv]=AMD Catalyst Control Center (Ad
|
||||
Comment[sv]=Möjliggör konfiguration av inställningar för AMD-grafikmaskinvara som kräver administrativ åtkomst.
|
||||
Name[th]=AMD Catalyst Control Center (สิทธิ์ผู้ดูแลระบบ)
|
||||
Comment[th]=ยอมให้ตั้งค่าฮาร์ดแวร์กราฟิก AMD ที่ต้องใช้สิทธิ์ของผู้ดูแลระบบ
|
||||
-Name[tr]=AMD Catalyst Control Center (Yönetici)
|
||||
+Name[tr]=AMD Catalyst Denetim Merkezi (Yönetici)
|
||||
Comment[tr]=Yönetici erişimi gerektiren AMD grafik donanım ayarlarının yapılandırılmasına olanak sağlar.
|
||||
Name[zh_CN]=AMD Catalyst Control Center(管理)
|
||||
Comment[zh_CN]=允许配置需要管理权限才能访问的 AMD 图形硬件设置。
|
||||
@@ -0,0 +1,49 @@
|
||||
|
||||
Already defined in mesa
|
||||
|
||||
Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
|
||||
diff -Nurp fglrx-13.250.18.orig/common/usr/include/GL/glATI.h fglrx-13.250.18/common/usr/include/GL/glATI.h
|
||||
--- fglrx-13.250.18.orig/common/usr/include/GL/glATI.h 2013-12-06 13:46:50.339162515 +0200
|
||||
+++ fglrx-13.250.18/common/usr/include/GL/glATI.h 2013-12-06 13:51:18.621140440 +0200
|
||||
@@ -5367,7 +5367,9 @@ typedef GLvoid (APIENTRY * PFNGLTEXRENDE
|
||||
#define GL_SAMPLE_MASK_VALUE 0x8E52
|
||||
#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59
|
||||
#define GL_TEXTURE_2D_MULTISAMPLE 0x9100
|
||||
+#ifndef GL_PROXY_TEXTURE_2D_MULTISAMPLE
|
||||
#define GL_PROXY_TEXTURE_2D_MULTISAMPLE 0X9101
|
||||
+#endif
|
||||
#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102
|
||||
#define GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103
|
||||
#define GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E
|
||||
@@ -5385,11 +5387,13 @@ typedef GLvoid (APIENTRY * PFNGLTEXRENDE
|
||||
#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D
|
||||
|
||||
typedef GLvoid (APIENTRY * PFNGLSAMPLEMASKIPROC) (GLuint index, GLbitfield value);
|
||||
+#if 0
|
||||
typedef GLvoid (APIENTRY * PFNGLTEXIMAGE2DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLint internalformat,
|
||||
GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
|
||||
+
|
||||
typedef GLvoid (APIENTRY * PFNGLTEXIMAGE3DMULTISAMPLEPROC) (GLenum target, GLsizei samples, GLint internalformat,
|
||||
GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
|
||||
-
|
||||
+#endif
|
||||
// GL_EXT_timer_query
|
||||
#define GL_TIME_ELAPSED_EXT 0x88BF
|
||||
|
||||
@@ -6006,6 +6010,7 @@ typedef GLvoid (APIENTRY * PFNGLDEBUGMES
|
||||
typedef GLvoid (APIENTRY * PFNGLDEBUGMESSAGECALLBACKARB)(GLvoid* callback, GLvoid* userParam);
|
||||
typedef GLuint (APIENTRY * PFNGLGETDEBUGMESSAGELOGARB)(GLuint count, GLsizei bufsize, GLenum* sources, GLenum* types, GLuint* ids, GLenum* severities, GLsizei* lengths, GLchar* messageLog);
|
||||
|
||||
+#if 0
|
||||
typedef void (APIENTRY *GLDEBUGPROCARB)(GLenum source,
|
||||
GLenum type,
|
||||
GLuint id,
|
||||
@@ -6014,6 +6019,7 @@ typedef void (APIENTRY *GLDEBUGPROCARB)(
|
||||
const GLchar* message,
|
||||
GLvoid* userParam);
|
||||
// end ARB_debug_output
|
||||
+#endif
|
||||
|
||||
|
||||
/* ARB_debug_group (KHR_debug) */
|
||||
@@ -0,0 +1,42 @@
|
||||
diff -Nurp fglrx.orig/lib/modules/fglrx/build_mod/firegl_public.c fglrx/lib/modules/fglrx/build_mod/firegl_public.c
|
||||
--- fglrx.orig/lib/modules/fglrx/build_mod/firegl_public.c 2014-09-09 17:10:17.000000000 +0300
|
||||
+++ fglrx/lib/modules/fglrx/build_mod/firegl_public.c 2014-09-23 23:18:51.342432159 +0300
|
||||
@@ -1093,6 +1093,9 @@ static int fglrx_pci_suspend(struct pci_
|
||||
// directly here to allow suspend/resume without X server start.
|
||||
firegl_pci_save_state((KCL_PCI_DevHandle)pdev, privdev);
|
||||
pci_disable_device(pdev);
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 17, 0)
|
||||
+ pci_ignore_hotplug(pdev);
|
||||
+#endif
|
||||
PMSG_EVENT(pdev->dev.power.power_state) = state;
|
||||
}
|
||||
else
|
||||
diff -Nurp fglrx.orig/lib/modules/fglrx/build_mod/kcl_acpi.c fglrx/lib/modules/fglrx/build_mod/kcl_acpi.c
|
||||
--- fglrx.orig/lib/modules/fglrx/build_mod/kcl_acpi.c 2014-09-09 17:10:17.000000000 +0300
|
||||
+++ fglrx/lib/modules/fglrx/build_mod/kcl_acpi.c 2014-09-23 23:45:27.016475868 +0300
|
||||
@@ -840,10 +840,12 @@ static acpi_status KCL_ACPI_Slot_No_Hotp
|
||||
if(tdev != NULL)
|
||||
{
|
||||
device = (acpi_device_adr(tdev) >> 16) & 0xffff;
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 17, 0)
|
||||
if(PCI_SLOT(pdev->devfn) == device)
|
||||
{
|
||||
tdev->flags.no_hotplug = true;
|
||||
}
|
||||
+#endif
|
||||
}
|
||||
#endif
|
||||
return 0;
|
||||
diff -Nurp fglrx.orig/lib/modules/fglrx/build_mod/kcl_pci.c fglrx/lib/modules/fglrx/build_mod/kcl_pci.c
|
||||
--- fglrx.orig/lib/modules/fglrx/build_mod/kcl_pci.c 2014-09-09 17:10:17.000000000 +0300
|
||||
+++ fglrx/lib/modules/fglrx/build_mod/kcl_pci.c 2014-09-23 23:23:32.085208398 +0300
|
||||
@@ -306,6 +306,9 @@ void ATI_API_CALL KCL_PCI_DisableDevice(
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20)
|
||||
pci_disable_device((struct pci_dev*)dev);
|
||||
#endif
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 17, 0)
|
||||
+ pci_ignore_hotplug((struct pci_dev*)dev);
|
||||
+#endif
|
||||
}
|
||||
|
||||
#if defined(__x86_64__)
|
||||
@@ -0,0 +1,11 @@
|
||||
--- 13.1/common/lib/modules/fglrx/build_mod/firegl_public.c 2013-01-15 22:33:27.000000000 +0100
|
||||
+++ 13.1/common/lib/modules/fglrx/build_mod/firegl_public.c 2014-08-18 20:05:44.327520475 +0200
|
||||
@@ -250,7 +250,7 @@
|
||||
#endif
|
||||
|
||||
#ifdef MODULE_LICENSE
|
||||
-MODULE_LICENSE("Proprietary. (C) 2002 - ATI Technologies, Starnberg, GERMANY");
|
||||
+MODULE_LICENSE("GPL\0Proprietary. (C) 2002 - ATI Technologies, Starnberg, GERMANY");
|
||||
#endif
|
||||
#ifdef MODULE_DEVICE_TABLE
|
||||
MODULE_DEVICE_TABLE(pci, fglrx_pci_table);
|
||||
@@ -0,0 +1,70 @@
|
||||
diff -uNr 14.12/common/lib/modules/fglrx/build_mod/firegl_public.c 14.12_2/common/lib/modules/fglrx/build_mod/firegl_public.c
|
||||
--- 14.12/common/lib/modules/fglrx/build_mod/firegl_public.c 2014-11-28 21:02:10.000000000 +0100
|
||||
+++ 14.12_2/common/lib/modules/fglrx/build_mod/firegl_public.c 2015-03-08 13:30:42.565275902 +0100
|
||||
@@ -4468,8 +4468,13 @@
|
||||
|
||||
if (cpu_has_pge)
|
||||
{
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0)
|
||||
cr4 = read_cr4();
|
||||
write_cr4(cr4 & ~X86_CR4_PGE);
|
||||
+#else
|
||||
+ cr4 = __read_cr4();
|
||||
+ __write_cr4(cr4 & ~X86_CR4_PGE);
|
||||
+#endif
|
||||
}
|
||||
__flush_tlb();
|
||||
|
||||
@@ -4482,7 +4487,11 @@
|
||||
write_cr0(cr0 & 0xbfffffff);
|
||||
if (cpu_has_pge)
|
||||
{
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0)
|
||||
write_cr4(cr4);
|
||||
+#else
|
||||
+ __write_cr4(cr4);
|
||||
+#endif
|
||||
}
|
||||
local_irq_restore(flags);
|
||||
|
||||
@@ -4509,8 +4518,13 @@
|
||||
|
||||
if (cpu_has_pge)
|
||||
{
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0)
|
||||
cr4 = read_cr4();
|
||||
write_cr4(cr4 & ~X86_CR4_PGE);
|
||||
+#else
|
||||
+ cr4 = __read_cr4();
|
||||
+ __write_cr4(cr4 & ~X86_CR4_PGE);
|
||||
+#endif
|
||||
}
|
||||
__flush_tlb();
|
||||
|
||||
@@ -4522,7 +4536,11 @@
|
||||
write_cr0(cr0 & 0xbfffffff);
|
||||
if (cpu_has_pge)
|
||||
{
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0)
|
||||
write_cr4(cr4);
|
||||
+#else
|
||||
+ __write_cr4(cr4);
|
||||
+#endif
|
||||
}
|
||||
local_irq_restore(flags);
|
||||
|
||||
diff -uNr 14.12/common/lib/modules/fglrx/build_mod/kcl_str.c 14.12_2/common/lib/modules/fglrx/build_mod/kcl_str.c
|
||||
--- 14.12/common/lib/modules/fglrx/build_mod/kcl_str.c 2014-11-28 21:02:10.000000000 +0100
|
||||
+++ 14.12_2/common/lib/modules/fglrx/build_mod/kcl_str.c 2015-03-08 13:25:11.568396701 +0100
|
||||
@@ -169,7 +169,11 @@
|
||||
const char* s2,
|
||||
KCL_TYPE_SizeSigned count)
|
||||
{
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4,0,0)
|
||||
return strnicmp(s1, s2, count);
|
||||
+#else
|
||||
+ return strncasecmp(s1, s2, count);
|
||||
+#endif
|
||||
}
|
||||
|
||||
/** \brief Locate character in string
|
||||
@@ -0,0 +1,11 @@
|
||||
--- 13.4/common/lib/modules/fglrx/build_mod/firegl_public.c 2013-04-16 23:29:55.000000000 +0200
|
||||
+++ 13.4/common/lib/modules/fglrx/build_mod/firegl_public.c 2013-05-21 17:05:34.726681102 +0200
|
||||
@@ -93,7 +93,7 @@
|
||||
and they use different config options. These options can only be enabled
|
||||
on x86_64 with newer 2.6 kernels (2.6.23 for intel, 2.6.26 for amd).
|
||||
*/
|
||||
-#if defined(CONFIG_AMD_IOMMU) || defined(CONFIG_DMAR)
|
||||
+#if defined(CONFIG_AMD_IOMMU) || defined(CONFIG_INTEL_IOMMU)
|
||||
#define FIREGL_DMA_REMAPPING
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,90 @@
|
||||
--- 13.4/common/lib/modules/fglrx/build_mod/kcl_agp.c 2013-05-24 16:45:52.236740084 -0400
|
||||
+++ 13.4/common/lib/modules/fglrx/build_mod/kcl_agp.c 2013-05-24 16:49:29.283579408 -0400
|
||||
@@ -56,6 +56,43 @@ unsigned int KCL_AGP_IsInUse(void)
|
||||
return kcl_agp_is_in_use;
|
||||
}
|
||||
|
||||
+/** \brief Find AGP caps registers in PCI config space
|
||||
+ ** \param dev PCI device handle
|
||||
+ ** \return Positive register index on success, negative errno on error
|
||||
+ */
|
||||
+int ATI_API_CALL KCL_AGP_FindCapsRegisters(KCL_PCI_DevHandle dev)
|
||||
+{
|
||||
+ u8 capndx;
|
||||
+ u32 cap_id;
|
||||
+
|
||||
+ if (!dev)
|
||||
+ {
|
||||
+ return -ENODEV;
|
||||
+ }
|
||||
+
|
||||
+ pci_read_config_byte((struct pci_dev*)dev, 0x34, &capndx);
|
||||
+
|
||||
+ if (capndx == 0x00)
|
||||
+ {
|
||||
+ return -ENODATA;
|
||||
+ }
|
||||
+
|
||||
+ do
|
||||
+ { // search capability list for AGP caps
|
||||
+ pci_read_config_dword((struct pci_dev*)dev, capndx, &cap_id);
|
||||
+
|
||||
+ if ((cap_id & 0xff) == 0x02)
|
||||
+ {
|
||||
+ return capndx;
|
||||
+ }
|
||||
+
|
||||
+ capndx = (cap_id >> 8) & 0xff;
|
||||
+ }
|
||||
+ while (capndx != 0x00);
|
||||
+
|
||||
+ return -ENODATA;
|
||||
+}
|
||||
+
|
||||
#if defined(CONFIG_AGP) || defined(CONFIG_AGP_MODULE)
|
||||
|
||||
typedef struct {
|
||||
@@ -272,43 +309,6 @@ int ATI_API_CALL KCL_AGP_Enable(unsigned
|
||||
}
|
||||
}
|
||||
|
||||
-/** \brief Find AGP caps registers in PCI config space
|
||||
- ** \param dev PCI device handle
|
||||
- ** \return Positive register index on success, negative errno on error
|
||||
- */
|
||||
-int ATI_API_CALL KCL_AGP_FindCapsRegisters(KCL_PCI_DevHandle dev)
|
||||
-{
|
||||
- u8 capndx;
|
||||
- u32 cap_id;
|
||||
-
|
||||
- if (!dev)
|
||||
- {
|
||||
- return -ENODEV;
|
||||
- }
|
||||
-
|
||||
- pci_read_config_byte((struct pci_dev*)dev, 0x34, &capndx);
|
||||
-
|
||||
- if (capndx == 0x00)
|
||||
- {
|
||||
- return -ENODATA;
|
||||
- }
|
||||
-
|
||||
- do
|
||||
- { // search capability list for AGP caps
|
||||
- pci_read_config_dword((struct pci_dev*)dev, capndx, &cap_id);
|
||||
-
|
||||
- if ((cap_id & 0xff) == 0x02)
|
||||
- {
|
||||
- return capndx;
|
||||
- }
|
||||
-
|
||||
- capndx = (cap_id >> 8) & 0xff;
|
||||
- }
|
||||
- while (capndx != 0x00);
|
||||
-
|
||||
- return -ENODATA;
|
||||
-}
|
||||
-
|
||||
/** \brief Get AGP caps
|
||||
** \param dev PCI device handle
|
||||
** \param caps pointer to caps vector
|
||||
@@ -0,0 +1,293 @@
|
||||
diff -Nur common/lib/modules/fglrx/build_mod/drmP.h common-r1/lib/modules/fglrx/build_mod/drmP.h
|
||||
--- common/lib/modules/fglrx/build_mod/drmP.h 2013-05-15 09:26:23.555752577 +0300
|
||||
+++ common-r1/lib/modules/fglrx/build_mod/drmP.h 2013-05-16 10:39:17.496212055 +0300
|
||||
@@ -901,10 +901,6 @@
|
||||
int DRM(stub_unregister)(int minor);
|
||||
|
||||
/* Proc support (drm_proc.h) */
|
||||
-extern struct proc_dir_entry *DRM(proc_init)(drm_device_t *dev,
|
||||
- int minor,
|
||||
- struct proc_dir_entry *root,
|
||||
- struct proc_dir_entry **dev_root);
|
||||
extern int DRM(proc_cleanup)(int minor,
|
||||
struct proc_dir_entry *root,
|
||||
struct proc_dir_entry *dev_root);
|
||||
diff -Nur common/lib/modules/fglrx/build_mod/drm_proc.h common-r1/lib/modules/fglrx/build_mod/drm_proc.h
|
||||
--- common/lib/modules/fglrx/build_mod/drm_proc.h 2013-05-15 09:26:23.555752577 +0300
|
||||
+++ common-r1/lib/modules/fglrx/build_mod/drm_proc.h 2013-05-19 02:16:16.584406160 +0300
|
||||
@@ -75,61 +75,6 @@
|
||||
#define DRM_PROC_ENTRIES (sizeof(DRM(proc_list))/sizeof(DRM(proc_list)[0]))
|
||||
|
||||
/**
|
||||
- * Initialize the DRI proc filesystem for a device.
|
||||
- *
|
||||
- * \param dev DRM device.
|
||||
- * \param minor device minor number.
|
||||
- * \param root DRI proc dir entry.
|
||||
- * \param dev_root resulting DRI device proc dir entry.
|
||||
- * \return root entry pointer on success, or NULL on failure.
|
||||
- *
|
||||
- * Create the DRI proc root entry "/proc/ati", the device proc root entry
|
||||
- * "/proc/ati/%minor%/", and each entry in proc_list as
|
||||
- * "/proc/ati/%minor%/%name%".
|
||||
- */
|
||||
-struct proc_dir_entry *DRM(proc_init)(drm_device_t *dev, int minor,
|
||||
- struct proc_dir_entry *root,
|
||||
- struct proc_dir_entry **dev_root)
|
||||
-{
|
||||
- struct proc_dir_entry *ent;
|
||||
- int i, j;
|
||||
- char name[64];
|
||||
-
|
||||
- if (!minor) root = create_proc_entry("dri", S_IFDIR, NULL);
|
||||
- if (!root) {
|
||||
- DRM_ERROR("Cannot create /proc/ati\n");
|
||||
- return NULL;
|
||||
- }
|
||||
-
|
||||
- sprintf(name, "%d", minor);
|
||||
- *dev_root = create_proc_entry(name, S_IFDIR, root);
|
||||
- if (!*dev_root) {
|
||||
- DRM_ERROR("Cannot create /proc/ati/%s\n", name);
|
||||
- return NULL;
|
||||
- }
|
||||
-
|
||||
- for (i = 0; i < DRM_PROC_ENTRIES; i++) {
|
||||
- ent = create_proc_entry(DRM(proc_list)[i].name,
|
||||
- S_IFREG|S_IRUGO, *dev_root);
|
||||
- if (!ent) {
|
||||
- DRM_ERROR("Cannot create /proc/ati/%s/%s\n",
|
||||
- name, DRM(proc_list)[i].name);
|
||||
- for (j = 0; j < i; j++)
|
||||
- remove_proc_entry(DRM(proc_list)[i].name,
|
||||
- *dev_root);
|
||||
- remove_proc_entry(name, root);
|
||||
- if (!minor) remove_proc_entry("dri", NULL);
|
||||
- return NULL;
|
||||
- }
|
||||
- ent->read_proc = DRM(proc_list)[i].f;
|
||||
- ent->data = dev;
|
||||
- }
|
||||
-
|
||||
- return root;
|
||||
-}
|
||||
-
|
||||
-
|
||||
-/**
|
||||
* Cleanup the proc filesystem resources.
|
||||
*
|
||||
* \param minor device minor number.
|
||||
diff -Nur common/lib/modules/fglrx/build_mod/firegl_public.c common-r1/lib/modules/fglrx/build_mod/firegl_public.c
|
||||
--- common/lib/modules/fglrx/build_mod/firegl_public.c 2013-05-15 09:26:23.545752925 +0300
|
||||
+++ common-r1/lib/modules/fglrx/build_mod/firegl_public.c 2013-05-19 03:07:10.236552522 +0300
|
||||
@@ -583,6 +583,202 @@
|
||||
{ "NULL", NULL, NULL} // Terminate List!!!
|
||||
};
|
||||
|
||||
+
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
|
||||
+typedef int (read_proc_t)(char *page, char **start, off_t off, int count, int *eof, void *data);
|
||||
+typedef int (write_proc_t)(struct file *file, const char __user *buffer, unsigned long count, void *data);
|
||||
+#else
|
||||
+#define PDE_DATA(inode) (PDE((inode))->data)
|
||||
+#endif
|
||||
+
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,10,0)
|
||||
+typedef struct {
|
||||
+ read_proc_t *read_func;
|
||||
+ write_proc_t *write_func;
|
||||
+ void *data;
|
||||
+} gentoo_proc_wrapper_t;
|
||||
+
|
||||
+#define GENTOO_PROC_WRAPPER_OVERFLOW_MAGIC 939750305
|
||||
+
|
||||
+static ssize_t gentoo_proc_wrapper_read (struct file *myfile, char __user *buffer, size_t count, loff_t *offset) {
|
||||
+ int is_eof=0, retval;
|
||||
+ char *start, *usebuffer=NULL;
|
||||
+ gentoo_proc_wrapper_t* wrapper_data=(gentoo_proc_wrapper_t*)(myfile->private_data);
|
||||
+ if (PAGE_SIZE<*offset) {
|
||||
+ printk(KERN_ERR "Trying to read beyond 4k on proc\n");
|
||||
+ return -EIO;
|
||||
+ }
|
||||
+ //printk(KERN_NOTICE " call with: dev %p, func %p\n", wrapper_data->data, wrapper_data->read_func);
|
||||
+
|
||||
+ usebuffer=kmalloc(2*PAGE_SIZE, GFP_KERNEL);
|
||||
+ if (!usebuffer)
|
||||
+ return -ENOMEM;
|
||||
+ ((u32*)usebuffer)[1024]=GENTOO_PROC_WRAPPER_OVERFLOW_MAGIC;
|
||||
+
|
||||
+ retval=wrapper_data->read_func(usebuffer, &start, *offset, count, &is_eof, wrapper_data->data);
|
||||
+
|
||||
+ BUG_ON(GENTOO_PROC_WRAPPER_OVERFLOW_MAGIC != ((u32*)usebuffer)[1024]);
|
||||
+
|
||||
+ if (0 > retval)
|
||||
+ {
|
||||
+ printk(KERN_ERR "Proc read failed with %d", retval);
|
||||
+ goto out;
|
||||
+ }
|
||||
+
|
||||
+ if (copy_to_user(buffer, start, retval)) {
|
||||
+ printk(KERN_NOTICE "copy to user failed in amd drivers proc code\n");
|
||||
+ retval=-EFAULT;
|
||||
+ goto out;
|
||||
+ }
|
||||
+ *offset+=retval;
|
||||
+
|
||||
+out:
|
||||
+ if (usebuffer)
|
||||
+ kfree(usebuffer);
|
||||
+ return retval;
|
||||
+}
|
||||
+static ssize_t gentoo_proc_wrapper_write (struct file *myfile, const char __user *buffer, size_t count, loff_t *offset) {
|
||||
+ gentoo_proc_wrapper_t* wrapper_data=(gentoo_proc_wrapper_t*)(myfile->private_data);
|
||||
+ int retval=0;
|
||||
+ void *usebuffer=NULL;
|
||||
+
|
||||
+ BUG_ON(*offset);
|
||||
+ if (!wrapper_data->write_func)
|
||||
+ return -EPERM;
|
||||
+
|
||||
+ usebuffer=kmalloc(count, GFP_KERNEL);
|
||||
+ if (!usebuffer)
|
||||
+ return -ENOMEM;
|
||||
+ if (copy_from_user(usebuffer, buffer, count)) {
|
||||
+ printk(KERN_NOTICE "copy from user failed in amd drivers proc code\n");
|
||||
+ retval=-EFAULT;
|
||||
+ goto out;
|
||||
+ }
|
||||
+
|
||||
+ retval=wrapper_data->write_func(myfile, buffer, count, wrapper_data->data);
|
||||
+ *offset+=retval;
|
||||
+out:
|
||||
+ if (usebuffer)
|
||||
+ kfree(usebuffer);
|
||||
+ return retval;
|
||||
+}
|
||||
+static int gentoo_proc_wrapper_open(struct inode *myinode, struct file *myfile) {
|
||||
+ myfile->private_data=PDE_DATA(myinode);
|
||||
+ return generic_file_open(myinode, myfile);
|
||||
+}
|
||||
+struct file_operations gentoo_proc_fops = {
|
||||
+ .read=gentoo_proc_wrapper_read,
|
||||
+ .write=gentoo_proc_wrapper_write,
|
||||
+ .open=gentoo_proc_wrapper_open,
|
||||
+};
|
||||
+
|
||||
+static void *gentoo_proc_wrapper_data(read_proc_t *reader, write_proc_t *writer, void *mydata) {
|
||||
+ gentoo_proc_wrapper_t *retval=kmalloc(sizeof(gentoo_proc_wrapper_t), GFP_KERNEL);
|
||||
+ if (!retval)
|
||||
+ return retval;
|
||||
+ retval->read_func=reader;
|
||||
+ retval->write_func=writer;
|
||||
+ retval->data=mydata;
|
||||
+ return retval;
|
||||
+}
|
||||
+
|
||||
+static struct proc_dir_entry *firegl_proc_init( device_t *dev,
|
||||
+ int minor,
|
||||
+ struct proc_dir_entry *root,
|
||||
+ struct proc_dir_entry **dev_root,
|
||||
+ kcl_proc_list_t *proc_list ) // proc_list must be terminated!
|
||||
+{
|
||||
+ struct proc_dir_entry *ent;
|
||||
+ char name[64];
|
||||
+ kcl_proc_list_t *list = proc_list;
|
||||
+ void *tempdata;
|
||||
+ KCL_DEBUG1(FN_FIREGL_PROC, "minor %d, proc_list 0x%08lx\n", minor, (unsigned long)proc_list);
|
||||
+ if (!minor)
|
||||
+ {
|
||||
+ root = proc_mkdir("ati", NULL);
|
||||
+ }
|
||||
+
|
||||
+ if (!root)
|
||||
+ {
|
||||
+ KCL_DEBUG_ERROR("Cannot create /proc/ati\n");
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ if (minor == 0)
|
||||
+ {
|
||||
+ // Global major debice number entry
|
||||
+ tempdata=gentoo_proc_wrapper_data((read_proc_t*)firegl_major_proc_read, NULL, NULL);
|
||||
+ if (!tempdata)
|
||||
+ return NULL;
|
||||
+ ent = proc_create_data("major", S_IFREG|S_IRUGO, root, &gentoo_proc_fops, tempdata);
|
||||
+ if (!ent)
|
||||
+ {
|
||||
+ remove_proc_entry("ati", NULL);
|
||||
+ KCL_DEBUG_ERROR("Cannot create /proc/ati/major\n");
|
||||
+ return NULL;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ sprintf(name, "%d", minor);
|
||||
+ *dev_root = proc_mkdir(name, root);
|
||||
+ if (!*dev_root) {
|
||||
+ remove_proc_entry("major", root);
|
||||
+ remove_proc_entry("ati", NULL);
|
||||
+ KCL_DEBUG_ERROR("Cannot create /proc/ati/%s\n", name);
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ while (list->f || list->fops)
|
||||
+ {
|
||||
+ struct file_operations *my_fops = &gentoo_proc_fops;
|
||||
+ if (list->fops)
|
||||
+ {
|
||||
+ my_fops = (struct file_operations*)list->fops;
|
||||
+ tempdata=(dev->pubdev.signature == FGL_DEVICE_SIGNATURE)? firegl_find_device(minor) : (dev);
|
||||
+ }
|
||||
+ else {
|
||||
+ BUG_ON(!list->f);
|
||||
+ tempdata=gentoo_proc_wrapper_data((read_proc_t*)list->f, NULL, (dev->pubdev.signature == FGL_DEVICE_SIGNATURE)? firegl_find_device(minor) : (dev) );
|
||||
+ if (!tempdata)
|
||||
+ return NULL;
|
||||
+ }
|
||||
+ //printk(KERN_NOTICE "name %s, dev %p, func %p, data %p\n", list->name, (dev->pubdev.signature == FGL_DEVICE_SIGNATURE)? firegl_find_device(minor) : (dev), list->f, tempdata);
|
||||
+ ent = proc_create_data(list->name, S_IFREG|S_IRUGO, *dev_root, my_fops, tempdata);
|
||||
+
|
||||
+ if (!ent)
|
||||
+ {
|
||||
+ KCL_DEBUG_ERROR("Cannot create /proc/ati/%s/%s\n", name, list->name);
|
||||
+ while (proc_list != list)
|
||||
+ {
|
||||
+ remove_proc_entry(proc_list->name, *dev_root);
|
||||
+ proc_list++;
|
||||
+ }
|
||||
+ remove_proc_entry(name, root);
|
||||
+ if (!minor)
|
||||
+ {
|
||||
+ remove_proc_entry("major", root);
|
||||
+ remove_proc_entry("ati", NULL);
|
||||
+ }
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ list++;
|
||||
+ }
|
||||
+
|
||||
+ if (minor == 0)
|
||||
+ {
|
||||
+ // Global debug entry, only create it once
|
||||
+ tempdata=gentoo_proc_wrapper_data((read_proc_t*)firegl_debug_proc_read_wrap, (write_proc_t*)firegl_debug_proc_write_wrap, dev);
|
||||
+ if (!tempdata)
|
||||
+ return NULL;
|
||||
+ ent=proc_create_data("debug", S_IFREG|S_IRUGO, root, &gentoo_proc_fops, tempdata);
|
||||
+ if (!ent)
|
||||
+ return NULL;
|
||||
+ }
|
||||
+
|
||||
+ return root;
|
||||
+}
|
||||
+#else
|
||||
static struct proc_dir_entry *firegl_proc_init( device_t *dev,
|
||||
int minor,
|
||||
struct proc_dir_entry *root,
|
||||
@@ -677,6 +873,7 @@
|
||||
|
||||
return root;
|
||||
}
|
||||
+#endif
|
||||
|
||||
static int firegl_proc_cleanup( int minor,
|
||||
struct proc_dir_entry *root,
|
||||
@@ -0,0 +1,10 @@
|
||||
--- 10.10/common/lib/modules/fglrx/build_mod/2.6.x/Makefile 2010-09-22 09:15:33.000000000 +0200
|
||||
+++ 10.10/common/lib/modules/fglrx/build_mod/2.6.x/Makefile 2010-10-01 17:57:21.057820899 +0200
|
||||
@@ -66,6 +66,7 @@
|
||||
-DFGL_GART_RESERVED_SLOT \
|
||||
-DFGL_LINUX253P1_VMA_API \
|
||||
-DPAGE_ATTR_FIX=$(PAGE_ATTR_FIX) \
|
||||
+ -DCOMPAT_ALLOC_USER_SPACE=$(COMPAT_ALLOC_USER_SPACE) \
|
||||
|
||||
ifeq ($(KERNELRELEASE),)
|
||||
# on first call from remote location we get into this path
|
||||
@@ -0,0 +1,22 @@
|
||||
--- a/firegl_public.c
|
||||
+++ b/firegl_public.c
|
||||
@@ -4820,8 +4824,8 @@ static unsigned long kasSetExecutionLeve
|
||||
{
|
||||
unsigned long orig_level;
|
||||
|
||||
- orig_level = __get_cpu_var(kasExecutionLevel);
|
||||
- __get_cpu_var(kasExecutionLevel) = level;
|
||||
+ orig_level = __this_cpu_read(kasExecutionLevel);
|
||||
+ __this_cpu_write(kasExecutionLevel, level);
|
||||
|
||||
return orig_level;
|
||||
}
|
||||
@@ -4833,7 +4837,7 @@ static unsigned long kasSetExecutionLeve
|
||||
*/
|
||||
static unsigned long kas_GetExecutionLevel(void)
|
||||
{
|
||||
- return __get_cpu_var(kasExecutionLevel);
|
||||
+ return __this_cpu_read(kasExecutionLevel);
|
||||
}
|
||||
|
||||
/** \brief Type definition for kas_spin_lock() parameter */
|
||||
@@ -0,0 +1,2 @@
|
||||
# Fail if radeon loaded
|
||||
install fglrx if /bin/grep -qw "^radeon" /proc/modules; then /bin/false; else /sbin/modprobe -i fglrx $CMDLINE_OPTS; fi
|
||||
@@ -0,0 +1,409 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>module-fglrx</Name>
|
||||
<Homepage>http://ati.amd.com/support/driver.html</Homepage>
|
||||
<Packager>
|
||||
<Name>PisiLinux Community</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>ATI</License>
|
||||
<Summary>ATI display drivers.</Summary>
|
||||
<Description>Fglrx is a driver written by AMD(ATI) for ATI graphics cards.Radeons HD 2 3 4 X series are not supported</Description>
|
||||
<Archive sha1sum="723fa01252b03e4649513db37ed3955af9d84114" type="targz">http://archive.ubuntu.com/ubuntu/pool/restricted/f/fglrx-installer/fglrx-installer_15.200.orig.tar.gz</Archive>
|
||||
<AdditionalFiles>
|
||||
<AdditionalFile target="desktop-files.patch">desktop-files.patch</AdditionalFile>
|
||||
<AdditionalFile target="makefile_compat.patch">makefile_compat.patch</AdditionalFile>
|
||||
<AdditionalFile target="fglrx_gpl_symbol.patch">fglrx_gpl_symbol.patch</AdditionalFile>
|
||||
<AdditionalFile target="kolasa_4.0-cr4-strn.patch">kolasa_4.0-cr4-strn.patch</AdditionalFile>
|
||||
<AdditionalFile target="lano1106_fglrx_intel_iommu.patch">lano1106_fglrx_intel_iommu.patch</AdditionalFile>
|
||||
<AdditionalFile target="lano1106_kcl_agp_13_4.patch">lano1106_kcl_agp_13_4.patch</AdditionalFile>
|
||||
<AdditionalFile target="LICENSE.TXT">LICENSE.TXT</AdditionalFile>
|
||||
</AdditionalFiles>
|
||||
<BuildDependencies>
|
||||
<Dependency version="3.19.8">kernel-module-headers</Dependency>
|
||||
</BuildDependencies>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>module-fglrx</Name>
|
||||
<Conflicts>
|
||||
<Package>module-fglrx-legacy</Package>
|
||||
</Conflicts>
|
||||
<IsA>driver</IsA>
|
||||
<Summary>Kernel module for ATI display drivers</Summary>
|
||||
<RuntimeDependencies>
|
||||
<Dependency version="3.19.8">kernel</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library" permanent="true">/lib/modules</Path>
|
||||
<Path fileType="config">/etc/conf.d</Path>
|
||||
<Path fileType="config">/etc/modprobe.d</Path>
|
||||
</Files>
|
||||
<AdditionalFiles>
|
||||
<AdditionalFile owner="root" permission="0644" target="/etc/modprobe.d/blacklist-fglrx.conf">blacklist-fglrx.conf</AdditionalFile>
|
||||
<AdditionalFile owner="root" permission="0644" target="/etc/modprobe.d/fglrx.conf">modprobe.conf</AdditionalFile>
|
||||
<AdditionalFile owner="root" permission="0644" target="/etc/conf.d/atieventsd">atieventsd</AdditionalFile>
|
||||
</AdditionalFiles>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-fglrx</Name>
|
||||
<Conflicts>
|
||||
<Package>xorg-video-fglrx-legacy</Package>
|
||||
</Conflicts>
|
||||
<IsA>driver</IsA>
|
||||
<PartOf>x11.driver</PartOf>
|
||||
<RuntimeDependencies>
|
||||
<AnyDependency>
|
||||
<Dependency version="current">module-fglrx</Dependency>
|
||||
</AnyDependency>
|
||||
<Dependency>qt</Dependency>
|
||||
<Dependency>mesa</Dependency>
|
||||
<Dependency>libSM</Dependency>
|
||||
<Dependency>libICE</Dependency>
|
||||
<Dependency>uClibc</Dependency>
|
||||
<Dependency>libXext</Dependency>
|
||||
<Dependency>libXrandr</Dependency>
|
||||
<Dependency>libXfixes</Dependency>
|
||||
<Dependency>libXcursor</Dependency>
|
||||
<Dependency>libXrender</Dependency>
|
||||
<Dependency>fontconfig</Dependency>
|
||||
<Dependency>libXxf86vm</Dependency>
|
||||
<Dependency>libXinerama</Dependency>
|
||||
<Dependency>xorg-server</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="data">/usr/share</Path>
|
||||
<Path fileType="config">/etc</Path>
|
||||
<Path fileType="executable">/usr/bin</Path>
|
||||
<Path fileType="executable">/usr/sbin</Path>
|
||||
<Path fileType="data">/usr/X11R6</Path>
|
||||
<Path fileType="library">/usr/lib</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
<Path fileType="man">/usr/share/man</Path>
|
||||
</Files>
|
||||
<Provides>
|
||||
<COMAR script="package.py">System.Package</COMAR>
|
||||
<COMAR script="service.py" name="atieventsd">System.Service</COMAR>
|
||||
</Provides>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-fglrx-32bit</Name>
|
||||
<Conflicts>
|
||||
<Package>xorg-video-fglrx-legacy-32bit</Package>
|
||||
</Conflicts>
|
||||
<PartOf>emul32</PartOf>
|
||||
<BuildType>emul32</BuildType>
|
||||
<Summary>32-bit shared libraries for xorg-video-fglrx</Summary>
|
||||
<BuildDependencies>
|
||||
<Dependency>xvba-video-32bit</Dependency>
|
||||
<Dependency>fontconfig-32bit</Dependency>
|
||||
<Dependency>freetype-32bit</Dependency>
|
||||
<Dependency>libXcursor-32bit</Dependency>
|
||||
<Dependency>libXext-32bit</Dependency>
|
||||
<Dependency>libXfixes-32bit</Dependency>
|
||||
<Dependency>libXinerama-32bit</Dependency>
|
||||
<Dependency>libXrandr-32bit</Dependency>
|
||||
<Dependency>libXrender-32bit</Dependency>
|
||||
<Dependency>libXxf86vm-32bit</Dependency>
|
||||
<Dependency>libX11-32bit</Dependency>
|
||||
<Dependency>glibc-32bit</Dependency>
|
||||
</BuildDependencies>
|
||||
<RuntimeDependencies>
|
||||
<Dependency release="current">xorg-video-fglrx</Dependency>
|
||||
<Dependency>libXext-32bit</Dependency>
|
||||
<Dependency>libX11-32bit</Dependency>
|
||||
<Dependency>mesa-32bit</Dependency>
|
||||
<Dependency>glibc-32bit</Dependency>
|
||||
<Dependency>libgcc</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library">/usr/lib32</Path>
|
||||
</Files>
|
||||
<Provides>
|
||||
<COMAR script="package-emul32.py">System.Package</COMAR>
|
||||
</Provides>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="38">
|
||||
<Date>2015-05-26</Date>
|
||||
<Version>15.20</Version>
|
||||
<Comment>Rebuild for kernel-3.19.8</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="37">
|
||||
<Date>2015-05-05</Date>
|
||||
<Version>15.20</Version>
|
||||
<Comment>Rebuild for kernel-3.19.6</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="36">
|
||||
<Date>2015-04-24</Date>
|
||||
<Version>15.20</Version>
|
||||
<Comment>Rebuild for kernel-3.19.5</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="35">
|
||||
<Date>2015-04-16</Date>
|
||||
<Version>15.20</Version>
|
||||
<Comment>Rebuild for kernel-3.19.4</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="34">
|
||||
<Date>2015-04-02</Date>
|
||||
<Version>15.20</Version>
|
||||
<Comment>Version bump.</Comment>
|
||||
<Name>Hakan Yıldız</Name>
|
||||
<Email>hknyldz93@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="33">
|
||||
<Date>2015-03-01</Date>
|
||||
<Version>14.12</Version>
|
||||
<Comment>Rebuild for kernel-3.19.1</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="32">
|
||||
<Date>2015-03-01</Date>
|
||||
<Version>14.12</Version>
|
||||
<Comment>Rebuild.</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="31">
|
||||
<Date>2015-02-01</Date>
|
||||
<Version>14.12</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Ergün Salman</Name>
|
||||
<Email>Poyraz76@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="30">
|
||||
<Date>2015-01-20</Date>
|
||||
<Version>14.9</Version>
|
||||
<Comment>Rebuild for kernel 3.18.1</Comment>
|
||||
<Name>Ergün Salman</Name>
|
||||
<Email>Poyraz76@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="29">
|
||||
<Date>2014-12-08</Date>
|
||||
<Version>14.9</Version>
|
||||
<Comment>Rebuild for kernel 3.17.4</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="28">
|
||||
<Date>2014-10-19</Date>
|
||||
<Version>14.9</Version>
|
||||
<Comment>Update unoffical release
|
||||
* working with xorg-server 1.16</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="27">
|
||||
<Date>2014-09-03</Date>
|
||||
<Version>14.6</Version>
|
||||
<Comment>Rebuild for kernel 3.16.1</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="26">
|
||||
<Date>2014-07-24</Date>
|
||||
<Version>14.6</Version>
|
||||
<Comment>Rebuil for kernel 3.15.6</Comment>
|
||||
<Name>Vedat Demir</Name>
|
||||
<Email>vedat@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="25">
|
||||
<Date>2014-06-15</Date>
|
||||
<Version>14.6</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="24">
|
||||
<Date>2014-05-02</Date>
|
||||
<Version>14.4</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="23">
|
||||
<Date>2014-05-02</Date>
|
||||
<Version>14.3b</Version>
|
||||
<Comment>Rebuild for kernel 3.14.2.</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="22">
|
||||
<Date>2014-04-15</Date>
|
||||
<Version>14.3b</Version>
|
||||
<Comment>Rebuild for kernel 3.13.10.</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="21">
|
||||
<Date>2014-04-11</Date>
|
||||
<Version>14.3b</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Burak Fazıl Ertürk</Name>
|
||||
<Email>burakerturk@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="20">
|
||||
<Date>2014-03-23</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>Rebuild for 3.13.6</Comment>
|
||||
<Name>Yusuf Aydemir</Name>
|
||||
<Email>yusuf.aydemir@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="19">
|
||||
<Date>2014-03-09</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>Rebuild for 3.12.13</Comment>
|
||||
<Name>Yusuf Aydemir</Name>
|
||||
<Email>yusuf.aydemir@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="18">
|
||||
<Date>2014-03-02</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>Rebuild for 3.12.13</Comment>
|
||||
<Name>Yusuf Aydemir</Name>
|
||||
<Email>yusuf.aydemir@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="17">
|
||||
<Date>2014-01-17</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>Rebuild for 3.12.8</Comment>
|
||||
<Name>Yusuf Aydemir</Name>
|
||||
<Email>yusuf.aydemir@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="16">
|
||||
<Date>2013-12-17</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>Rebuild for 3.12.5</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="15">
|
||||
<Date>2013-12-14</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>Rebuild for 3.12.5</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="14">
|
||||
<Date>2013-11-23</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>Rebuild for 3.10.20</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="13">
|
||||
<Date>2013-11-05</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>Rebuild for 3.10.18</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="12">
|
||||
<Date>2013-08-30</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>3.10.15</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="11">
|
||||
<Date>2013-08-30</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>3.10.13</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="10">
|
||||
<Date>2013-08-30</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>3.10.12</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="9">
|
||||
<Date>2013-08-30</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>3.10.10</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="8">
|
||||
<Date>2013-08-20</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>3.10.9</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="7">
|
||||
<Date>2013-08-20</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>rebuild for kernele 3.10.6.</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="6">
|
||||
<Date>2013-07-06</Date>
|
||||
<Version>13.4</Version>
|
||||
<Comment>Version bump.</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="5">
|
||||
<Date>2013-06-15</Date>
|
||||
<Version>13.3_beta3</Version>
|
||||
<Comment>build for Kernel 3.8.13</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="4">
|
||||
<Date>2013-06-15</Date>
|
||||
<Version>13.3_beta3</Version>
|
||||
<Comment>rebuild for Kernel 3.8.13</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="3">
|
||||
<Date>2013-05-26</Date>
|
||||
<Version>13.3_beta3</Version>
|
||||
<Comment>Kernel 3.9.3</Comment>
|
||||
<Name>Osman Erkan</Name>
|
||||
<Email>osman.erkan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="2">
|
||||
<Date>2013-05-12</Date>
|
||||
<Version>13.3_beta3</Version>
|
||||
<Comment>V.bump</Comment>
|
||||
<Name>Osman Erkan</Name>
|
||||
<Email>osman.erkan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="1">
|
||||
<Date>2012-10-03</Date>
|
||||
<Version>12.9_beta1</Version>
|
||||
<Comment>First release</Comment>
|
||||
<Name>Erdem Artan</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" ?>
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>module-fglrx</Name>
|
||||
<Summary xml:lang="tr">ATI ekran kartı sürücüleri</Summary>
|
||||
<Description xml:lang="tr">AMD(ATI) tarafından ATI ekran kartları için yazılmış sürücüler.Radeon HD 2 3 4 X serisi ekran kartlarını desteklememektedir.</Description>
|
||||
<Summary xml:lang="fr">Pilote d'affichage ATI</Summary>
|
||||
<Summary xml:lang="es">Controlador display ATI</Summary>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>module-fglrx</Name>
|
||||
<Summary xml:lang="tr">ATI ekran sürücüleri için çekirdek modülü</Summary>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-fglrx</Name>
|
||||
<Summary xml:lang="tr">ATI ekran kartı sürücüleri için paylaşımlı kitaplıklar ve araçlar</Summary>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-fglrx-32bit</Name>
|
||||
<Summary xml:lang="tr">xorg-video-fglrx için 32-bit paylaşımlı kitaplıklar</Summary>
|
||||
</Package>
|
||||
</PISI>
|
||||
@@ -0,0 +1,144 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file http://www.gnu.org/licenses/gpl.txt
|
||||
|
||||
from pisi.actionsapi import get
|
||||
from pisi.actionsapi import autotools
|
||||
from pisi.actionsapi import pisitools
|
||||
from pisi.actionsapi import shelltools
|
||||
from pisi.actionsapi import kerneltools
|
||||
|
||||
WorkDir = "."
|
||||
KDIR = kerneltools.getKernelVersion()
|
||||
NoStrip = ["/lib/modules"]
|
||||
|
||||
version = get.srcVERSION()
|
||||
driver_dir_name = "nvidia-current"
|
||||
datadir = "/usr/share/%s" % driver_dir_name
|
||||
libdir = "/usr/lib32" if get.buildTYPE() == 'emul32' else "/usr/lib"
|
||||
arch = "x86" if get.buildTYPE() == 'emul32' else get.ARCH().replace("i6", "x")
|
||||
nvlibdir = "%s/%s" % (libdir, driver_dir_name)
|
||||
xorglibdir= "%s/xorg" % libdir
|
||||
|
||||
def setup():
|
||||
shelltools.system("sh NVIDIA-Linux-%s-%s.run -x --target tmp"
|
||||
% (arch, get.srcVERSION()))
|
||||
shelltools.move("tmp/*", ".")
|
||||
|
||||
# Our libc is TLS enabled so use TLS library
|
||||
shelltools.unlink("*-tls.so*")
|
||||
shelltools.move("tls/*", ".")
|
||||
|
||||
# xorg-server provides libwfb.so
|
||||
shelltools.unlink("libnvidia-wfb.so.*")
|
||||
|
||||
shelltools.echo("ld.so.conf", nvlibdir)
|
||||
shelltools.echo("XvMCConfig", "%s/libXvMCNVIDIA.so" % nvlibdir)
|
||||
|
||||
def build():
|
||||
# We don't need kernel module for emul32 build
|
||||
if get.buildTYPE() == 'emul32':
|
||||
return
|
||||
|
||||
shelltools.export("SYSSRC", "/lib/modules/%s/build" % KDIR)
|
||||
shelltools.cd("kernel")
|
||||
|
||||
autotools.make("module")
|
||||
|
||||
shelltools.cd("uvm")
|
||||
|
||||
autotools.make("module")
|
||||
|
||||
def install():
|
||||
|
||||
if not get.buildTYPE() == 'emul32':
|
||||
# Kernel driver
|
||||
pisitools.insinto("/lib/modules/%s/extra/nvidia" % KDIR,
|
||||
"kernel/nvidia.ko")
|
||||
|
||||
pisitools.insinto("/lib/modules/%s/extra/nvidia" % KDIR,
|
||||
"kernel/uvm/nvidia-uvm.ko")
|
||||
|
||||
|
||||
# Command line tools and their man pages
|
||||
pisitools.dobin("nvidia-smi")
|
||||
pisitools.doman("nvidia-smi.1.gz")
|
||||
|
||||
pisitools.dobin("nvidia-persistenced")
|
||||
|
||||
|
||||
### Libraries
|
||||
# OpenGl library
|
||||
pisitools.dolib("libGL.so.%s" % version, nvlibdir)
|
||||
pisitools.dosym("libGL.so.%s" % version, "%s/libGL.so.1.2.0" % nvlibdir)
|
||||
|
||||
# OpenCL
|
||||
pisitools.dolib("libOpenCL.so.1.0.0", libdir)
|
||||
pisitools.dosym("libOpenCL.so.1.0.0", "%s/libOpenCL.so.1.0" % libdir)
|
||||
pisitools.dosym("libOpenCL.so.1.0", "%s/libOpenCL.so.1" % libdir)
|
||||
|
||||
pisitools.dolib("libnvidia-opencl.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-opencl.so.%s" % version, "%s/libnvidia-opencl.so.1" % libdir)
|
||||
pisitools.dosym("libnvidia-opencl.so.1", "%s/libnvidia-opencl.so" % libdir)
|
||||
|
||||
# CUDA
|
||||
pisitools.dolib("libcuda.so.%s" % version, libdir)
|
||||
pisitools.dosym("libcuda.so.%s" % version, "%s/libcuda.so.1" % libdir)
|
||||
pisitools.dosym("libcuda.so.1", "%s/libcuda.so" % libdir)
|
||||
|
||||
pisitools.dolib("libnvcuvid.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvcuvid.so.%s" % version, "%s/libnvcuvid.so.1" % libdir)
|
||||
pisitools.dosym("libnvcuvid.so.1", "%s/libnvcuvid.so" % libdir)
|
||||
|
||||
# NVML
|
||||
# Provides programmatic access to static information and monitoring
|
||||
# data for NVIDIA GPUs, as well as limited managment capabilities
|
||||
pisitools.dolib("libnvidia-ml.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-ml.so.%s" % version, "%s/libnvidia-ml.so.1" % libdir)
|
||||
|
||||
pisitools.dolib("libnvidia-cfg.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-cfg.so.%s" % version, "%s/libnvidia-cfg.so.1" % libdir)
|
||||
|
||||
pisitools.dolib("libnvidia-compiler.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-compiler.so.%s" % version, "%s/libnvidia-compiler.so.1" % libdir)
|
||||
|
||||
# OpenGL core library and others
|
||||
for lib in ("glcore", "tls", "encode", "fbc", "glsi", "ifr", "eglcore"):
|
||||
pisitools.dolib("libnvidia-%s.so.%s" % (lib, version), libdir)
|
||||
pisitools.dosym("libnvidia-%s.so.%s" % (lib, version), "%s/libnvidia-%s.so.1" %(libdir, lib))
|
||||
|
||||
# VDPAU driver
|
||||
pisitools.dolib("libvdpau_nvidia.so.%s" % version, "%s/vdpau" % nvlibdir)
|
||||
pisitools.dosym("../nvidia-current/vdpau/libvdpau_nvidia.so.%s" % version, "%s/vdpau/libvdpau_nvidia.so.1" % nvlibdir.strip(driver_dir_name))
|
||||
|
||||
# X modules
|
||||
pisitools.dolib("nvidia_drv.so", "%s/modules/drivers" % nvlibdir)
|
||||
pisitools.dosym("%s/modules/drivers/nvidia_drv.so" % nvlibdir, "%s/modules/drivers/nvidia_drv.so" % xorglibdir)
|
||||
pisitools.dolib("libglx.so.%s" % version, "%s/modules/extensions" % nvlibdir)
|
||||
pisitools.dosym("libglx.so.%s" % version, "%s/modules/extensions/libglx.so" % nvlibdir)
|
||||
|
||||
# Exit time for emul32 build
|
||||
if get.buildTYPE() == 'emul32':
|
||||
pisitools.insinto(datadir, "ld.so.conf", "32bit-ld.so.conf")
|
||||
return
|
||||
|
||||
pisitools.insinto("/etc/OpenCL/vendors", "nvidia.icd")
|
||||
|
||||
pisitools.insinto(datadir, "ld.so.conf")
|
||||
pisitools.insinto(datadir, "XvMCConfig")
|
||||
|
||||
# Documentation
|
||||
docdir = "xorg-video-%s" % driver_dir_name
|
||||
pisitools.dodoc("LICENSE", "NVIDIA_Changelog", "README.txt", destDir=docdir)
|
||||
pisitools.dohtml("html/*", destDir=docdir)
|
||||
|
||||
### Note
|
||||
# This package includes nvidia-setting and nvidia-xconfig binaries. However
|
||||
# we have seperate packages for each of them. Nvidia provides tarballs for
|
||||
# these binaries. Don't forget to update these package with each NVIDIA
|
||||
# driver update.
|
||||
|
||||
# Nvidia-bug-report
|
||||
# Comes with our own nvidia-xcfonig package
|
||||
# pisitools.dobin("nvidia-bug-report.sh")
|
||||
@@ -0,0 +1,25 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
import os
|
||||
|
||||
driver_dir_name = "nvidia-current"
|
||||
libdir = "/usr/lib32/%s" % driver_dir_name
|
||||
datadir = "/usr/share/%s" % driver_dir_name
|
||||
|
||||
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
|
||||
os.system(" /usr/sbin/alternatives \
|
||||
--install /usr/lib32/libGL.so.1.2.0 libGL-32bit %(libdir)s/libGL.so.1.2.0 50 \
|
||||
--slave /usr/lib32/xorg/modules/volatile xorg-modules-volatile-32bit %(libdir)s/modules"
|
||||
% {"libdir": libdir, "datadir": datadir})
|
||||
# --slave /etc/ld.so.conf.d/10-nvidia-32bit.conf nvidia-ldsoconf-32bit %(datadir)s/32bit-ld.so.conf"
|
||||
|
||||
# If this driver is in use, refresh links after installation.
|
||||
if os.readlink("/etc/alternatives/libGL-32bit") == "%s/libGL.so.1.2.0" % libdir:
|
||||
os.system("/usr/sbin/alternatives --set libGL-32bit %s/libGL.so.1.2.0" % libdir)
|
||||
os.system("/sbin/ldconfig -X")
|
||||
|
||||
def preRemove():
|
||||
# FIXME This is not needed when upgrading package; but pisi does not
|
||||
# provide a way to learn operation type.
|
||||
#os.system("/usr/sbin/alternatives --remove libGL-32bit %s/libGL.so.1.2.0" % libdir)
|
||||
pass
|
||||
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
import os
|
||||
|
||||
driver_dir_name = "nvidia-current"
|
||||
libdir = "/usr/lib/%s" % driver_dir_name
|
||||
datadir = "/usr/share/%s" % driver_dir_name
|
||||
|
||||
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
|
||||
os.system(" /usr/sbin/alternatives \
|
||||
--install /usr/lib/libGL.so.1.2.0 libGL %(libdir)s/libGL.so.1.2.0 50 \
|
||||
--slave /usr/lib/xorg/modules/volatile xorg-modules-volatile %(libdir)s/modules"
|
||||
% {"libdir": libdir, "datadir": datadir})
|
||||
# --slave /etc/X11/XvMCConfig XvMCConfig %(datadir)s/XvMCConfig \
|
||||
# --slave /etc/ld.so.conf.d/10-nvidia.conf nvidia-ldsoconf %(datadir)s/ld.so.conf"
|
||||
|
||||
# If this driver is in use, refresh links after installation.
|
||||
if os.readlink("/etc/alternatives/libGL") == "%s/libGL.so.1.2.0" % libdir:
|
||||
os.system("/usr/sbin/alternatives --set libGL %s/libGL.so.1.2.0" % libdir)
|
||||
os.system("/sbin/ldconfig -X")
|
||||
|
||||
def preRemove():
|
||||
# FIXME This is not needed when upgrading package; but pisi does not
|
||||
# provide a way to learn operation type.
|
||||
#os.system("/usr/sbin/alternatives --remove libGL %s/libGL.so.1.2.0" % libdir)
|
||||
pass
|
||||
@@ -0,0 +1,8 @@
|
||||
# Blacklist by default since nvidia* modules have the same aliases
|
||||
blacklist nvidia-current
|
||||
|
||||
# Fail if nouveau loaded
|
||||
install nvidia-current if /bin/grep -qw "^nouveau" /proc/modules; then /bin/false; else /sbin/modprobe -i nvidia-current $CMDLINE_OPTS; fi
|
||||
|
||||
# Load the right module when requested with the name "nvidia"
|
||||
install nvidia M=$(/bin/readlink /etc/alternatives/libGL | /usr/bin/cut -d/ -f4 | /bin/grep nvidia) && /sbin/modprobe $M $CMDLINE_OPTS
|
||||
@@ -0,0 +1,408 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>module-nvidia-current</Name>
|
||||
<Homepage>http://www.nvidia.com</Homepage>
|
||||
<Packager>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>NVIDIA</License>
|
||||
<Summary>NVIDIA drivers for GeForce 6xxx and newer GPUs</Summary>
|
||||
<Description>NVIDIA graphics drivers provide optimized 2D/3D performance.</Description>
|
||||
<Archive sha1sum="d15907ed7527f3590407a340a2882e5a9600a81d" type="binary">ftp://download.nvidia.com/XFree86/Linux-x86/349.16/NVIDIA-Linux-x86-349.16.run</Archive>
|
||||
<Archive sha1sum="7d842a02a672547996002c866418cde917d821a0" type="binary">ftp://download.nvidia.com/XFree86/Linux-x86_64/349.16/NVIDIA-Linux-x86_64-349.16.run</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency version="4.0.5">kernel-module-headers</Dependency>
|
||||
<Dependency>libX11-devel</Dependency>
|
||||
</BuildDependencies>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>module-nvidia-current</Name>
|
||||
<IsA>driver</IsA>
|
||||
<Summary>Kernel module for current NVIDIA graphics driver releases</Summary>
|
||||
<RuntimeDependencies>
|
||||
<Dependency version="4.0.5">kernel</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library" permanent="true">/lib/modules</Path>
|
||||
</Files>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-nvidia-current</Name>
|
||||
<IsA>driver</IsA>
|
||||
<PartOf>x11.driver</PartOf>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>libXext</Dependency>
|
||||
<Dependency>libX11</Dependency>
|
||||
<Dependency>mesa</Dependency>
|
||||
<Dependency>xorg-server</Dependency>
|
||||
<Dependency version="current">module-nvidia-current</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="data">/etc/OpenCL</Path>
|
||||
<Path fileType="executable">/usr/bin</Path>
|
||||
<Path fileType="library">/usr/lib</Path>
|
||||
<Path fileType="data">/usr/share</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
<Path fileType="man">/usr/share/man</Path>
|
||||
</Files>
|
||||
<Provides>
|
||||
<COMAR script="package.py">System.Package</COMAR>
|
||||
</Provides>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-nvidia-current-32bit</Name>
|
||||
<PartOf>emul32</PartOf>
|
||||
<Summary>32-bit shared libraries for xorg-video-nvidia-current</Summary>
|
||||
<BuildType>emul32</BuildType>
|
||||
<BuildDependencies>
|
||||
<Dependency>libvdpau-32bit</Dependency>
|
||||
</BuildDependencies>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>zlib-32bit</Dependency>
|
||||
<Dependency>mesa-32bit</Dependency>
|
||||
<Dependency>libX11-32bit</Dependency>
|
||||
<Dependency>libXext-32bit</Dependency>
|
||||
<Dependency release="current">xorg-video-nvidia-current</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library">/usr/lib32</Path>
|
||||
<Path fileType="library">/usr/share/nvidia-current/32bit-ld.so.conf</Path>
|
||||
</Files>
|
||||
<Provides>
|
||||
<COMAR script="package-emul32.py">System.Package</COMAR>
|
||||
</Provides>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="44">
|
||||
<Date>2015-06-16</Date>
|
||||
<Version>349.16</Version>
|
||||
<Comment>Rebuild for kernel 3.19.8</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="43">
|
||||
<Date>2015-05-22</Date>
|
||||
<Version>349.16</Version>
|
||||
<Comment>Rebuild for kernel 3.19.8</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="42">
|
||||
<Date>2015-05-05</Date>
|
||||
<Version>349.16</Version>
|
||||
<Comment>Rebuild for kernel 3.19.6</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="41">
|
||||
<Date>2015-04-24</Date>
|
||||
<Version>349.16</Version>
|
||||
<Comment>Rebuild for kernel 3.19.5</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="40">
|
||||
<Date>2015-04-16</Date>
|
||||
<Version>349.16</Version>
|
||||
<Comment>Rebuild for kernel 3.19.4</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="39">
|
||||
<Date>2015-04-02</Date>
|
||||
<Version>349.12</Version>
|
||||
<Comment>Rebuild for kernel 3.19.3</Comment>
|
||||
<Name>Hakan Yıldız</Name>
|
||||
<Email>hknyldz93@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="38">
|
||||
<Date>2015-03-31</Date>
|
||||
<Version>349.12</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Stefan Gronewold</Name>
|
||||
<Email>groni@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="37">
|
||||
<Date>2015-03-08</Date>
|
||||
<Version>346.47</Version>
|
||||
<Comment>Version bump, Rebuild for kernel 3.19.1</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="36">
|
||||
<Date>2015-03-01</Date>
|
||||
<Version>346.35</Version>
|
||||
<Comment>Rebuild for kernel 3.19.0</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="35">
|
||||
<Date>2015-01-31</Date>
|
||||
<Version>346.35</Version>
|
||||
<Comment>Rebuild for kernel 3.18.3</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="34">
|
||||
<Date>2015-01-22</Date>
|
||||
<Version>346.35</Version>
|
||||
<Comment>Version bump.</Comment>
|
||||
<Name>Stefan Gronewold (groni)</Name>
|
||||
<Email>groni@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="34">
|
||||
<Date>2015-01-09</Date>
|
||||
<Version>346.22</Version>
|
||||
<Comment>Rebuild for kernel 3.18.1</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="33">
|
||||
<Date>2014-11-29</Date>
|
||||
<Version>343.22</Version>
|
||||
<Comment>Rebuild for kernel 3.17.4</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="32">
|
||||
<Date>2014-10-19</Date>
|
||||
<Version>343.22</Version>
|
||||
<Comment>Version bump, conform kernel 3.17.1</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="31">
|
||||
<Date>2014-09-21</Date>
|
||||
<Version>343.13</Version>
|
||||
<Comment>Version bump and added symlink for bumblebee</Comment>
|
||||
<Name>Mathias Freire</Name>
|
||||
<Email>mathiasfreire45@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="30">
|
||||
<Date>2014-09-03</Date>
|
||||
<Version>340.32</Version>
|
||||
<Comment>Version bump, conform kernel 3.16.1</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="29">
|
||||
<Date>2014-07-24</Date>
|
||||
<Version>340.24</Version>
|
||||
<Comment>Version bump for kernel 3.15.6</Comment>
|
||||
<Name>Vedat Demir</Name>
|
||||
<Email>vedat@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="28">
|
||||
<Date>2014-06-15</Date>
|
||||
<Version>340.17</Version>
|
||||
<Comment>Version bump for kernel 3.15.0</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="27">
|
||||
<Date>2014-05-29</Date>
|
||||
<Version>337.19</Version>
|
||||
<Comment>Version bump for kernel 3.14.4.</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="26">
|
||||
<Date>2014-05-02</Date>
|
||||
<Version>337.12</Version>
|
||||
<Comment>Version bump for kernel 3.14.2.</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="25">
|
||||
<Date>2014-04-15</Date>
|
||||
<Version>334.21</Version>
|
||||
<Comment>Rebuild for kernel 3.13.10.</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="24">
|
||||
<Date>2014-03-29</Date>
|
||||
<Version>334.21</Version>
|
||||
<Comment>Rebuild for 3.13.6</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="23">
|
||||
<Date>2014-03-10</Date>
|
||||
<Version>334.21</Version>
|
||||
<Comment>Change module name. Remove module-nvidia-current-userspace</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="22">
|
||||
<Date>2014-03-07</Date>
|
||||
<Version>334.21</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="21">
|
||||
<Date>2014-03-01</Date>
|
||||
<Version>334.16</Version>
|
||||
<Comment>version bump</Comment>
|
||||
<Name>PisiLinux Community</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="20">
|
||||
<Date>2014-01-15</Date>
|
||||
<Version>331.38</Version>
|
||||
<Comment>version bump</Comment>
|
||||
<Name>Yusuf Aydemir</Name>
|
||||
<Email>yusuf.aydemir@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="19">
|
||||
<Date>2013-12-17</Date>
|
||||
<Version>331.20</Version>
|
||||
<Comment>Rebuild for 3.12.5</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="18">
|
||||
<Date>2013-12-12</Date>
|
||||
<Version>331.20</Version>
|
||||
<Comment>Rebuild for 3.12.5</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="17">
|
||||
<Date>2013-11-23</Date>
|
||||
<Version>331.20</Version>
|
||||
<Comment>Rebuild for 3.10.20</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="16">
|
||||
<Date>2013-11-21</Date>
|
||||
<Version>331.20</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Richard de Bruin</Name>
|
||||
<Email>richdb@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="15">
|
||||
<Date>2013-11-05</Date>
|
||||
<Version>325.15</Version>
|
||||
<Comment>Rebuild for 3.10.18</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="14">
|
||||
<Date>2013-09-28</Date>
|
||||
<Version>325.15</Version>
|
||||
<Comment>3.10.15</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="13">
|
||||
<Date>2013-09-28</Date>
|
||||
<Version>325.15</Version>
|
||||
<Comment>3.10.13</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="12">
|
||||
<Date>2013-09-18</Date>
|
||||
<Version>325.15</Version>
|
||||
<Comment>3.10.12</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="11">
|
||||
<Date>2013-08-20</Date>
|
||||
<Version>325.15</Version>
|
||||
<Comment>3.10.10</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="10">
|
||||
<Date>2013-08-20</Date>
|
||||
<Version>325.15</Version>
|
||||
<Comment>3.10.9</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="9">
|
||||
<Date>2013-08-20</Date>
|
||||
<Version>325.15</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="8">
|
||||
<Date>2013-08-12</Date>
|
||||
<Version>319.32</Version>
|
||||
<Comment>rebuld for kernel 3.10.6</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="7">
|
||||
<Date>2013-08-11</Date>
|
||||
<Version>319.32</Version>
|
||||
<Comment>rebuld for kernel 3.10.5</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="6">
|
||||
<Date>2013-07-05</Date>
|
||||
<Version>319.32</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="5">
|
||||
<Date>2013-06-05</Date>
|
||||
<Version>319.17</Version>
|
||||
<Comment>Kernel 3.8.13</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="4">
|
||||
<Date>2013-05-26</Date>
|
||||
<Version>319.17</Version>
|
||||
<Comment>Kernel 3.9.3</Comment>
|
||||
<Name>PisiLinux Community</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="3">
|
||||
<Date>2013-05-12</Date>
|
||||
<Version>319.17</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="2">
|
||||
<Date>2013-03-06</Date>
|
||||
<Version>313.26</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="1">
|
||||
<Date>2013-02-19</Date>
|
||||
<Version>310.32</Version>
|
||||
<Comment>First release</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" ?>
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>module-nvidia-current</Name>
|
||||
<Summary xml:lang="tr">GeForce 6xxx ve daha yeni NVIDIA ekran kartları için sürücüler</Summary>
|
||||
<Description xml:lang="tr">NVIDIA grafik sürücüleri daha iyi 2B/3B başarımı sağlar.</Description>
|
||||
<Description xml:lang="es">Controladores de kernel nVIDIA y glx para rendimiento optimizado 2d/3d en Linux (Para NV3X o mejor).</Description>
|
||||
<Summary xml:lang="es">Controladores nVIDIA de kernel y glx para tarjetas NV3 o mejor (Geforce FX o mejor)</Summary>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>module-nvidia-current</Name>
|
||||
<Summary xml:lang="tr">Güncel NVIDIA grafik sürücüleri için çekirdek modülü</Summary>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-nvidia-current</Name>
|
||||
<Summary xml:lang="tr">Güncel NVIDIA userspace sürücüleri ve ikili dosyaları</Summary>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-nvidia-current-32bit</Name>
|
||||
<Summary xml:lang="tr">xorg-video-nvidia-current için 32-bit paylaşımlı kitaplıklar</Summary>
|
||||
</Package>
|
||||
</PISI>
|
||||
@@ -0,0 +1,135 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file http://www.gnu.org/licenses/gpl.txt
|
||||
|
||||
from pisi.actionsapi import kerneltools
|
||||
from pisi.actionsapi import shelltools
|
||||
from pisi.actionsapi import autotools
|
||||
from pisi.actionsapi import pisitools
|
||||
from pisi.actionsapi import get
|
||||
|
||||
WorkDir = "."
|
||||
KDIR = kerneltools.getKernelVersion()
|
||||
NoStrip = ["/lib/modules"]
|
||||
|
||||
version = get.srcVERSION()
|
||||
driver_dir_name = "nvidia304"
|
||||
datadir = "/usr/share/%s" % driver_dir_name
|
||||
|
||||
if get.buildTYPE() == 'emul32':
|
||||
arch = "x86"
|
||||
nvlibdir = "/usr/lib32/%s" % driver_dir_name
|
||||
libdir = "/usr/lib32"
|
||||
else:
|
||||
arch = get.ARCH().replace("i686", "x86")
|
||||
nvlibdir = "/usr/lib/%s" % driver_dir_name
|
||||
libdir = "/usr/lib"
|
||||
|
||||
def setup():
|
||||
shelltools.system("sh NVIDIA-Linux-%s-%s.run -x --target tmp"
|
||||
% (arch, get.srcVERSION()))
|
||||
shelltools.move("tmp/*", ".")
|
||||
|
||||
shelltools.system("patch -p1 < NVIDIA-Linux-x86_64-304.125-kernel-3.19.patch")
|
||||
|
||||
# Our libc is TLS enabled so use TLS library
|
||||
shelltools.unlink("*-tls.so*")
|
||||
shelltools.move("tls/*", ".")
|
||||
|
||||
# xorg-server provides libwfb.so
|
||||
shelltools.unlink("libnvidia-wfb.so.*")
|
||||
|
||||
shelltools.echo("ld.so.conf", nvlibdir)
|
||||
shelltools.echo("XvMCConfig", "%s/libXvMCNVIDIA.so" % nvlibdir)
|
||||
|
||||
def build():
|
||||
# We don't need kernel module for emul32 build
|
||||
if get.buildTYPE() == 'emul32':
|
||||
return
|
||||
|
||||
shelltools.export("SYSSRC", "/lib/modules/%s/build" % KDIR)
|
||||
shelltools.cd("kernel")
|
||||
|
||||
autotools.make("module")
|
||||
|
||||
def install():
|
||||
|
||||
if not get.buildTYPE() == 'emul32':
|
||||
# Kernel driver
|
||||
pisitools.insinto("/lib/modules/%s/extra/nvidia" % KDIR,
|
||||
"kernel/nvidia.ko")
|
||||
|
||||
# Command line tools and their man pages
|
||||
pisitools.dobin("nvidia-smi")
|
||||
pisitools.doman("nvidia-smi.1.gz")
|
||||
|
||||
|
||||
### Libraries
|
||||
# OpenGl library
|
||||
pisitools.dolib("libGL.so.%s" % version, nvlibdir)
|
||||
pisitools.dosym("libGL.so.%s" % version, "%s/libGL.so.1.2.0" % nvlibdir)
|
||||
|
||||
# OpenCL
|
||||
pisitools.dolib("libOpenCL.so.1.0.0", libdir)
|
||||
pisitools.dosym("libOpenCL.so.1.0.0", "%s/libOpenCL.so.1.0" % libdir)
|
||||
pisitools.dosym("libOpenCL.so.1.0", "%s/libOpenCL.so.1" % libdir)
|
||||
|
||||
# CUDA
|
||||
pisitools.dolib("libcuda.so.%s" % version, libdir)
|
||||
pisitools.dosym("libcuda.so.%s" % version, "%s/libcuda.so.1" % libdir)
|
||||
pisitools.dosym("libcuda.so.1", "%s/libcuda.so" % libdir)
|
||||
|
||||
pisitools.dolib("libnvcuvid.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvcuvid.so.%s" % version, "%s/libnvcuvid.so.1" % libdir)
|
||||
pisitools.dosym("libnvcuvid.so.1", "%s/libnvcuvid.so" % libdir)
|
||||
|
||||
# NVML
|
||||
# Provides programmatic access to static information and monitoring
|
||||
# data for NVIDIA GPUs, as well as limited managment capabilities
|
||||
pisitools.dolib("libnvidia-ml.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-ml.so.%s" % version, "%s/libnvidia-ml.so.1" % libdir)
|
||||
|
||||
pisitools.dolib("libnvidia-cfg.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-cfg.so.%s" % version, "%s/libnvidia-cfg.so.1" % libdir)
|
||||
|
||||
pisitools.dolib("libnvidia-compiler.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-compiler.so.%s" % version, "%s/libnvidia-compiler.so.1" % libdir)
|
||||
|
||||
# OpenGL cpre library
|
||||
for lib in ("glcore", "tls"):
|
||||
pisitools.dolib("libnvidia-%s.so.%s" % (lib, version), libdir)
|
||||
|
||||
# VDPAU driver
|
||||
pisitools.dolib("libvdpau_nvidia.so.%s" % version, "%s/vdpau" % nvlibdir)
|
||||
pisitools.dosym("../nvidia-current/vdpau/libvdpau_nvidia.so.%s" % version, "%s/vdpau/libvdpau_nvidia.so.1" % nvlibdir.strip(driver_dir_name))
|
||||
|
||||
# X modules
|
||||
pisitools.dolib("nvidia_drv.so", "%s/modules/drivers" % nvlibdir)
|
||||
pisitools.dolib("libglx.so.%s" % version, "%s/modules/extensions" % nvlibdir)
|
||||
pisitools.dosym("libglx.so.%s" % version, "%s/modules/extensions/libglx.so" % nvlibdir)
|
||||
|
||||
# Exit time for emul32 build
|
||||
if get.buildTYPE() == 'emul32':
|
||||
pisitools.insinto(datadir, "ld.so.conf", "32bit-ld.so.conf")
|
||||
return
|
||||
|
||||
pisitools.insinto("/etc/OpenCL/vendors", "nvidia.icd")
|
||||
|
||||
pisitools.insinto(datadir, "ld.so.conf")
|
||||
pisitools.insinto(datadir, "XvMCConfig")
|
||||
|
||||
# Documentation
|
||||
docdir = "xorg-video-%s" % driver_dir_name
|
||||
pisitools.dodoc("LICENSE", "NVIDIA_Changelog", "README.txt", destDir=docdir)
|
||||
pisitools.dohtml("html/*", destDir=docdir)
|
||||
|
||||
### Note
|
||||
# This package includes nvidia-setting and nvidia-xconfig binaries. However
|
||||
# we have seperate packages for each of them. Nvidia provides tarballs for
|
||||
# these binaries. Don't forget to update these package with each NVIDIA
|
||||
# driver update.
|
||||
|
||||
# Nvidia-bug-report
|
||||
# Comes with our own nvidia-xcfonig package
|
||||
# pisitools.dobin("nvidia-bug-report.sh")
|
||||
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
import os
|
||||
|
||||
driver_dir_name = "nvidia304"
|
||||
libdir = "/usr/lib/%s" % driver_dir_name
|
||||
datadir = "/usr/share/%s" % driver_dir_name
|
||||
|
||||
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
|
||||
os.system("/usr/sbin/alternatives \
|
||||
--install /usr/lib/libGL.so.1.2.0 libGL %(libdir)s/libGL.so.1.2.0 40 \
|
||||
--slave /usr/lib/xorg/modules/volatile xorg-modules-volatile %(libdir)s/modules \
|
||||
--slave /etc/X11/XvMCConfig XvMCConfig %(datadir)s/XvMCConfig \
|
||||
--slave /etc/ld.so.conf.d/10-nvidia.conf nvidia-ldsoconf %(datadir)s/ld.so.conf"
|
||||
% {"libdir": libdir, "datadir": datadir})
|
||||
|
||||
# If this driver is in use, refresh links after installation.
|
||||
if os.readlink("/etc/alternatives/libGL") == "%s/libGL.so.1.2.0" % libdir:
|
||||
os.system("/usr/sbin/alternatives --set libGL %s/libGL.so.1.2.0" % libdir)
|
||||
os.system("/sbin/ldconfig -X")
|
||||
|
||||
def preRemove():
|
||||
# FIXME This is not needed when upgrading package; but pisi does not
|
||||
# provide a way to learn operation type.
|
||||
#os.system("/usr/sbin/alternatives --remove libGL %s/libGL.so.1.2" % libdir)
|
||||
pass
|
||||
@@ -0,0 +1,32 @@
|
||||
|
||||
Adapt for kernel 3.19
|
||||
|
||||
Signed-off-by: Thomas Backlund <tmb@mageia.org>
|
||||
|
||||
diff -Nurp NVIDIA-Linux-x86_64-304.125.orig/kernel/nv.c NVIDIA-Linux-x86_64-304.125/kernel/nv.c
|
||||
--- NVIDIA-Linux-x86_64-304.125.orig/kernel/nv.c 2014-12-02 05:58:34.000000000 +0200
|
||||
+++ NVIDIA-Linux-x86_64-304.125/kernel/nv.c 2015-01-25 19:14:21.009109856 +0200
|
||||
@@ -2026,7 +2026,11 @@ long nv_kern_unlocked_ioctl(
|
||||
unsigned long i_arg
|
||||
)
|
||||
{
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0)
|
||||
+ return nv_kern_ioctl(file->f_path.dentry->d_inode, file, cmd, i_arg);
|
||||
+#else
|
||||
return nv_kern_ioctl(file->f_dentry->d_inode, file, cmd, i_arg);
|
||||
+#endif
|
||||
}
|
||||
|
||||
long nv_kern_compat_ioctl(
|
||||
@@ -2035,7 +2039,11 @@ long nv_kern_compat_ioctl(
|
||||
unsigned long i_arg
|
||||
)
|
||||
{
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0)
|
||||
+ return nv_kern_ioctl(file->f_path.dentry->d_inode, file, cmd, i_arg);
|
||||
+#else
|
||||
return nv_kern_ioctl(file->f_dentry->d_inode, file, cmd, i_arg);
|
||||
+#endif
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -0,0 +1,277 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>module-nvidia304</Name>
|
||||
<Homepage>http://www.nvidia.com</Homepage>
|
||||
<Packager>
|
||||
<Name>PisiLinux Community</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>NVIDIA</License>
|
||||
<IsA>driver</IsA>
|
||||
<Summary>NVIDIA drivers for GeForce 5-7 series GPUs</Summary>
|
||||
<Description>NVIDIA graphics drivers provide optimized 2D/3D performance.</Description>
|
||||
<!-- <Archive sha1sum="1084a0a362aeb208e44afd28f0e27f7e2d352e24" type="binary">ftp://download.nvidia.com/XFree86/Linux-x86/304.119/NVIDIA-Linux-x86-304.119.run</Archive> -->
|
||||
<Archive sha1sum="45f292f7612dcafac46332a4d884e866871cb6d2" type="binary">http://download.nvidia.com/XFree86/Linux-x86_64/304.125/NVIDIA-Linux-x86_64-304.125.run</Archive>
|
||||
<AdditionalFiles>
|
||||
<AdditionalFile target="NVIDIA-Linux-x86_64-304.125-kernel-3.19.patch">NVIDIA-Linux-x86_64-304.125-kernel-3.19.patch</AdditionalFile>
|
||||
</AdditionalFiles>
|
||||
<BuildDependencies>
|
||||
<Dependency version="3.19.8">kernel-module-headers</Dependency>
|
||||
</BuildDependencies>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>module-nvidia304</Name>
|
||||
<Summary>Kernel module for NVIDIA driver 304.xx releases</Summary>
|
||||
<RuntimeDependencies>
|
||||
<Dependency version="3.19.8">kernel</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library" permanent="true">/lib/modules</Path>
|
||||
</Files>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-nvidia304</Name>
|
||||
<PartOf>x11.driver</PartOf>
|
||||
<RuntimeDependencies>
|
||||
<Dependency version="current">module-nvidia304</Dependency>
|
||||
<Dependency>libXext</Dependency>
|
||||
<Dependency>xorg-server</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Conflicts>
|
||||
<Package>xorg-video-nvidia-current</Package>
|
||||
</Conflicts>
|
||||
<Files>
|
||||
<Path fileType="data">/etc/OpenCL</Path>
|
||||
<Path fileType="executable">/usr/bin</Path>
|
||||
<Path fileType="library">/usr/lib</Path>
|
||||
<Path fileType="data">/usr/share</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
</Files>
|
||||
<Provides>
|
||||
<COMAR script="package.py">System.Package</COMAR>
|
||||
</Provides>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="38">
|
||||
<Date>2015-05-22</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Rebuild for kernel 3.19.6</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="37">
|
||||
<Date>2015-05-05</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Rebuild for kernel 3.19.6</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="36">
|
||||
<Date>2015-04-24</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Rebuild for kernel 3.19.5</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="35">
|
||||
<Date>2015-04-16</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Rebuild for kernel 3.19.4</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="34">
|
||||
<Date>2015-04-02</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Rebuild for kernel 3.19.3</Comment>
|
||||
<Name>Hakan Yıldız</Name>
|
||||
<Email>hknyldz93@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="33">
|
||||
<Date>2015-03-08</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Rebuild for kernel 3.19.1</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="32">
|
||||
<Date>2015-03-01</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Rebuild for kernel 3.19.0</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="31">
|
||||
<Date>2015-01-31</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Rebuild for kernel 3.18.3</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="30">
|
||||
<Date>2015-01-13</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Rebuild for Kernel 3.18.1</Comment>
|
||||
<Name>Stefan Gronewold (groni)</Name>
|
||||
<Email>groni@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="29">
|
||||
<Date>2014-12-08</Date>
|
||||
<Version>304.125</Version>
|
||||
<Comment>Version bump</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="28">
|
||||
<Date>2014-10-19</Date>
|
||||
<Version>304.123</Version>
|
||||
<Comment>Rebuild for kernel 3.17.1</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="27">
|
||||
<Date>2014-09-03</Date>
|
||||
<Version>304.123</Version>
|
||||
<Comment>Rebuild for kernel 3.16.1</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="26">
|
||||
<Date>2014-07-24</Date>
|
||||
<Version>304.123</Version>
|
||||
<Comment>Version bump for kernel 3.15.6</Comment>
|
||||
<Name>Vedat Demir</Name>
|
||||
<Email>vedat@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="25">
|
||||
<Date>2014-06-15</Date>
|
||||
<Version>304.121</Version>
|
||||
<Comment>Rebuild for kernel 3.15.0</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="24">
|
||||
<Date>2014-05-29</Date>
|
||||
<Version>304.121</Version>
|
||||
<Comment>Rebuild for kernel 3.14.4.</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="23">
|
||||
<Date>2014-05-02</Date>
|
||||
<Version>304.121</Version>
|
||||
<Comment>Version bump for kernel 3.14.2.</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="22">
|
||||
<Date>2014-04-15</Date>
|
||||
<Version>304.119</Version>
|
||||
<Comment>Rebuild for kernel 3.13.10.</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="21">
|
||||
<Date>2014-03-29</Date>
|
||||
<Version>304.119</Version>
|
||||
<Comment>Rebuild for 3.13.6</Comment>
|
||||
<Name>Osman Erkan</Name>
|
||||
<Email>osman.erkan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="12">
|
||||
<Date>2014-03-10</Date>
|
||||
<Version>304.119</Version>
|
||||
<Comment>Change module name. Remove module-nvidia304-userspace</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="11">
|
||||
<Date>2014-03-09</Date>
|
||||
<Version>304.119</Version>
|
||||
<Comment>Rebuild for 3.12.13</Comment>
|
||||
<Name>Osman Erkan</Name>
|
||||
<Email>osman.erkan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="10">
|
||||
<Date>2014-03-01</Date>
|
||||
<Version>304.119</Version>
|
||||
<Comment>Rebuild for 3.12.13</Comment>
|
||||
<Name>Osman Erkan</Name>
|
||||
<Email>osman.erkan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="9">
|
||||
<Date>2014-01-17</Date>
|
||||
<Version>304.117</Version>
|
||||
<Comment>Rebuild for 3.12.8</Comment>
|
||||
<Name>Yusuf Aydemir</Name>
|
||||
<Email>yusuf.aydemir@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="8">
|
||||
<Date>2013-12-17</Date>
|
||||
<Version>304.116</Version>
|
||||
<Comment>Rebuild for kernel 3.12.5.</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="7">
|
||||
<Date>2013-12-14</Date>
|
||||
<Version>304.116</Version>
|
||||
<Comment>Version bump for 3.12.5</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="6">
|
||||
<Date>2013-11-23</Date>
|
||||
<Version>304.108</Version>
|
||||
<Comment>Rebuild for 3.10.20</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="5">
|
||||
<Date>2013-11-05</Date>
|
||||
<Version>304.108</Version>
|
||||
<Comment>Rebuild for 3.10.18</Comment>
|
||||
<Name>Serdar Soytetir</Name>
|
||||
<Email>kaptan@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="4">
|
||||
<Date>2013-10-09</Date>
|
||||
<Version>304.108</Version>
|
||||
<Comment>3.10.15</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="3">
|
||||
<Date>2013-09-28</Date>
|
||||
<Version>304.108</Version>
|
||||
<Comment>3.10.13</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="2">
|
||||
<Date>2013-09-18</Date>
|
||||
<Version>304.108</Version>
|
||||
<Comment>3.10.12</Comment>
|
||||
<Name>Erdinç Gültekin</Name>
|
||||
<Email>erdincgultekin@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="1">
|
||||
<Date>2013-09-11</Date>
|
||||
<Version>304.108</Version>
|
||||
<Comment>First release</Comment>
|
||||
<Name>Marcin Bojara</Name>
|
||||
<Email>marcin@pisilinux.org</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" ?>
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>module-nvidia304</Name>
|
||||
<Summary xml:lang="tr">NVIDIA GeForce 6-7 serisi ekran kartları için grafik sürücüleri</Summary>
|
||||
<Description xml:lang="tr">NVIDIA grafik sürücüleri daha iyi 2B/3B başarımı sağlar.</Description>
|
||||
<Summary xml:lang="es">Controladores nVIDIA de kernel y glx para tarjetas NV3 o mejor (Geforce FX o mejor)</Summary>
|
||||
<Description xml:lang="es">Controladores de kernel nVIDIA y glx para rendimiento optimizado 2d/3d en Linux (Para NV3X o mejor).</Description>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>module-nvidia304</Name>
|
||||
<Summary xml:lang="tr">NVIDIA sürücüsü 304.xx sürümleri için çekirdek modülü</Summary>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>module-nvidia304-userspace</Name>
|
||||
<Summary xml:lang="tr">nvidia304 çekirdek sürücüsü için kullanıcı tarafı belgeler, araçlar, udev ve modprobe kuralları</Summary>
|
||||
</Package>
|
||||
</PISI>
|
||||
@@ -0,0 +1,144 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# Licensed under the GNU General Public License, version 3.
|
||||
# See the file http://www.gnu.org/licenses/gpl.txt
|
||||
|
||||
from pisi.actionsapi import get
|
||||
from pisi.actionsapi import autotools
|
||||
from pisi.actionsapi import pisitools
|
||||
from pisi.actionsapi import shelltools
|
||||
from pisi.actionsapi import kerneltools
|
||||
|
||||
WorkDir = "."
|
||||
KDIR = kerneltools.getKernelVersion()
|
||||
NoStrip = ["/lib/modules"]
|
||||
|
||||
version = get.srcVERSION()
|
||||
driver_dir_name = "nvidia340"
|
||||
datadir = "/usr/share/%s" % driver_dir_name
|
||||
libdir = "/usr/lib32" if get.buildTYPE() == 'emul32' else "/usr/lib"
|
||||
arch = "x86" if get.buildTYPE() == 'emul32' else get.ARCH().replace("i6", "x")
|
||||
nvlibdir = "%s/%s" % (libdir, driver_dir_name)
|
||||
xorglibdir= "%s/xorg" % libdir
|
||||
|
||||
def setup():
|
||||
shelltools.system("sh NVIDIA-Linux-%s-%s.run -x --target tmp"
|
||||
% (arch, get.srcVERSION()))
|
||||
shelltools.move("tmp/*", ".")
|
||||
|
||||
# Our libc is TLS enabled so use TLS library
|
||||
shelltools.unlink("*-tls.so*")
|
||||
shelltools.move("tls/*", ".")
|
||||
|
||||
# xorg-server provides libwfb.so
|
||||
shelltools.unlink("libnvidia-wfb.so.*")
|
||||
|
||||
shelltools.echo("ld.so.conf", nvlibdir)
|
||||
shelltools.echo("XvMCConfig", "%s/libXvMCNVIDIA.so" % nvlibdir)
|
||||
|
||||
def build():
|
||||
# We don't need kernel module for emul32 build
|
||||
if get.buildTYPE() == 'emul32':
|
||||
return
|
||||
|
||||
shelltools.export("SYSSRC", "/lib/modules/%s/build" % KDIR)
|
||||
|
||||
shelltools.cd("kernel")
|
||||
|
||||
autotools.make("module")
|
||||
|
||||
shelltools.cd("uvm")
|
||||
|
||||
autotools.make("module")
|
||||
|
||||
def install():
|
||||
|
||||
if not get.buildTYPE() == 'emul32':
|
||||
# Kernel driver
|
||||
pisitools.insinto("/lib/modules/%s/extra/nvidia" % KDIR,
|
||||
"kernel/nvidia.ko")
|
||||
|
||||
pisitools.insinto("/lib/modules/%s/extra/nvidia" % KDIR,
|
||||
"kernel/uvm/nvidia-uvm.ko")
|
||||
|
||||
# Command line tools and their man pages
|
||||
pisitools.dobin("nvidia-smi")
|
||||
pisitools.doman("nvidia-smi.1.gz")
|
||||
|
||||
pisitools.dobin("nvidia-persistenced")
|
||||
|
||||
|
||||
### Libraries
|
||||
# OpenGl library
|
||||
pisitools.dolib("libGL.so.%s" % version, nvlibdir)
|
||||
pisitools.dosym("libGL.so.%s" % version, "%s/libGL.so.1.2.0" % nvlibdir)
|
||||
|
||||
# OpenCL
|
||||
pisitools.dolib("libOpenCL.so.1.0.0", libdir)
|
||||
pisitools.dosym("libOpenCL.so.1.0.0", "%s/libOpenCL.so.1.0" % libdir)
|
||||
pisitools.dosym("libOpenCL.so.1.0", "%s/libOpenCL.so.1" % libdir)
|
||||
|
||||
pisitools.dolib("libnvidia-opencl.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-opencl.so.%s" % version, "%s/libnvidia-opencl.so.1" % libdir)
|
||||
pisitools.dosym("libnvidia-opencl.so.1", "%s/libnvidia-opencl.so" % libdir)
|
||||
|
||||
# CUDA
|
||||
pisitools.dolib("libcuda.so.%s" % version, libdir)
|
||||
pisitools.dosym("libcuda.so.%s" % version, "%s/libcuda.so.1" % libdir)
|
||||
pisitools.dosym("libcuda.so.1", "%s/libcuda.so" % libdir)
|
||||
|
||||
pisitools.dolib("libnvcuvid.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvcuvid.so.%s" % version, "%s/libnvcuvid.so.1" % libdir)
|
||||
pisitools.dosym("libnvcuvid.so.1", "%s/libnvcuvid.so" % libdir)
|
||||
|
||||
# NVML
|
||||
# Provides programmatic access to static information and monitoring
|
||||
# data for NVIDIA GPUs, as well as limited managment capabilities
|
||||
pisitools.dolib("libnvidia-ml.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-ml.so.%s" % version, "%s/libnvidia-ml.so.1" % libdir)
|
||||
|
||||
pisitools.dolib("libnvidia-cfg.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-cfg.so.%s" % version, "%s/libnvidia-cfg.so.1" % libdir)
|
||||
|
||||
pisitools.dolib("libnvidia-compiler.so.%s" % version, libdir)
|
||||
pisitools.dosym("libnvidia-compiler.so.%s" % version, "%s/libnvidia-compiler.so.1" % libdir)
|
||||
|
||||
# OpenGL core library and others
|
||||
for lib in ("glcore", "tls", "encode", "fbc", "glsi", "ifr", "eglcore"):
|
||||
pisitools.dolib("libnvidia-%s.so.%s" % (lib, version), libdir)
|
||||
pisitools.dosym("libnvidia-%s.so.%s" % (lib, version), "%s/libnvidia-%s.so.1" %(libdir, lib))
|
||||
|
||||
# VDPAU driver
|
||||
pisitools.dolib("libvdpau_nvidia.so.%s" % version, "%s/vdpau" % nvlibdir)
|
||||
pisitools.dosym("../nvidia340/vdpau/libvdpau_nvidia.so.%s" % version, "%s/vdpau/libvdpau_nvidia.so.1" % nvlibdir.strip(driver_dir_name))
|
||||
|
||||
# X modules
|
||||
pisitools.dolib("nvidia_drv.so", "%s/modules/drivers" % nvlibdir)
|
||||
pisitools.dosym("%s/modules/drivers/nvidia_drv.so" % nvlibdir, "%s/modules/drivers/nvidia_drv.so" % xorglibdir)
|
||||
pisitools.dolib("libglx.so.%s" % version, "%s/modules/extensions" % nvlibdir)
|
||||
pisitools.dosym("libglx.so.%s" % version, "%s/modules/extensions/libglx.so" % nvlibdir)
|
||||
|
||||
# Exit time for emul32 build
|
||||
if get.buildTYPE() == 'emul32':
|
||||
pisitools.insinto(datadir, "ld.so.conf", "32bit-ld.so.conf")
|
||||
return
|
||||
|
||||
pisitools.insinto("/etc/OpenCL/vendors", "nvidia.icd")
|
||||
|
||||
pisitools.insinto(datadir, "ld.so.conf")
|
||||
pisitools.insinto(datadir, "XvMCConfig")
|
||||
|
||||
# Documentation
|
||||
docdir = "xorg-video-%s" % driver_dir_name
|
||||
pisitools.dodoc("LICENSE", "NVIDIA_Changelog", "README.txt", destDir=docdir)
|
||||
pisitools.dohtml("html/*", destDir=docdir)
|
||||
|
||||
### Note
|
||||
# This package includes nvidia-setting and nvidia-xconfig binaries. However
|
||||
# we have seperate packages for each of them. Nvidia provides tarballs for
|
||||
# these binaries. Don't forget to update these package with each NVIDIA
|
||||
# driver update.
|
||||
|
||||
# Nvidia-bug-report
|
||||
# Comes with our own nvidia-xcfonig package
|
||||
# pisitools.dobin("nvidia-bug-report.sh")
|
||||
@@ -0,0 +1,25 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
import os
|
||||
|
||||
driver_dir_name = "nvidia340"
|
||||
libdir = "/usr/lib32/%s" % driver_dir_name
|
||||
datadir = "/usr/share/%s" % driver_dir_name
|
||||
|
||||
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
|
||||
os.system(" /usr/sbin/alternatives \
|
||||
--install /usr/lib32/libGL.so.1.2.0 libGL-32bit %(libdir)s/libGL.so.1.2.0 50 \
|
||||
--slave /usr/lib32/xorg/modules/volatile xorg-modules-volatile-32bit %(libdir)s/modules"
|
||||
% {"libdir": libdir, "datadir": datadir})
|
||||
# --slave /etc/ld.so.conf.d/10-nvidia-32bit.conf nvidia-ldsoconf-32bit %(datadir)s/32bit-ld.so.conf"
|
||||
|
||||
# If this driver is in use, refresh links after installation.
|
||||
if os.readlink("/etc/alternatives/libGL-32bit") == "%s/libGL.so.1.2.0" % libdir:
|
||||
os.system("/usr/sbin/alternatives --set libGL-32bit %s/libGL.so.1.2.0" % libdir)
|
||||
os.system("/sbin/ldconfig -X")
|
||||
|
||||
def preRemove():
|
||||
# FIXME This is not needed when upgrading package; but pisi does not
|
||||
# provide a way to learn operation type.
|
||||
#os.system("/usr/sbin/alternatives --remove libGL-32bit %s/libGL.so.1.2.0" % libdir)
|
||||
pass
|
||||
@@ -0,0 +1,26 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
import os
|
||||
|
||||
driver_dir_name = "nvidia340"
|
||||
libdir = "/usr/lib/%s" % driver_dir_name
|
||||
datadir = "/usr/share/%s" % driver_dir_name
|
||||
|
||||
def postInstall(fromVersion, fromRelease, toVersion, toRelease):
|
||||
os.system(" /usr/sbin/alternatives \
|
||||
--install /usr/lib/libGL.so.1.2.0 libGL %(libdir)s/libGL.so.1.2.0 50 \
|
||||
--slave /usr/lib/xorg/modules/volatile xorg-modules-volatile %(libdir)s/modules"
|
||||
% {"libdir": libdir, "datadir": datadir})
|
||||
# --slave /etc/X11/XvMCConfig XvMCConfig %(datadir)s/XvMCConfig \
|
||||
# --slave /etc/ld.so.conf.d/10-nvidia.conf nvidia-ldsoconf %(datadir)s/ld.so.conf"
|
||||
|
||||
# If this driver is in use, refresh links after installation.
|
||||
if os.readlink("/etc/alternatives/libGL") == "%s/libGL.so.1.2.0" % libdir:
|
||||
os.system("/usr/sbin/alternatives --set libGL %s/libGL.so.1.2.0" % libdir)
|
||||
os.system("/sbin/ldconfig -X")
|
||||
|
||||
def preRemove():
|
||||
# FIXME This is not needed when upgrading package; but pisi does not
|
||||
# provide a way to learn operation type.
|
||||
#os.system("/usr/sbin/alternatives --remove libGL %s/libGL.so.1.2.0" % libdir)
|
||||
pass
|
||||
@@ -0,0 +1,8 @@
|
||||
# Blacklist by default since nvidia* modules have the same aliases
|
||||
blacklist nvidia340
|
||||
|
||||
# Fail if nouveau loaded
|
||||
install nvidia340 if /bin/grep -qw "^nouveau" /proc/modules; then /bin/false; else /sbin/modprobe -i nvidia340 $CMDLINE_OPTS; fi
|
||||
|
||||
# Load the right module when requested with the name "nvidia"
|
||||
install nvidia M=$(/bin/readlink /etc/alternatives/libGL | /usr/bin/cut -d/ -f4 | /bin/grep nvidia) && /sbin/modprobe $M $CMDLINE_OPTS
|
||||
@@ -0,0 +1,176 @@
|
||||
<?xml version="1.0" ?>
|
||||
<!DOCTYPE PISI SYSTEM "http://www.pisilinux.org/projeler/pisi/pisi-spec.dtd">
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>module-nvidia340</Name>
|
||||
<Homepage>http://www.nvidia.com</Homepage>
|
||||
<Packager>
|
||||
<Name>Pisi Linux Community</Name>
|
||||
<Email>admins@pisilinux.org</Email>
|
||||
</Packager>
|
||||
<License>NVIDIA</License>
|
||||
<Summary>NVIDIA drivers for GeForce 6xxx and newer GPUs</Summary>
|
||||
<Description>NVIDIA graphics drivers provide optimized 2D/3D performance.</Description>
|
||||
<Archive sha1sum="1335af174324f5c752388110e65c3c51beea729b" type="binary">ftp://download.nvidia.com/XFree86/Linux-x86/340.76/NVIDIA-Linux-x86-340.76.run</Archive>
|
||||
<Archive sha1sum="369554b46b43f082a38c6fcce096265a66e97483" type="binary">ftp://download.nvidia.com/XFree86/Linux-x86_64/340.76/NVIDIA-Linux-x86_64-340.76.run</Archive>
|
||||
<BuildDependencies>
|
||||
<Dependency version="3.19.8">kernel-module-headers</Dependency>
|
||||
</BuildDependencies>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>module-nvidia340</Name>
|
||||
<IsA>driver</IsA>
|
||||
<Summary>Kernel module for NVIDIA driver 340.xx releases</Summary>
|
||||
<RuntimeDependencies>
|
||||
<Dependency version="3.19.8">kernel</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Files>
|
||||
<Path fileType="library" permanent="true">/lib/modules</Path>
|
||||
</Files>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-nvidia340</Name>
|
||||
<IsA>driver</IsA>
|
||||
<PartOf>x11.driver</PartOf>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>libXext</Dependency>
|
||||
<Dependency>xorg-server</Dependency>
|
||||
<Dependency version="current">module-nvidia340</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Conflicts>
|
||||
<Package>xorg-video-nvidia-current</Package>
|
||||
<Package>xorg-video-nvidia304</Package>
|
||||
</Conflicts>
|
||||
<Files>
|
||||
<Path fileType="data">/etc/OpenCL</Path>
|
||||
<Path fileType="executable">/usr/bin</Path>
|
||||
<Path fileType="library">/usr/lib</Path>
|
||||
<Path fileType="data">/usr/share</Path>
|
||||
<Path fileType="doc">/usr/share/doc</Path>
|
||||
<Path fileType="man">/usr/share/man</Path>
|
||||
</Files>
|
||||
<Provides>
|
||||
<COMAR script="package.py">System.Package</COMAR>
|
||||
</Provides>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-nvidia340-32bit</Name>
|
||||
<PartOf>emul32</PartOf>
|
||||
<Summary>32-bit shared libraries for xorg-video-nvidia340</Summary>
|
||||
<BuildType>emul32</BuildType>
|
||||
<BuildDependencies>
|
||||
<Dependency>libvdpau-32bit</Dependency>
|
||||
<Dependency>glibc-32bit</Dependency>
|
||||
</BuildDependencies>
|
||||
<RuntimeDependencies>
|
||||
<Dependency>zlib-32bit</Dependency>
|
||||
<Dependency>libX11-32bit</Dependency>
|
||||
<Dependency>libXext-32bit</Dependency>
|
||||
<Dependency>glibc-32bit</Dependency>
|
||||
<Dependency release="current">xorg-video-nvidia340</Dependency>
|
||||
</RuntimeDependencies>
|
||||
<Conflicts>
|
||||
<Package>xorg-video-nvidia-current-32bit</Package>
|
||||
<Package>xorg-video-nvidia304-32bit</Package>
|
||||
</Conflicts>
|
||||
<Files>
|
||||
<Path fileType="library">/usr/lib32</Path>
|
||||
<Path fileType="library">/usr/share/nvidia-current/32bit-ld.so.conf</Path>
|
||||
</Files>
|
||||
<Provides>
|
||||
<COMAR script="package-emul32.py">System.Package</COMAR>
|
||||
</Provides>
|
||||
<BuildFlags>
|
||||
<Flag>noDelta</Flag>
|
||||
</BuildFlags>
|
||||
</Package>
|
||||
|
||||
<History>
|
||||
<Update release="10">
|
||||
<Date>2015-05-22</Date>
|
||||
<Version>340.76</Version>
|
||||
<Comment>Rebuild for kernel 3.19.8</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="9">
|
||||
<Date>2015-05-05</Date>
|
||||
<Version>340.76</Version>
|
||||
<Comment>Rebuild for kernel 3.19.6</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="8">
|
||||
<Date>2015-04-24</Date>
|
||||
<Version>340.76</Version>
|
||||
<Comment>Rebuild for kernel 3.19.5</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="7">
|
||||
<Date>2015-04-16</Date>
|
||||
<Version>340.76</Version>
|
||||
<Comment>Rebuild for kernel 3.19.4</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="6">
|
||||
<Date>2015-04-02</Date>
|
||||
<Version>340.76</Version>
|
||||
<Comment>Rebuid for kernel 3.19.3</Comment>
|
||||
<Name>Hakan Yıldız</Name>
|
||||
<Email>hknyldz93@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="5">
|
||||
<Date>2015-03-08</Date>
|
||||
<Version>340.76</Version>
|
||||
<Comment>Rebuild for kernel 3.19.1</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="5">
|
||||
<Date>2015-03-01</Date>
|
||||
<Version>340.76</Version>
|
||||
<Comment>Version bump, Rebuild for kernel 3.19.0</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="4">
|
||||
<Date>2015-01-31</Date>
|
||||
<Version>340.76</Version>
|
||||
<Comment>Version bump, Rebuild for kernel 3.18.3</Comment>
|
||||
<Name>Ertuğrul Erata</Name>
|
||||
<Email>ertugrulerata@gmail.com</Email>
|
||||
</Update>
|
||||
<Update release="3">
|
||||
<Date>2015-01-13</Date>
|
||||
<Version>340.65</Version>
|
||||
<Comment>version bump</Comment>
|
||||
<Name>Stefan Gronewold (groni)</Name>
|
||||
<Email>groni@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="2">
|
||||
<Date>2014-12-08</Date>
|
||||
<Version>340.58</Version>
|
||||
<Comment>Rebuild for kernel 3.17.4</Comment>
|
||||
<Name>Stefan Gronewold (groni)</Name>
|
||||
<Email>groni@pisilinux.org</Email>
|
||||
</Update>
|
||||
<Update release="1">
|
||||
<Date>2014-11-13</Date>
|
||||
<Version>340.58</Version>
|
||||
<Comment>First Release</Comment>
|
||||
<Name>Stefan Gronewold (groni)</Name>
|
||||
<Email>groni@pisilinux.org</Email>
|
||||
</Update>
|
||||
</History>
|
||||
</PISI>
|
||||
@@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" ?>
|
||||
<PISI>
|
||||
<Source>
|
||||
<Name>module-nvidia-current</Name>
|
||||
<Summary xml:lang="tr">GeForce 6xxx ve daha yeni NVIDIA ekran kartları için sürücüler</Summary>
|
||||
<Description xml:lang="tr">NVIDIA grafik sürücüleri daha iyi 2B/3B başarımı sağlar.</Description>
|
||||
<Description xml:lang="es">Controladores de kernel nVIDIA y glx para rendimiento optimizado 2d/3d en Linux (Para NV3X o mejor).</Description>
|
||||
<Summary xml:lang="es">Controladores nVIDIA de kernel y glx para tarjetas NV3 o mejor (Geforce FX o mejor)</Summary>
|
||||
</Source>
|
||||
|
||||
<Package>
|
||||
<Name>module-nvidia-current</Name>
|
||||
<Summary xml:lang="tr">Güncel NVIDIA grafik sürücüleri için çekirdek modülü</Summary>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-nvidia-current</Name>
|
||||
<Summary xml:lang="tr">Güncel NVIDIA userspace sürücüleri ve ikili dosyaları</Summary>
|
||||
</Package>
|
||||
|
||||
<Package>
|
||||
<Name>xorg-video-nvidia-current-32bit</Name>
|
||||
<Summary xml:lang="tr">xorg-video-nvidia-current için 32-bit paylaşımlı kitaplıklar</Summary>
|
||||
</Package>
|
||||
</PISI>
|
||||
Reference in New Issue
Block a user