aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/chez.scm
diff options
context:
space:
mode:
authorFederico Beffa <beffa@fbengineering.ch>2016-10-16 15:59:49 +0200
committerFederico Beffa <beffa@fbengineering.ch>2016-10-19 08:44:11 +0200
commit4dfe4eee55b70d4ec1bf79dcd1aa441250086498 (patch)
tree4472cbe521da8a96f6d84e2d806ef7d8dbba7bae /gnu/packages/chez.scm
parentc344b85dd089db106bbd76fe756f1138662f9753 (diff)
downloadguix-4dfe4eee55b70d4ec1bf79dcd1aa441250086498.tar
guix-4dfe4eee55b70d4ec1bf79dcd1aa441250086498.tar.gz
gnu: Add chez-web
* gnu/packages/chez.scm (chez-web): New variable.
Diffstat (limited to 'gnu/packages/chez.scm')
-rw-r--r--gnu/packages/chez.scm53
1 files changed, 52 insertions, 1 deletions
diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm
index 8d562d7d61..bfcf1b0467 100644
--- a/gnu/packages/chez.scm
+++ b/gnu/packages/chez.scm
@@ -19,9 +19,11 @@
(define-module (gnu packages chez)
#:use-module (gnu packages)
#:use-module ((guix licenses)
- #:select (gpl2+ lgpl2.0+ lgpl2.1+ asl2.0 bsd-3 expat))
+ #:select (gpl2+ lgpl2.0+ lgpl2.1+ asl2.0 bsd-3 expat
+ public-domain))
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (gnu packages compression)
@@ -222,3 +224,52 @@ and 32-bit PowerPC architectures.")
(description
"This package provides a collection of SRFI libraries for Chez Scheme.")
(license expat)))
+
+(define-public chez-web
+ (let ((commit "5fd177fe53f31f466bf88720d03c95a3711a8bea")
+ (revision "1"))
+ (package
+ (name "chez-web")
+ ;; release 2.0 is different and doesn't work.
+ (version (string-append "2.0-" revision "."
+ (string-take commit 7)))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/arcfide/ChezWEB.git")
+ (commit commit)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32 "1dq25qygyncbfq4kwwqqgyyakfqjwhp5q23vrf3bff1p66nyfl3b"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("chez-scheme" ,chez-scheme)
+ ("texlive" ,texlive)))
+ (arguments
+ `(#:make-flags (list (string-append "PREFIX=" %output)
+ (string-append "DOCDIR=" %output "/share/doc/"
+ ,name "-" ,version)
+ (string-append "LIBDIR=" %output "/lib/chezweb")
+ (string-append "TEXDIR=" %output "/share/texmf-local"))
+ #:tests? #f ; no tests
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* _
+ (copy-file "config.mk.template" "config.mk")
+ (substitute* "tangleit"
+ (("\\./cheztangle\\.ss" all)
+ (string-append "chez-scheme --program " all)))
+ (substitute* "weaveit"
+ (("mpost chezweb\\.mp")
+ "mpost --tex=tex chezweb.mp")
+ (("\\./chezweave" all)
+ (string-append "chez-scheme --program " all)))
+ (substitute* "installit"
+ (("-g \\$GROUP -o \\$OWNER") "")))))))
+ (home-page "https://github.com/arcfide/ChezWEB")
+ (synopsis "Hygienic Literate Programming for Chez Scheme")
+ (description "ChezWEB is a system for doing Knuthian style WEB
+programming in Scheme.")
+ (license expat))))