summary refs log tree commit diff
diff options
context:
space:
mode:
authorJosé Miguel Sánchez García <jmi2k@openmailbox.org>2016-12-07 18:06:22 +0100
committerMarius Bakke <mbakke@fastmail.com>2016-12-07 23:20:24 +0100
commit35cdc267aee2b6693e5314e9a7140a8e1d04a522 (patch)
treeacfd563abe12c33c7dfd10243b51cdd691da36e8
parentdb913ac431fbffb54465f51cb499e886b21c34fd (diff)
downloadguix-35cdc267aee2b6693e5314e9a7140a8e1d04a522.tar.gz
gnu: Add lua-lpeg.
* gnu/packages/lua.scm (lua-lpeg): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
-rw-r--r--gnu/packages/lua.scm36
1 files changed, 36 insertions, 0 deletions
diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm
index f95da3587d..65c335d373 100644
--- a/gnu/packages/lua.scm
+++ b/gnu/packages/lua.scm
@@ -7,6 +7,7 @@
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 doncatnip <gnopap@gmail.com>
 ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
+;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27,6 +28,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix utils)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages readline)
@@ -365,3 +367,37 @@ secure session between the peers.")
 based libraries.  It allows using GObject-based libraries directly from Lua.
 Notable examples are GTK+, GStreamer and Webkit.")
     (license license:expat)))
+
+(define-public lua-lpeg
+  (package
+    (name "lua-lpeg")
+    (version "1.0.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://www.inf.puc-rio.br/~roberto/lpeg/lpeg-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32 "13mz18s359wlkwm9d9iqlyyrrwjc6iqfpa99ai0icam2b3khl68h"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         ;; `make install` isn't available, so we have to do it manually
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (lua-version ,(version-major+minor (package-version lua))))
+               (install-file "lpeg.so"
+                             (string-append out "/lib/lua/" lua-version))
+               (install-file "re.lua"
+                             (string-append out "/share/lua/" lua-version))
+               #t))))
+       #:test-target "test"))
+    (inputs `(("lua", lua)))
+    (synopsis "Pattern-matching library for Lua")
+    (description
+     "LPeg is a pattern-matching library for Lua, based on Parsing Expression
+Grammars (PEGs).")
+    (home-page "http://www.inf.puc-rio.br/~roberto/lpeg")
+    (license license:expat)))