gnu: go-github-com-golang-groupcache: Fix build.

* gnu/packages/golang-web.scm (go-github-com-golang-groupcache): Fix build.
[arguments]: <#:phases>: Add 'fix-embed-files.

Change-Id: I69f1df0a64176d3a0483ebf38840302d7e5a5d18
This commit is contained in:
Sharlatan Hellseher 2024-09-13 14:00:33 +01:00
parent dabcd9c45a
commit 73d7039c5b
No known key found for this signature in database
GPG key ID: 76D727BFF62CD2B5

View file

@ -1967,7 +1967,28 @@ (define-public go-github-com-golang-groupcache
(base32 "07amgr8ji4mnq91qbsw2jlcmw6hqiwdf4kzfdrj8c4b05w4knszc"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/golang/groupcache"))
(list
#:import-path "github.com/golang/groupcache"
#: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)$")))))))
(propagated-inputs
(list go-github-com-golang-protobuf))
(home-page "https://github.com/golang/groupcache")