gnu: Add cyclone-bootstrap.

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

Change-Id: I85d37ebc48882d4b830ef34851ae6d37ecf2e6e5
This commit is contained in:
TakeV 2024-03-04 13:57:34 -05:00
parent ff3c592710
commit 2d510059d5
Signed by: TakeV
GPG Key ID: A64F41345C7400AF
1 changed files with 34 additions and 0 deletions

View File

@ -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 @@
#: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,35 @@ as well as light. The implementation is based on an ad-hoc Virtual
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 bootstrapped 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 "Install Cyclone Scheme on your machine.")
(description "Bootstrap the generate the cyclone scheme compiler")
(license expat)))