[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 1/2] gnu: Add femtolisp.
From: |
ng0 |
Subject: |
Re: [PATCH 1/2] gnu: Add femtolisp. |
Date: |
Tue, 13 Sep 2016 20:32:39 +0000 |
I hope the appended patch still applies.
Ricardo Wurmus <address@hidden> writes:
> ng0 <address@hidden> writes:
>
>> * gnu/packages/lisp.scm (femtolisp): New variable.
>> ---
>> gnu/packages/lisp.scm | 53
>> +++++++++++++++++++++++++++++++++++++++++++++++++++
>> 1 file changed, 53 insertions(+)
>>
>> diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
>> index 8ee249d..4e2ecdb 100644
>> --- a/gnu/packages/lisp.scm
>> +++ b/gnu/packages/lisp.scm
>> @@ -487,3 +487,56 @@ in the early 80's. It was converted to C by Blake
>> McBride and supports much of
>> the InterLisp Standard.")
>> (home-page "https://github.com/blakemcbride/LISPF4.git")
>> (license license:expat))))
>> +
>> +(define-public femtolisp
>> + (let* ((commit "68c5b1225572ecf2c52baf62f928063e5a30511b")
>> + (revision "1"))
>> + (package
>> + (name "femtolisp")
>> + (version (string-append "0.0.0-" revision "-" (string-take commit 7)))
>> + (source (origin
>> + (method git-fetch)
>> + (uri (git-reference
>> + (url "https://github.com/JeffBezanson/femtolisp.git")
>> + (commit commit)))
>> + (file-name (string-append name "-" version "-checkout"))
>> + (sha256
>> + (base32
>> + "04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja"))))
>> + (build-system gnu-build-system)
>> + (arguments
>> + `(#:make-flags '("CC=gcc")
>> + #:tests? #f ; No make check
>
> But it does have a “test” target, no? How about “#:test-target "test"”
> instead of disabling the tests?
>
>> + #:phases
>> + (modify-phases %standard-phases
>> + (delete 'configure) ; No configure script
>> + ;; We have to remove the 'test phase because it requires
>> + ;; the flisp binary to be present. Instead we run
>> + ;; bootstrap.sh after the 'install phase.
>
> I find this strange. More about this below.
>
>> + (add-before 'build 'patch-makefile
>> + (lambda _
>> + (substitute* "Makefile"
>> + (("default: release test") "default: release"))
>> + #t))
>
> This may not be necessary when you pass “release” as one of the
> “#:make-flags”.
>
>> + (replace 'install ; Makefile has no 'install phase
>> + (lambda* (#:key outputs #:allow-other-keys)
>> + (let* ((out (assoc-ref outputs "out"))
>> + (bin (string-append out "/bin")))
>> + (install-file "flisp" bin)
>> + #t)))
>> + ;; The flisp binary is now available, run bootstrap to
>> + ;; generate flisp.boot and afterwards runs make test.
>> + (add-after 'install 'bootstrap-gen-and-test
>> + (lambda* (#:key outputs #:allow-other-keys)
>> + (let* ((out (assoc-ref outputs "out"))
>> + (bin (string-append out "/bin")))
>> + (and
>> + (zero? (system* "./bootstrap.sh"))
>> + (install-file "flisp.boot" bin))))))))
>
> “install-file” has an unspecified return value. I’m a little surprised
> to see “bootstrap.sh” to be used *after* installation. That’s very odd.
> Could the tests not be fixed in another way, e.g. by overriding the
> location of the binary?
>
>> + (synopsis "Scheme-like lisp implementation")
>> + (description
>> + "@code{femtolisp} is a scheme-like lisp implementation with a
>> +simple, elegant Scheme dialect. It is a lisp-1 with lexical scope.
>> +The core is 12 builtin special forms and 33 builtin functions.")
>
>
> “Scheme-like”. I think the sentence on “lisp-1” can be removed, because
> if it’s Scheme-like it’s unlikely to be a lisp-2.
>
>> + (home-page "https://github.com/JeffBezanson/femtolisp")
>> + (license license:bsd-3))))
>
> ~~ Ricardo
>
>
From d4190191c58c454a4bcd626bf8009bcea896f2ae Mon Sep 17 00:00:00 2001
From: ng0 <address@hidden>
Date: Tue, 13 Sep 2016 20:19:57 +0000
Subject: [PATCH] gnu: femtolisp: Adjust description.
* gnu/packages/lisp.scm (femtolisp)[description]: Adjust to remove
unnecessary sentence.
[arguments](patch-makefile): Remove it and ...
(make-flags): Add "release" to make-flags.
(arguments)[tests]: Enable them as test-target "test".
---
gnu/packages/lisp.scm | 21 ++++++---------------
1 file changed, 6 insertions(+), 15 deletions(-)
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 3461de4..2816315 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -503,25 +503,16 @@ the InterLisp Standard.")
"04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja"))))
(build-system gnu-build-system)
(arguments
- `(#:make-flags '("CC=gcc")
- #:tests? #f ; No make check
+ `(#:make-flags '("CC=gcc" "release")
+ #:test-target "test"
#:phases
(modify-phases %standard-phases
(delete 'configure) ; No configure script
- ;; We have to remove the 'test phase because it requires
- ;; the flisp binary to be present. Instead we run
- ;; bootstrap.sh after the 'install phase.
- (add-before 'build 'patch-makefile
- (lambda _
- (substitute* "Makefile"
- (("default: release test") "default: release"))
- #t))
(replace 'install ; Makefile has no 'install phase
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
- (install-file "flisp" bin)
- #t)))
+ (install-file "flisp" bin))))
;; The flisp binary is now available, run bootstrap to
;; generate flisp.boot and afterwards runs make test.
(add-after 'install 'bootstrap-gen-and-test
@@ -533,8 +524,8 @@ the InterLisp Standard.")
(install-file "flisp.boot" bin))))))))
(synopsis "Scheme-like lisp implementation")
(description
- "@code{femtolisp} is a scheme-like lisp implementation with a
-simple, elegant Scheme dialect. It is a lisp-1 with lexical scope.
-The core is 12 builtin special forms and 33 builtin functions.")
+ "@code{femtolisp} is a Scheme-like lisp implementation with a
+simple, elegant Scheme dialect. The core is 12 builtin special forms
+and 33 builtin functions.")
(home-page "https://github.com/JeffBezanson/femtolisp")
(license license:bsd-3))))
--
2.10.0
--
ng0
signature.asc
Description: PGP signature
- [PATCH 1/2] gnu: Add femtolisp., ng0, 2016/09/12
- [PATCH 1/2] gnu: Add femtolisp., ng0, 2016/09/13
- [PATCH 2/2] gnu: lispf4: Remove unused inputs key., ng0, 2016/09/13
- Re: [PATCH 1/2] gnu: Add femtolisp., Ricardo Wurmus, 2016/09/13
- Re: [PATCH 1/2] gnu: Add femtolisp., ng0, 2016/09/13
- Re: [PATCH 1/2] gnu: Add femtolisp.,
ng0 <=
- Re: [PATCH 1/2] gnu: Add femtolisp., Ricardo Wurmus, 2016/09/14
- Re: [PATCH 1/2] gnu: Add femtolisp., ng0, 2016/09/14
- Re: [PATCH 1/2] gnu: Add femtolisp., ng0, 2016/09/14
- Re: [PATCH 1/2] gnu: Add femtolisp., Ricardo Wurmus, 2016/09/14
- Re: [PATCH 1/2] gnu: Add femtolisp., ng0, 2016/09/14
- Re: [PATCH 1/2] gnu: Add femtolisp., Ricardo Wurmus, 2016/09/14
- Re: [PATCH 1/2] gnu: Add femtolisp., ng0, 2016/09/14
- Re: [PATCH 1/2] gnu: Add femtolisp., ng0, 2016/09/14
- Re: [PATCH 1/2] gnu: Add femtolisp., Andreas Enge, 2016/09/18
- Re: [PATCH 1/2] gnu: Add femtolisp., Ludovic Courtès, 2016/09/20