core/nvidia-utils/PKGBUILD

123 lines
4.8 KiB
Bash
Raw Normal View History

2010-05-25 02:00:56 +08:00
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
# include global config
source ../_buildscripts/${current_repo}-${_arch}-cfg.conf
pkgname=nvidia-utils
pkgver=256.52
2010-05-25 02:00:56 +08:00
pkgrel=1
2010-07-28 19:15:36 +08:00
pkgdesc="NVIDIA drivers utilities and libraries."
2010-05-25 02:00:56 +08:00
arch=('i686' 'x86_64')
2010-06-24 16:33:09 +08:00
[ "$CARCH" = "i686" ] && ARCH=x86 && _srcname=NVIDIA-Linux-x86-${pkgver}
[ "$CARCH" = "x86_64" ] && ARCH=x86_64 && _srcname=NVIDIA-Linux-x86_64-${pkgver}-no-compat32
2010-05-25 02:00:56 +08:00
url="http://www.nvidia.com/"
depends=('xorg-server')
optdepends=('gtk2: nvidia-settings' 'pkgconfig: nvidia-xconfig')
conflicts=('libgl')
provides=('libgl')
license=('custom')
install=nvidia.install
2010-06-24 16:33:09 +08:00
source=("ftp://download.nvidia.com/XFree86/Linux-${ARCH}/${pkgver}/${_srcname}.run"
"20-nvidia.conf")
md5sums=('f26e21bbcaaf5074ac67ecb2d7461c43'
2010-06-24 16:33:09 +08:00
'1b758609e48d4c02099a5dd1000e655f')
[ "$CARCH" = "x86_64" ] && md5sums=('80af7e2b77e434b4321661691ac88403'
2010-06-24 16:33:09 +08:00
'1b758609e48d4c02099a5dd1000e655f')
2010-05-25 02:00:56 +08:00
build() {
cd $srcdir
2010-06-24 16:33:09 +08:00
if [ -d ${srcdir}/${_srcname} ]; then
rm -rf ${srcdir}/${_srcname}
fi
# Extract the source
sh ${_srcname}.run --extract-only
2010-05-25 02:00:56 +08:00
}
package() {
2010-06-24 16:33:09 +08:00
cd ${srcdir}/${_srcname}
# Create install dirs
2010-05-25 02:00:56 +08:00
mkdir -p $pkgdir/usr/{lib,bin,share/applications,share/pixmaps,share/man/man1}
mkdir -p $pkgdir/usr/lib/xorg/modules/{extensions,drivers}
mkdir -p $pkgdir/usr/lib/vdpau
mkdir -p $pkgdir/usr/share/licenses/nvidia
2010-06-24 16:33:09 +08:00
mkdir -p $pkgdir/usr/include/{cuda,CL}
mkdir -p $pkgdir/etc/OpenCL/vendors
mkdir -p $pkgdir/etc/X11/xorg.conf.d
# Install OpenCL configuration
install nvidia.icd $pkgdir/etc/OpenCL/vendors
2010-05-25 02:00:56 +08:00
2010-06-24 16:33:09 +08:00
# Install headers
install -m644 cuda*.h $pkgdir/usr/include/cuda/
install -m644 cl*.h $pkgdir/usr/include/CL/
install -m644 gl*.h $pkgdir/usr/include
# Install libraries
install {libGL,libnvidia-cfg,libnvidia-compiler,libnvidia-glcore,libcuda,tls/libnvidia-tls,libnvidia-wfb}.so.${pkgver} $pkgdir/usr/lib/ || return 1
install -m755 libvdpau_nvidia.so.${pkgver} "${pkgdir}/usr/lib/vdpau/" || return 1
install -m755 libOpenCL.so.1.0.0 $pkgdir/usr/lib || return 1
install {libXvMCNVIDIA.a,libXvMCNVIDIA.so.${pkgver}} $pkgdir/usr/lib/ || return 1
install nvidia_drv.so $pkgdir/usr/lib/xorg/modules/drivers || return 1
install libglx.so.$pkgver $pkgdir/usr/lib/xorg/modules/extensions || return 1
2010-05-25 02:00:56 +08:00
2010-06-24 16:33:09 +08:00
# Install manpages
install -m644 nvidia-{settings,xconfig,smi}.1.gz $pkgdir/usr/share/man/man1/ || return 1
2010-05-25 02:00:56 +08:00
2010-06-24 16:33:09 +08:00
# Install license
install -m644 LICENSE $pkgdir/usr/share/licenses/nvidia/ || return 1
ln -s nvidia $startdir/pkg/usr/share/licenses/nvidia-utils || return 1
# Install readme
install -D -m644 README.txt $pkgdir/usr/share/doc/nvidia/README || return 1
# Install .desktop file
install -m644 nvidia-settings.desktop $pkgdir/usr/share/applications/ || return 1
# Fix nvidia .desktop file
2010-05-25 02:00:56 +08:00
sed -e 's:__UTILS_PATH__:/usr/bin:' -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' -i $pkgdir/usr/share/applications/nvidia-settings.desktop
2010-06-24 16:33:09 +08:00
# Install pixmaps
install -m644 nvidia-settings.png $pkgdir/usr/share/pixmaps/ || return 1
# Install binaries
install -m755 nvidia-{settings,xconfig,smi,bug-report.sh} $pkgdir/usr/bin/ || return 1
# Create symlinks
2010-05-25 02:00:56 +08:00
cd $pkgdir/usr/lib/
2010-06-24 16:33:09 +08:00
ln -s libOpenCL.so.1.0.0 libOpenCL.so.1 || return 1
ln -s libOpenCL.so.1 libOpenCL.so || return 1
2010-05-25 02:00:56 +08:00
ln -s libGL.so.$pkgver libGL.so.1 || return 1
2010-06-24 16:33:09 +08:00
ln -s libGL.so.$pkgver libGL.so || return 1
ln -s libnvidia-glcore.so.$pkgver libnvidia-glcore.so.1 || return 1
ln -s libnvidia-glcore.so.$pkgver libnvidia-glcore.so || return 1
2010-05-25 02:00:56 +08:00
ln -s libnvidia-cfg.so.$pkgver libnvidia-cfg.so.1 || return 1
2010-06-24 16:33:09 +08:00
ln -s libnvidia-cfg.so.$pkgver libnvidia-cfg.so || return 1
ln -s libnvidia-compiler.so.$pkgver libnvidia-compiler.so.1 || return 1
ln -s libnvidia-compiler.so.$pkgver libnvidia-compiler.so || return 1
2010-05-25 02:00:56 +08:00
ln -s libnvidia-tls.so.$pkgver libnvidia-tls.so.1 || return 1
2010-06-24 16:33:09 +08:00
ln -s libnvidia-tls.so.$pkgver libnvidia-tls.so || return 1
2010-05-25 02:00:56 +08:00
ln -s libcuda.so.$pkgver libcuda.so.1 || return 1
ln -s libcuda.so.$pkgver libcuda.so || return 1
2010-06-24 16:33:09 +08:00
ln -s libvdpau_nvidia.so.$pkgver vdpau/libvdpau_nvidia.so.1 || return 1
ln -s libvdpau_nvidia.so.$pkgver vdpau/libvdpau_nvidia.so || return 1
2010-05-25 02:00:56 +08:00
ln -s libXvMCNVIDIA.so.$pkgver libXvMCNVIDIA_dynamic.so.1 || return 1
cd $pkgdir/usr/lib/xorg/modules/extensions
ln -s libglx.so.$pkgver libglx.so || return 1
find $pkgdir/usr -type d -exec chmod 755 {} \;
chmod 644 $pkgdir/usr/lib/libXvMCNVIDIA.a || return 1
2010-06-24 16:33:09 +08:00
# Install nvidia file for xorg autodection
2010-05-25 02:00:56 +08:00
install -D -m644 $srcdir/20-nvidia.conf $pkgdir/etc/X11/xorg.conf.d/20-nvidia.conf || return 1
2010-06-24 16:33:09 +08:00
# Blacklist nouveau since 2.6.33
mkdir -p $pkgdir/etc/modprobe.d/ || return 1
echo "blacklist nouveau" >> $pkgdir/etc/modprobe.d/nouveau_blacklist.conf || return 1
2010-05-25 02:00:56 +08:00
}