aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2013-08-21 00:41:53 +0200
committerLudovic Courtès <ludo@gnu.org>2013-08-21 02:19:36 +0200
commit6facbc7590bf5c32c02394a060e890c8a666b487 (patch)
tree79ad1485e2577d4dab7eba8d916041846a196399
parentbbc08c7940a364fb1084defbb8f6f4d51673fb40 (diff)
downloadpatches-6facbc7590bf5c32c02394a060e890c8a666b487.tar
patches-6facbc7590bf5c32c02394a060e890c8a666b487.tar.gz
gnu: grub: Use older QEMU to run the test suite.
Fixes build failure <http://hydra.gnu.org/build/16064>. * gnu/packages/grub.scm (qemu-for-tests): New variable. (grub): Use it.
-rw-r--r--gnu/packages/grub.scm30
1 files 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
+ ;; <https://bugs.launchpad.net/bugs/947597> and fixed at
+ ;; <http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/4828>.
+ ;; 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")