diff options
Diffstat (limited to 'gnu/packages/golang-web.scm')
-rw-r--r-- | gnu/packages/golang-web.scm | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm index b0df8bbef3..24cb0a8229 100644 --- a/gnu/packages/golang-web.scm +++ b/gnu/packages/golang-web.scm @@ -1967,7 +1967,28 @@ from CloudFlare's github.com/cloudflare/cfssl/revoke.") (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") |