From 6facbc7590bf5c32c02394a060e890c8a666b487 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 21 Aug 2013 00:41:53 +0200 Subject: [PATCH] gnu: grub: Use older QEMU to run the test suite. Fixes build failure . * gnu/packages/grub.scm (qemu-for-tests): New variable. (grub): Use it. --- gnu/packages/grub.scm | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/gnu/packages/grub.scm b/gnu/packages/grub.scm index af9c135f2d..8c981bf88d 100644 --- a/gnu/packages/grub.scm +++ b/gnu/packages/grub.scm @@ -29,7 +29,33 @@ #:use-module (gnu packages linux) #:use-module (gnu packages qemu) #:use-module (gnu packages ncurses) - #:use-module (gnu packages cdrom)) + #:use-module (gnu packages cdrom) + #:use-module (srfi srfi-1)) + +(define qemu-for-tests + ;; Newer QEMU versions, such as 1.5.1, no longer support the 'shutdown' + ;; instruction. This leads to test hangs, as reported at + ;; and fixed at + ;; . + ;; Work around it by using an older QEMU. + (package (inherit qemu) + (version "1.3.1") + (source (origin + (method url-fetch) + (uri (string-append "http://wiki.qemu-project.org/download/qemu-" + version ".tar.bz2")) + (sha256 + (base32 + "1bqfrb5dlsxm8gxhkksz8qzi5fhj3xqhxyfwbqcphhcv1kpyfwip")))) + + ;; With recent GLib versions, we get a test failure: + ;; ERROR:tests/rtc-test.c:176:check_time: assertion failed (ABS(t - s) <= wiggle): (382597824 <= 2) + ;; Simply disable the tests. + (arguments `(#:tests? #f + ,@(package-arguments qemu))) + + ;; The manual fails to build with Texinfo 5.x. + (native-inputs (alist-delete "texinfo" (package-native-inputs qemu))))) (define-public grub (package @@ -70,7 +96,7 @@ ;; Dependencies for the test suite. The "real" QEMU is needed here, ;; because several targets are used. - ("qemu" ,qemu) + ("qemu" ,qemu-for-tests) ("xorriso" ,xorriso))) (home-page "http://www.gnu.org/software/grub/") (synopsis "GRand unified boot loader")