guix_mirror_bot pushed a commit to branch go-team
in repository guix.

commit 5ef23ac68d37d0835fa55ea3dcfc6d31681f76e9
Author: Roman Scherer <[email protected]>
AuthorDate: Sun Apr 19 14:14:29 2026 +0200

    gnu: rclone: Fix build on aarch64.
    
    The Go linker requires ld.gold when linking rclone on ARM64/Linux
    (see https://github.com/golang/go/issues/22040).
    
    * gnu/packages/sync.scm: Add (gnu packages base) module import.
    (rclone)[native-inputs]: Add binutils-gold on aarch64.
    
    Merges: guix/guix!8004
    Change-Id: I0964467c97ccc19b2aa7c27af22510cbc7dcf25d
    Signed-off-by: Sharlatan Hellseher <[email protected]>
---
 gnu/packages/sync.scm | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm
index f02627fcb3..10b98abc7a 100644
--- a/gnu/packages/sync.scm
+++ b/gnu/packages/sync.scm
@@ -28,6 +28,7 @@
 (define-module (gnu packages sync)
   #:use-module (gnu packages acl)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
@@ -688,7 +689,13 @@ Feature:
               ;; As seen in Makefile
               (setenv "RCLONE_CONFIG" "/notfound"))))))
     (native-inputs
-     (list go-bazil-org-fuse
+     (append
+      ;; On aarch64-linux, Go passes '-fuse-ld=gold' when invoking
+      ;; the external linker; provide ld.gold via binutils-gold.
+      (if (target-aarch64?)
+          (list binutils-gold)
+          '())
+      (list go-bazil-org-fuse
            go-github-com-a1ex3-zstd-seekable-format-go-pkg
            go-github-com-a8m-tree
            go-github-com-aalpar-deheap
@@ -788,7 +795,7 @@ Feature:
            go-gopkg-in-natefinch-lumberjack-v2
            go-gopkg-in-validator-v2
            go-gopkg-in-yaml-v3
-           go-storj-io-uplink))
+           go-storj-io-uplink)))
     (synopsis "@code{rsync} for cloud storage")
     (description "@code{Rclone} is a command line program to sync files and
 directories to and from different cloud storage providers.

Reply via email to