[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
03/04: gnu: linux-libre: Remove glibc from CPATH before the build.
From: |
guix-commits |
Subject: |
03/04: gnu: linux-libre: Remove glibc from CPATH before the build. |
Date: |
Sun, 6 Oct 2019 12:05:05 -0400 (EDT) |
mbakke pushed a commit to branch core-updates
in repository guix.
commit c5ceec4150f6a6cdc1b64781afa2d05547cf8542
Author: Marius Bakke <address@hidden>
Date: Fri Oct 4 21:36:42 2019 +0200
gnu: linux-libre: Remove glibc from CPATH before the build.
Fixes <https://bugs.gnu.org/37593>.
* gnu/packages/linux.scm (make-linux-libre*)[arguments]: Drop "libc" from
CPATH.
---
gnu/packages/linux.scm | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 2a6709c..78de223 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -663,6 +663,7 @@ for ARCH and optionally VARIANT, or #f if there is no such
configuration."
`(#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1)
+ (srfi srfi-26)
(ice-9 match))
#:phases
(modify-phases %standard-phases
@@ -679,6 +680,18 @@ for ARCH and optionally VARIANT, or #f if there is no such
configuration."
,@(if (%current-target-system)
'((unsetenv "CROSS_CPATH"))
'())
+
+ ;; On AArch64 (at least), we need to remove glibc headers from
CPATH
+ ;; (they are still available as "system headers"), so that the
kernel
+ ;; can override uint64_t. See <https://bugs.gnu.org/37593>.
+ (setenv "CPATH"
+ (string-join
+ (remove (cut string-prefix? (assoc-ref inputs "libc") <>)
+ (string-split (getenv "CPATH") #\:))
+ ":"))
+ (format #t "environment variable `CPATH' changed to `~a'~%"
+ (getenv "CPATH"))
+
;; Avoid introducing timestamps
(setenv "KCONFIG_NOTIMESTAMP" "1")
(setenv "KBUILD_BUILD_TIMESTAMP" (getenv "SOURCE_DATE_EPOCH"))