aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2018-01-25 14:13:57 -0500
committerMark H Weaver <mhw@netris.org>2018-01-25 14:13:57 -0500
commitdbe64d1029f21ac085fa0d6dc88f8e4896016f18 (patch)
treed24db11c7bd180c76d342caa95f427a36dbe918e
parentf888d5bb8f75d4d4d26763eb5efbff1035c90092 (diff)
downloadgnu-guix-dbe64d1029f21ac085fa0d6dc88f8e4896016f18.tar
gnu-guix-dbe64d1029f21ac085fa0d6dc88f8e4896016f18.tar.gz
gnu: linux-libre: Add retpoline support on x86 [mitigates spectre].
* gnu/packages/linux.scm (make-linux-libre): On x86 systems, build with GCC-7.
-rw-r--r--gnu/packages/linux.scm8
1 files changed, 8 insertions, 0 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 82f077668c..ee7f391b94 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -283,6 +283,14 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
("bc" ,bc)
("openssl" ,openssl)
("kmod" ,kmod)
+ ;; On x86, build with GCC-7 for full retpoline support.
+ ;; FIXME: Remove this when our default compiler has retpoline support.
+ ,@(match (system->linux-architecture
+ (or (%current-target-system) (%current-system)))
+ ((or "x86_64" "i386")
+ `(("gcc" ,gcc-7)))
+ (_
+ '()))
,@(match (and configuration-file
(configuration-file
(system->linux-architecture