Hello, See the corrected patch below, comments have been corrected.
>From 38643acf50749212a4455d15a1729002d6dfa04a Mon Sep 17 00:00:00 2001 From: brainiarc7 <dmng...@gmail.com> Date: Thu, 30 June 2016 20:43:13 +0300 Subject: [PATCH] Add LLVM 3.8 to GNU Guix --- gnu/packages/llvm.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 3bf019f..e995ff2 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -2,6 +2,9 @@ ;;; Copyright © 2014 Eric Bavier <bav...@member.fsf.org> ;;; Copyright © 2015 Mark H Weaver <m...@netris.org> ;;; Copyright © 2015 Ludovic Courtès <l...@gnu.org> +;;; Copyright © 2016 Dennis Mungai <dmng...@gmail.com> +;;; Copyright © 2016 Pjotr Prins <pjotr.publi...@thebird.nl> +;;; Copyright © 2016 Roel Janssen <r...@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,6 +24,8 @@ (define-module (gnu packages llvm) #:use-module (guix packages) #:use-module (guix licenses) + #:use-module (gnu packages compression) + #:use-module (gnu packages libffi) #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system gnu) @@ -201,3 +206,37 @@ code analysis tools.") (define-public clang-3.5 (clang-from-llvm llvm-3.5 clang-runtime-3.5 "12yv3jwdjcbkrx7zjm8wh4jrvb59v8fdw4mnmz3zc1jb00p9k07w")) + +(define-public llvm-3.8 + (package (inherit llvm) + (version "3.8.0") + (source + (origin + (method url-fetch) + (uri (string-append "http://llvm.org/releases/" + version "/llvm-" version ".src.tar.xz")) + (sha256 + (base32 + "0ikfq0gxac8xpvxj23l4hk8f12ydx48fljgrz1gl9xp0ks704nsm")))) + (native-inputs + `(("python" ,python-wrapper) + ("perl" ,perl) + ("libffi" ,libffi) + ("zlib" ,zlib))) + (arguments + `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE" ;;Same comment as on the "-DCMAKE_BUILD_WITH_INSTALL_RPATH" cmake option below. + "-DCMAKE_BUILD_TYPE=Release" + "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" ;Inherit this from the LLVM package here to maintain consistency. + "-DLLVM_ENABLE_PIC=ON" ;Defaults to on. + "-DLLVM_ENABLE_WERROR=OFF"))))) ;There's no need to stop and fail the build if compiler warnings are triggered. + +(define-public clang-runtime-3.8 + (clang-runtime-from-llvm llvm-3.8 + "1c2nkp9563873ffz22qmhc0wakgj428pch8rmhym8agjamz3ily8")) + On 30 June 2016 at 21:15, Dennis Mungai <dmng...@gmail.com> wrote: > From 38643acf50749212a4455d15a1729002d6dfa04a Mon Sep 17 00:00:00 2001 > From: brainiarc7 <dmng...@gmail.com> > Date: Thu, 30 June 2016 16:47:02 +0300 > > Subject: [PATCH] Add LLVM 3.8 to GNU Guix > > --- > gnu/packages/llvm.scm | 39 +++++++++++++++++++++++++++++++++++++++ > 1 file changed, 39 insertions(+) > > diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm > index 3bf019f..e995ff2 100644 > --- a/gnu/packages/llvm.scm > +++ b/gnu/packages/llvm.scm > @@ -2,6 +2,9 @@ > ;;; Copyright © 2014 Eric Bavier <bav...@member.fsf.org> > ;;; Copyright © 2015 Mark H Weaver <m...@netris.org> > ;;; Copyright © 2015 Ludovic Courtès <l...@gnu.org> > +;;; Copyright © 2016 Dennis Mungai <dmng...@gmail.com> > +;;; Copyright © 2016 Pjotr Prins <pjotr.publi...@thebird.nl> > +;;; Copyright © 2016 Roel Janssen <r...@gnu.org> > ;;; > ;;; This file is part of GNU Guix. > ;;; > @@ -21,6 +24,8 @@ > (define-module (gnu packages llvm) > #:use-module (guix packages) > #:use-module (guix licenses) > + #:use-module (gnu packages compression) > + #:use-module (gnu packages libffi) > #:use-module (guix download) > #:use-module (guix utils) > #:use-module (guix build-system gnu) > @@ -201,3 +206,37 @@ code analysis tools.") > (define-public clang-3.5 > (clang-from-llvm llvm-3.5 clang-runtime-3.5 > "12yv3jwdjcbkrx7zjm8wh4jrvb59v8fdw4mnmz3zc1jb00p9k07w")) > + > +(define-public llvm-3.8 > + (package (inherit llvm) > + (version "3.8.0") > + (source > + (origin > + (method url-fetch) > + (uri (string-append "http://llvm.org/releases/" > + version "/llvm-" version ".src.tar.xz")) > + (sha256 > + (base32 > + "0ikfq0gxac8xpvxj23l4hk8f12ydx48fljgrz1gl9xp0ks704nsm")))) > + (native-inputs > + `(("python" ,python-wrapper) > + ("perl" ,perl) > + ("libffi" ,libffi) > + ("zlib" ,zlib))) > + (arguments > + `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE" ;;Same > comment as on the "-DCMAKE_BUILD_WITH_INSTALL_RPATH" cmake option > below. > + "-DCMAKE_BUILD_TYPE=Release" > + "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" > ;;Inherit this from the LLVM package here to maintain consistency. > + "-DLLVM_ENABLE_PIC=ON" ;;Defaults to on. > + "-DLLVM_ENABLE_WERROR=OFF"))))) ;;There's > no need to stop and fail the build if compiler warnings are triggered. > + > +(define-public clang-runtime-3.8 > + (clang-runtime-from-llvm llvm-3.8 > + "1c2nkp9563873ffz22qmhc0wakgj428pch8rmhym8agjamz3ily8")) > + > +(define-public clang-3.8 > + (clang-from-llvm llvm-3.8 clang-runtime-3.8 > + "1ybcac8hlr9vl3wg8s4v6cp0c0qgqnwprsv85lihbkq3vqv94504")) > > On 12 June 2016 at 19:30, Ludovic Courtès <l...@gnu.org> wrote: >> Hi! >> >> Dennis Mungai <dmng...@gmail.com> skribis: >> >>> I second Pjotr on this. >>> >>> There are always tools that will lag behind, and having multiple LLVM >>> versions is a reasonable (and possibly unavoidable) compromise, for >>> now. >>> >>> There may be problems with conflicts should a user install such >>> pipelines with differing LLVM and Clang combinations within the same >>> profile, as a worst case scenario. >> >> OK fine. Currently we have 3.6 and 3.5, so we’d add 3.8 on top of it, >> right? And the ‘llvm’, ‘clang’ etc. bindings would still point to 3.6? >> Does it even make sense to have unversioned bindings? >> >> The patch you posted earlier adds a number of configure flags, different >> from those currently used in ‘llvm’, and in particular: >> >>> + "-DLLVM_INCLUDE_TESTS=OFF" ;; clang target >>> units cannot be built (invalid test targets inherited from llvm result in >>> build failure) >> >> IIUC, this has the effect of disabling tests, which is something we >> avoid unless there’s a good reason. I don’t understand the comment, >> what’s happening? >> >> Could you remove as many of the configure flags as needed, and add a >> comment for those that need to remain? >> >> Also, as a bonus, could you add a conforming commit log? :-) >> >> https://www.gnu.org/software/guix/manual/html_node/Submitting-Patches.html >> >> Thanks in advance! >> >> Ludo’.