guix-devel/guix
Leo Famulari e3900a4d64
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.
2019-03-14 15:34:26 -04:00
..
build build-system/go: Build with a filesystem union of Go dependencies. 2019-03-14 15:34:26 -04:00
build-system build-system/go: Build with a filesystem union of Go dependencies. 2019-03-14 15:34:26 -04:00
import
scripts pack: Add '--save-provenance'. 2019-03-07 00:00:18 +01:00
store
tests
base16.scm
base32.scm
base64.scm
build-system.scm build-system: Bags record their system and target. 2014-10-05 21:58:42 +02:00
cache.scm cache: Work around 'time-monotonic' bug in Guile 2.2.2. 2017-04-22 14:42:15 +02:00
channels.scm channels: Do not fail when the inferior lacks 'guix repl'. 2019-03-08 12:31:38 +01:00
ci.scm
combinators.scm
config.scm.in
cpio.scm
cve.scm
cvs-download.scm
deprecation.scm
derivations.scm
describe.scm describe: 'package-path-entries' no longer includes the "guix" entry. 2019-03-12 23:51:32 +01:00
discovery.scm discovery: Add 'fold-module-public-variables*'. 2019-01-15 20:24:09 +01:00
docker.scm
download.scm
elf.scm
ftp-client.scm Remove most uses of the _IO*F constants. 2019-01-09 14:47:53 +01:00
gexp.scm
git-download.scm
git.scm
glob.scm glob: Add an extra glob pattern compilation stage. 2018-03-18 22:57:17 +01:00
gnu-maintenance.scm gnu-maintenance: Verify GPG signatures in KDE updater. 2019-02-15 12:12:09 +01:00
gnupg.scm gnupg: Change default keyserver. 2018-09-25 18:45:50 +02:00
grafts.scm store: Rename '&nix-error' to '&store-error'. 2019-01-21 23:09:55 +01:00
graph.scm
hg-download.scm
http-client.scm
i18n.scm
inferior.scm channels: Do not fail when the inferior lacks 'guix repl'. 2019-03-08 12:31:38 +01:00
licenses.scm gnu: Add epl2.0. 2019-03-08 23:18:01 +01:00
man-db.scm
memoization.scm
modules.scm Remove traces of "GuixSD". 2019-03-13 23:12:43 +01:00
monad-repl.scm
monads.scm
nar.scm nar: Access the database instead of connecting to the daemon. 2018-11-13 14:59:45 +01:00
packages.scm Revert "packages: 'package-input-rewriting' can take a promise." 2019-03-12 23:51:32 +01:00
pki.scm
profiles.scm profiles: Raise an error for unmatched patterns. 2019-02-07 15:46:45 +01:00
profiling.scm profiling: Add a "gc" profiling component. 2019-01-15 20:24:08 +01:00
progress.scm progress: Do not display the last 0B transfer when size is unknown. 2018-11-16 14:53:44 +01:00
records.scm records: Make 'report-duplicate-field-specifier' available at expansion-time. 2019-01-24 20:48:14 +01:00
scripts.scm
search-paths.scm
self.scm
serialization.scm
sets.scm
ssh.scm
status.scm
store.scm
svn-download.scm
swh.scm
tests.scm
ui.scm
upstream.scm upstream: Correctly report failure to update Git checkouts. 2019-03-08 23:21:59 +01:00
utils.scm
workers.scm
zlib.scm zlib: Fix race condition when closing gzip ports. 2017-11-19 23:09:01 +01:00