From 07c07de3ab669ae7307424c646c4061d25ee6b86 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Thu, 31 Oct 2019 15:05:54 +0100 Subject: gnu: clang-from-llvm: Fix set-glibc-file-names phase. * gnu/packages/llvm.scm (clang-from-llvm)[arguments]: Turn case on major version into a cond, so that newer versions of clang have the same behaviour as version 6 and 7. Signed-off-by: Carl Dong --- gnu/packages/llvm.scm | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 33a72cf640..33fb53d65e 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -201,10 +201,12 @@ compiler. In LLVM this library is called \"compiler-rt\".") 'unpack 'set-glibc-file-names (lambda* (#:key inputs #:allow-other-keys) (let ((libc (assoc-ref inputs "libc")) - (compiler-rt (assoc-ref inputs "clang-runtime"))) - (case (string->number ,(version-major - (package-version clang-runtime))) - ((or 6 7) + (compiler-rt (assoc-ref inputs "clang-runtime")) + (version + (string->number + ,(version-major (package-version clang-runtime))))) + (cond + ((> version 3) ;; Link to libclang_rt files from clang-runtime. (substitute* "lib/Driver/ToolChain.cpp" (("getDriver\\(\\)\\.ResourceDir") @@ -220,7 +222,7 @@ compiler. In LLVM this library is called \"compiler-rt\".") ;; allow crt1.o & co. to be found. (("@GLIBC_LIBDIR@") (string-append libc "/lib")))) - ((3) + (else (substitute* "lib/Driver/Tools.cpp" ;; Patch the 'getLinuxDynamicLinker' function so that ;; it uses the right dynamic linker file name. -- cgit v1.2.3