diff options
author | Efraim Flashner <efraim@flashner.co.il> | 2021-04-26 21:30:15 +0300 |
---|---|---|
committer | Efraim Flashner <efraim@flashner.co.il> | 2021-04-26 21:32:50 +0300 |
commit | b33f5d7ff0627424a06fd0416761cd81c350e20a (patch) | |
tree | 420be37e4bc27315ca7a212e8754a3e7e2ce7e1e | |
parent | 9c8a108186fa23cf31bf3a1a2370c4f82bdc91e3 (diff) | |
download | guix-b33f5d7ff0627424a06fd0416761cd81c350e20a.tar.gz |
gnu: syncthing: Prepare for cross-compiling.
* gnu/packages/syncthing.scm (syncthing)[arguments]: Add custom 'pre-build phase to not set a local GOBIN directory. Adjust custom 'build and 'install phases accordingly.
-rw-r--r-- | gnu/packages/syncthing.scm | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 469c19f109..e40f696720 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -75,6 +75,14 @@ (("120s") "999s")) #t)) + (add-before 'build 'pre-build + (lambda _ + (with-directory-excursion "src/github.com/syncthing/syncthing" + ;; Don't set a local GOBIN, it breaks cross compiling. + (substitute* "build.go" + ((".*GOBIN.*") ""))) + #t)) + (replace 'build (lambda _ (with-directory-excursion "src/github.com/syncthing/syncthing" @@ -83,7 +91,7 @@ ;; "build syncthing" again with -no-upgrade. ;; https://github.com/syncthing/syncthing/issues/6118 (invoke "go" "run" "build.go") - (delete-file "bin/syncthing") + (for-each delete-file (find-files "../../../../bin" "syncthing")) (invoke "go" "run" "build.go" "-no-upgrade" "build" "syncthing")))) (replace 'check @@ -97,15 +105,11 @@ (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) (utils (assoc-ref outputs "utils"))) - (with-directory-excursion "src/github.com/syncthing/syncthing/bin" - (install-file "../syncthing" (string-append out "/bin")) - (for-each (cut install-file <> (string-append utils "/bin/")) - '("stcompdirs" "stcrashreceiver" - "stdisco" "stdiscosrv" "stevents" "stfileinfo" - "stfinddevice" "stfindignored" "stgenfiles" - "stindex" "strelaypoolsrv" "strelaysrv" "stsigtool" - "stvanity" "stwatchfile" "uraggregate" "ursrv")) - #t)))) + (with-directory-excursion "src/github.com/syncthing/syncthing" + (install-file "syncthing" (string-append out "/bin"))) + (for-each (cut install-file <> (string-append utils "/bin/")) + (find-files "bin")) + #t))) (add-after 'install 'install-docs (lambda* (#:key outputs #:allow-other-keys) |