mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 13:58:15 -05:00
gnu: racket: Update to 7.0.
* gnu/packages/scheme.scm (racket): Update to 7.0. [inputs]: Add libedit. [arguments]: Update the list of FFI library references to patch. [source]: Remove 'racket-fix-xform-issue.patch'. * gnu/packages/patches/racket-store-checksum-override.patch: Adjust. * gnu/packages/patches/racket-fix-xform-issue.patch: Delete file. * gnu/local.mk: Adjust accordingly. Signed-off-by: Leo Famulari <leo@famulari.name>
This commit is contained in:
parent
41c038078e
commit
e0b49c785b
4 changed files with 34 additions and 89 deletions
|
@ -1117,7 +1117,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
|
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
|
||||||
%D%/packages/patches/rsem-makefile.patch \
|
%D%/packages/patches/rsem-makefile.patch \
|
||||||
%D%/packages/patches/rtags-separate-rct.patch \
|
%D%/packages/patches/rtags-separate-rct.patch \
|
||||||
%D%/packages/patches/racket-fix-xform-issue.patch \
|
%D%/packages/patches/racket-store-checksum-override.patch \
|
||||||
%D%/packages/patches/ruby-rubygems-276-for-ruby24.patch \
|
%D%/packages/patches/ruby-rubygems-276-for-ruby24.patch \
|
||||||
%D%/packages/patches/ruby-concurrent-ignore-broken-test.patch \
|
%D%/packages/patches/ruby-concurrent-ignore-broken-test.patch \
|
||||||
%D%/packages/patches/ruby-concurrent-test-arm.patch \
|
%D%/packages/patches/ruby-concurrent-test-arm.patch \
|
||||||
|
|
|
@ -1,63 +0,0 @@
|
||||||
050cdb59839896b41431791f8ee0ef2564231b8f
|
|
||||||
Author: Matthew Flatt <mflatt@racket-lang.org>
|
|
||||||
AuthorDate: Tue Mar 6 09:05:08 2018 -0700
|
|
||||||
Commit: Matthew Flatt <mflatt@racket-lang.org>
|
|
||||||
CommitDate: Tue Mar 6 09:05:08 2018 -0700
|
|
||||||
|
|
||||||
Parent: efb9a919fc ffi docs: clarification on `unsafe-socket->port`
|
|
||||||
Containing: master
|
|
||||||
Follows: v5.0.1 (21612)
|
|
||||||
|
|
||||||
xform: avoid problems with `__signbitf128`
|
|
||||||
|
|
||||||
Closes #1962 and uses the suggested patch there, among other changes.
|
|
||||||
|
|
||||||
2 files changed, 6 insertions(+), 3 deletions(-)
|
|
||||||
racket/collects/compiler/private/xform.rkt | 2 +-
|
|
||||||
racket/src/racket/src/number.c | 7 +++++--
|
|
||||||
|
|
||||||
diff --git a/racket/collects/compiler/private/xform.rkt b/racket/collects/compiler/private/xform.rkt
|
|
||||||
index 28a425c057..89ae848f9c 100644
|
|
||||||
--- a/collects/compiler/private/xform.rkt
|
|
||||||
+++ b/collects/compiler/private/xform.rkt
|
|
||||||
@@ -904,7 +904,7 @@
|
|
||||||
|
|
||||||
strlen cos cosl sin sinl exp expl pow powl log logl sqrt sqrtl atan2 atan2l frexp
|
|
||||||
isnan isinf fpclass signbit _signbit _fpclass __fpclassify __fpclassifyf __fpclassifyl
|
|
||||||
- _isnan __isfinited __isnanl __isnan __signbit __signbitf __signbitd __signbitl
|
|
||||||
+ _isnan __isfinited __isnanl __isnan __signbit __signbitf __signbitd __signbitl __signbitf128
|
|
||||||
__isinff __isinfl isnanf isinff __isinfd __isnanf __isnand __isinf __isinff128
|
|
||||||
__inline_isnanl __inline_isnan __inline_signbit __inline_signbitf __inline_signbitd __inline_signbitl
|
|
||||||
__builtin_popcount __builtin_clz __builtin_isnan __builtin_isinf __builtin_signbit
|
|
||||||
diff --git a/racket/src/racket/src/number.c b/racket/src/racket/src/number.c
|
|
||||||
index 71f42aaf3c..3bbad3ba83 100644
|
|
||||||
--- a/src/racket/src/number.c
|
|
||||||
+++ b/src/racket/src/number.c
|
|
||||||
@@ -1796,6 +1796,7 @@ double scheme_real_to_double(Scheme_Object *r)
|
|
||||||
}
|
|
||||||
|
|
||||||
XFORM_NONGCING static MZ_INLINE int minus_zero_p(double d)
|
|
||||||
+ XFORM_SKIP_PROC
|
|
||||||
{
|
|
||||||
#ifdef MZ_IS_NEG_ZERO
|
|
||||||
return MZ_IS_NEG_ZERO(d);
|
|
||||||
@@ -1809,7 +1810,9 @@ int scheme_minus_zero_p(double d)
|
|
||||||
return minus_zero_p(d);
|
|
||||||
}
|
|
||||||
|
|
||||||
-static int rational_dbl_p(double f) {
|
|
||||||
+XFORM_NONGCING static int rational_dbl_p(double f)
|
|
||||||
+ XFORM_SKIP_PROC
|
|
||||||
+{
|
|
||||||
return !(MZ_IS_NAN(f)
|
|
||||||
|| MZ_IS_INFINITY(f));
|
|
||||||
}
|
|
||||||
@@ -1955,7 +1958,7 @@ real_p(int argc, Scheme_Object *argv[])
|
|
||||||
return (SCHEME_REALP(o) ? scheme_true : scheme_false);
|
|
||||||
}
|
|
||||||
|
|
||||||
-static int is_rational(const Scheme_Object *o)
|
|
||||||
+XFORM_NONGCING static int is_rational(const Scheme_Object *o)
|
|
||||||
{
|
|
||||||
if (SCHEME_FLOATP(o))
|
|
||||||
return rational_dbl_p(SCHEME_FLOAT_VAL(o));
|
|
|
@ -7,19 +7,23 @@ because the store is immutable. This patch makes Racket ignore
|
||||||
checksums for files in the store.
|
checksums for files in the store.
|
||||||
|
|
||||||
See <https://debbugs.gnu.org/30680> for details.
|
See <https://debbugs.gnu.org/30680> for details.
|
||||||
|
---
|
||||||
|
collects/compiler/private/cm-minimal.rkt | 8 +++++++-
|
||||||
|
1 file changed, 7 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
diff -ruN racket-6.12/collects/compiler/cm.rkt racket-6.12-patched/collects/compiler/cm.rkt
|
diff --git a/collects/compiler/private/cm-minimal.rkt b/collects/compiler/private/cm-minimal.rkt
|
||||||
--- racket-6.12/collects/compiler/cm.rkt 1969-12-31 19:00:00.000000000 -0500
|
index a5a5407..15af6b8 100644
|
||||||
+++ racket-6.12-patched/collects/compiler/cm.rkt 2018-08-12 06:36:46.061142149 -0400
|
--- a/collects/compiler/private/cm-minimal.rkt
|
||||||
|
+++ b/collects/compiler/private/cm-minimal.rkt
|
||||||
@@ -7,6 +7,7 @@
|
@@ -7,6 +7,7 @@
|
||||||
racket/list
|
racket/list
|
||||||
racket/path
|
racket/path
|
||||||
racket/promise
|
racket/promise
|
||||||
+ racket/string
|
+ racket/string
|
||||||
openssl/sha1
|
openssl/sha1
|
||||||
racket/place
|
|
||||||
setup/collects
|
setup/collects
|
||||||
@@ -627,6 +628,10 @@
|
compiler/compilation-path
|
||||||
|
@@ -543,6 +544,10 @@
|
||||||
#f
|
#f
|
||||||
(list src-hash recorded-hash)))
|
(list src-hash recorded-hash)))
|
||||||
|
|
||||||
|
@ -30,7 +34,7 @@ diff -ruN racket-6.12/collects/compiler/cm.rkt racket-6.12-patched/collects/comp
|
||||||
(define (rkt->ss p)
|
(define (rkt->ss p)
|
||||||
(if (path-has-extension? p #".rkt")
|
(if (path-has-extension? p #".rkt")
|
||||||
(path-replace-extension p #".ss")
|
(path-replace-extension p #".ss")
|
||||||
@@ -679,7 +684,8 @@
|
@@ -595,7 +600,8 @@
|
||||||
(trace-printf "newer src... ~a > ~a" path-time path-zo-time)
|
(trace-printf "newer src... ~a > ~a" path-time path-zo-time)
|
||||||
;; If `sha1-only?', then `maybe-compile-zo' returns a #f or thunk:
|
;; If `sha1-only?', then `maybe-compile-zo' returns a #f or thunk:
|
||||||
(maybe-compile-zo sha1-only? deps path->mode roots path orig-path read-src-syntax up-to-date collection-cache new-seen)]
|
(maybe-compile-zo sha1-only? deps path->mode roots path orig-path read-src-syntax up-to-date collection-cache new-seen)]
|
||||||
|
@ -40,3 +44,6 @@ diff -ruN racket-6.12/collects/compiler/cm.rkt racket-6.12-patched/collects/comp
|
||||||
=> (lambda (difference)
|
=> (lambda (difference)
|
||||||
(trace-printf "different src hash... ~a" difference)
|
(trace-printf "different src hash... ~a" difference)
|
||||||
;; If `sha1-only?', then `maybe-compile-zo' returns a #f or thunk:
|
;; If `sha1-only?', then `maybe-compile-zo' returns a #f or thunk:
|
||||||
|
--
|
||||||
|
2.18.0
|
||||||
|
|
||||||
|
|
|
@ -65,6 +65,7 @@ (define-module (gnu packages scheme)
|
||||||
#:use-module (gnu packages xorg)
|
#:use-module (gnu packages xorg)
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages gl)
|
#:use-module (gnu packages gl)
|
||||||
|
#:use-module (gnu packages libedit)
|
||||||
#:use-module (ice-9 match))
|
#:use-module (ice-9 match))
|
||||||
|
|
||||||
(define (mit-scheme-source-directory system version)
|
(define (mit-scheme-source-directory system version)
|
||||||
|
@ -407,22 +408,19 @@ (define-public scheme48
|
||||||
(define-public racket
|
(define-public racket
|
||||||
(package
|
(package
|
||||||
(name "racket")
|
(name "racket")
|
||||||
(version "6.12")
|
(version "7.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (list (string-append "http://mirror.racket-lang.org/installers/"
|
(uri (list (string-append "http://mirror.racket-lang.org/installers/"
|
||||||
version "/racket-" version "-src.tgz")
|
version "/racket-" version "-src.tgz")
|
||||||
(string-append
|
(string-append
|
||||||
"http://mirror.informatik.uni-tuebingen.de/mirror/racket/"
|
"http://mirror.informatik.uni-tuebingen.de/mirror/racket/"
|
||||||
version "/racket-" version "-src.tgz")))
|
version "/racket-" version "-src.tgz")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0cwcypzjfl9py1s695mhqkiapff7c1w29llsmdj7qgn58wl0apk5"))
|
"1glv5amsp9xp480d4yr63hhm9kkyav06yl3a6p489nkr4cln0j9a"))
|
||||||
(patches (search-patches
|
(patches (search-patches
|
||||||
;; See: https://github.com/racket/racket/issues/1962
|
"racket-store-checksum-override.patch"))))
|
||||||
;; This can be removed in whatever Racket release comes after 6.12
|
|
||||||
"racket-fix-xform-issue.patch"
|
|
||||||
"racket-store-checksum-override.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
'(#:phases
|
||||||
|
@ -485,7 +483,9 @@ (define-public racket
|
||||||
("share/pkgs/gui-lib/mred/private/wx/gtk/gl-context.rkt"
|
("share/pkgs/gui-lib/mred/private/wx/gtk/gl-context.rkt"
|
||||||
("libGL"))
|
("libGL"))
|
||||||
("share/pkgs/sgl/gl.rkt"
|
("share/pkgs/sgl/gl.rkt"
|
||||||
("libGL" "libGLU")))))
|
("libGL" "libGLU"))
|
||||||
|
("share/pkgs/readline-lib/readline/rktrl.rkt"
|
||||||
|
("libedit")))))
|
||||||
(chdir "src")
|
(chdir "src")
|
||||||
#t))
|
#t))
|
||||||
(add-after 'unpack 'patch-/bin/sh
|
(add-after 'unpack 'patch-/bin/sh
|
||||||
|
@ -493,7 +493,7 @@ (define-public racket
|
||||||
(substitute* "collects/racket/system.rkt"
|
(substitute* "collects/racket/system.rkt"
|
||||||
(("/bin/sh") (which "sh")))
|
(("/bin/sh") (which "sh")))
|
||||||
#t)))
|
#t)))
|
||||||
#:tests? #f ; XXX: how to run them?
|
#:tests? #f ; XXX: how to run them?
|
||||||
))
|
))
|
||||||
(inputs
|
(inputs
|
||||||
`(("libffi" ,libffi)
|
`(("libffi" ,libffi)
|
||||||
|
@ -504,7 +504,7 @@ (define-public racket
|
||||||
("glib" ,glib)
|
("glib" ,glib)
|
||||||
("glu" ,glu)
|
("glu" ,glu)
|
||||||
("gmp" ,gmp)
|
("gmp" ,gmp)
|
||||||
("gtk+" ,gtk+) ; propagates gdk-pixbuf+svg
|
("gtk+" ,gtk+) ; propagates gdk-pixbuf+svg
|
||||||
("libjpeg" ,libjpeg)
|
("libjpeg" ,libjpeg)
|
||||||
("libpng" ,libpng)
|
("libpng" ,libpng)
|
||||||
("libx11" ,libx11)
|
("libx11" ,libx11)
|
||||||
|
@ -513,7 +513,8 @@ (define-public racket
|
||||||
("openssl" ,openssl)
|
("openssl" ,openssl)
|
||||||
("pango" ,pango)
|
("pango" ,pango)
|
||||||
("sqlite" ,sqlite)
|
("sqlite" ,sqlite)
|
||||||
("unixodbc" ,unixodbc)))
|
("unixodbc" ,unixodbc)
|
||||||
|
("libedit" ,libedit)))
|
||||||
(home-page "http://racket-lang.org")
|
(home-page "http://racket-lang.org")
|
||||||
(synopsis "Implementation of Scheme and related languages")
|
(synopsis "Implementation of Scheme and related languages")
|
||||||
(description
|
(description
|
||||||
|
|
Loading…
Reference in a new issue