aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-01-03 16:47:19 +0100
committerLudovic Courtès <ludo@gnu.org>2014-01-03 16:47:19 +0100
commitf5ac2352e94ea9e56f3397cb5e9e9f922d8dc1e8 (patch)
tree3e5409adbb72edad0f7371383e2073f1b9806f6b
parentbf0018cd87e6a0f706a4298d5c6f62e7ef7f5d16 (diff)
downloadguix-f5ac2352e94ea9e56f3397cb5e9e9f922d8dc1e8.tar
guix-f5ac2352e94ea9e56f3397cb5e9e9f922d8dc1e8.tar.gz
gnu: pulseaudio: Add patch for 'volume-test'; re-enable tests.
* gnu/packages/patches/pulseaudio-volume-test.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/pulseaudio.scm (pulseaudio): Use it. Remove #:tests? #t.
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/patches/pulseaudio-volume-test.patch29
-rw-r--r--gnu/packages/pulseaudio.scm15
3 files changed, 35 insertions, 10 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 373dd5d9d7..fbf61d6ec1 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -276,6 +276,7 @@ dist_patch_DATA = \
gnu/packages/patches/procps-make-3.82.patch \
gnu/packages/patches/pspp-tests.patch \
gnu/packages/patches/pulseaudio-test-timeouts.patch \
+ gnu/packages/patches/pulseaudio-volume-test.patch \
gnu/packages/patches/python-fix-dbm.patch \
gnu/packages/patches/qemu-make-4.0.patch \
gnu/packages/patches/qemu-multiple-smb-shares.patch \
diff --git a/gnu/packages/patches/pulseaudio-volume-test.patch b/gnu/packages/patches/pulseaudio-volume-test.patch
new file mode 100644
index 0000000000..2cfa0cd6ca
--- /dev/null
+++ b/gnu/packages/patches/pulseaudio-volume-test.patch
@@ -0,0 +1,29 @@
+Fix seemingly random failures of 'volume-test' in particular on 32-bit
+machines. See <https://bugs.freedesktop.org/show_bug.cgi?id=72374> for
+details.
+
+From 27e47c72a25846e107b6e450c3a1480a2742382e Mon Sep 17 00:00:00 2001
+From: Tanu Kaskinen <tanu.kaskinen@linux.intel.com>
+Date: Sat, 14 Dec 2013 07:21:22 +0000
+Subject: volume-test: Increase the allowed number of rouding errors
+
+BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=72374
+---
+diff --git a/src/tests/volume-test.c b/src/tests/volume-test.c
+index a2daf3e..1ab0b5c 100644
+--- a/src/tests/volume-test.c
++++ b/src/tests/volume-test.c
+@@ -138,7 +138,13 @@ START_TEST (volume_test) {
+ pa_log("max deviation: %lu n=%lu", (unsigned long) md, (unsigned long) mdn);
+
+ fail_unless(md <= 1);
+- fail_unless(mdn <= 251);
++
++ /* mdn counts the times there were rounding errors during the test. The
++ * number of rounding errors seems to vary slightly depending on the
++ * hardware. The original limit was 251 errors, but it was increased to 253
++ * when the test was failing on Tanu's laptop.
++ * See https://bugs.freedesktop.org/show_bug.cgi?id=72374 */
++ fail_unless(mdn <= 253);
+ }
+ END_TEST
diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm
index a2e8217422..91bbe2d77a 100644
--- a/gnu/packages/pulseaudio.scm
+++ b/gnu/packages/pulseaudio.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -143,7 +143,9 @@ parse JSON formatted strings back into the C representation of JSON objects.")
(sha256
(base32
"1bndz4l8jxyq3zq128gzp3gryxl6yjs66j2y1d7yabw2n5mv7kim"))
- (patches (list (search-patch "pulseaudio-test-timeouts.patch")))))
+ (patches (map search-patch
+ '("pulseaudio-test-timeouts.patch"
+ "pulseaudio-volume-test.patch")))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--localstatedir=/var" ;"--sysconfdir=/etc"
@@ -154,14 +156,7 @@ parse JSON formatted strings back into the C representation of JSON objects.")
;; 'tests/lock-autospawn-test.c' wants to create a file
;; under ~/.config/pulse.
(setenv "HOME" (getcwd)))
- %standard-phases)
-
- ,@(if (or (string=? (%current-system) "i686-linux")
- (string=? (%current-system) "mips64el-linux"))
- ;; Work around test failure:
- ;; <https://bugs.freedesktop.org/show_bug.cgi?id=72374>.
- '(#:tests? #f)
- '())))
+ %standard-phases)))
(inputs
;; TODO: Add optional inputs (GTK+?).
`(;; ("sbc" ,sbc)