works por deps fixed...
This commit is contained in:
@@ -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