gnu: upower: Fix test failure on i686-linux.

* gnu/packages/gnome.scm (upower)[arguments]: Add
'adjust-test-for-excess-precision' when 'target-x86-32?' returns true.
This commit is contained in:
Ludovic Courtès 2022-10-07 22:27:29 +02:00
parent e49255ff18
commit 4b2b8b31d7
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -5819,7 +5819,19 @@ (define-public upower
;; If not specified, udev will try putting history information
;; in /gnu/store.
"-Dhistorydir=/var/lib/upower"
(string-append "-Dudevrulesdir=" #$output "/bin/udev/rules.d"))))
(string-append "-Dudevrulesdir=" #$output "/bin/udev/rules.d"))
#:phases (if (target-x86-32?)
#~(modify-phases %standard-phases
(add-after 'unpack 'adjust-test-for-excess-precision
(lambda _
;; Address test failure caused by excess precision
;; on i686:
;; <https://gitlab.freedesktop.org/upower/upower/-/issues/214>.
(substitute* "src/linux/integration-test.py"
(("assertEqual(.*)40\\.0" _ middle)
(string-append
"assertAlmostEqual" middle "40.0"))))))
#~%standard-phases)))
(native-inputs
(list `(,glib "bin") ; for gdbus-codegen
gobject-introspection