help-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

clisp executable images fail at startup


From: Ricardo Wurmus
Subject: clisp executable images fail at startup
Date: Sat, 24 Dec 2016 10:00:28 +0100
User-agent: mu4e 0.9.16; emacs 25.1.1

Hi Guix,

for fun I just ported Yale Haskell to CLISP (it only needed a handful of
changes).  I’m using EXT:SAVEINITMEM to generate an executable image.
Building the image outside of Guix I can run the executable and I get a
Haskell prompt as expected.

When I packaged it and tried to run the packaged executable, however, I
got this error:

    module 'syscalls' requires package OS.

(This error is reported by CLISP.)

Attached is the patch I used to build the yale-haskell package.

>From d59f25c4ee8982a56342a03bcc66fc9048113c21 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <address@hidden>
Date: Sat, 24 Dec 2016 09:50:29 +0100
Subject: [PATCH] WIP: Add yale-haskell.

---
 gnu/packages/haskell.scm | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 8e5927a..27ed7aa 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -29,6 +29,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #: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 (guix build-system haskell)
@@ -44,6 +45,7 @@
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages libedit)
+  #:use-module (gnu packages lisp)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages multiprecision)
@@ -53,6 +55,42 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg))
 
+(define-public yale-haskell
+  (let ((commit "85f94c72a16c5f70301dd8db04cde9de2d7dd270")
+        (revision "1"))
+    (package
+      (name "yale-haskell")
+      (version (string-append "2.0.5-" revision "." (string-take commit 9)))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "http://git.elephly.net/software/yale-haskell.git";)
+                      (commit commit)))
+                (file-name (string-append "yale-haskell-" commit "-checkout"))
+                (sha256
+                 (base32
+                  "0bal3m6ryrjamz5p93bhs9rp5msk8k7lpcqr44wd7xs9b9k8w74g"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:tests? #f ; no tests
+         #:make-flags
+         (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+         #:phases
+         (modify-phases %standard-phases
+           (replace 'configure
+             (lambda _
+               (setenv "PRELUDE" "./progs/prelude")
+               (setenv "HASKELL_LIBRARY" "./progs/lib")
+               (setenv "PRELUDEBIN" "./progs/prelude/clisp")
+               (setenv "HASKELLPROG" "./bin/clisp-haskell")
+               #t)))))
+      (inputs
+       `(("clisp" ,clisp)))
+      (home-page "http://git.elephly.net/software/yale-haskell.git";)
+      (synopsis "Port of the Yale Haskell system to CLISP")
+      (description "TODO")
+      (license license:bsd-4))))
+
 (define ghc-bootstrap-x86_64-7.8.4
   (origin
     (method url-fetch)
-- 
2.10.2

-- 
Ricardo

GPG: BCA6 89B6 3655 3801 C3C6  2150 197A 5888 235F ACAC
http://elephly.net

reply via email to

[Prev in Thread] Current Thread [Next in Thread]