diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index f0fdb67f30e2..d270b11d5c39 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -1615,11 +1615,11 @@ let }) // {inherit fontsproto libpciaccess randrproto renderproto videoproto xextproto xorgserver xproto ;}; xf86videointel = (mkDerivation "xf86videointel" { - name = "xf86-video-intel-2.99.917"; + name = "xf86-video-intel-2015-07-22"; builder = ./builder.sh; src = fetchurl { - url = mirror://xorg/individual/driver/xf86-video-intel-2.99.917.tar.bz2; - sha256 = "1jb7jspmzidfixbc0gghyjmnmpqv85i7pi13l4h2hn2ml3p83dq0"; + url = http://cgit.freedesktop.org/xorg/driver/xf86-video-intel/snapshot/a29e765ec0c1d73ee7ef2dad3aa148214ec04335.tar.gz; + sha256 = "094qa8x0f7vgyirjbj9qdyak71nwxnmmsxml4zk49z59blq4l874"; }; buildInputs = [pkgconfig dri2proto dri3proto fontsproto libdrm libpng udev libpciaccess presentproto randrproto renderproto libX11 xcbutil libxcb libXcursor libXdamage libXext xextproto xf86driproto libXfixes xorgserver xproto libXrandr libXrender libxshmfence libXtst libXvMC ]; }) // {inherit dri2proto dri3proto fontsproto libdrm libpng udev libpciaccess presentproto randrproto renderproto libX11 xcbutil libxcb libXcursor libXdamage libXext xextproto xf86driproto libXfixes xorgserver xproto libXrandr libXrender libxshmfence libXtst libXvMC ;}; diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix index 0fc70fb6e172..11a79bd65865 100644 --- a/pkgs/servers/x11/xorg/overrides.nix +++ b/pkgs/servers/x11/xorg/overrides.nix @@ -420,7 +420,7 @@ in xf86videointel = attrs: attrs // { buildInputs = attrs.buildInputs ++ [xorg.libXfixes]; - patches = [ ./xf86-video-intel-2.99.917-libdrm-kernel-4_0-crash.patch ]; + nativeBuildInputs = [args.autoreconfHook xorg.utilmacros]; }; xwd = attrs: attrs // { diff --git a/pkgs/servers/x11/xorg/xf86-video-intel-2.99.917-libdrm-kernel-4_0-crash.patch b/pkgs/servers/x11/xorg/xf86-video-intel-2.99.917-libdrm-kernel-4_0-crash.patch deleted file mode 100644 index ea3aa30ed13c..000000000000 --- a/pkgs/servers/x11/xorg/xf86-video-intel-2.99.917-libdrm-kernel-4_0-crash.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 7fe2b2948652443ff43d907855bd7a051d54d309 Mon Sep 17 00:00:00 2001 -From: Chris Wilson -Date: Thu, 19 Mar 2015 23:14:17 +0000 -Subject: sna: Protect against ABI breakage in recent versions of libdrm - -Signed-off-by: Chris Wilson - -diff --git a/src/sna/kgem.c b/src/sna/kgem.c -index 11f0828..6f16cba 100644 ---- a/src/sna/kgem.c -+++ b/src/sna/kgem.c -@@ -182,6 +182,15 @@ struct local_i915_gem_caching { - #define LOCAL_IOCTL_I915_GEM_SET_CACHING DRM_IOW(DRM_COMMAND_BASE + LOCAL_I915_GEM_SET_CACHING, struct local_i915_gem_caching) - #define LOCAL_IOCTL_I915_GEM_GET_CACHING DRM_IOW(DRM_COMMAND_BASE + LOCAL_I915_GEM_GET_CACHING, struct local_i915_gem_caching) - -+struct local_i915_gem_mmap { -+ uint32_t handle; -+ uint32_t pad; -+ uint64_t offset; -+ uint64_t size; -+ uint64_t addr_ptr; -+}; -+#define LOCAL_IOCTL_I915_GEM_MMAP DRM_IOWR(DRM_COMMAND_BASE + DRM_I915_GEM_MMAP, struct local_i915_gem_mmap) -+ - struct local_i915_gem_mmap2 { - uint32_t handle; - uint32_t pad; -@@ -514,15 +523,15 @@ retry_wc: - - static void *__kgem_bo_map__cpu(struct kgem *kgem, struct kgem_bo *bo) - { -- struct drm_i915_gem_mmap mmap_arg; -+ struct local_i915_gem_mmap arg; - int err; - - retry: -- VG_CLEAR(mmap_arg); -- mmap_arg.handle = bo->handle; -- mmap_arg.offset = 0; -- mmap_arg.size = bytes(bo); -- if ((err = do_ioctl(kgem->fd, DRM_IOCTL_I915_GEM_MMAP, &mmap_arg))) { -+ VG_CLEAR(arg); -+ arg.handle = bo->handle; -+ arg.offset = 0; -+ arg.size = bytes(bo); -+ if ((err = do_ioctl(kgem->fd, LOCAL_IOCTL_I915_GEM_MMAP, &arg))) { - assert(err != EINVAL); - - if (__kgem_throttle_retire(kgem, 0)) -@@ -536,10 +545,10 @@ retry: - return NULL; - } - -- VG(VALGRIND_MAKE_MEM_DEFINED(mmap_arg.addr_ptr, bytes(bo))); -+ VG(VALGRIND_MAKE_MEM_DEFINED(arg.addr_ptr, bytes(bo))); - - DBG(("%s: caching CPU vma for %d\n", __FUNCTION__, bo->handle)); -- return bo->map__cpu = (void *)(uintptr_t)mmap_arg.addr_ptr; -+ return bo->map__cpu = (void *)(uintptr_t)arg.addr_ptr; - } - - static int gem_write(int fd, uint32_t handle, --- -cgit v0.10.2 - diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 094005f6e5a2..8e7ca4dcd6e5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9266,7 +9266,7 @@ let xorg = recurseIntoAttrs (import ../servers/x11/xorg/default.nix { inherit clangStdenv fetchurl fetchgit fetchpatch stdenv pkgconfig intltool freetype fontconfig libxslt expat libpng zlib perl mesa_drivers spice_protocol - dbus libuuid openssl gperf m4 libevdev tradcpp libinput makeWrapper + dbus libuuid openssl gperf m4 libevdev tradcpp libinput makeWrapper autoreconfHook autoconf automake libtool xmlto asciidoc flex bison python mtdev pixman; bootstrap_cmds = if stdenv.isDarwin then darwin.bootstrap_cmds else null; mesa = mesa_noglu;