Date: Thursday, February 21, 2013 @ 01:58:59 Author: foutrelis Revision: 178378
archrelease: copy trunk to staging-i686, staging-x86_64 Added: nvidia/repos/staging-i686/ nvidia/repos/staging-i686/PKGBUILD (from rev 178377, nvidia/trunk/PKGBUILD) nvidia/repos/staging-i686/linux-3.7.patch (from rev 178377, nvidia/trunk/linux-3.7.patch) nvidia/repos/staging-i686/linux-3.8.patch (from rev 178377, nvidia/trunk/linux-3.8.patch) nvidia/repos/staging-i686/nvidia.install (from rev 178377, nvidia/trunk/nvidia.install) nvidia/repos/staging-x86_64/ nvidia/repos/staging-x86_64/PKGBUILD (from rev 178377, nvidia/trunk/PKGBUILD) nvidia/repos/staging-x86_64/linux-3.7.patch (from rev 178377, nvidia/trunk/linux-3.7.patch) nvidia/repos/staging-x86_64/linux-3.8.patch (from rev 178377, nvidia/trunk/linux-3.8.patch) nvidia/repos/staging-x86_64/nvidia.install (from rev 178377, nvidia/trunk/nvidia.install) --------------------------------+ staging-i686/PKGBUILD | 51 +++++++++++++++++++++++++++++++++++++++ staging-i686/linux-3.7.patch | 24 ++++++++++++++++++ staging-i686/linux-3.8.patch | 12 +++++++++ staging-i686/nvidia.install | 18 +++++++++++++ staging-x86_64/PKGBUILD | 51 +++++++++++++++++++++++++++++++++++++++ staging-x86_64/linux-3.7.patch | 24 ++++++++++++++++++ staging-x86_64/linux-3.8.patch | 12 +++++++++ staging-x86_64/nvidia.install | 18 +++++++++++++ 8 files changed, 210 insertions(+) Copied: nvidia/repos/staging-i686/PKGBUILD (from rev 178377, nvidia/trunk/PKGBUILD) =================================================================== --- staging-i686/PKGBUILD (rev 0) +++ staging-i686/PKGBUILD 2013-02-21 00:58:59 UTC (rev 178378) @@ -0,0 +1,51 @@ +# $Id$ +# Maintainer : Thomas Baechler <tho...@archlinux.org> + +pkgname=nvidia +pkgver=313.18 +_extramodules=extramodules-3.8-ARCH +pkgrel=4 +pkgdesc="NVIDIA drivers for linux." +arch=('i686' 'x86_64') +url="http://www.nvidia.com/" +depends=('linux>=3.8' 'linux<3.9' "nvidia-utils=${pkgver}") +makedepends=('linux-headers>=3.8' 'linux-headers<3.9') +conflicts=('nvidia-96xx' 'nvidia-173xx') +license=('custom') +install=nvidia.install +options=(!strip) +source=('linux-3.7.patch' + 'linux-3.8.patch') +md5sums=('7c684fab691b15d55a79fd8f9b1a224d' + '9b20edcefc8ad28f40bdf9a5e26ef731') + +if [ "$CARCH" = "i686" ]; then + _arch='x86' + _pkg="NVIDIA-Linux-${_arch}-${pkgver}" + source+=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run") + md5sums+=('780c37c28a6e06e9571cafe348b7da64') +elif [ "$CARCH" = "x86_64" ]; then + _arch='x86_64' + _pkg="NVIDIA-Linux-${_arch}-${pkgver}-no-compat32" + source+=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run") + md5sums+=('fa17a260793a38b4b8ae367db2e03b39') +fi + +build() { + _kernver="$(cat /usr/lib/modules/${_extramodules}/version)" + cd "${srcdir}" + sh "${_pkg}.run" --extract-only + cd "${_pkg}/kernel" + patch -Np3 -i "${srcdir}"/linux-3.7.patch + patch -Np1 -i "${srcdir}"/linux-3.8.patch + make SYSSRC=/usr/lib/modules/"${_kernver}/build" module +} + +package() { + install -D -m644 "${srcdir}/${_pkg}/kernel/nvidia.ko" \ + "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko" + install -d -m755 "${pkgdir}/usr/lib/modprobe.d" + echo "blacklist nouveau" >> "${pkgdir}/usr/lib/modprobe.d/nvidia.conf" + sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "${startdir}/nvidia.install" + gzip "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko" +} Copied: nvidia/repos/staging-i686/linux-3.7.patch (from rev 178377, nvidia/trunk/linux-3.7.patch) =================================================================== --- staging-i686/linux-3.7.patch (rev 0) +++ staging-i686/linux-3.7.patch 2013-02-21 00:58:59 UTC (rev 178378) @@ -0,0 +1,24 @@ +the nvidia drivers are trying to test for version 2.6.6, but fail to take into +account the first digit. so 3.7.0+ ends up failing the test. + +https://bugs.gentoo.org/447566 + +--- a/NVIDIA-Linux-x86_64-313.18-no-compat32/kernel/conftest.sh 2013-02-04 15:10:20.669633666 -0500 ++++ b/NVIDIA-Linux-x86_64-313.18-no-compat32/kernel/conftest.sh 2013-02-04 15:10:34.283334673 -0500 +@@ -1697,13 +1697,15 @@ + # kernel older than 2.6.6, that's all we require to + # build the module. + # ++ VERSION=$(grep "^VERSION =" $MAKEFILE | cut -d " " -f 3) + PATCHLEVEL=$(grep "^PATCHLEVEL =" $MAKEFILE | cut -d " " -f 3) + SUBLEVEL=$(grep "^SUBLEVEL =" $MAKEFILE | cut -d " " -f 3) + +- if [ -n "$PATCHLEVEL" -a $PATCHLEVEL -ge 6 \ ++ if [ -n "$VERSION" -a $VERSION -ge 3 ] || \ ++ [ -n "$PATCHLEVEL" -a $PATCHLEVEL -ge 6 \ + -a -n "$SUBLEVEL" -a $SUBLEVEL -le 5 ]; then + SELECTED_MAKEFILE=Makefile.kbuild + RET=0 + fi + fi + fi Copied: nvidia/repos/staging-i686/linux-3.8.patch (from rev 178377, nvidia/trunk/linux-3.8.patch) =================================================================== --- staging-i686/linux-3.8.patch (rev 0) +++ staging-i686/linux-3.8.patch 2013-02-21 00:58:59 UTC (rev 178378) @@ -0,0 +1,12 @@ +Index: kernel/conftest.sh +=================================================================== +--- kernel/conftest.sh.orig ++++ kernel/conftest.sh +@@ -160,6 +160,7 @@ build_cflags() { + + if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then + CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include" ++ CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include/uapi" + CFLAGS="$CFLAGS -I$OUTPUT/arch/x86/include/generated" + CFLAGS="$CFLAGS -I$OUTPUT/arch/x86/include/generated/uapi" + elif [ "$ARCH" = "arm" ]; then Copied: nvidia/repos/staging-i686/nvidia.install (from rev 178377, nvidia/trunk/nvidia.install) =================================================================== --- staging-i686/nvidia.install (rev 0) +++ staging-i686/nvidia.install 2013-02-21 00:58:59 UTC (rev 178378) @@ -0,0 +1,18 @@ +post_install() { + EXTRAMODULES='extramodules-3.8-ARCH' + depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) + echo 'In order to use nvidia module, reboot the system.' +} + +post_upgrade() { + EXTRAMODULES='extramodules-3.8-ARCH' + depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) + if [ "$(vercmp $2 310.19-2)" -lt 0 ]; then + echo 'If your card is from the 7xxx series or earlier, install nvidia-304xx' + fi +} + +post_remove() { + EXTRAMODULES='extramodules-3.8-ARCH' + depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) +} Copied: nvidia/repos/staging-x86_64/PKGBUILD (from rev 178377, nvidia/trunk/PKGBUILD) =================================================================== --- staging-x86_64/PKGBUILD (rev 0) +++ staging-x86_64/PKGBUILD 2013-02-21 00:58:59 UTC (rev 178378) @@ -0,0 +1,51 @@ +# $Id$ +# Maintainer : Thomas Baechler <tho...@archlinux.org> + +pkgname=nvidia +pkgver=313.18 +_extramodules=extramodules-3.8-ARCH +pkgrel=4 +pkgdesc="NVIDIA drivers for linux." +arch=('i686' 'x86_64') +url="http://www.nvidia.com/" +depends=('linux>=3.8' 'linux<3.9' "nvidia-utils=${pkgver}") +makedepends=('linux-headers>=3.8' 'linux-headers<3.9') +conflicts=('nvidia-96xx' 'nvidia-173xx') +license=('custom') +install=nvidia.install +options=(!strip) +source=('linux-3.7.patch' + 'linux-3.8.patch') +md5sums=('7c684fab691b15d55a79fd8f9b1a224d' + '9b20edcefc8ad28f40bdf9a5e26ef731') + +if [ "$CARCH" = "i686" ]; then + _arch='x86' + _pkg="NVIDIA-Linux-${_arch}-${pkgver}" + source+=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run") + md5sums+=('780c37c28a6e06e9571cafe348b7da64') +elif [ "$CARCH" = "x86_64" ]; then + _arch='x86_64' + _pkg="NVIDIA-Linux-${_arch}-${pkgver}-no-compat32" + source+=("ftp://download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run") + md5sums+=('fa17a260793a38b4b8ae367db2e03b39') +fi + +build() { + _kernver="$(cat /usr/lib/modules/${_extramodules}/version)" + cd "${srcdir}" + sh "${_pkg}.run" --extract-only + cd "${_pkg}/kernel" + patch -Np3 -i "${srcdir}"/linux-3.7.patch + patch -Np1 -i "${srcdir}"/linux-3.8.patch + make SYSSRC=/usr/lib/modules/"${_kernver}/build" module +} + +package() { + install -D -m644 "${srcdir}/${_pkg}/kernel/nvidia.ko" \ + "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko" + install -d -m755 "${pkgdir}/usr/lib/modprobe.d" + echo "blacklist nouveau" >> "${pkgdir}/usr/lib/modprobe.d/nvidia.conf" + sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "${startdir}/nvidia.install" + gzip "${pkgdir}/usr/lib/modules/${_extramodules}/nvidia.ko" +} Copied: nvidia/repos/staging-x86_64/linux-3.7.patch (from rev 178377, nvidia/trunk/linux-3.7.patch) =================================================================== --- staging-x86_64/linux-3.7.patch (rev 0) +++ staging-x86_64/linux-3.7.patch 2013-02-21 00:58:59 UTC (rev 178378) @@ -0,0 +1,24 @@ +the nvidia drivers are trying to test for version 2.6.6, but fail to take into +account the first digit. so 3.7.0+ ends up failing the test. + +https://bugs.gentoo.org/447566 + +--- a/NVIDIA-Linux-x86_64-313.18-no-compat32/kernel/conftest.sh 2013-02-04 15:10:20.669633666 -0500 ++++ b/NVIDIA-Linux-x86_64-313.18-no-compat32/kernel/conftest.sh 2013-02-04 15:10:34.283334673 -0500 +@@ -1697,13 +1697,15 @@ + # kernel older than 2.6.6, that's all we require to + # build the module. + # ++ VERSION=$(grep "^VERSION =" $MAKEFILE | cut -d " " -f 3) + PATCHLEVEL=$(grep "^PATCHLEVEL =" $MAKEFILE | cut -d " " -f 3) + SUBLEVEL=$(grep "^SUBLEVEL =" $MAKEFILE | cut -d " " -f 3) + +- if [ -n "$PATCHLEVEL" -a $PATCHLEVEL -ge 6 \ ++ if [ -n "$VERSION" -a $VERSION -ge 3 ] || \ ++ [ -n "$PATCHLEVEL" -a $PATCHLEVEL -ge 6 \ + -a -n "$SUBLEVEL" -a $SUBLEVEL -le 5 ]; then + SELECTED_MAKEFILE=Makefile.kbuild + RET=0 + fi + fi + fi Copied: nvidia/repos/staging-x86_64/linux-3.8.patch (from rev 178377, nvidia/trunk/linux-3.8.patch) =================================================================== --- staging-x86_64/linux-3.8.patch (rev 0) +++ staging-x86_64/linux-3.8.patch 2013-02-21 00:58:59 UTC (rev 178378) @@ -0,0 +1,12 @@ +Index: kernel/conftest.sh +=================================================================== +--- kernel/conftest.sh.orig ++++ kernel/conftest.sh +@@ -160,6 +160,7 @@ build_cflags() { + + if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then + CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include" ++ CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include/uapi" + CFLAGS="$CFLAGS -I$OUTPUT/arch/x86/include/generated" + CFLAGS="$CFLAGS -I$OUTPUT/arch/x86/include/generated/uapi" + elif [ "$ARCH" = "arm" ]; then Copied: nvidia/repos/staging-x86_64/nvidia.install (from rev 178377, nvidia/trunk/nvidia.install) =================================================================== --- staging-x86_64/nvidia.install (rev 0) +++ staging-x86_64/nvidia.install 2013-02-21 00:58:59 UTC (rev 178378) @@ -0,0 +1,18 @@ +post_install() { + EXTRAMODULES='extramodules-3.8-ARCH' + depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) + echo 'In order to use nvidia module, reboot the system.' +} + +post_upgrade() { + EXTRAMODULES='extramodules-3.8-ARCH' + depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) + if [ "$(vercmp $2 310.19-2)" -lt 0 ]; then + echo 'If your card is from the 7xxx series or earlier, install nvidia-304xx' + fi +} + +post_remove() { + EXTRAMODULES='extramodules-3.8-ARCH' + depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) +}