From 3fd9c90c4ae79ff1e9a0dbe840c3ff10d099d7ca Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 5 Mar 2020 17:22:17 +0100 Subject: gnu: clang-runtime: Adjust for CPLUS_INCLUDE_PATH changes. * gnu/packages/llvm.scm (clang-runtime-from-llvm)[arguments]: Add #:modules and #:phases. --- gnu/packages/llvm.scm | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'gnu/packages/llvm.scm') diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index bf32322df5..659631e263 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -164,7 +164,28 @@ of programming tools as well as libraries with equivalent functionality.") (arguments `(;; Don't use '-g' during the build to save space. #:build-type "Release" - #:tests? #f)) ; Tests require gtest + #:tests? #f ; Tests require gtest + #:modules ((srfi srfi-1) + (ice-9 match) + ,@%cmake-build-system-modules) + #:phases (modify-phases (@ (guix build cmake-build-system) %standard-phases) + (add-after 'set-paths 'hide-glibc + ;; Work around https://issues.guix.info/issue/36882. We need to + ;; remove glibc from CPLUS_INCLUDE_PATH so that the one hardcoded + ;; in GCC, at the bottom of GCC include search-path is used. + (lambda* (#:key inputs #:allow-other-keys) + (let* ((filters '("libc")) + (input-directories + (filter-map (lambda (input) + (match input + ((name . dir) + (and (not (member name filters)) + dir)))) + inputs))) + (set-path-environment-variable "CPLUS_INCLUDE_PATH" + '("include") + input-directories) + #t)))))) (home-page "https://compiler-rt.llvm.org") (synopsis "Runtime library for Clang/LLVM") (description -- cgit v1.2.3