summary refs log tree commit diff
diff options
context:
space:
mode:
authorSharlatan Hellseher <sharlatanus@gmail.com>2024-09-16 12:04:25 +0100
committerSharlatan Hellseher <sharlatanus@gmail.com>2024-11-09 21:33:51 +0000
commit63c558d62a4fa13742820d2313be659c429104ae (patch)
tree96afe744ddd647143b901dcf118b2042150e5882
parent47993ad90007897ac008348e3f9ecb9cd6856b6e (diff)
downloadguix-63c558d62a4fa13742820d2313be659c429104ae.tar.gz
gnu: go-github-com-matttproud-golang-protobuf-extensions-v2: Fix build.
* gnu/packages/golang-xyz.scm (go-github-com-matttproud-golang-protobuf-extensions-v2):
Fix build.
[arguments]: <#:phases>: Add 'fix-embed-files.

Change-Id: Id19ae90a13788a454ac11089dabf71ce399b20db
-rw-r--r--gnu/packages/golang-xyz.scm18
1 files changed, 18 insertions, 0 deletions
diff --git a/gnu/packages/golang-xyz.scm b/gnu/packages/golang-xyz.scm
index f1bb7b3259..14ad1fcbd5 100644
--- a/gnu/packages/golang-xyz.scm
+++ b/gnu/packages/golang-xyz.scm
@@ -5164,6 +5164,24 @@ other directories.  It is optimized for filewalking.")
       #:import-path "github.com/matttproud/golang_protobuf_extensions/v2"
       #:phases
       #~(modify-phases %standard-phases
+          ;; TODO: Implement it in go-build-system.
+          ;;
+          ;; This happens due to Golang can't determine the valid directory of
+          ;; the module of embed file which is symlinked during setup
+          ;; environment phase, but easy resolved after coping file from the
+          ;; store to the build directory of the current package, see details
+          ;; in Golang source:
+          ;;
+          ;; - URL: <https://github.com/golang/go/blob/>
+          ;; - commit: 82c14346d89ec0eeca114f9ca0e88516b2cda454
+          ;; - file: src/cmd/go/internal/load/pkg.go#L2059
+          (add-after 'unpack 'fix-embed-files
+            (lambda _
+              (for-each (lambda (file)
+                          (let ((file-store-path (readlink file)))
+                            (delete-file file)
+                            (copy-recursively file-store-path file)))
+                        (find-files "src" ".*(editions_defaults.binpb)$"))))
           ;; XXX: Activate when go-build-system supports submodules.
           (delete 'build)
           ;; XXX: Replace when go-build-system supports nested path.