From 7fc91c141346caffb546d73bf7cacef169ec587f Mon Sep 17 00:00:00 2001 From: Tomas Volf <~@wolfsden.cz> Date: Fri, 23 Feb 2024 19:32:58 +0100 Subject: build-system/guile: Fix typo in documentation string. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * guix/build/guile-build-system.scm (install-documentation): Fix typo in documentation string. Change-Id: I8940591fcbf8222c8f8365dabbac0e8300cad84c Signed-off-by: Ludovic Courtès --- guix/build/guile-build-system.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'guix') diff --git a/guix/build/guile-build-system.scm b/guix/build/guile-build-system.scm index e7e7f2d0be..76bbb79259 100644 --- a/guix/build/guile-build-system.scm +++ b/guix/build/guile-build-system.scm @@ -216,7 +216,7 @@ installed; this is useful for files that are meant to be included." (documentation-file-regexp %documentation-file-regexp) #:allow-other-keys) - "Install files that mactch DOCUMENTATION-FILE-REGEXP." + "Install files that match DOCUMENTATION-FILE-REGEXP." (let* ((out (assoc-ref outputs "out")) (doc (string-append out "/share/doc/" (strip-store-file-name out)))) -- cgit v1.2.3 From c3cd24b29ad0b781afebec3fb3269bd04ad9adec Mon Sep 17 00:00:00 2001 From: Tomas Volf <~@wolfsden.cz> Date: Fri, 23 Feb 2024 19:18:13 +0100 Subject: build-system/guile: Fix indentation. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The inner (let) was on the same level as the outer one, which was confusing. * guix/build/guile-build-system.scm (build): Fix indentation. Change-Id: I701b61747c270b185eac9377b066748baa2b3d20 Signed-off-by: Ludovic Courtès --- guix/build/guile-build-system.scm | 42 +++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 21 deletions(-) (limited to 'guix') diff --git a/guix/build/guile-build-system.scm b/guix/build/guile-build-system.scm index 76bbb79259..421e358b20 100644 --- a/guix/build/guile-build-system.scm +++ b/guix/build/guile-build-system.scm @@ -184,32 +184,32 @@ installed; this is useful for files that are meant to be included." (#f "") (path (string-append ":" path))))) - (let ((source-files + (let ((source-files (with-directory-excursion source-directory (find-files "." scheme-file-regexp)))) - (invoke-each - (filter-map (lambda (file) - (and (or (not not-compiled-file-regexp) - (not (string-match not-compiled-file-regexp - file))) - (cons* guild - "guild" "compile" - "-L" source-directory - "-o" (string-append go-dir - (file-sans-extension file) - ".go") - (string-append source-directory "/" file) - flags))) - source-files) - #:max-processes (parallel-job-count) - #:report-progress report-build-progress) - - (for-each - (lambda (file) + (invoke-each + (filter-map (lambda (file) + (and (or (not not-compiled-file-regexp) + (not (string-match not-compiled-file-regexp + file))) + (cons* guild + "guild" "compile" + "-L" source-directory + "-o" (string-append go-dir + (file-sans-extension file) + ".go") + (string-append source-directory "/" file) + flags))) + source-files) + #:max-processes (parallel-job-count) + #:report-progress report-build-progress) + + (for-each + (lambda (file) (install-file (string-append source-directory "/" file) (string-append module-dir "/" (dirname file)))) - source-files)) + source-files)) #t)) (define* (install-documentation #:key outputs -- cgit v1.2.3 From ef788ee2dc3d7de3bcf49ca1856ff06fc14b4541 Mon Sep 17 00:00:00 2001 From: Tomas Volf <~@wolfsden.cz> Date: Fri, 23 Feb 2024 19:18:14 +0100 Subject: build-system/guile: Install .scm files first. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Until now the .go files were generated first, and only after that the .scm files were installed into the target location. That led to a lot of messages about `source file ... newer than compiled' if the custom 'check phase tried to load the compiled files. Swapping the order of the actions resolves the issue allowing the tests to be written without lot of noise in the build log. For final artifacts it was not a problem, since daemon resets the timestamps. * guix/build/guile-build-system.scm (build): Install .scm before producing .go. Change-Id: I3428d144fcbaa6c904ee662193c3bca82589e344 Signed-off-by: Ludovic Courtès --- guix/build/guile-build-system.scm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) (limited to 'guix') diff --git a/guix/build/guile-build-system.scm b/guix/build/guile-build-system.scm index 421e358b20..8927da224a 100644 --- a/guix/build/guile-build-system.scm +++ b/guix/build/guile-build-system.scm @@ -187,6 +187,12 @@ installed; this is useful for files that are meant to be included." (let ((source-files (with-directory-excursion source-directory (find-files "." scheme-file-regexp)))) + (for-each + (lambda (file) + (install-file (string-append source-directory "/" file) + (string-append module-dir + "/" (dirname file)))) + source-files) (invoke-each (filter-map (lambda (file) (and (or (not not-compiled-file-regexp) @@ -202,14 +208,7 @@ installed; this is useful for files that are meant to be included." flags))) source-files) #:max-processes (parallel-job-count) - #:report-progress report-build-progress) - - (for-each - (lambda (file) - (install-file (string-append source-directory "/" file) - (string-append module-dir - "/" (dirname file)))) - source-files)) + #:report-progress report-build-progress)) #t)) (define* (install-documentation #:key outputs -- cgit v1.2.3 From 6a80ac450c835c146a2b5102d36e9af17a1d1d2d Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Fri, 29 Apr 2022 05:17:42 +0000 Subject: gnu: rakudo: Update to 2022.04. * gnu/packages/perl6.scm (rakudo): Update to 2022.04. [source]: Add snippet to delete bundled 3rdparty directory. [arguments]: Add 'remove-calls-to-git', 'fix-paths' and 'disable-failing-tests' phases. Remove 'patch-source-date' phase. Adjust files in 'patch-more-shebangs' phase and sort them. Remove redundant './' from 'configure' phase. Replace Perl extensions and paths with Raku equivalents in 'install-dist-tool' phase. [native-inputs]: Add nqp-configure. [synopsis, description]: Replace mentions of Perl with Raku. * guix/build/rakudo-build-system.scm (install): Replace Perl extension with Raku extension. Signed-off-by: Efraim Flashner --- guix/build/rakudo-build-system.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'guix') diff --git a/guix/build/rakudo-build-system.scm b/guix/build/rakudo-build-system.scm index 5cf1cc55bc..642cc570d1 100644 --- a/guix/build/rakudo-build-system.scm +++ b/guix/build/rakudo-build-system.scm @@ -59,7 +59,7 @@ #t) (begin (let ((inst (string-append (assoc-ref inputs "rakudo") - "/share/perl6/tools/install-dist.p6"))) + "/share/perl6/tools/install-dist.raku"))) (setenv "RAKUDO_RERESOLVE_DEPENDENCIES" "0") (setenv "RAKUDO_MODULE_DEBUG" "1") ; be verbose while building (invoke inst (string-append "--to=" perl6) "--for=site")))))) -- cgit v1.2.3 From 8dca56b4a1776e70e9880039528cdadee56d8526 Mon Sep 17 00:00:00 2001 From: "Paul A. Patience" Date: Fri, 29 Apr 2022 05:17:52 +0000 Subject: gnu: perl6-tap-harness: Update to 0.3.5. * gnu/packages/perl6.scm (perl6-tap-harness): Update to 0.3.5. [source]: Update URL. Reindent. [arguments]: Replace obsolete prove6 script with manual Raku invocation in 'check' phase. [home-page]: Update. [synopsis]: Replace mention of Perl with Raku. * gnu/packages/rakudo-build-system.scm (check): Replace obsolete prove6 script with manual Raku invocation. Signed-off-by: Efraim Flashner --- guix/build/rakudo-build-system.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'guix') diff --git a/guix/build/rakudo-build-system.scm b/guix/build/rakudo-build-system.scm index 642cc570d1..8f9a3b11d8 100644 --- a/guix/build/rakudo-build-system.scm +++ b/guix/build/rakudo-build-system.scm @@ -36,7 +36,11 @@ (define* (check #:key tests? inputs with-prove6? #:allow-other-keys) (if (and tests? (assoc-ref inputs "perl6-tap-harness")) ;(if (and tests? with-prove6?) - (invoke "prove6" "-I=lib" "t/") + (let ((test-files (find-files "t/" "\\.(rakutest|t|t6)$"))) + (invoke "raku" "-MTAP" "-e" + (string-append + "my @tests = <" (string-join test-files " ") ">; " + "TAP::Harness.new().run(@tests);"))) (format #t "test suite not run~%")) #t) -- cgit v1.2.3 From b9f87817a193a3ff4769602aa33e3e2f7776fa05 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 4 Mar 2024 13:49:32 +0200 Subject: guix: cpu: Update x86_64 CPUs. * guix/cpu.scm (cpu->gcc-architecture): Add graniterapids-d, pantherlake, clearwaterforest, arrowlake-s, yongfeng. Remove grandridge. Update CPU flags for searching to match architecture. (gcc-architecture->micro-architecture-level): Adjust listed architectures and sort in order used above. Change-Id: I186ab6e396e36c34f7c61827e02f637716993141 --- guix/cpu.scm | 41 ++++++++++++++++++++++++----------------- 1 file changed, 24 insertions(+), 17 deletions(-) (limited to 'guix') diff --git a/guix/cpu.scm b/guix/cpu.scm index 29ad883584..c5837ade7f 100644 --- a/guix/cpu.scm +++ b/guix/cpu.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2021 Ludovic Courtès -;;; Copyright © 2022, 2023 Efraim Flashner +;;; Copyright © 2022-2024 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -128,18 +128,21 @@ corresponds to CPU, a record as returned by 'current-cpu'." (or (and (equal? "GenuineIntel" (cpu-vendor cpu)) (= 6 (cpu-family cpu)) ;the "Pentium Pro" family - (if-flags ("avx" "raoint" => "grandridge") - ("avx" "amx_fp16" => "graniterapids") + (if-flags ("avx512f" "amx_complex" => "graniterapids-d") + ("avx512f" "amx_fp16" => "graniterapids") + ("avx512f" "avx512vp2intersect" => "tigerlake") + ("avx512f" "tsxldtrk" => "sapphirerapids") + ("avx512f" "avx512bf16" => "cooperlake") + ("avx512f" "wbnoinvd" => "icelake-server") + ("avx512f" "avx512bitalg" => "icelake-client") + ("avx512f" "avx512vbmi" => "cannonlake") + ("avx512f" "avx5124vnniw" => "knm") + ("avx512f" "avx512er" => "knl") + ("avx512f" => "skylake-avx512") + ("avx" "prefetchi" => "pantherlake") + ("avx" "user_msr" => "clearwaterforest") + ("avx" "sm3" => "arrowlake-s") ("avx" "avxvnniint8" => "sierraforest") - ("avx" "avx512vp2intersect" => "tigerlake") - ("avx" "tsxldtrk" => "sapphirerapids") - ("avx" "avx512bf16" => "cooperlake") - ("avx" "wbnoinvd" => "icelake-server") - ("avx" "avx512bitalg" => "icelake-client") - ("avx" "avx512vbmi" => "cannonlake") - ("avx" "avx5124vnniw" => "knm") - ("avx" "avx512er" => "knl") - ("avx" "avx512f" => "skylake-avx512") ("avx" "serialize" => "alderlake") ("avx" "clflushopt" => "skylake") ("avx" "adx" => "broadwell") @@ -190,6 +193,10 @@ corresponds to CPU, a record as returned by 'current-cpu'." (= #x3b (cpu-model cpu))) "lujiazui" (cpu->micro-architecture-level cpu)) + (if (and (= 7 (cpu-family cpu)) + (>= #x5b (cpu-model cpu))) + "yongfeng" + (cpu->micro-architecture-level cpu)) ;; TODO: Recognize CENTAUR/CYRIX/NSC? @@ -292,16 +299,16 @@ CPUs for compilers which don't allow for more focused optimizing." ;; 'Haswell and higher' qualify for x86_64-v3. ;; https://gitlab.com/x86-psABIs/x86-64-ABI/-/blob/master/x86-64-ABI/low-level-sys-info.tex (match gcc-architecture - ((or "grandridge" "graniterapids" "sierraforest" "tigerlake" - "sapphirerapids" "cooperlake" "icelake-server" "icelake-client" - "cannonlake" "knm" "knl" "skylake-avx512" "alderlake" "skylake" - "broadwell" "haswell" + ((or "graniterapids-d" "graniterapids" "tigerlake" "sapphirerapids" + "cooperlake" "icelake-server" "icelake-client" "cannonlake" "knm" "knl" + "skylake-avx512" "pantherlake" "clearwaterforest" "arrowlake-s" + "sierraforest" "alderlake" "skylake" "broadwell" "haswell" "znver4" "znver3" "znver2" "znver1" "bdver4") "x86_64-v3") ((or "sandybridge" "tremont" "goldmont-plus" "goldmont" "silvermont" "nehalem" "bonnell" "core2" "btver2" "athalon" "k8-sse3" "k8" "bdver3" "bdver2" "bdver1" "btver1" "amdfam10" - "lujiazui" "x86-64") + "lujiazui" "yongfeng" "x86-64") "x86_64-v1") (_ gcc-architecture))) -- cgit v1.2.3 From 5dce7964ef7c368d421c5a0c8738be06ed57ea0e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 4 Mar 2024 13:59:49 +0200 Subject: guix: cpu: Autodetect the x86-64-v4 microarchitecture. * guix/cpu.scm (gcc-architecture->micro-architecture-level): Sort gcc-architectures which have AVX512F support into x86-64-v4. Change-Id: I8af0ceb692eefec7433e1fd5149379244da799c4 --- guix/cpu.scm | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'guix') diff --git a/guix/cpu.scm b/guix/cpu.scm index c5837ade7f..6891d9f266 100644 --- a/guix/cpu.scm +++ b/guix/cpu.scm @@ -296,14 +296,17 @@ correspond roughly to CPU, a record as returned by 'current-cpu'." "Return a matching psABI micro-architecture, allowing optimizations for x86_64 CPUs for compilers which don't allow for more focused optimizing." ;; Matching gcc-architectures isn't an easy task, with the rule-of-thumb being - ;; 'Haswell and higher' qualify for x86_64-v3. + ;; AVX512F+ for x86_64-v4, AVX+ for x86_64-v3. ;; https://gitlab.com/x86-psABIs/x86-64-ABI/-/blob/master/x86-64-ABI/low-level-sys-info.tex (match gcc-architecture ((or "graniterapids-d" "graniterapids" "tigerlake" "sapphirerapids" - "cooperlake" "icelake-server" "icelake-client" "cannonlake" "knm" "knl" - "skylake-avx512" "pantherlake" "clearwaterforest" "arrowlake-s" - "sierraforest" "alderlake" "skylake" "broadwell" "haswell" - "znver4" "znver3" "znver2" "znver1" "bdver4") + "cooperlake" "icelake-server" "icelake-client" "cannonlake" "knm" + "knl" "skylake-avx512" + "znver4") + "x86_64-v4") + ((or "pantherlake" "clearwaterforest" "arrowlake-s" "sierraforest" + "alderlake" "skylake" "broadwell" "haswell" + "znver3" "znver2" "znver1" "bdver4") "x86_64-v3") ((or "sandybridge" "tremont" "goldmont-plus" "goldmont" "silvermont" "nehalem" "bonnell" "core2" -- cgit v1.2.3 From 29a9d0596f38ae1ab271dba4b827a4e318020732 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 5 Mar 2024 08:50:17 +0200 Subject: guix: cpu: Update aarch64 CPUs. * guix/cpu.scm (cpu->gcc-architecture): Update list of CPUs from the list in gcc. Change-Id: Ifcd26c143fc9e3aaa0c5514e1dac4908d2780255 --- guix/cpu.scm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'guix') diff --git a/guix/cpu.scm b/guix/cpu.scm index 6891d9f266..e80b74f161 100644 --- a/guix/cpu.scm +++ b/guix/cpu.scm @@ -217,7 +217,9 @@ corresponds to CPU, a record as returned by 'current-cpu'." (#xd15 "armv8-r") ((or #xd46 #xd47 #xd4d #xd48 #xd4e #xd49 #xd4f) - "armv9-a"))) + "armv9-a") + ((or #xd80 #xd81) + "armv9.2-a"))) ("0x42" "armv8.1-a") ("0x43" @@ -248,8 +250,14 @@ corresponds to CPU, a record as returned by 'current-cpu'." "armv8-a") ("0x68" "armv8-a") + ("0x6d" + "armv9-a") ("0xC0" - "armv8.6-a") + (match (cpu-model cpu) + ((or #xac3 #xac4) + "armv8.6-a") + (#xac5 + "armv8.7-a"))) ("0xC00" "armv8-a") (_ -- cgit v1.2.3 From 3e0a1469b8c231a061522f36b54ad0755103d4e1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 5 Mar 2024 14:36:43 +0100 Subject: import/cran: Add one more invalid package. * guix/import/cran.scm (invalid-packages): Add "use_c17". Change-Id: Ie3b6455d4eff97811057cd82dca460367a4583e5 --- guix/import/cran.scm | 1 + 1 file changed, 1 insertion(+) (limited to 'guix') diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 9b30dc30e0..c4c42836ee 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -418,6 +418,7 @@ empty list when the FIELD cannot be found." "none" "rtools" "unix" + "use_c17" "windows" "xcode" "xquartz")) -- cgit v1.2.3 From 9d9bb8955a939b89b5b28f1071b70ed9f9a54f8c Mon Sep 17 00:00:00 2001 From: Carlo Zancanaro Date: Wed, 6 Mar 2024 16:38:54 +1100 Subject: scripts: import: elpa: Unquote-splice package sexp contents. * guix/scripts/import/elpa.scm (guix-import-elpa): Unquote-splice the contents of the package sexp so the matched package definition is returned unchanged. Change-Id: Iaaa7e72390c73c6d6671811fe9ac284d599b44c6 Signed-off-by: Ricardo Wurmus --- guix/scripts/import/elpa.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'guix') diff --git a/guix/scripts/import/elpa.scm b/guix/scripts/import/elpa.scm index f587eeb243..7f77beaac0 100644 --- a/guix/scripts/import/elpa.scm +++ b/guix/scripts/import/elpa.scm @@ -104,7 +104,7 @@ Import the latest package named PACKAGE-NAME from an ELPA repository.\n")) #:repo (assoc-ref opts 'repo))) ((or #f '()) (leave (G_ "failed to download meta-data for package '~a'~%") package-name)) - (('package etc ...) `(package ,etc)) + (('package etc ...) `(package ,@etc)) ((? list? sexps) (map (match-lambda ((and ('package ('name name) . rest) pkg) -- cgit v1.2.3 From 63165a94862c2b338e329cbd781712c7a7a1b475 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 6 Mar 2024 09:09:56 +0200 Subject: cpu: Be consistent with x86_64 micro-architecture names. * gnu/packages/golang.scm (%go-1.18-x86_64-micro-architectures): Rename micro-architectures from x86_64-v* to x86-64-v*. * guix/cpu.scm (cpu->gcc-architecture): Return x86-64 as the fallback. (cpu->micro-architecture-level): Rename micro-architectures from x86_64-v* to x86-64-v*. (gcc-architecture->micro-architecture-level): Same. Change-Id: I37db65970417c22699ae8097b0361bccf76c1267 --- guix/cpu.scm | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'guix') diff --git a/guix/cpu.scm b/guix/cpu.scm index e80b74f161..b69c9b5360 100644 --- a/guix/cpu.scm +++ b/guix/cpu.scm @@ -200,7 +200,7 @@ corresponds to CPU, a record as returned by 'current-cpu'." ;; TODO: Recognize CENTAUR/CYRIX/NSC? - "x86_64"))) + "x86-64"))) ("aarch64" ;; Transcribed from GCC's list of aarch64 processors in aarch64-cores.def ;; What to do with big.LITTLE cores? @@ -290,12 +290,12 @@ correspond roughly to CPU, a record as returned by 'current-cpu'." ;; v2: CMPXCHG16B, LAHF, SAHF, POPCNT, SSE3, SSE4.1, SSE4.2, SSSE3 ("avx512f" "avx512bw" "abx512cd" "abx512dq" "avx512vl" "avx" "avx2" "bmi1" "bmi2" "f16c" "fma" "movbe" - "popcnt" "sse3" "sse4_1" "sse4_2" "ssse3" => "x86_64-v4") + "popcnt" "sse3" "sse4_1" "sse4_2" "ssse3" => "x86-64-v4") ("avx" "avx2" "bmi1" "bmi2" "f16c" "fma" "movbe" - "popcnt" "sse3" "sse4_1" "sse4_2" "ssse3" => "x86_64-v3") - ("popcnt" "sse3" "sse4_1" "sse4_2" "ssse3" => "x86_64-v2") - (_ => "x86_64-v1"))) - "x86_64-v1")) + "popcnt" "sse3" "sse4_1" "sse4_2" "ssse3" => "x86-64-v3") + ("popcnt" "sse3" "sse4_1" "sse4_2" "ssse3" => "x86-64-v2") + (_ => "x86-64-v1"))) + "x86-64-v1")) (architecture ;; TODO: More architectures architecture))) @@ -304,22 +304,22 @@ correspond roughly to CPU, a record as returned by 'current-cpu'." "Return a matching psABI micro-architecture, allowing optimizations for x86_64 CPUs for compilers which don't allow for more focused optimizing." ;; Matching gcc-architectures isn't an easy task, with the rule-of-thumb being - ;; AVX512F+ for x86_64-v4, AVX+ for x86_64-v3. + ;; AVX512F+ for x86-64-v4, AVX+ for x86-64-v3. ;; https://gitlab.com/x86-psABIs/x86-64-ABI/-/blob/master/x86-64-ABI/low-level-sys-info.tex (match gcc-architecture ((or "graniterapids-d" "graniterapids" "tigerlake" "sapphirerapids" "cooperlake" "icelake-server" "icelake-client" "cannonlake" "knm" "knl" "skylake-avx512" "znver4") - "x86_64-v4") + "x86-64-v4") ((or "pantherlake" "clearwaterforest" "arrowlake-s" "sierraforest" "alderlake" "skylake" "broadwell" "haswell" "znver3" "znver2" "znver1" "bdver4") - "x86_64-v3") + "x86-64-v3") ((or "sandybridge" "tremont" "goldmont-plus" "goldmont" "silvermont" "nehalem" "bonnell" "core2" "btver2" "athalon" "k8-sse3" "k8" "bdver3" "bdver2" "bdver1" "btver1" "amdfam10" "lujiazui" "yongfeng" "x86-64") - "x86_64-v1") + "x86-64-v1") (_ gcc-architecture))) -- cgit v1.2.3 From 7700dc2cf5e1ada04a6fbcbffbe150f8274ab502 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 6 Mar 2024 09:14:03 +0200 Subject: cpu: Rename x86-64-v1 to x86-64. This is the actual micro-architecture designation used by compilers. * gnu/packages/gcc.scm (%gcc-11-x86_64-micro-architectures): Rename x86-64-v1 to x86-64. * gnu/packages/golang.scm (%go-1.18-x86_64-micro-architectures): Same. * guix/cpu.scm (cpu->micro-architecture-level): Same. (gcc-architecture->micro-architecture-level): Same. Change-Id: I19ed556a7e8deb4a77f4c63fca3b794f25092788 --- guix/cpu.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'guix') diff --git a/guix/cpu.scm b/guix/cpu.scm index b69c9b5360..6f9e8daa61 100644 --- a/guix/cpu.scm +++ b/guix/cpu.scm @@ -294,8 +294,8 @@ correspond roughly to CPU, a record as returned by 'current-cpu'." ("avx" "avx2" "bmi1" "bmi2" "f16c" "fma" "movbe" "popcnt" "sse3" "sse4_1" "sse4_2" "ssse3" => "x86-64-v3") ("popcnt" "sse3" "sse4_1" "sse4_2" "ssse3" => "x86-64-v2") - (_ => "x86-64-v1"))) - "x86-64-v1")) + (_ => "x86-64"))) + "x86-64")) (architecture ;; TODO: More architectures architecture))) @@ -321,5 +321,5 @@ CPUs for compilers which don't allow for more focused optimizing." "btver2" "athalon" "k8-sse3" "k8" "bdver3" "bdver2" "bdver1" "btver1" "amdfam10" "lujiazui" "yongfeng" "x86-64") - "x86-64-v1") + "x86-64") (_ gcc-architecture))) -- cgit v1.2.3 From cae9e9db329ff13188ef98bd062a7d5b6b5e5a99 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 6 Mar 2024 09:19:56 +0200 Subject: cpu: Enable tuning for i686-linux. * gnu/packages/gcc.scm (gcc-7, gcc-10, gcc-11, gcc-12, gcc-13) [properties]: In compiler-cpu-architectures use the x86_64-micro-architectures list for i686. * guix/cpu.scm (cpu->gcc-architecture): Expand the x86_64 case to also support i686. Change-Id: I0b820ceb715960db5e702814fa278dc8c619a836 --- guix/cpu.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'guix') diff --git a/guix/cpu.scm b/guix/cpu.scm index 6f9e8daa61..840215cff0 100644 --- a/guix/cpu.scm +++ b/guix/cpu.scm @@ -113,7 +113,7 @@ "Return the architecture name, suitable for GCC's '-march' flag, that corresponds to CPU, a record as returned by 'current-cpu'." (match (cpu-architecture cpu) - ("x86_64" + ((or "x86_64" "i686") ;; Transcribed from GCC's 'host_detect_local_cpu' in driver-i386.cc. (letrec-syntax ((if-flags (syntax-rules (=>) ((_) @@ -200,7 +200,9 @@ corresponds to CPU, a record as returned by 'current-cpu'." ;; TODO: Recognize CENTAUR/CYRIX/NSC? - "x86-64"))) + (match (cpu-architecture cpu) + ("x86_64" "x86-64") + (_ "generic"))))) ("aarch64" ;; Transcribed from GCC's list of aarch64 processors in aarch64-cores.def ;; What to do with big.LITTLE cores? -- cgit v1.2.3