mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-24 19:49:25 -05:00
gnu: gcc: Add 'compiler-cpu-architectures' property.
* gnu/packages/gcc.scm (%gcc-7.5-x86_64-micro-architectures) (%gcc-10-x86_64-micro-architectures): New variables. (gcc-7, gcc-10): Add 'properties' field. * gnu/packages/commencement.scm (make-gcc-toolchain): Likewise.
This commit is contained in:
parent
a644f88d28
commit
2576e2019d
2 changed files with 30 additions and 2 deletions
|
@ -3768,6 +3768,7 @@ (define* (make-gcc-toolchain gcc
|
||||||
(append (package-search-paths gcc)
|
(append (package-search-paths gcc)
|
||||||
(package-search-paths libc)))
|
(package-search-paths libc)))
|
||||||
|
|
||||||
|
(properties (package-properties gcc)) ;for 'compiler-cpu-architectures'
|
||||||
(license (package-license gcc))
|
(license (package-license gcc))
|
||||||
(synopsis "Complete GCC tool chain for C/C++ development")
|
(synopsis "Complete GCC tool chain for C/C++ development")
|
||||||
(description
|
(description
|
||||||
|
|
|
@ -525,6 +525,27 @@ (define-public gcc-6
|
||||||
|
|
||||||
,@(package-inputs gcc-4.7)))))
|
,@(package-inputs gcc-4.7)))))
|
||||||
|
|
||||||
|
(define %gcc-7.5-x86_64-micro-architectures
|
||||||
|
;; Suitable '-march' values for GCC 7.5 (info "(gcc) x86 Options").
|
||||||
|
'("core2" "nehalem" "westmere" "sandybridge" "ivybridge"
|
||||||
|
"haswell" "broadwell" "skylake" "bonnell" "silvermont"
|
||||||
|
"knl" "skylake-avx512"
|
||||||
|
|
||||||
|
"k8" "k8-sse3" "barcelona"
|
||||||
|
"bdver1" "bdver2" "bdver3" "bdver4"
|
||||||
|
"znver1"
|
||||||
|
"btver1" "btver2" "geode"))
|
||||||
|
|
||||||
|
(define %gcc-10-x86_64-micro-architectures
|
||||||
|
;; Suitable '-march' values for GCC 10.
|
||||||
|
(append %gcc-7.5-x86_64-micro-architectures
|
||||||
|
'("goldmont" "goldmont-plus" "tremont"
|
||||||
|
"knm" "cannonlake" "icelake-client" "icelake-server"
|
||||||
|
"cascadelake" "cooperlake" "tigerlake"
|
||||||
|
|
||||||
|
"znver2" "znver3")))
|
||||||
|
|
||||||
|
|
||||||
(define-public gcc-7
|
(define-public gcc-7
|
||||||
(package
|
(package
|
||||||
(inherit gcc-6)
|
(inherit gcc-6)
|
||||||
|
@ -542,7 +563,10 @@ (define-public gcc-7
|
||||||
(description
|
(description
|
||||||
"GCC is the GNU Compiler Collection. It provides compiler front-ends
|
"GCC is the GNU Compiler Collection. It provides compiler front-ends
|
||||||
for several languages, including C, C++, Objective-C, Fortran, Ada, and Go.
|
for several languages, including C, C++, Objective-C, Fortran, Ada, and Go.
|
||||||
It also includes runtime support libraries for these languages.")))
|
It also includes runtime support libraries for these languages.")
|
||||||
|
(properties
|
||||||
|
`((compiler-cpu-architectures
|
||||||
|
("x86_64" ,@%gcc-7.5-x86_64-micro-architectures))))))
|
||||||
|
|
||||||
(define-public gcc-8
|
(define-public gcc-8
|
||||||
(package
|
(package
|
||||||
|
@ -592,7 +616,10 @@ (define-public gcc-10
|
||||||
(patches (search-patches "gcc-9-strmov-store-file-names.patch"
|
(patches (search-patches "gcc-9-strmov-store-file-names.patch"
|
||||||
"gcc-5.0-libvtv-runpath.patch"))
|
"gcc-5.0-libvtv-runpath.patch"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
(snippet gcc-canadian-cross-objdump-snippet)))))
|
(snippet gcc-canadian-cross-objdump-snippet)))
|
||||||
|
(properties
|
||||||
|
`((compiler-cpu-architectures
|
||||||
|
("x86_64" ,@%gcc-10-x86_64-micro-architectures))))))
|
||||||
|
|
||||||
(define-public gcc-11
|
(define-public gcc-11
|
||||||
(package
|
(package
|
||||||
|
|
Loading…
Reference in a new issue