[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
06/07: gnu: go: Add CPU tuning targets.
From: |
guix-commits |
Subject: |
06/07: gnu: go: Add CPU tuning targets. |
Date: |
Wed, 12 Jul 2023 09:51:28 -0400 (EDT) |
efraim pushed a commit to branch master
in repository guix.
commit b90310cf85952f846fd6b9151b0e733ab82509a2
Author: Efraim Flashner <efraim@flashner.co.il>
AuthorDate: Mon Jun 19 16:39:12 2023 +0300
gnu: go: Add CPU tuning targets.
* gnu/packages/golang.scm (go-1.17)[properties]: New field.
(%go-1.17-arm-micro-architectures,
%go-1.17-powerpc64le-micro-architectures,
%go-1.18-x86_64-micro-architectures): New variables.
(go-1.18)[properties]: New field.
---
gnu/packages/golang.scm | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 2eabb1ed11..ea6aadbe80 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -628,6 +628,13 @@ in the style of communicating sequential processes
(@dfn{CSP}).")
`(("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"))
+
+(define %go-1.17-powerpc64le-micro-architectures
+ (list "power8" "power9"))
+
(define-public go-1.17
(package
(inherit go-1.16)
@@ -844,7 +851,14 @@ in the style of communicating sequential processes
(@dfn{CSP}).")
"README.md" "SECURITY.md"))))))))
(inputs (if (not (or (target-arm?) (target-ppc64le?)))
(alist-delete "gcc:lib" (package-inputs go-1.16))
- (package-inputs go-1.16)))))
+ (package-inputs go-1.16)))
+ (properties
+ `((compiler-cpu-architectures
+ ("armhf" ,@%go-1.17-arm-micro-architectures)
+ ("powerpc64le" ,@%go-1.17-powerpc64le-micro-architectures))))))
+
+(define %go-1.18-x86_64-micro-architectures
+ (list "x86_64-v1" "x86_64-v2" "x86_64-v3" "x86_64-v4"))
(define-public go-1.18
(package
@@ -887,7 +901,12 @@ in the style of communicating sequential processes
(@dfn{CSP}).")
"ldflags, err := setextld(ldflags, compiler)\n"
"ldflags = append(ldflags, \"-r\")\n"
"ldflags = append(ldflags, \"" gcclib "\")\n")))))))
- '())))))))
+ '())))))
+ (properties
+ `((compiler-cpu-architectures
+ ("armhf" ,@%go-1.17-arm-micro-architectures)
+ ("powerpc64le" ,@%go-1.17-powerpc64le-micro-architectures)
+ ("x86_64" ,@%go-1.18-x86_64-micro-architectures))))))
(define-public go-1.19
(package
- branch master updated (f2f27c4952 -> 691b97aed9), guix-commits, 2023/07/12
- 03/07: guix: cpu: Rewrite fallback for x86_64 cpu->gcc-architecture., guix-commits, 2023/07/12
- 02/07: guix: cpu: Add generalized CPU matching., guix-commits, 2023/07/12
- 07/07: transformations: Allow tuning go packages., guix-commits, 2023/07/12
- 05/07: guix: cpu: Add gcc-architecture->micro-architecture-level mapping., guix-commits, 2023/07/12
- 04/07: guix: cpu: Refactor cpu->gcc-architecture., guix-commits, 2023/07/12
- 06/07: gnu: go: Add CPU tuning targets.,
guix-commits <=
- 01/07: gnu: %gcc-11-x86_64-micro-architectures: Add psabi entries., guix-commits, 2023/07/12