summaryrefslogtreecommitdiff
path: root/guix/build-system/go.scm
diff options
context:
space:
mode:
authorLeo Famulari <leo@famulari.name>2018-01-06 15:47:47 -0500
committerLeo Famulari <leo@famulari.name>2019-03-14 15:34:26 -0400
commite3900a4d64e4bf6f426809d6bff058e5a2ae9bc8 (patch)
tree84ecbe268ad4024f43fbceb179e2697a72535f15 /guix/build-system/go.scm
parent5a14b913ad8513202077471539d41c51d9f271ee (diff)
build-system/go: Build with a filesystem union of Go dependencies.
This basically changes (guix build-system go) so that instead of looking up its dependencies in a list of directories in $GOPATH, all the Go dependencies are symlinked into a single directory. Fixes <https://bugs.gnu.org/33620>. * guix/build/go-build-system.scm (setup-go-environment): New variable. (setup-environment, install-source): Remove variables. (unpack): Unpack the source relative to $GOPATH. (install): Do not install the compiled objects in the 'pkg' directory. Install the source code in this phase, and only install the source of the package named by IMPORT-PATH. * doc/guix.texi (Build Systems): Adjust accordingly. * gnu/packages/docker.scm (docker): Import (guix build union) on the build side and adjust to build phase name changes in (guix build-system go). * gnu/packages/shellutils.scm (direnv): Likewise. * gnu/packages/databases.scm (mongo-tools)[arguments]: Set '#:install-source #f'. * gnu/packages/music.scm (demlo)[arguments]: Move the 'install-scripts' phase after the 'install' phase.
Diffstat (limited to 'guix/build-system/go.scm')
-rw-r--r--guix/build-system/go.scm2
1 files changed, 2 insertions, 0 deletions
diff --git a/guix/build-system/go.scm b/guix/build-system/go.scm
index cf91163275..1b916af8f9 100644
--- a/guix/build-system/go.scm
+++ b/guix/build-system/go.scm
@@ -39,6 +39,7 @@
(define %go-build-system-modules
;; Build-side modules imported and used by default.
`((guix build go-build-system)
+ (guix build union)
,@%gnu-build-system-modules))
(define (default-go)
@@ -87,6 +88,7 @@
(guile #f)
(imported-modules %go-build-system-modules)
(modules '((guix build go-build-system)
+ (guix build union)
(guix build utils))))
(define builder
`(begin