[PATCH] gnu: Add tr7.

  • Done
  • quality assurance status badge
Details
2 participants
  • Nicolas Goaziou
  • Artyom V. Poptsov
Owner
unassigned
Submitted by
Artyom V. Poptsov
Severity
normal

Debbugs page

A
A
Artyom V. Poptsov wrote on 5 Apr 23:32 -0700
(address . guix-patches@gnu.org)(name . Artyom V. Poptsov)(address . poptsov.artyom@gmail.com)
c69a9be1151de4eccd5095aeaf907a11d6073626.1712385129.git.poptsov.artyom@gmail.com
* gnu/packages/scheme.scm (tr7): New variable.

Change-Id: I60e34f0f918ea7c9b36cea02358d69ab7bfad24b
---
gnu/packages/scheme.scm | 67 ++++++++++++++++++++++++++++++++++++++++-
1 file changed, 66 insertions(+), 1 deletion(-)

Toggle diff (96 lines)
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 070696d6ba..926deaeade 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -24,6 +24,7 @@
;;; Copyright © 2023 Juliana Sims <juli@incana.org>
;;; Copyright © 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2024 Skylar Hill <stellarskylark@posteo.net>
+;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -44,7 +45,8 @@ (define-module (gnu packages scheme)
#:use-module (gnu packages)
#:use-module ((guix licenses)
#:select (gpl2 gpl2+ lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3+ asl2.0
- bsd-3 cc-by-sa4.0 non-copyleft expat public-domain))
+ bsd-0 bsd-3 cc-by-sa4.0 non-copyleft expat
+ public-domain))
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix download)
@@ -855,6 +857,69 @@ (define-public tinyscheme
small program, it is easy to comprehend, get to grips with, and use.")
(license bsd-3))) ; there are no licence headers
+(define-public tr7
+ (package
+ (name "tr7")
+ (version "1.0.10")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jobol/tr7")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32 "0n77fkm5kcv2pmwbw5fl8r00aarw8da8gkd9d1ki5fn9kbl4fyk2"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (outputs '("out" "doc"))
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (substitute* "Makefile"
+ (("PREFIX = /usr/local")
+ (string-append "PREFIX="
+ #$output))
+ (("ALL = \\$\\(LIBSTA\\) \\$\\(TR7I\\) tags")
+ "ALL = $(LIBSTA) $(TR7I)"))))
+ (replace 'build
+ (lambda _
+ (setenv "CC"
+ #$(cc-for-target))
+ (invoke "make")))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "make" "test"))))
+ (replace 'install
+ (lambda _
+ (let* ((share (string-append #$output "/share"))
+ (doc (string-append #$output:doc "/share/doc/"))
+ (bin (string-append #$output "/bin"))
+ (lib (string-append #$output "/lib/"))
+ (tr7 (string-append share "/tr7"))
+ (libs (string-append tr7 "/libs")))
+ (for-each mkdir-p
+ (list tr7 libs bin lib doc))
+ (copy-file "tr7i"
+ (string-append bin "/tr7i"))
+ (copy-file "libtr7.a"
+ (string-append lib "/libtr7.a"))
+ (copy-file "r7rs.pdf"
+ (string-append doc "/r7rs.pdf"))
+ (copy-recursively "tr7libs" libs)))))))
+ (home-page "https://gitlab.com/jobol/tr7")
+ (synopsis "Embedded R7RS small Scheme interpreter")
+ (description
+ "@code{TR7} is a lightweight Scheme interpreter that implements the revision
+R7RS small of scheme programming language.
+
+It is meant to be used as an embedded scripting interpreter for other programs. A
+lot of functionality in TR7 is included conditionally, to allow developers freedom in
+balancing features and footprint.")
+ (license bsd-0)))
+
(define-public stalin
(let ((commit "ed1c9e339c352b7a6fee40bb2a47607c3466f0be"))
;; FIXME: The Stalin "source" contains C code generated by itself:

base-commit: bfc614397b5f146056bda4b5a8e3a67bd1ca7b23
--
2.41.0
N
N
Nicolas Goaziou wrote on 15 Apr 03:33 -0700
(name . Artyom V. Poptsov)(address . poptsov.artyom@gmail.com)
87v84ilxtl.fsf@nicolasgoaziou.fr
Hello,

"Artyom V. Poptsov" <poptsov.artyom@gmail.com> writes:

Toggle quote (2 lines)
> * gnu/packages/scheme.scm (tr7): New variable.

Applied. Thank you!

Regards,
--
Nicolas Goaziou
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 70229@patchwise.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 70229
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch