gnu: ecl: Wrap with PATH, CPATH, LIBRARY_PATH, and LD_LIBRARY_PATH.

* gnu/packages/lisp.scm (ecl)[arguments]: Add 'wrap' phase.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
This commit is contained in:
Andy Patterson 2016-07-24 21:05:39 -04:00 committed by Ludovic Courtès
parent 60474cd114
commit 54a43ff406
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
1 changed files with 25 additions and 1 deletions

View File

@ -4,6 +4,7 @@
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca>
;;;
;;; This file is part of GNU Guix.
;;;
@ -127,7 +128,30 @@ interface to the Tk widget system.")
#:phases
(modify-phases %standard-phases
(delete 'check)
(add-after 'install 'check (assoc-ref %standard-phases 'check)))))
(add-after 'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((ecl (assoc-ref outputs "out"))
(input-path (lambda (lib path)
(string-append
(assoc-ref inputs lib) path)))
(libraries '("gmp" "libatomic-ops" "libgc" "libffi" "libc"))
(binaries '("gcc" "ld-wrapper" "binutils"))
(library-directories
(map (lambda (lib) (input-path lib "/lib"))
libraries)))
(wrap-program (string-append ecl "/bin/ecl")
`("PATH" prefix
,(map (lambda (binary)
(input-path binary "/bin"))
binaries))
`("CPATH" suffix
,(map (lambda (lib)
(input-path lib "/include"))
`("linux-headers" ,@libraries)))
`("LIBRARY_PATH" suffix ,library-directories)
`("LD_LIBRARY_PATH" suffix ,library-directories)))))
(add-after 'wrap 'check (assoc-ref %standard-phases 'check)))))
(home-page "http://ecls.sourceforge.net/")
(synopsis "Embeddable Common Lisp")
(description "ECL is an implementation of the Common Lisp language as