* gnu/packages/base.scm (binutils)[arguments]: Add phase on powerpc-linux to adjust the test suite. * gnu/packages/commencement.scm (binutils-boot0)[arguments]: Move custom phases after inherited arguments. Add phase on powerpc-linux to adjust the test suite. --- gnu/packages/base.scm | 11 ++++++++++- gnu/packages/commencement.scm | 21 ++++++++++++++++----- 2 files changed, 26 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index dbb7c619fe..b9fc0a6e29 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -531,7 +531,16 @@ change. GNU make offers many powerful extensions over the standard utility.") ;; Make sure 'ar' and 'ranlib' produce archives in a ;; deterministic fashion. - "--enable-deterministic-archives"))) + "--enable-deterministic-archives") + ,@(if (string=? (%current-system) "powerpc-linux") + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-rust-libiberty-test + (lambda _ + (substitute* "libiberty/testsuite/Makefile.in" + ((" check-rust-demangle ") "")) + #t)))) + '()))) (synopsis "Binary utilities: bfd gas gprof ld") (description diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 7c39a84008..f707a01d30 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -2653,7 +2653,22 @@ exec " gcc "/bin/" program #:modules ((guix build gnu-build-system) (guix build utils) (ice-9 ftw)) ; for 'scandir' + + ;; #:phases gets modified for powerpc-linux in binutils, + ;; so #:phases here needs to be after the inherited one. + ,@(substitute-keyword-arguments (package-arguments binutils) + ((#:configure-flags cf) + `(cons ,(string-append "--target=" (boot-triplet)) + ,cf))) + #:phases (modify-phases %standard-phases + ,@(if (string=? (%current-system) "powerpc-linux") + '((add-after 'unpack 'disable-rust-libiberty-test + (lambda _ + (substitute* "libiberty/testsuite/Makefile.in" + ((" check-rust-demangle ") "")) + #t))) + '()) (add-after 'install 'add-symlinks (lambda* (#:key outputs #:allow-other-keys) ;; The cross-gcc invokes 'as', 'ld', etc, without the @@ -2667,12 +2682,8 @@ exec " gcc "/bin/" program (with-directory-excursion (string-append out "/bin") (for-each (lambda (name) (symlink name (remove-triplet-prefix name))) - (scandir "." has-triplet-prefix?))))))) + (scandir "." has-triplet-prefix?))))))))) - ,@(substitute-keyword-arguments (package-arguments binutils) - ((#:configure-flags cf) - `(cons ,(string-append "--target=" (boot-triplet)) - ,cf))))) (inputs (%boot0-inputs)))) (define libstdc++-boot0 -- 2.31.1