diff options
author | Chris Marusich <cmmarusich@gmail.com> | 2022-01-08 14:33:25 -0800 |
---|---|---|
committer | Chris Marusich <cmmarusich@gmail.com> | 2022-01-08 15:51:22 -0800 |
commit | 6a2050b1e1c7f09ef9b6af43044b7c0e4786d39d (patch) | |
tree | 7feac4c24aa2f2be753e7193d86a1e325db14551 | |
parent | 5c354c204d288439ae5783aae34addaf2004c7a0 (diff) | |
download | guix-6a2050b1e1c7f09ef9b6af43044b7c0e4786d39d.tar.gz |
tests: Fix file-needed/recursive on powerpc64le-linux.
Fixes: <https://issues.guix.gnu.org/52940>. * tests/gremlin.scm (file-needed/recursive): Consider two entries to be equivalent not when they are the same string, but rather when they refer to the same file. [ground-truth]: In addition to strings that begin with "linux-vdso.so", remove strings that begin with "linux-vdso64.so".
-rw-r--r-- | tests/gremlin.scm | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/tests/gremlin.scm b/tests/gremlin.scm index 9af899c89a..41cefd9c7c 100644 --- a/tests/gremlin.scm +++ b/tests/gremlin.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2018, 2020 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2022 Chris Marusich <cmmarusich@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,6 +19,7 @@ (define-module (test-gremlin) #:use-module (guix elf) + #:use-module (guix tests) #:use-module ((guix utils) #:select (call-with-temporary-directory)) #:use-module (guix build utils) #:use-module (guix build gremlin) @@ -90,13 +92,17 @@ (if m (loop (cons (match:substring m 2) result)) (loop result)))))) - (define ground-truth - (remove (cut string-prefix? "linux-vdso.so" <>) + (remove (lambda (entry) + (or (string-prefix? "linux-vdso.so" entry) + (string-prefix? "linux-vdso64.so" entry))) (read-ldd-output pipe))) (and (zero? (close-pipe pipe)) - (lset= string=? (pk 'truth ground-truth) (pk 'needed needed))))) + ;; It's OK if file-needed/recursive returns multiple entries that are + ;; different strings referring to the same file. This appears to be a + ;; benign edge case. See: https://issues.guix.gnu.org/52940 + (lset= file=? (pk 'truth ground-truth) (pk 'needed needed))))) (test-equal "expand-origin" '("OOO/../lib" |