Hi!
The attached patch upgrades libdrm and mesa to the latest versions. Test
them on non-i686-linux non-x86_64-linux, please.
--
Yury G. Kudryashov,
mailto: [email protected]
From: Yury G. Kudryashov <[email protected]>
Subject: [PATCH] Upgrade libdrm and mesa to the latest versions
---
pkgs/development/libraries/libdrm/default.nix | 29 +++++++++++---------
.../libraries/libdrm/libdrm-apple.patch | 2 +-
pkgs/development/libraries/mesa/default.nix | 26 +++++++++---------
3 files changed, 30 insertions(+), 27 deletions(-)
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index d37b7dd..7c0127b 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -1,28 +1,31 @@
-{stdenv, fetchurl, pkgconfig, libpthreadstubs}:
+{stdenv, fetchurl, pkgconfig, libpthreadstubs, libpciaccess, cairo, udev}:
-stdenv.mkDerivation (rec {
- name = "libdrm-2.4.24";
+stdenv.mkDerivation rec {
+ name = "libdrm-2.4.29";
src = fetchurl {
url = "http://dri.freedesktop.org/libdrm/${name}.tar.bz2";
- sha256 = "19dnzy7g6jqfjz38dp187b97vb4a8h4k748x56gsyn24ys0j60f7";
+ sha256 = "0bj5ihmnzpbbgdrvp5f8bgsk0k19haixr893449pjd4k7v4jshz2";
};
- buildInputs = [ pkgconfig libpthreadstubs ];
+ buildNativeInputs = [ pkgconfig ];
+ buildInputs = [ libpthreadstubs libpciaccess cairo udev ];
- patches = [ ./libdrm-apple.patch ];
+ patches = stdenv.lib.optional stdenv.isDarwin ./libdrm-apple.patch;
- preConfigure = ''
- # General case: non intel.
- if test -n "$crossConfig"; then
- configureFlags="$configureFlags --disable-intel";
- fi
- '' + stdenv.lib.optionalString stdenv.isDarwin
+ preConfigure = stdenv.lib.optionalString stdenv.isDarwin
"echo : \\\${ac_cv_func_clock_gettime=\'yes\'} > config.cache";
+ configureFlags = [ "--enable-nouveau-experimental-api" "--enable-udev" ]
+ ++ stdenv.lib.optional stdenv.isDarwin "-C";
+
+ crossAttrs.configureFlags = configureFlags ++ [ "--disable-intel" ];
+
meta = {
homepage = http://dri.freedesktop.org/libdrm/;
description = "Library for accessing the kernel's Direct Rendering Manager";
license = "bsd";
+ maintainers = [ stdenv.lib.maintainers.urkud ];
+ platforms = stdenv.lib.platforms.linux;
};
-} // (stdenv.lib.optionalAttrs stdenv.isDarwin { configureFlags = [ "-C" ]; }))
+}
diff --git a/pkgs/development/libraries/libdrm/libdrm-apple.patch b/pkgs/development/libraries/libdrm/libdrm-apple.patch
index e9fd63c..17b4477 100644
--- a/pkgs/development/libraries/libdrm/libdrm-apple.patch
+++ b/pkgs/development/libraries/libdrm/libdrm-apple.patch
@@ -2,9 +2,9 @@ diff -Naur libdrm-2.4.26-orig/intel/intel_bufmgr_gem.c libdrm-2.4.26/intel/intel
--- libdrm-2.4.26-orig/intel/intel_bufmgr_gem.c 2011-04-01 10:30:51.000000000 -0400
+++ libdrm-2.4.26/intel/intel_bufmgr_gem.c 2011-08-29 02:17:20.000000000 -0400
@@ -51,6 +51,7 @@
- #include <sys/mman.h>
#include <sys/stat.h>
#include <sys/types.h>
+ #include <stdbool.h>
+#include <sys/time.h>
#include "errno.h"
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 6a1de4d..5e7fdb5 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -1,37 +1,37 @@
-{ stdenv, fetchurl, flex, bison, pkgconfig, x11, xlibs, libdrm, file, expat
+{ stdenv, fetchurl, flex, bison, pkgconfig, libdrm, file, expat, makedepend
+, libXxf86vm, libXfixes, libXdamage, glproto, dri2proto, libX11, libxcb, libXext
+, libXt, udev
, python, libxml2Python, lipo ? null }:
if ! stdenv.lib.lists.elem stdenv.system stdenv.lib.platforms.mesaPlatforms then
throw "unsupported platform for Mesa"
else
-let version = "7.10.3"; in
+let version = "7.11.2"; in
stdenv.mkDerivation {
name = "mesa-${version}";
src = fetchurl {
url = "ftp://ftp.freedesktop.org/pub/mesa/${version}/MesaLib-${version}.tar.bz2";
- sha256 = "1h451vgsfsp0h0wig66spqgxmjalsy28gvd9viynfwmq7741yw0y";
+ sha256 = "0msk1fh4yw4yi7z37v75vhpa23z49lkwgin6drczbihbqsl6lx2p";
};
patches = [ ./swrast-settexbuffer.patch ];
- postPatch = ''
- find . -name "*.py" -exec sed -i -e "s|#! */usr/bin/env python|#! ${python}/bin/python|" {} +
- '';
+ prePatch = "patchShebangs .";
+# r300
configureFlags =
" --with-driver=dri --enable-gl-osmesa --enable-gles1"
- + " --enable-gallium --enable-gallium-r600 --enable-gles2"
- + " --enable-gallium-swrast --enable-gallium-egl --disable-glx-tls"
+ + " --with-gallium-drivers=i915,i965,nouveau,r600,svga,swrast"
+ + " --enable-gles2 --enable-gallium-egl --disable-glx-tls"
+ " --enable-xcb --enable-egl --disable-glut";
- buildInputs =
- [ pkgconfig expat x11 libdrm xlibs.makedepend xlibs.glproto
- xlibs.libXxf86vm xlibs.libXfixes xlibs.libXdamage xlibs.dri2proto
- lipo file python libxml2Python flex bison
- ];
+ buildInputs = [ expat libdrm libXxf86vm libXfixes libXdamage glproto dri2proto
+ libxml2Python libX11 libXext libxcb lipo libXt udev ];
+
+ buildNativeInputs = [ pkgconfig python makedepend file flex bison ];
enableParallelBuilding = true;
--
tg: (5eb4571..) t/libdrm-mesa-upgrade (depends on: master)
_______________________________________________
nix-dev mailing list
[email protected]
http://lists.science.uu.nl/mailman/listinfo/nix-dev