From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: [PATCH] gnu: Add llvm-3.6.0 and clang-3.6.0 Date: Mon, 02 Mar 2015 08:45:17 -0500 Message-ID: <871tl71pjm.fsf@netris.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54173) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YSQeo-0002Gd-Ud for guix-devel@gnu.org; Mon, 02 Mar 2015 08:45:16 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YSQej-00062o-P4 for guix-devel@gnu.org; Mon, 02 Mar 2015 08:45:14 -0500 Received: from world.peace.net ([50.252.239.5]:47081) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YSQej-00062J-Kr for guix-devel@gnu.org; Mon, 02 Mar 2015 08:45:09 -0500 List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: guix-devel@gnu.org --=-=-= Content-Type: text/plain 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 --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: inline; filename=0001-gnu-Add-llvm-3.6.0-and-clang-3.6.0.patch Content-Transfer-Encoding: quoted-printable Content-Description: [PATCH] gnu: Add llvm-3.6.0 and clang-3.6.0 >From 1cb5f9f845056117e0e86e1848fc4f4fd00a3fec Mon Sep 17 00:00:00 2001 From: Mark H Weaver 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 =C2=A9 2014 Eric Bavier +;;; Copyright =C2=A9 2015 Mark H Weaver ;;; ;;; 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))) =20 -(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 sever= al 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")) --=20 2.2.1 --=-=-=--