unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add llvm-3.6.0 and clang-3.6.0
@ 2015-03-02 13:45 Mark H Weaver
  2015-03-02 17:09 ` Mark H Weaver
  0 siblings, 1 reply; 2+ messages in thread
From: Mark H Weaver @ 2015-03-02 13:45 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 400 bytes --]

This updates llvm and clang to 3.6.0, while keeping 3.5.0 available as
well.  It creates a new procedure 'clang-from-llvm' that does the
obvious thing.  I want to keep 3.5.0 around for purposes of testing
Guile with various versions of clang.

I've verified that the 3.5.0 packages generate the same derivations as
before, but have not yet finished building 3.6.0 to make sure it works.

      Mark


[-- Attachment #2: [PATCH] gnu: Add llvm-3.6.0 and clang-3.6.0 --]
[-- Type: text/x-patch, Size: 3188 bytes --]

From 1cb5f9f845056117e0e86e1848fc4f4fd00a3fec Mon Sep 17 00:00:00 2001
From: Mark H Weaver <mhw@netris.org>
Date: Mon, 2 Mar 2015 08:36:31 -0500
Subject: [PATCH] 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.
---
 gnu/packages/llvm.scm | 31 +++++++++++++++++++++++++------
 1 file changed, 25 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index 5b70124..6cf1fda 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"))
-- 
2.2.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] gnu: Add llvm-3.6.0 and clang-3.6.0
  2015-03-02 13:45 [PATCH] gnu: Add llvm-3.6.0 and clang-3.6.0 Mark H Weaver
@ 2015-03-02 17:09 ` Mark H Weaver
  0 siblings, 0 replies; 2+ messages in thread
From: Mark H Weaver @ 2015-03-02 17:09 UTC (permalink / raw)
  To: guix-devel

Mark H Weaver <mhw@netris.org> writes:

> This updates llvm and clang to 3.6.0, while keeping 3.5.0 available as
> well.  It creates a new procedure 'clang-from-llvm' that does the
> obvious thing.  I want to keep 3.5.0 around for purposes of testing
> Guile with various versions of clang.
>
> I've verified that the 3.5.0 packages generate the same derivations as
> before, but have not yet finished building 3.6.0 to make sure it works.

They built successfully on my i686 system, so I went ahead and pushed
this.

      Mark

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-03-02 17:09 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-02 13:45 [PATCH] gnu: Add llvm-3.6.0 and clang-3.6.0 Mark H Weaver
2015-03-02 17:09 ` Mark H Weaver

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).