summary refs log tree commit diff
path: root/gnu/packages/mes.scm
diff options
context:
space:
mode:
authorJan Nieuwenhuizen <janneke@gnu.org>2019-11-04 23:13:00 +0100
committerJan Nieuwenhuizen <janneke@gnu.org>2019-11-14 16:41:55 +0100
commit99b340f5eeb742d966dd16b1bfd7d2b308edc75f (patch)
tree86ae21922e5b81dd307c1120ea8fcea48bffde78 /gnu/packages/mes.scm
parent5a17042e70e9ebd0d0c95b101d55ba384b05b22d (diff)
downloadguix-99b340f5eeb742d966dd16b1bfd7d2b308edc75f.tar.gz
gnu: Add m2-planet.
* gnu/packages/mes.scm (m2-planet): New variable.
Diffstat (limited to 'gnu/packages/mes.scm')
-rw-r--r--gnu/packages/mes.scm35
1 files changed, 35 insertions, 0 deletions
diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm
index 3174c0c115..1a55342279 100644
--- a/gnu/packages/mes.scm
+++ b/gnu/packages/mes.scm
@@ -204,3 +204,38 @@ get_machine.")
        ((#:make-flags _)
         `(list (string-append "PREFIX=" (assoc-ref %outputs "out"))
                "CC=gcc"))))))
+
+(define-public m2-planet
+  (let ((commit "b87ddb0051b168ea45f8d49a610dcd069263336a")
+        (revision "2"))
+    (package
+      (name "m2-planet")
+      (version (string-append "1.4.0-" revision "." (string-take commit 7)))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/oriansj/m2-planet.git")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0yyc0fcbbxi9jqa1n76x0rwspdrwmc8g09jlmsw9c35nflrhmz8q"))))
+      (native-inputs
+       `(("mescc-tools" ,mescc-tools)))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+         #:tests? #f
+         #:phases (modify-phases %standard-phases
+                    (delete 'bootstrap)
+                    (delete 'configure))))
+      (synopsis "The PLAtform NEutral Transpiler")
+      (description
+       "M2-Planet, the PLAtform NEutral Transpiler, when combined with
+mescc-tools, compiles a subset of the C language into working binaries with
+introspective steps inbetween.  It is self-hosting and for bootstrapping it
+also has an implementation in the M1 macro assembly language.  M2-Planet is
+built as Phase-5 of the full source bootstrapping process and is capable of
+building GNU Mes.")
+      (home-page "https://github.com/oriansj/m2-planet")
+      (license gpl3+))))