diff mbox

[07/15] gnu: Add chez-fmt.

Message ID CAKrPhPMpOg=rOL57zpGPO4awMno8ztNT5ztqHX-To7S_VNyh6Q@mail.gmail.com
State New
Headers show

Commit Message

Federico Beffa Oct. 16, 2016, 3:31 p.m. UTC

Comments

Ludovic Court├Ęs Oct. 17, 2016, 2:40 p.m. UTC | #1
Federico Beffa <beffa@ieee.org> skribis:

> From c6d0839666e90da4074a1ae6af9a355907a9cdd8 Mon Sep 17 00:00:00 2001
> From: Federico Beffa <beffa@fbengineering.ch>
> Date: Sun, 16 Oct 2016 16:12:25 +0200
> Subject: [PATCH 07/15] gnu: Add chez-fmt.
>
> * gnu/packages/chez.scm (chez-fmt): New variable.

LGTM, thanks!

Ludo'.
diff mbox

Patch

From c6d0839666e90da4074a1ae6af9a355907a9cdd8 Mon Sep 17 00:00:00 2001
From: Federico Beffa <beffa@fbengineering.ch>
Date: Sun, 16 Oct 2016 16:12:25 +0200
Subject: [PATCH 07/15] gnu: Add chez-fmt.

* gnu/packages/chez.scm (chez-fmt): New variable.
---
 gnu/packages/chez.scm | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm
index 34fd225..3661a20 100644
--- a/gnu/packages/chez.scm
+++ b/gnu/packages/chez.scm
@@ -430,3 +430,41 @@  R[4567]RS implementation of regular expressions, supporting both POSIX
 syntax with various (irregular) PCRE extensions, as well as SCSH's SRE
 syntax, with various aliases for commonly used patterns.")
     (license bsd-3)))
+
+(define-public chez-fmt
+  (package
+    (name "chez-fmt")
+    (version "0.8.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "http://synthcode.com/scheme/fmt/fmt-" version ".tar.gz"))
+       (sha256
+        (base32 "1zxqlw1jyg85yzclylh8bp2b3fwcy3l3xal68jw837n5illvsjcl"))
+       (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system gnu-build-system)
+    (propagated-inputs
+     `(("chez-srfi" ,chez-srfi))) ; for irregex-utils
+    (native-inputs
+     `(("chez-scheme" ,chez-scheme)))
+    (arguments
+     `(#:make-flags ,(chez-make-flags name version)
+       #:test-target "chez-check"
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'configure ,chez-configure)
+         (replace 'build
+           (lambda* (#:key (make-flags '()) #:allow-other-keys)
+             (zero? (apply system* "make" "chez-build" make-flags))))
+         (replace 'install
+           (lambda* (#:key (make-flags '()) #:allow-other-keys)
+             (zero? (apply system* "make" "chez-install" make-flags)))))))
+    (home-page "http://synthcode.com/scheme/fmt")
+    (synopsis "Combinator formatting library for Chez Scheme")
+    (description "This package provides a library of procedures for
+formatting Scheme objects to text in various ways, and for easily
+concatenating, composing and extending these formatters efficiently
+without resorting to capturing and manipulating intermediate
+strings.")
+    (license bsd-3)))
-- 
2.7.4