Roel, you may push. Also, I prefer the name Dennis Mungai.
:-) On 5 July 2016 at 23:48, Roel Janssen <r...@gnu.org> wrote: > Hello Dennis, > > Thanks for your work on LLVM-3.8. I see a couple of things: > - We try to keep lines within 80 columns. > - libffi and zlib should be inputs instead of native-inputs. > - zlib is both a license and a package, so the licenses should be > prefixed. > > I created a new patch for you addressing these issues, if you and others > agree, I can push this one for you. I verified that the package builds > and that the programs can be run. > > Could you please also let me know whether you want to use the name > 'brainiarc7' in the commit history, or that you prefer 'Dennis Mungai'. > > Thanks again! > > Kind regards, > Roel Janssen > > >From 451d93eaaab6166e38e33f0556fe40f83afefc5c Mon Sep 17 00:00:00 2001 > From: brainiarc7 <dmng...@gmail.com> > Date: Tue, 5 Jul 2016 22:42:24 +0200 > Subject: [PATCH] gnu: Add LLVM 3.8. > > * gnu/packages/llvm.scm (llvm-3.8): New variable. > * gnu/packages/llvm.scm (clang-runtime-3.8): New variable. > --- > gnu/packages/llvm.scm | 47 +++++++++++++++++++++++++++++++++++++++++++---- > 1 file changed, 43 insertions(+), 4 deletions(-) > > diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm > index 3bf019f..911a5ea 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. > ;;; > @@ -20,7 +23,9 @@ > > (define-module (gnu packages llvm) > #:use-module (guix packages) > - #:use-module (guix licenses) > + #:use-module ((guix licenses) #:prefix license:) > + #:use-module (gnu packages compression) > + #:use-module (gnu packages libffi) > #:use-module (guix download) > #:use-module (guix utils) > #:use-module (guix build-system gnu) > @@ -60,7 +65,7 @@ languages. It currently supports compilation of C and C++ > programs, using > front-ends derived from GCC 4.0.1. A new front-end for the C family of > languages is in development. The compiler infrastructure includes mirror > sets > of programming tools as well as libraries with equivalent functionality.") > - (license ncsa))) > + (license license:ncsa))) > > (define (clang-runtime-from-llvm llvm hash) > (package > @@ -87,7 +92,7 @@ of programming tools as well as libraries with equivalent > functionality.") > functions for C and C++ programs. It also provides header files that allow C > and C++ source code to interface with the \"sanitization\" passes of the > clang > compiler. In LLVM this library is called \"compiler-rt\".") > - (license ncsa) > + (license license:ncsa) > > ;; <http://compiler-rt.llvm.org/> doesn't list MIPS as supported. > (supported-systems (delete "mips64el-linux" %supported-systems)))) > @@ -170,7 +175,7 @@ compiler. In LLVM this library is called > \"compiler-rt\".") > 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))) > + (license license:ncsa))) > > (define-public clang-runtime > (clang-runtime-from-llvm > @@ -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")))) > + (inputs > + `(("libffi" ,libffi) > + ("zlib" ,zlib))) > + (native-inputs > + `(("python" ,python-wrapper) > + ("perl" ,perl))) > + (arguments > + `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE" > + ;; Using the "Release" build type we reduce the > + ;; disk space and compile time footprint > + ;; considerably. > + "-DCMAKE_BUILD_TYPE=Release" > + ;; This option was set on the previous LLVM build, > + ;; so for consistency, use it here too. > + "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" > + "-DLLVM_ENABLE_PIC=ON" > + ;; Some non-crucial compiler warnings occur. > Treat > + ;; them as warnings instead of errors. > + "-DLLVM_ENABLE_WERROR=OFF"))))) > + > +(define-public clang-runtime-3.8 > + (clang-runtime-from-llvm llvm-3.8 > + "1c2nkp9563873ffz22qmhc0wakgj428pch8rmhym8agjamz3ily8")) > -- > 2.9.0