summary refs log tree commit diff
diff options
context:
space:
mode:
authorMathieu Othacehe <m.othacehe@gmail.com>2019-10-31 15:05:54 +0100
committerCarl Dong <contact@carldong.me>2019-11-12 13:43:41 -0500
commit07c07de3ab669ae7307424c646c4061d25ee6b86 (patch)
tree4cbbaefaf715627c50943cd0706d88eeb2b0bb1d
parent27fb781f41978fb58f422e18b58ad41743644e6e (diff)
downloadguix-07c07de3ab669ae7307424c646c4061d25ee6b86.tar.gz
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 <contact@carldong.me>
-rw-r--r--gnu/packages/llvm.scm12
1 files 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.