From e3900a4d64e4bf6f426809d6bff058e5a2ae9bc8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 6 Jan 2018 15:47:47 -0500 Subject: 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 . * 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. --- guix/build-system/go.scm | 2 ++ 1 file changed, 2 insertions(+) (limited to 'guix/build-system/go.scm') 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 -- cgit v1.2.3