From patchwork Sun Jan 7 10:39:34 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Efraim Flashner X-Patchwork-Id: 58442 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 252DC27BBEA; Sun, 7 Jan 2024 10:41:19 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id CB74827BBE2 for ; Sun, 7 Jan 2024 10:41:16 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rMQaQ-0006eH-CS; Sun, 07 Jan 2024 05:40:58 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rMQaO-0006dN-ND for guix-patches@gnu.org; Sun, 07 Jan 2024 05:40:56 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rMQaO-00085q-Bn for guix-patches@gnu.org; Sun, 07 Jan 2024 05:40:56 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rMQaT-0001OT-Q6; Sun, 07 Jan 2024 05:41:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#68300] [PATCH] gnu: Remove go-1.14. Resent-From: Efraim Flashner Original-Sender: "Debbugs-submit" Resent-CC: cox.katherine.e+guix@gmail.com, guix-patches@gnu.org Resent-Date: Sun, 07 Jan 2024 10:41:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 68300 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 68300@debbugs.gnu.org Cc: Efraim Flashner , Katherine Cox-Buday X-Debbugs-Original-To: guix-patches@gnu.org X-Debbugs-Original-Xcc: Katherine Cox-Buday Received: via spool by submit@debbugs.gnu.org id=B.17046240155286 (code B ref -1); Sun, 07 Jan 2024 10:41:01 +0000 Received: (at submit) by debbugs.gnu.org; 7 Jan 2024 10:40:15 +0000 Received: from localhost ([127.0.0.1]:60687 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rMQZi-0001NB-J4 for submit@debbugs.gnu.org; Sun, 07 Jan 2024 05:40:15 -0500 Received: from lists.gnu.org ([2001:470:142::17]:55370) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rMQZg-0001Mu-JS for submit@debbugs.gnu.org; Sun, 07 Jan 2024 05:40:13 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rMQZT-0006Vq-M1 for guix-patches@gnu.org; Sun, 07 Jan 2024 05:39:59 -0500 Received: from mail-wm1-x336.google.com ([2a00:1450:4864:20::336]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rMQZQ-0007hZ-U3 for guix-patches@gnu.org; Sun, 07 Jan 2024 05:39:59 -0500 Received: by mail-wm1-x336.google.com with SMTP id 5b1f17b1804b1-40d76fefd6bso10579625e9.2 for ; Sun, 07 Jan 2024 02:39:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1704623994; x=1705228794; darn=gnu.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:sender:from:to:cc:subject:date:message-id:reply-to; bh=EH45Tx84lpvccPOCdq3oRJwmf9ZUrNsXj8v++aBuzQc=; b=Q62rfscT7a5xvg8niIP8K3jhVYh3JMPR8k8JkQncFz3wpXtwim8LHrbJp2nwwl+tjq PDMcUUvIhFkG+OsFYpq8OXy3nIXtbRxsFpO4wVMhudCHUID/lAXBKcivelwWEPJ/SlGF 8WpnXDM/4Tf2bEZ0dkSbVyonWLq3hK1omGyM9eR0G1QkbQyM8xPxFENQXIUNSpp/NACa skDknZgQ1ZO9YlEs2ep/xgcg0s/jmXI0eflPpaEIHco61FlPOffUQBcWSFoOiOUTGnEC P7rtR66EjCdkPJ3eNSHSH9D++aB8RpRV6suhnjfH2ltkUrPfJ5Rxyt+Bp5rQS/KggOq9 QCnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1704623994; x=1705228794; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:sender:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=EH45Tx84lpvccPOCdq3oRJwmf9ZUrNsXj8v++aBuzQc=; b=THxOGHlG18DNhR/R0vNP3TJHaK1zn963BQoIo6YbU4J98sJZjMsaRqk+BysU1e3rBY UXWHu9aSEWMS7ah6Qz69rRR0TquX4iQIe4bqPI/zJ7fJmrk3u12N7ijjojSJPTiUnMxn 0h3FMjQCmxydSoSXEg+Tbd2ermw3tCvXMbUrQi4kHiOGoK+m9KEm0ghxblBkCOuPs9GB W7Ad0o9LgcEIKVqO5hFYUF+fwHSEFC4YyqQX5JFJv/C33dhqZnPB+W4wJqrFXK2aDNtU 1SDTu9C0/a7h132yckzaEAU5Ijp8i9rh4wfaVJzhVujt5g9ksTavyGkhLnNAXLQBng5q +zQw== X-Gm-Message-State: AOJu0YzOVbcmlFVdY3L4+Mka2GD7wERGmMLu6XbLYFzKTjEfVA+ofnhq Us1GCtjBAx9Lq4JqNXfgljJulIyh8MZ4ew== X-Google-Smtp-Source: AGHT+IEWgmbGS4Fa0+2mqfI45wkmqIyddPdwbtMABN4EmRRJZyyHxAVa0tOyH2SsYBLRecZIu34ITA== X-Received: by 2002:a05:600c:3d98:b0:40e:4660:48f1 with SMTP id bi24-20020a05600c3d9800b0040e466048f1mr80076wmb.356.1704623993593; Sun, 07 Jan 2024 02:39:53 -0800 (PST) Received: from localhost ([141.226.15.142]) by smtp.gmail.com with ESMTPSA id d3-20020a05600c34c300b0040c3953cda5sm7331142wmq.45.2024.01.07.02.39.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 07 Jan 2024 02:39:53 -0800 (PST) From: Efraim Flashner Date: Sun, 7 Jan 2024 12:39:34 +0200 Message-ID: <6dd5f6b5e031333fcfb06b666d4344389a9db595.1704623488.git.efraim@flashner.co.il> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::336; envelope-from=efraim.flashner@gmail.com; helo=mail-wm1-x336.google.com X-Spam_score_int: -14 X-Spam_score: -1.5 X-Spam_bar: - X-Spam_report: (-1.5 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.248, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.248, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/golang.scm (go-1.14, go-std-1.14): Remove variables. (go-1.16): Inherit from go-1.4. Change-Id: Ie92019e3aa733a8c6f12dfefbc7b140eb1b76c5c Reviewed-by: Maxim Cournoyer --- gnu/packages/golang.scm | 250 +++++++--------------------------------- 1 file changed, 41 insertions(+), 209 deletions(-) base-commit: 25bcf4eda05b501758b11a53823867dc500ac7d1 diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 36e2c4b23e..f84389427c 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -259,11 +259,11 @@ (define-public go-1.4 (supported-systems '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux")) (license license:bsd-3))) -(define-public go-1.14 +(define-public go-1.16 (package (inherit go-1.4) (name "go") - (version "1.14.15") + (version "1.16.15") (source (origin (method git-fetch) @@ -273,63 +273,39 @@ (define-public go-1.14 (file-name (git-file-name name version)) (sha256 (base32 - "1crh90qkvhlx23hwsi4wxy3l3h8973lr18135y6h1nnzzwr3n3ps")))) + "0vlk0r4600ah9fg5apdd93g7i369k0rkzcgn7cs8h6qq2k6hpxjl")))) (arguments - (substitute-keyword-arguments (package-arguments go-1.4) - ((#:system system) - (if (string-prefix? "aarch64-linux" (or (%current-system) - (%current-target-system))) - "aarch64-linux" - system)) + (substitute-keyword-arguments + (strip-keyword-arguments '(#:tests? #:system) (package-arguments go-1.4)) ((#:phases phases) `(modify-phases ,phases + (add-after 'unpack 'remove-unused-sourcecode-generators + (lambda _ + ;; Prevent perl from inclusion in closure through unused files + (for-each delete-file (find-files "src" "\\.pl$")))) (replace 'prebuild (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib")) - (ld (string-append (assoc-ref inputs "libc") "/lib")) - (loader (car (append (find-files ld "^ld-linux.+") - (find-files ld "^ld(64)?\\.so.+")))) (net-base (assoc-ref inputs "net-base")) (tzdata-path - (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo")) - (output (assoc-ref outputs "out"))) + (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))) ;; Having the patch in the 'patches' field of breaks ;; the 'TestServeContent' test due to the fact that ;; timestamps are reset. Thus, apply it from here. (invoke "patch" "-p2" "--force" "-i" (assoc-ref inputs "go-skip-gc-test.patch")) - - ;; A side effect of these test scripts is testing - ;; cgo. Attempts at using cgo flags and directives with these - ;; scripts as specified here (https://golang.org/cmd/cgo/) - ;; have not worked. The tests continue to state that they can - ;; not find object files/headers despite being present. - (for-each - delete-file - '("cmd/go/testdata/script/mod_case_cgo.txt" - "cmd/go/testdata/script/list_find.txt" - "cmd/go/testdata/script/list_compiled_imports.txt" - "cmd/go/testdata/script/cgo_syso_issue29253.txt" - "cmd/go/testdata/script/cover_cgo.txt" - "cmd/go/testdata/script/cover_cgo_xtest.txt" - "cmd/go/testdata/script/cover_cgo_extra_test.txt" - "cmd/go/testdata/script/cover_cgo_extra_file.txt" - "cmd/go/testdata/script/cgo_path_space.txt" - "cmd/go/testdata/script/ldflag.txt" - "cmd/go/testdata/script/cgo_path.txt")) + (invoke "patch" "-p2" "--force" "-i" + (assoc-ref inputs "go-fix-script-tests.patch")) (for-each make-file-writable (find-files ".")) (substitute* "os/os_test.go" (("/usr/bin") (getcwd)) - (("/bin/pwd") (which "pwd")) (("/bin/sh") (which "sh"))) - ;; Backport fix for go-1.14 with GCC 9+ - ;; https://github.com/golang/go/issues/39157 - (substitute* "cmd/go/note_test.go" - (("cannot find 'ld'") "cannot find [‘']ld[’']")) + (substitute* "cmd/go/testdata/script/cgo_path_space.txt" + (("/bin/sh") (which "sh"))) ;; Add libgcc to runpath (substitute* "cmd/link/internal/ld/lib.go" @@ -337,7 +313,7 @@ (define-public go-1.14 (substitute* "cmd/go/internal/work/gccgo.go" (("cgoldflags := \\[\\]string\\{\\}") (string-append "cgoldflags := []string{" - "\"-rpath=" gcclib "\"" + "\"-Wl,-rpath=" gcclib "\"" "}")) (("\"-lgcc_s\", ") (string-append @@ -406,28 +382,42 @@ (define-public go-1.14 (substitute* "net/port_unix.go" (("/etc/services") (string-append net-base "/etc/services"))) (substitute* "time/zoneinfo_unix.go" - (("/usr/share/zoneinfo/") tzdata-path)) - (substitute* (find-files "cmd" "\\.go") - (("/lib(64)?/ld-linux.*\\.so\\.[0-9]") loader)) - #t))) + (("/usr/share/zoneinfo/") tzdata-path))))) (add-before 'build 'set-bootstrap-variables (lambda* (#:key outputs inputs #:allow-other-keys) ;; Tell the build system where to find the bootstrap Go. (let ((go (assoc-ref inputs "go"))) (setenv "GOROOT_BOOTSTRAP" go) - (setenv "GOGC" "400") - #t))) + (setenv "GOGC" "400")))) (replace 'build - (lambda* (#:key inputs outputs #:allow-other-keys) + (lambda* (#:key inputs outputs (parallel-build? #t) + #:allow-other-keys) ;; FIXME: Some of the .a files are not bit-reproducible. - (let* ((output (assoc-ref outputs "out"))) + ;; (Is this still true?) + (let* ((njobs (if parallel-build? (parallel-job-count) 1)) + (output (assoc-ref outputs "out")) + (loader (string-append (assoc-ref inputs "libc") + ,(glibc-dynamic-linker)))) (setenv "CC" (which "gcc")) + (setenv "GO_LDSO" loader) (setenv "GOOS" "linux") (setenv "GOROOT" (dirname (getcwd))) (setenv "GOROOT_FINAL" output) (setenv "GOCACHE" "/tmp/go-cache") - (setenv "CGO_ENABLED" "1") - (invoke "sh" "all.bash")))) + (setenv "GOMAXPROCS" (number->string njobs)) + (invoke "sh" "make.bash" "--no-banner")))) + (replace 'check + (lambda* (#:key target (tests? (not target)) (parallel-tests? #t) + #:allow-other-keys) + (let* ((njobs (if parallel-tests? (parallel-job-count) 1))) + (when tests? + (setenv "GOMAXPROCS" (number->string njobs)) + (invoke "sh" "run.bash" "--no-rebuild"))))) + (add-before 'install 'unpatch-perl-shebangs + (lambda _ + ;; Rewrite references to perl input in test scripts + (substitute* "net/http/cgi/testdata/test.cgi" + (("^#!.*") "#!/usr/bin/env perl\n")))) (replace 'install ;; TODO: Most of this could be factorized with Go 1.4. (lambda* (#:key outputs #:allow-other-keys) @@ -461,8 +451,7 @@ (define-public go-1.14 '("README.md" "CONTRIBUTORS" "AUTHORS" "PATENTS" "LICENSE" "VERSION" "CONTRIBUTING.md" "robots.txt")) - (copy-recursively "../" output) - #t))))))) + (copy-recursively "../" output)))))))) (native-inputs `(,@(if (member (%current-system) (package-supported-systems go-1.4)) `(("go" ,go-1.4)) @@ -472,167 +461,11 @@ (define-public go-1.14 ((or "armhf-linux" "aarch64-linux") `(("gold" ,binutils-gold))) (_ `())) + ("go-fix-script-tests.patch" ,(search-patch "go-fix-script-tests.patch")) ,@(package-native-inputs go-1.4))) (supported-systems (fold delete %supported-systems (list "powerpc-linux" "i586-gnu"))))) -(define-public go-1.16 - (package - (inherit go-1.14) - (name "go") - (version "1.16.15") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/golang/go") - (commit (string-append "go" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0vlk0r4600ah9fg5apdd93g7i369k0rkzcgn7cs8h6qq2k6hpxjl")))) - (arguments - (substitute-keyword-arguments - (strip-keyword-arguments '(#:tests?) (package-arguments go-1.14)) - ((#:phases phases) - `(modify-phases ,phases - (add-after 'unpack 'remove-unused-sourcecode-generators - (lambda _ - ;; Prevent perl from inclusion in closure through unused files - (for-each delete-file (find-files "src" "\\.pl$")))) - (replace 'prebuild - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib")) - (net-base (assoc-ref inputs "net-base")) - (tzdata-path - (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))) - - ;; Having the patch in the 'patches' field of breaks - ;; the 'TestServeContent' test due to the fact that - ;; timestamps are reset. Thus, apply it from here. - (invoke "patch" "-p2" "--force" "-i" - (assoc-ref inputs "go-skip-gc-test.patch")) - (invoke "patch" "-p2" "--force" "-i" - (assoc-ref inputs "go-fix-script-tests.patch")) - - (for-each make-file-writable (find-files ".")) - - (substitute* "os/os_test.go" - (("/usr/bin") (getcwd)) - (("/bin/sh") (which "sh"))) - - (substitute* "cmd/go/testdata/script/cgo_path_space.txt" - (("/bin/sh") (which "sh"))) - - ;; Add libgcc to runpath - (substitute* "cmd/link/internal/ld/lib.go" - (("!rpath.set") "true")) - (substitute* "cmd/go/internal/work/gccgo.go" - (("cgoldflags := \\[\\]string\\{\\}") - (string-append "cgoldflags := []string{" - "\"-Wl,-rpath=" gcclib "\"" - "}")) - (("\"-lgcc_s\", ") - (string-append - "\"-Wl,-rpath=" gcclib "\", \"-lgcc_s\", "))) - (substitute* "cmd/go/internal/work/gc.go" - (("ldflags = setextld\\(ldflags, compiler\\)") - (string-append - "ldflags = setextld(ldflags, compiler)\n" - "ldflags = append(ldflags, \"-r\")\n" - "ldflags = append(ldflags, \"" gcclib "\")\n"))) - - ;; Disable failing tests: these tests attempt to access - ;; commands or network resources which are neither available - ;; nor necessary for the build to succeed. - (for-each - (match-lambda - ((file regex) - (substitute* file - ((regex all before test_name) - (string-append before "Disabled" test_name))))) - '(("net/net_test.go" "(.+)(TestShutdownUnix.+)") - ("net/dial_test.go" "(.+)(TestDialTimeout.+)") - ("net/cgo_unix_test.go" "(.+)(TestCgoLookupPort.+)") - ("net/cgo_unix_test.go" "(.+)(TestCgoLookupPortWithCancel.+)") - ;; 127.0.0.1 doesn't exist - ("net/cgo_unix_test.go" "(.+)(TestCgoLookupPTR.+)") - ;; 127.0.0.1 doesn't exist - ("net/cgo_unix_test.go" "(.+)(TestCgoLookupPTRWithCancel.+)") - ;; /etc/services doesn't exist - ("net/parse_test.go" "(.+)(TestReadLine.+)") - ("os/os_test.go" "(.+)(TestHostname.+)") - ;; The user's directory doesn't exist - ("os/os_test.go" "(.+)(TestUserHomeDir.+)") - ("time/format_test.go" "(.+)(TestParseInSydney.+)") - ("time/format_test.go" "(.+)(TestParseInLocation.+)") - ("os/exec/exec_test.go" "(.+)(TestEcho.+)") - ("os/exec/exec_test.go" "(.+)(TestCommandRelativeName.+)") - ("os/exec/exec_test.go" "(.+)(TestCatStdin.+)") - ("os/exec/exec_test.go" "(.+)(TestCatGoodAndBadFile.+)") - ("os/exec/exec_test.go" "(.+)(TestExitStatus.+)") - ("os/exec/exec_test.go" "(.+)(TestPipes.+)") - ("os/exec/exec_test.go" "(.+)(TestStdinClose.+)") - ("os/exec/exec_test.go" "(.+)(TestIgnorePipeErrorOnSuccess.+)") - ("syscall/syscall_unix_test.go" "(.+)(TestPassFD\\(.+)") - ("os/exec/exec_test.go" "(.+)(TestExtraFiles/areturn.+)") - ("cmd/go/go_test.go" "(.+)(TestCoverageWithCgo.+)") - ("cmd/go/go_test.go" "(.+)(TestTwoPkgConfigs.+)") - ("os/exec/exec_test.go" "(.+)(TestOutputStderrCapture.+)") - ("os/exec/exec_test.go" "(.+)(TestExtraFiles.+)") - ("os/exec/exec_test.go" "(.+)(TestExtraFilesRace.+)") - ("net/lookup_test.go" "(.+)(TestLookupPort.+)") - ("syscall/exec_linux_test.go" - "(.+)(TestCloneNEWUSERAndRemapNoRootDisableSetgroups.+)"))) - - ;; These tests fail on aarch64-linux - (substitute* "cmd/dist/test.go" - (("t.registerHostTest\\(\"testsanitizers/msan.*") "")) - - ;; fix shebang for testar script - ;; note the target script is generated at build time. - (substitute* "../misc/cgo/testcarchive/carchive_test.go" - (("#!/usr/bin/env") (string-append "#!" (which "env")))) - - (substitute* "net/lookup_unix.go" - (("/etc/protocols") (string-append net-base "/etc/protocols"))) - (substitute* "net/port_unix.go" - (("/etc/services") (string-append net-base "/etc/services"))) - (substitute* "time/zoneinfo_unix.go" - (("/usr/share/zoneinfo/") tzdata-path))))) - (replace 'build - (lambda* (#:key inputs outputs (parallel-build? #t) - #:allow-other-keys) - ;; FIXME: Some of the .a files are not bit-reproducible. - ;; (Is this still true?) - (let* ((njobs (if parallel-build? (parallel-job-count) 1)) - (output (assoc-ref outputs "out")) - (loader (string-append (assoc-ref inputs "libc") - ,(glibc-dynamic-linker)))) - (setenv "CC" (which "gcc")) - (setenv "GO_LDSO" loader) - (setenv "GOOS" "linux") - (setenv "GOROOT" (dirname (getcwd))) - (setenv "GOROOT_FINAL" output) - (setenv "GOCACHE" "/tmp/go-cache") - (setenv "GOMAXPROCS" (number->string njobs)) - (invoke "sh" "make.bash" "--no-banner")))) - (replace 'check - (lambda* (#:key target (tests? (not target)) (parallel-tests? #t) - #:allow-other-keys) - (let* ((njobs (if parallel-tests? (parallel-job-count) 1))) - (when tests? - (setenv "GOMAXPROCS" (number->string njobs)) - (invoke "sh" "run.bash" "--no-rebuild"))))) - (add-before 'install 'unpatch-perl-shebangs - (lambda _ - ;; Rewrite references to perl input in test scripts - (substitute* "net/http/cgi/testdata/test.cgi" - (("^#!.*") "#!/usr/bin/env perl\n")))))))) - (native-inputs - `(("go-fix-script-tests.patch" ,(search-patch "go-fix-script-tests.patch")) - ,@(package-native-inputs go-1.14))))) - ;; https://github.com/golang/go/wiki/MinimumRequirements#microarchitecture-support (define %go-1.17-arm-micro-architectures (list "armv5" "armv6" "armv7")) @@ -1142,7 +975,6 @@ (define make-go-std (export make-go-std) ;; Make those public so they have a corresponding Cuirass job. -(define-public go-std-1.14 (make-go-std go-1.14)) (define-public go-std-1.16 (make-go-std go-1.16)) (define-public go-std-1.17 (make-go-std go-1.17)) (define-public go-std-1.18 (make-go-std go-1.18))