[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#30603] Upgrade Racket to 6.12
From: |
Christopher Lemmer Webber |
Subject: |
[bug#30603] Upgrade Racket to 6.12 |
Date: |
Sun, 01 Apr 2018 08:42:31 -0500 |
User-agent: |
mu4e 0.9.18; emacs 25.3.1 |
Okay... I worked upstream, and here's the upstream patch. If accepted
this also closes out bug#30714.
I've done this as two separate patches (one with my original patch and
then one with the suggested update from upstream) because the patch
doesn't apply automatically pre- 6.12 anyway, so it makes sense to patch
with the minimalist patch, and then with the full fix.
From c4fca9eeb60ee4e2934e89e13054bf1338d1bb4a Mon Sep 17 00:00:00 2001
From: Christopher Lemmer Webber <address@hidden>
Date: Sat, 24 Feb 2018 18:36:13 -0600
Subject: [PATCH 1/2] gnu: racket: Update to 6.12.
* gnu/packages/patches/racket-minus_zero_p-disable-xform.patch: New file.
* gnu/packages/scheme.scm (racket): Update version and patch.
---
gnu/packages/patches/racket-minus_zero_p-disable-xform.patch | 10 ++++++++++
gnu/packages/scheme.scm | 7 +++++--
2 files changed, 15 insertions(+), 2 deletions(-)
create mode 100644 gnu/packages/patches/racket-minus_zero_p-disable-xform.patch
diff --git a/gnu/packages/patches/racket-minus_zero_p-disable-xform.patch
b/gnu/packages/patches/racket-minus_zero_p-disable-xform.patch
new file mode 100644
index 000000000..08887a616
--- /dev/null
+++ b/gnu/packages/patches/racket-minus_zero_p-disable-xform.patch
@@ -0,0 +1,10 @@
+--- a/src/racket/src/number.c 2018-02-24 18:16:32.031698079 -0600
++++ b/src/racket/src/number.c 2018-02-24 18:15:41.055445301 -0600
+@@ -1775,6 +1775,7 @@
+ }
+
+ 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);
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 37593fe30..d89b123f1 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -405,7 +405,7 @@ implementation techniques and as an expository tool.")
(define-public racket
(package
(name "racket")
- (version "6.11")
+ (version "6.12")
(source (origin
(method url-fetch)
(uri (list (string-append
"http://mirror.racket-lang.org/installers/"
@@ -415,7 +415,10 @@ implementation techniques and as an expository tool.")
version "/racket-" version "-src.tgz")))
(sha256
(base32
- "1nk7705x24jjlbqqhj8yvbgqkfscxx3m81bry1g56kjxysjmf3sw"))))
+ "0cwcypzjfl9py1s695mhqkiapff7c1w29llsmdj7qgn58wl0apk5"))
+ (patches (search-patches
+ ;; See: https://github.com/racket/racket/issues/1962
+ "racket-minus_zero_p-disable-xform.patch"))))
(build-system gnu-build-system)
(arguments
'(#:phases
--
2.15.1
From 7b7ac7c3272aad8a9c56392ef6b62fcf47c1017b Mon Sep 17 00:00:00 2001
From: Christopher Lemmer Webber <address@hidden>
Date: Sun, 18 Mar 2018 14:41:04 -0500
Subject: [PATCH 2/2] gnu: racket: Patch xform compilation errors.
* gnu/packages/patches/gnu/packages/patches/racket-fix-xform-issue.patch:
Renamed from gnu/packages/patches/racket-minus_zero_p-disable-xform.patch.
Switch to upstream patch in Racket.
* gnu/packages/scheme.scm (racket): Update to renamed patch.
---
gnu/packages/patches/racket-fix-xform-issue.patch | 63 ++++++++++++++++++++++
.../racket-minus_zero_p-disable-xform.patch | 10 ----
gnu/packages/scheme.scm | 3 +-
3 files changed, 65 insertions(+), 11 deletions(-)
create mode 100644 gnu/packages/patches/racket-fix-xform-issue.patch
delete mode 100644 gnu/packages/patches/racket-minus_zero_p-disable-xform.patch
diff --git a/gnu/packages/patches/racket-fix-xform-issue.patch
b/gnu/packages/patches/racket-fix-xform-issue.patch
new file mode 100644
index 000000000..0a1640ee5
--- /dev/null
+++ b/gnu/packages/patches/racket-fix-xform-issue.patch
@@ -0,0 +1,63 @@
+050cdb59839896b41431791f8ee0ef2564231b8f
+Author: Matthew Flatt <address@hidden>
+AuthorDate: Tue Mar 6 09:05:08 2018 -0700
+Commit: Matthew Flatt <address@hidden>
+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));
\ No newline at end of file
diff --git a/gnu/packages/patches/racket-minus_zero_p-disable-xform.patch
b/gnu/packages/patches/racket-minus_zero_p-disable-xform.patch
deleted file mode 100644
index 08887a616..000000000
--- a/gnu/packages/patches/racket-minus_zero_p-disable-xform.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/src/racket/src/number.c 2018-02-24 18:16:32.031698079 -0600
-+++ b/src/racket/src/number.c 2018-02-24 18:15:41.055445301 -0600
-@@ -1775,6 +1775,7 @@
- }
-
- 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);
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index d89b123f1..c9e1a1525 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -418,7 +418,8 @@ implementation techniques and as an expository tool.")
"0cwcypzjfl9py1s695mhqkiapff7c1w29llsmdj7qgn58wl0apk5"))
(patches (search-patches
;; See: https://github.com/racket/racket/issues/1962
- "racket-minus_zero_p-disable-xform.patch"))))
+ ;; This can be removed in whatever Racket release comes
after 6.12
+ "racket-fix-xform-issue.patch"))))
(build-system gnu-build-system)
(arguments
'(#:phases
--
2.15.1
signature.asc
Description: PGP signature
- [bug#30603] Upgrade Racket to 6.12,
Christopher Lemmer Webber <=