all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: TakeV via Guix-patches via <guix-patches@gnu.org>
To: 69552@debbugs.gnu.org
Cc: TakeV <takev@disroot.org>
Subject: [bug#69552] [PATCH vREVISION 1/2] gnu: Add cyclone-bootstrap.
Date: Wed,  6 Mar 2024 18:56:58 -0500	[thread overview]
Message-ID: <9e15650dea41ee388dbbb01bf09c59758a0e34f4.1709769419.git.takev@disroot.org> (raw)
In-Reply-To: <cover.1709580311.git.takev@disroot.org>

* gnu/packages/scheme.scm (cyclone-bootstrap): New variable.

Change-Id: I85d37ebc48882d4b830ef34851ae6d37ecf2e6e5
---
 gnu/packages/scheme.scm | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index ad06d7db06..e0151e954c 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -23,6 +23,7 @@
 ;;; Copyright © 2023 Andrew Whatson <whatson@tailcall.au>
 ;;; Copyright © 2023 Juliana Sims <juli@incana.org>
 ;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2024 TakeV <takev@disroot.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -59,6 +60,7 @@ (define-module (gnu packages scheme)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages bdw-gc)
+  #:use-module (gnu packages c)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages emacs)
@@ -1276,3 +1278,42 @@ (define-public stklos
 Machine.  STklos can also be compiled as a library and embedded in an
 application.")
     (license gpl2+)))
+
+;; Cyclone is self-hosted. To build it, we require the bootstrap compiler.
+(define cyclone-bootstrap
+  (package
+    (name "cyclone-bootstrap")
+    (version "0.36.0")
+    ;; TODO Use system's libtommath after
+    ;; https://github.com/justinethier/cyclone/issues/458 is resolved
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/justinethier/cyclone-bootstrap.git")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0fv0mnrn5shbx77383f4mbkvc4i9yyj1bjm3dfyhipnaqapbhqpi"))))
+    (inputs (list ck))
+    (build-system gnu-build-system)
+    (arguments
+     (list
+      #:phases #~(modify-phases %standard-phases
+                   (delete 'configure))
+      #:test-target "test"
+      #:make-flags #~(list "CC=gcc"
+                           (string-append "PREFIX="
+                                          #$output))))
+    (home-page "https://github.com/justinethier/cyclone-bootstrap")
+    (synopsis "Cyclone Scheme bootstrap compiler")
+    (description
+     "Cyclone Scheme is a brand-new, R7RS Scheme-to-C compiler that uses a
+variant of Cheney on the MTA to implement full tail recursion,
+continuations, and generational garbage collection.  This package uses
+intermediate code generated by compiling the Scheme source files to
+build and install Cyclone Scheme.  The compiler is self-hosting and
+cannot be built directly on a system without Cyclone binaries
+installed.")
+    (license expat)))
+

base-commit: 201f90f34f90242bb74baa5ca44bda6131b3a035
-- 
2.41.0





  parent reply	other threads:[~2024-03-06 23:58 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-04 19:29 [bug#69552] [PATCH 0/2] Add cyclone scheme TakeV via Guix-patches via
2024-03-04 19:32 ` [bug#69552] [PATCH 1/2] gnu: Add cyclone-bootstrap TakeV via Guix-patches via
2024-03-04 19:32 ` [bug#69552] [PATCH 2/2] gnu: Add cyclone TakeV via Guix-patches via
2024-03-04 22:29 ` Juliana Sims
2024-03-06 23:56 ` TakeV via Guix-patches via [this message]
2024-03-06 23:56   ` [bug#69552] [PATCH vREVISION " TakeV via Guix-patches via
2024-03-13 12:12   ` [bug#69552] [PATCH vREVISION 1/2] gnu: Add cyclone-bootstrap Christopher Baines
2024-03-13 12:32     ` TakeV via Guix-patches via
2024-03-13 12:45       ` Christopher Baines
2024-03-13 14:17         ` TakeV via Guix-patches via
2024-03-13 14:42           ` Christopher Baines
2024-03-07 22:20 ` [bug#69552] [PATCH vREVISION 2/2] gnu: Add cyclone Juliana Sims via Guix-patches via

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=9e15650dea41ee388dbbb01bf09c59758a0e34f4.1709769419.git.takev@disroot.org \
    --to=guix-patches@gnu.org \
    --cc=69552@debbugs.gnu.org \
    --cc=takev@disroot.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.