guix-patches
[Top][All Lists]
Advanced

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

[bug#38606] [WIP SMLnj 1/1] gnu: Add smlnj.


From: Brett Gilio
Subject: [bug#38606] [WIP SMLnj 1/1] gnu: Add smlnj.
Date: Fri, 13 Dec 2019 22:06:27 -0600

>From 74605396e2d932adb8e570702ec2d3b767b17715 Mon Sep 17 00:00:00 2001
From: Brett Gilio <address@hidden>
Date: Fri, 13 Dec 2019 22:02:20 -0600
Subject: [WIP SMLnj 1/1] gnu: Add smlnj.

* gnu/packages/sml.scm (smlnj): New variable.
---
 gnu/packages/sml.scm | 89 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 89 insertions(+)

diff --git a/gnu/packages/sml.scm b/gnu/packages/sml.scm
index 30ee58c498..da332e2b2e 100644
--- a/gnu/packages/sml.scm
+++ b/gnu/packages/sml.scm
@@ -75,3 +75,92 @@ function interface, and a symbolic debugger.")
     (license
      (list license:lgpl2.1
            license:lgpl2.1+))))
+
+(define (smlnj-file version filename hash)
+  (origin
+   (method url-fetch)
+   (uri (string-append "http://smlnj.cs.uchicago.edu/dist/working/"; version 
"/" filename))
+   (sha256
+    (base32
+     hash))))
+
+(define-public smlnj ;; TODO: Incomplete.
+  (package
+   (name "smlnj")
+   (version "110.94")
+   (source (plain-file "" ""))
+   (build-system gnu-build-system)
+   (arguments
+    '(#:phases
+      (modify-phases %standard-phases
+                    (replace 'unpack
+                             (lambda* (#:key inputs #:allow-other-keys)
+                               (for-each
+                                (lambda (file)
+                                  (invoke "tar" "xvf" (assoc-ref inputs file)))
+                                (list "config"
+                                      "cm"
+                                      "compiler"
+                                      "runtime"
+                                      "system"
+                                      "MLRISC"
+                                      "smlnj-lib"
+                                      "old-basis"
+                                      "ckit"
+                                      "nlffi"
+                                      "cml"
+                                      "eXene"
+                                      "ml-lpt"
+                                      "ml-lex"
+                                      "ml-yacc"
+                                      "ml-burg"
+                                      "pgraph"
+                                      "trace-debug-profile"
+                                      "heap2asm"
+                                      "smlnj-c"))
+                               #t))
+                    (delete 'configure)
+                    (replace 'patch-source-shebangs
+                             (lambda _ (substitute*
+                                        (list "config/install.sh"
+                                              "runtime/objs/mk.amd64-linux")
+                                        (("/bin/sh") (which "sh")))))
+                    (replace 'build
+                             (lambda* (#:key inputs #:allow-other-keys)
+                               (substitute* "config/chk-global-names.sh"
+                                            (("CC=.*") "CC=gcc"))
+                               (substitute* "config/unpack"
+                                            (("# Now do it:") "exit 0"))
+                               (substitute* "config/_arch-n-opsys"
+                                            (("uname") (which "uname")))
+                               (substitute* "config/install.sh"
+                                            (("DEFAULT_SIZE=\"32\"")
+                                             "DEFAULT_SIZE=\"64\"")
+                                            (("BASEDIR=\\$ROOT/base")
+                                             "BASEDIR=$ROOT"))
+                               (invoke "sh" "config/install.sh"))))))
+   (native-inputs
+    `(("cm" ,(smlnj-file version "cm.tgz" 
"1x70nrk1gnxrzx16c7dyns35zkrqc0ngqyk34880ih04ccwmyxkp"))
+      ("smlnj-c" ,(smlnj-file version "smlnj-c.tgz" 
"1w6yrckbn5yxi3m0hqb57lwmf7pri66yi0zs2ahvcv5bwbr4dfh1"))
+      ("config" ,(smlnj-file version "config.tgz" 
"16ynwrakbcv5mp8i596aw8da09qdjkx9j0y5wxgix8aa99px4aba"))
+      ("compiler" ,(smlnj-file version "compiler.tgz" 
"1fmxj017s9bg1hr4psvcxasp0hcrc00bk9f0845fr7gy8mb743a3"))
+      ("runtime" ,(smlnj-file version "runtime.tgz" 
"08xq9ddp4ciqi1rwsnma0rsj7ydlbzcb9pc9m27n4krd61h8k4z9"))
+      ("system" ,(smlnj-file version "system.tgz" 
"0lmi03mx9fbrdshazqmrvg1j4s6hnpyfm90rl7f8qhgy0qi8almh"))
+      ("MLRISC" ,(smlnj-file version "MLRISC.tgz" 
"0y3f1ffzpqfn03a941dmjsr0zz4lz742ww1zbfnp15jbcy7mybiv"))
+      ("smlnj-lib" ,(smlnj-file version "smlnj-lib.tgz" 
"1vvlgws7kb53v63hwfakvq5xbiix1pqiafk5m86qas46ayy731g7"))
+      ("old-basis" ,(smlnj-file version "old-basis.tgz" 
"1kjgwnz0caymk4im9mjf88f2cym8bndnz0r84di5l4bd6pkwl8b2"))
+      ("ckit" ,(smlnj-file version "ckit.tgz" 
"158973wwd4pkf6fpzwyfm9968xl7pmb2sd2zf1fb3s055gm5anz2"))
+      ("nlffi" ,(smlnj-file version "nlffi.tgz" 
"13b3561b2bxpxyyy8ld359na7vimndw53nsc0fgr9li4xa3y70hl"))
+      ("cml" ,(smlnj-file version "cml.tgz" 
"0q00nmsqq33vdykyz9mgsy7r437l26gnxxmfl03ls88kiq7fbq3l"))
+      ("eXene" ,(smlnj-file version "eXene.tgz" 
"0phxh34psji67z30lq61b8pkwp7m45pakn6vnk592lmibikax2q0"))
+      ("ml-lpt" ,(smlnj-file version "ml-lpt.tgz" 
"053784lbf57pzd80gz4x7chqyxvdn580ix6pkqwcr1vwpv980zyj"))
+      ("ml-lex" ,(smlnj-file version "ml-lex.tgz" 
"052w6ck80v1jgql4m0k24hkkx9k4qwvqgxvk22hnwfh6k1avrk1i"))
+      ("ml-yacc" ,(smlnj-file version "ml-yacc.tgz" 
"1vj346ffzx7vbcnzhw49cqzlmfw35hzzhvlivyakdqalqwc97h6m"))
+      ("ml-burg" ,(smlnj-file version "ml-burg.tgz" 
"02qw4xkdh4h6ngj8a5yhgg4k4ph6lnhslbfh1drdz79whd389lzx"))
+      ("pgraph" ,(smlnj-file version "pgraph.tgz" 
"0c4qgm46dvkix4s56hj3ii9025m3pcxj4hc2z4mcdxlw0gj0r684"))
+      ("trace-debug-profile" ,(smlnj-file version "trace-debug-profile.tgz" 
"1z8ip80hgnj637ywcpzj9hfbnsci3qsdhssdbgparkzh7mk2bi4i"))
+      ("heap2asm" ,(smlnj-file version "heap2asm.tgz" 
"0g0ndf4wj197igrac136lsc8wpj9686vv0kwarrbwffrrrkb1w76"))))
+   (description #f)
+   (synopsis #f)
+   (home-page #f)
+   (license #f)))
-- 
2.24.1






reply via email to

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