Subject: [PATCH 25/31] gnu: libarchive: Fix cross-compilation.

From: Mathieu Othacehe <[email-masked]>
Date: Mon, 8 Jul 2019 11:59:07 +0200

* gnu/packages/backup.scm (libarchive)[arguments]: Do not build and run tests
when cross-compiling.
---
 gnu/packages/backup.scm | 31 ++++++++++++++++++++-----------
 1 file changed, 20 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index 0bd894f958..783ca7a674 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -13,6 +13,7 @@
 ;;; Copyright © 2018 Oleg Pykhalov <[email-masked]>
 ;;; Copyright © 2018, 2019 Ricardo Wurmus <[email-masked]>
 ;;; Copyright © 2019 Alex Vong <[email-masked]>
+;;; Copyright © 2019 Mathieu Othacehe <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -226,17 +227,25 @@ backups (called chunks) to allow easy burning to CD/DVD.")
                (("/bin/pwd") (which "pwd")))
              #t))
          (replace 'check
-           (lambda _
-             ;; XXX: The test_owner_parse, test_read_disk, and
-             ;; test_write_disk_lookup tests expect user 'root' to exist, but
-             ;; the chroot's /etc/passwd doesn't have it.  Turn off those tests.
-             ;;
-             ;; The tests allow one to disable tests matching a globbing pattern.
-             (invoke "make" "libarchive_test" "bsdcpio_test" "bsdtar_test")
-             ;; XXX: This glob disables too much.
-             (invoke "./libarchive_test" "^test_*_disk*")
-             (invoke "./bsdcpio_test" "^test_owner_parse")
-             (invoke "./bsdtar_test")))
+           ,@(if (%current-target-system)
+                 '((lambda _
+                     #t))
+                 '((lambda _
+                     ;; XXX: The test_owner_parse, test_read_disk, and
+                      ;; test_write_disk_lookup tests expect user 'root' to
+                      ;; exist, but the chroot's /etc/passwd doesn't have it.
+                      ;; Turn off those tests.
+                      ;;
+                      ;; The tests allow one to disable tests matching a
+                      ;; globbing pattern.
+                      (invoke "make"
+                              "libarchive_test"
+                              "bsdcpio_test"
+                              "bsdtar_test")
+                      ;; XXX: This glob disables too much.
+                      (invoke "./libarchive_test" "^test_*_disk*")
+                      (invoke "./bsdcpio_test" "^test_owner_parse")
+                      (invoke "./bsdtar_test")))))
          (add-after 'install 'add--L-in-libarchive-pc
            (lambda* (#:key inputs outputs #:allow-other-keys)
              (let* ((out     (assoc-ref outputs "out"))
-- 
2.17.1