gnu: guile-wisp: Update to 0.9.8.

* gnu/packages/guile.scm (guile-wisp): Update to 0.9.8.
[inputs]: Remove PYTHON.
[native-inputs]: New field.
[arguments]: Keep 'install' phase.  Add 'install-go-files' phase.
Adjust 'substitute-before-config' phase.
This commit is contained in:
Ludovic Courtès 2017-11-27 13:24:35 +01:00 committed by Ludovic Courtès
parent 776d2fb1bf
commit e084090554
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 20 additions and 34 deletions

View File

@ -1263,7 +1263,7 @@ key-value cache and store.")
(define-public guile-wisp
(package
(name "guile-wisp")
(version "0.9.0")
(version "0.9.8")
(source (origin
(method url-fetch)
(uri (string-append "https://bitbucket.org/ArneBab/"
@ -1271,25 +1271,23 @@ key-value cache and store.")
version ".tar.gz"))
(sha256
(base32
"0y5fxacalkgbv9s71h58vdvm2h2ln3rk024dd0vszwcf953as5fq"))))
"1f2bbicq1rxnwmiplrm4r75wj06w385mjkyvi7g4k740bgwcrzxr"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((system base compile)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(add-before
'configure 'substitute-before-config
(add-before 'configure 'substitute-before-config
(lambda* (#:key inputs #:allow-other-keys)
(let ((bash (assoc-ref inputs "bash")))
;; configure checks for guile-2.0, but ours is just named "guile" :)
(substitute* "configure"
(("guile-2.0") "guile"))
;; Puts together some test files with /bin/bash hardcoded
(substitute* "Makefile.in"
(("/bin/bash")
(string-append bash "/bin/bash") ))
(("/usr/bin/env bash")
(string-append bash "/bin/bash"))
(("\\$\\(GUILE_EFFECTIVE_VERSION\\)/site")
"site/$(GUILE_EFFECTIVE_VERSION)")) ;use the right order
#t)))
;; auto compilation breaks, but if we set HOME to /tmp,
@ -1299,37 +1297,25 @@ key-value cache and store.")
(lambda _
(setenv "HOME" "/tmp")
#t))
(replace
'install
(add-after 'install 'install-go-files
(lambda* (#:key outputs inputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(module-dir (string-append out "/share/guile/site/2.0"))
(language-dir
(string-append module-dir "/language/wisp"))
(guild (string-append (assoc-ref inputs "guile")
"/bin/guild")))
;; Make installation directories.
(mkdir-p module-dir)
(mkdir-p language-dir)
;; copy the source
(copy-file "wisp-scheme.scm"
(string-append module-dir "/wisp-scheme.scm"))
(copy-file "language/wisp/spec.scm"
(string-append language-dir "/spec.scm"))
(module-dir (string-append out "/share/guile/site")))
;; compile to the destination
(compile-file "wisp-scheme.scm"
#:output-file (string-append
module-dir "/wisp-scheme.go"))
(compile-file "language/wisp/spec.scm"
#:output-file (string-append
language-dir "/spec.go"))
(for-each (lambda (file)
(compile-file file
#:output-file
(string-append
(string-drop-right file 4)
".go")))
(find-files module-dir "\\.scm$"))
#t))))))
(home-page "http://draketo.de/english/wisp")
(inputs
`(("guile" ,guile-2.0)
("python" ,python)))
`(("guile" ,guile-2.0)))
(native-inputs
`(("python" ,python)
("pkg-config" ,pkg-config)))
(synopsis "Whitespace to lisp syntax for Guile")
(description "Wisp is a syntax for Guile which provides a Python-like
whitespace-significant language. It may be easier on the eyes for some