summary refs log tree commit diff
path: root/gnu/packages/linux.scm
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 /gnu/packages/linux.scm
parentf888d5bb8f75d4d4d26763eb5efbff1035c90092 (diff)
downloadguix-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.
Diffstat (limited to 'gnu/packages/linux.scm')
-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