summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/qemu.scm29
1 files changed, 28 insertions, 1 deletions
diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm
index fc90346371..71600b2347 100644
--- a/gnu/packages/qemu.scm
+++ b/gnu/packages/qemu.scm
@@ -40,6 +40,28 @@
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages perl))
 
+(define (qemu-patch commit file-name sha256)
+  "Return an origin for COMMIT."
+  (origin
+    (method url-fetch)
+    (uri (string-append
+          "http://git.qemu.org/?p=qemu.git;a=commitdiff_plain;h="
+          commit))
+    (sha256 sha256)
+    (file-name file-name)))
+
+(define %glib-memory-vtable-patch
+  (qemu-patch "deb847bf"
+              "qemu-glib-memory-vtable.patch"
+              (base32
+               "0afb7rvxy14104jxmhr7m02w5baiz0c7vhq3h642h09jgxrcmzzi")))
+
+(define %glib-duplicate-test-patch
+  (qemu-patch "98cf48f6"
+              "qemu-glib-duplicate-test.patch"
+              (base32
+               "1aicbplzdj5s5y13jmqyvfajay05x9dnkzd197waz8v6kha7d9d5")))
+
 (define-public qemu-headless
   ;; This is QEMU without GUI support.
   (package
@@ -52,7 +74,12 @@
              (sha256
               (base32
                "1nqv5p94zpnhcaqkifnn83ap7dd0qrb0qiicswbyhhby0f48pzpc"))
-             (patches (map search-patch '("qemu-CVE-2015-6855.patch")))))
+             (patches (list (search-patch "qemu-CVE-2015-6855.patch")
+
+                            ;; These two patches allow QEMU's tests to run
+                            ;; correctly with 'gtester' from the latest GLib.
+                            %glib-memory-vtable-patch
+                            %glib-duplicate-test-patch))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases (alist-replace