summary refs log tree commit diff
path: root/gnu/packages/llvm.scm
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-03-02 08:36:31 -0500
committerMark H Weaver <mhw@netris.org>2015-03-02 12:08:56 -0500
commit1204c5100e1a5985a2e320ebe816137659053077 (patch)
tree0b4c18e6133d07219469aaf475f46c9746b0c36f /gnu/packages/llvm.scm
parent191c710139af3e833f32b24ce1f225c344620bb3 (diff)
downloadguix-1204c5100e1a5985a2e320ebe816137659053077.tar.gz
gnu: Add llvm-3.6.0 and clang-3.6.0.
* gnu/packages/llvm.scm (llvm): Update to 3.6.0.
  (clang-from-llvm): New procedure.
  (clang): Update to 3.6.0.  Reimplement using 'clang-from-llvm'.
  (llvm-3.5, clang-3.5): New variables.
Diffstat (limited to 'gnu/packages/llvm.scm')
-rw-r--r--gnu/packages/llvm.scm31
1 files changed, 25 insertions, 6 deletions
diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index 5b70124655..6cf1fdab0a 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -31,7 +32,7 @@
 (define-public llvm
   (package
     (name "llvm")
-    (version "3.5.0")
+    (version "3.6.0")
     (source
      (origin
       (method url-fetch)
@@ -39,7 +40,7 @@
                           version "/llvm-" version ".src.tar.xz"))
       (sha256
        (base32
-        "00swb43mzlvda8306arlg2jw7g6k3acwfccgf1k4c2pgd3rrkq98"))))
+        "1kmr5vlnz1419nnvyc7lsrcfx09n65ravjbmzxrqz7ml07jnk6mk"))))
     (build-system cmake-build-system)
     (native-inputs
      `(("python" ,python-wrapper)
@@ -74,7 +75,7 @@ development.  The compiler infrastructure includes mirror sets of programming
 tools as well as libraries with equivalent functionality.")
     (license ncsa)))
 
-(define-public clang
+(define (clang-from-llvm llvm hash)
   (package
     (name "clang")
     (version (package-version llvm))
@@ -83,9 +84,7 @@ tools as well as libraries with equivalent functionality.")
        (method url-fetch)
        (uri (string-append "http://llvm.org/releases/"
                            version "/cfe-" version ".src.tar.xz"))
-       (sha256
-        (base32
-         "12yv3jwdjcbkrx7zjm8wh4jrvb59v8fdw4mnmz3zc1jb00p9k07w"))))
+       (sha256 (base32 hash))))
     ;; Using cmake allows us to treat llvm as an external library.  There
     ;; doesn't seem to be any way to do this with clang's autotools-based
     ;; build system.
@@ -105,3 +104,23 @@ Objective-C++ programming languages.  It uses LLVM as its back end.  The Clang
 project includes the Clang front end, the Clang static analyzer, and several
 code analysis tools.")
     (license ncsa)))
+
+(define-public clang
+  (clang-from-llvm llvm
+                   "0b8825mvdhfk5r9gwcwp1j2dl9kw5glgyk7pybq2dzhrh4vnj3my"))
+
+(define-public llvm-3.5
+  (package (inherit llvm)
+    (version "3.5.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://llvm.org/releases/"
+                           version "/llvm-" version ".src.tar.xz"))
+       (sha256
+        (base32
+         "00swb43mzlvda8306arlg2jw7g6k3acwfccgf1k4c2pgd3rrkq98"))))))
+
+(define-public clang-3.5
+  (clang-from-llvm llvm-3.5
+                   "12yv3jwdjcbkrx7zjm8wh4jrvb59v8fdw4mnmz3zc1jb00p9k07w"))