bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] gnu: Add sparse.


From: Cyril Roelandt
Subject: [PATCH] gnu: Add sparse.
Date: Tue, 26 Feb 2013 03:16:51 +0100

* gnu/packages/sparse.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/packages/licenses.scm: Add the Open Software License.
---
Hey!

This patch adds sparse. I had to add the Open Software License to
guix/licenses.scm. Debian does not think of it as a Free Software license, but I
think it's OK with GNU.

May I push ?

Cyril.

 Makefile.am             |    1 +
 gnu/packages/sparse.scm |   67 +++++++++++++++++++++++++++++++++++++++++++++++
 guix/licenses.scm       |    6 +++++
 3 files changed, 74 insertions(+)
 create mode 100644 gnu/packages/sparse.scm

diff --git a/Makefile.am b/Makefile.am
index bed4d06..a22d54c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -145,6 +145,7 @@ MODULES =                                   \
   gnu/packages/screen.scm                      \
   gnu/packages/shishi.scm                      \
   gnu/packages/smalltalk.scm                   \
+  gnu/packages/sparse.scm                      \
   gnu/packages/sqlite.scm                      \
   gnu/packages/ssh.scm                         \
   gnu/packages/subversion.scm                  \
diff --git a/gnu/packages/sparse.scm b/gnu/packages/sparse.scm
new file mode 100644
index 0000000..f38c639
--- /dev/null
+++ b/gnu/packages/sparse.scm
@@ -0,0 +1,67 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2013 Cyril Roelandt <address@hidden>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages sparse)
+  #:use-module (guix licenses)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages perl))
+
+(define-public sparse
+  (package
+    (name "sparse")
+    (version "0.4.4")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append
+                   "http://www.kernel.org/pub/software/devel/sparse/dist/";
+                   "sparse-" version ".tar.bz2"))
+             (sha256
+              (base32
+               "1bv50z84blz3qdh22jk6ay1aga30zwm18x2w1gf6fzjn6dz3pkjp"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:modules ((guix build gnu-build-system)
+                  (guix build utils)
+                  (srfi srfi-1))
+       #:phases (alist-replace
+                 'install
+                 (lambda* (#:key outputs #:allow-other-keys)
+                   (let ((out (assoc-ref outputs "out")))
+                    (zero? (system* "make" "install"
+                                    (string-append "PREFIX=" out)))))
+                 (alist-delete 'configure %standard-phases))))
+    (inputs
+     `(("perl" ,perl)))
+    (home-page "https://sparse.wiki.kernel.org/";)
+    (synopsis "A semantic parser")
+    (description
+     "Sparse, the semantic parser, provides a compiler frontend capable of
+parsing most of ANSI C as well as many GCC extensions, and a collection of
+sample compiler backends, including a static analyzer also called \"sparse\".
+Sparse provides a set of annotations designed to convey semantic information
+about types, such as what address space pointers point to, or what locks a
+function acquires or releases.
+
+Linus Torvalds started writing Sparse in 2003, initially targeting issues such
+as mixing pointers to user address space and pointers to kernel address space.
+
+Josh Triplett maintained Sparse 2006~2009. As of 2009, Christopher Li is the
+current maintainer of Sparse.")
+    (license osl)))
diff --git a/guix/licenses.scm b/guix/licenses.scm
index 4e4aee2..4424e67 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -36,6 +36,7 @@
             lgpl2.0 lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3 lgpl3+
             mpl2.0
             openldap2.8 openssl
+            osl
             psfl public-domain
             qpl
             vim
@@ -211,6 +212,11 @@ which may be a file:// URI pointing the package's tree."
            "https://www.gnu.org/licenses/license-list#newOpenLDAP";))
               ;; lists OpenLDAPv2.7, which is virtually identical
 
+(define osl
+  (license "Open Software License"
+           "http://directory.fsf.org/wiki/License:OSLv3.0";
+           "https://www.gnu.org/licenses/license-list.html#OSL";))
+
 (define psfl
   (license "Python Software Foundation License"
            "http://docs.python.org/license.html";
-- 
1.7.10.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]