[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#53878] [PATCH v2 08/15] gnu: chez-scheme: Explicitly package bootst
From: |
Liliana Marie Prikler |
Subject: |
[bug#53878] [PATCH v2 08/15] gnu: chez-scheme: Explicitly package bootstrap bootfiles. |
Date: |
Fri, 18 Feb 2022 08:08:46 +0100 |
User-agent: |
Evolution 3.42.1 |
Am Donnerstag, dem 17.02.2022 um 15:50 -0500 schrieb Philip McGrath:
> +(define-public chez-scheme-bootstrap-bootfiles
> + (package
> + (inherit chez-scheme)
> + (name "chez-scheme-bootstrap-bootfiles")
> + (inputs '())
> + (native-inputs '())
> + (outputs '("out"))
> + (build-system copy-build-system)
> + ;; TODO: cross compilation
This TODO might be moved one line up, since you wouldn't be able to do
cross-compilation with just copy-build-system, would you?
> + (arguments
> + (list #:install-plan
> + #~`(("boot/" "lib/chez-scheme-bootfiles"))))
> + (supported-systems
> + ;; Upstream only distributes pre-built bootfiles for
> + ;; arm32le and t?(i3|a6)(le|nt|osx)
> + (filter (lambda (system)
> + (let ((machine (and=> (nix-system->chez-machine
> system)
> + chez-machine->nonthreaded)))
> + (or (equal? "arm32le" machine)
> + (and machine
> + (member (substring machine 0 2) '("i3"
> "a6"))
> + (or-map (cut string-suffix? <> machine)
> + '("le" "nt" "osx"))))))
> + %supported-systems))
> + (synopsis "Chez Scheme bootfiles (binary seed)")
> + (description
> + "Chez Scheme is a self-hosting compiler: building it requires
> +``bootfiles'' containing the Scheme-implemented portions compiled
> for the
> +current platform. (Chez can then cross-compile bootfiles for all
> other
> +supported platforms.)
> +
> +This package provides bootstrap bootfiles for upstream Chez Scheme.
> +Currently, it simply packages the binaries checked in to the upsream
> +repository. Hopefully we can eventually adapt Racket's @code{cs-
> bootstrap} to
> +work with upstream Chez Scheme so that we can bootstrap these files
> from
> +source.")))
> +
Now to explain the difference between my suggestion and what you
implemented. Mine would be to
(define-public (chez-scheme-bootstrap-bootfiles chez-scheme)
...)
where ... is the code you already have. This would not only work for
other chez-schemes than the one we have packaged, but might also make
it possible to cross module boundaries, i.e. keep chez-scheme in
chez.scm. WDYT?
- [bug#53878] [PATCH v2 06/15] gnu: Add stex., (continued)
- [bug#53878] [PATCH v2 06/15] gnu: Add stex., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 07/15] gnu: Add chez-nanopass., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 09/15] gnu: Add racket-vm-cgc., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 09/15] gnu: Add racket-vm-cgc., Liliana Marie Prikler, 2022/02/18
- [bug#53878] [PATCH v2 09/15] gnu: Add racket-vm-cgc., Philip McGrath, 2022/02/18
- [bug#53878] [PATCH v2 11/15] gnu: Add chez-scheme-for-racket., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 13/15] gnu: chez-mit: Support chez-scheme-for-racket., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 14/15] gnu: chez-and-racket-bootstrap: Add 'chez-scheme-for-system'., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 10/15] gnu: Add racket-vm-bc., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 08/15] gnu: chez-scheme: Explicitly package bootstrap bootfiles., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 08/15] gnu: chez-scheme: Explicitly package bootstrap bootfiles.,
Liliana Marie Prikler <=
- [bug#53878] [PATCH v2 08/15] gnu: chez-scheme: Explicitly package bootstrap bootfiles., Philip McGrath, 2022/02/18
- [bug#53878] [PATCH v2 08/15] gnu: chez-scheme: Explicitly package bootstrap bootfiles., Liliana Marie Prikler, 2022/02/19
- [bug#53878] [PATCH v2 12/15] gnu: Add racket-vm-cs., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 15/15] gnu: racket: Update to 8.4., Philip McGrath, 2022/02/17
- [bug#53878] [PATCH v2 15/15] gnu: racket: Update to 8.4., Liliana Marie Prikler, 2022/02/18
- [bug#53878] [PATCH v2 15/15] gnu: racket: Update to 8.4., Philip McGrath, 2022/02/18
- [bug#53878] [PATCH 02/11] gnu: chez-scheme: Use "lib/chez-scheme" for search path., Philip McGrath, 2022/02/13
- [bug#53878] [PATCH 08/11] gnu: Add chez-scheme-for-racket., Philip McGrath, 2022/02/13
- [bug#53878] [PATCH 08/11] gnu: Add chez-scheme-for-racket., Liliana Marie Prikler, 2022/02/14
- [bug#53878] [PATCH 08/11] gnu: Add chez-scheme-for-racket., Philip McGrath, 2022/02/16