gnu: mergerfs: Cross-compile.
authorTobias Geerinckx-Rice <me@tobias.gr>
Fri, 9 Jul 2021 00:48:34 +0000 (02:48 +0200)
committerTobias Geerinckx-Rice <me@tobias.gr>
Fri, 9 Jul 2021 02:26:45 +0000 (04:26 +0200)
* gnu/packages/file-systems.scm (mergerfs)[arguments]: Use CC-FOR-TARGET
and CXX-FOR-TARGET.  Don't let the Makefile strip binaries.

gnu/packages/file-systems.scm

index c3eacea..c6773cc 100644 (file)
@@ -1388,7 +1388,10 @@ On Guix System, you will need to invoke the included shell scripts as
         (base32 "08gwi094ll0b7nf2i44fyjxiyvr45rp766npbdyw0yzyigas8a2f"))))
     (build-system gnu-build-system)
     (arguments
-     `(#:tests? #f                      ; No tests exist.
+     `(#:make-flags
+       (list (string-append "CC=" ,(cc-for-target))
+             (string-append "CXX=" ,(cxx-for-target)))
+       #:tests? #f                      ; No tests exist.
        #:phases
        (modify-phases %standard-phases
          (delete 'configure)
@@ -1408,7 +1411,9 @@ On Guix System, you will need to invoke the included shell scripts as
                (("= /usr/local") (string-append "= " (assoc-ref outputs "out")))
                (("= /sbin") "= $(EXEC_PREFIX)/sbin")
                ;; cannot chown as build user
-               (("chown root(:root)?") "true"))
+               (("chown root(:root)?") "true")
+               ;; Breaks cross-compilation.
+               (("strip") "true"))
              #t)))))
     ;; mergerfs bundles a heavily modified copy of libfuse.
     (inputs `(("util-linux" ,util-linux)))