From 04a95a4fd6677d8bb91b9a1832c407afaa279e4b Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 19 Oct 2016 18:41:50 -0400 Subject: gnu: go-1.4: Disable cgo. * gnu/packages/golang.scm (go-1.4)[arguments]: Set "CGO_ENABLED=0" while building. (go-1.7)[arguments]: Keep "CGO_ENABLED=1". --- gnu/packages/golang.scm | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 6b5038cf30..d5813d7903 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Andy Wingo ;;; Copyright © 2016 Ludovic Courtès ;;; Copyright © 2016 Petter +;;; Copyright © 2016 Leo Famulari ;;; ;;; This file is an addendum GNU Guix. ;;; @@ -139,7 +140,9 @@ (define-public go-1.4 (setenv "GOOS" "linux") (setenv "GOROOT" (dirname (getcwd))) (setenv "GOROOT_FINAL" output) - (setenv "CGO_ENABLED" "1") + ;; Go 1.4's cgo will not work with binutils >= 2.27: + ;; https://github.com/golang/go/issues/16906 + (setenv "CGO_ENABLED" "0") (zero? (system* "sh" "all.bash"))))) (replace 'install @@ -306,6 +309,18 @@ (define-public go-1.7 (setenv "GOGC" "400") (setenv "GO_TEST_TIMEOUT_SCALE" "9999") #t))) + + (replace 'build + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; FIXME: Some of the .a files are not bit-reproducible. + (let* ((output (assoc-ref outputs "out"))) + (setenv "CC" (which "gcc")) + (setenv "GOOS" "linux") + (setenv "GOROOT" (dirname (getcwd))) + (setenv "GOROOT_FINAL" output) + (setenv "CGO_ENABLED" "1") + (zero? (system* "sh" "all.bash"))))) + (replace 'install ;; TODO: Most of this could be factorized with Go 1.4. (lambda* (#:key outputs #:allow-other-keys) -- cgit v1.2.3