From 24c3485bb3ffc05e687ef6513ac287b8d3048bab Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Wed, 22 Dec 2021 22:02:08 +0000 Subject: [PATCH] tests: Fix file-needed/recursive on aarch64-linux. Fixes: . * tests/gremlin.scm (file-needed/recursive)[ground-truth]: On aarch64-linux, remove the dynamic linker from this list. --- tests/gremlin.scm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/tests/gremlin.scm b/tests/gremlin.scm index 9e0017337a..3dbb8d3643 100644 --- a/tests/gremlin.scm +++ b/tests/gremlin.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2018, 2020, 2022 Ludovic Courtès ;;; Copyright © 2022 Chris Marusich +;;; Copyright © 2022 Pierre Langlois ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,9 +21,11 @@ (define-module (test-gremlin) #:use-module (guix elf) #:use-module (guix tests) - #:use-module ((guix utils) #:select (call-with-temporary-directory)) + #:use-module ((guix utils) #:select (call-with-temporary-directory + target-aarch64?)) #:use-module (guix build utils) #:use-module (guix build gremlin) + #:use-module (gnu packages bootstrap) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) @@ -99,7 +102,12 @@ (define ground-truth (or (string-prefix? "linux-vdso.so" entry) (string-prefix? "linux-vdso32.so" entry) ;32-bit powerpc (string-prefix? "linux-vdso64.so" entry) ;64-bit powerpc - (string-prefix? "linux-gate.so" entry))) ;i386 + (string-prefix? "linux-gate.so" entry) ;i386 + ;; FIXME: ELF files on aarch64 do not always include a + ;; NEEDED entry for the dynamic linker, and it is unclear + ;; if that is OK. See: https://issues.guix.gnu.org/52943 + (and (target-aarch64?) + (string-contains entry (glibc-dynamic-linker))))) (read-ldd-output pipe))) (and (zero? (close-pipe pipe))