From 99b340f5eeb742d966dd16b1bfd7d2b308edc75f Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <janneke@gnu.org>
Date: Mon, 4 Nov 2019 23:13:00 +0100
Subject: [PATCH] gnu: Add m2-planet.

* gnu/packages/mes.scm (m2-planet): New variable.
---
 gnu/packages/mes.scm | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm
index 3174c0c1158..1a55342279a 100644
--- a/gnu/packages/mes.scm
+++ b/gnu/packages/mes.scm
@@ -204,3 +204,38 @@ (define-public mescc-tools
        ((#: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+))))
-- 
GitLab