summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndreas Enge <andreas@enge.fr>2014-11-08 13:24:21 +0100
committerAndreas Enge <andreas@enge.fr>2014-11-08 13:24:21 +0100
commitcff1c5c1c679ea1cf94282f824277c572854bffe (patch)
tree53eb05310906b920d85f9841fc26fa54d656f777
parenta50fbf0d650c8e0300936654f8dbcd4715c4f98b (diff)
downloadguix-cff1c5c1c679ea1cf94282f824277c572854bffe.tar.gz
gnu: Add mozjs (Mozilla Spidermonkey).
* gnu/packages/polkit.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Register new file.
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/polkit.scm64
2 files changed, 65 insertions, 0 deletions
diff --git a/gnu-system.am b/gnu-system.am
index d39d8697a8..aaecaad2d1 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -206,6 +206,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/photo.scm			\
   gnu/packages/pkg-config.scm			\
   gnu/packages/plotutils.scm			\
+  gnu/packages/polkit.scm			\
   gnu/packages/popt.scm				\
   gnu/packages/pth.scm				\
   gnu/packages/pulseaudio.scm			\
diff --git a/gnu/packages/polkit.scm b/gnu/packages/polkit.scm
new file mode 100644
index 0000000000..de2cefeb6b
--- /dev/null
+++ b/gnu/packages/polkit.scm
@@ -0,0 +1,64 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
+;;;
+;;; 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 polkit)
+  #:use-module ((guix licenses) #:select (lgpl2.0+ mpl2.0))
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages python))
+
+(define-public mozjs
+  (package
+    (name "mozjs")
+    (version "17.0.0")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append
+                   "https://ftp.mozilla.org/pub/mozilla.org/js/"
+                   name version ".tar.gz"))
+             (sha256
+              (base32
+               "1fig2wf4f10v43mqx67y68z6h77sy900d1w0pz9qarrqx57rc7ij"))))
+    (build-system gnu-build-system)
+    (native-inputs
+      `(("perl", perl)
+        ("python" ,python-2)))
+    (arguments
+      `(#:phases
+          (alist-cons-before
+           'configure 'chdir
+           (lambda _
+             (chdir "js/src"))
+           (alist-replace
+            'configure
+            ;; configure fails if it is followed by SHELL and CONFIG_SHELL
+            (lambda* (#:key outputs #:allow-other-keys)
+              (let ((out (assoc-ref outputs "out")))
+                (setenv "SHELL" (which "sh"))
+                (setenv "CONFIG_SHELL" (which "sh"))
+                (zero? (system*
+                        "./configure" (string-append "--prefix=" out)))))
+            %standard-phases))))
+    (home-page
+     "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey")
+    (synopsis "Mozilla javascript engine")
+    (description "SpiderMonkey is Mozilla's JavaScript engine written
+in C/C++.")
+    (license mpl2.0))) ; and others for some files