Package: guix-patches;
Reported by: Christopher Lemmer Webber <cwebber <at> dustycloud.org>
Date: Sun, 25 Feb 2018 05:44:01 UTC
Severity: normal
Tags: patch
Merged with 30575
Done: Christopher Lemmer Webber <cwebber <at> dustycloud.org>
Bug is archived. No further changes may be made.
Message #25 received at 30603 <at> debbugs.gnu.org (full text, mbox):
From: Christopher Lemmer Webber <cwebber <at> dustycloud.org> To: 30603 <at> debbugs.gnu.org Subject: Re: [bug#30603] Upgrade Racket to 6.12 Date: Sun, 01 Apr 2018 08:42:31 -0500
[Message part 1 (text/plain, inline)]
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.
[0001-gnu-racket-Update-to-6.12.patch (text/x-patch, inline)]
From c4fca9eeb60ee4e2934e89e13054bf1338d1bb4a Mon Sep 17 00:00:00 2001 From: Christopher Lemmer Webber <cwebber <at> dustycloud.org> 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
[0002-gnu-racket-Patch-xform-compilation-errors.patch (text/x-patch, inline)]
From 7b7ac7c3272aad8a9c56392ef6b62fcf47c1017b Mon Sep 17 00:00:00 2001 From: Christopher Lemmer Webber <cwebber <at> dustycloud.org> 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 <mflatt <at> racket-lang.org> +AuthorDate: Tue Mar 6 09:05:08 2018 -0700 +Commit: Matthew Flatt <mflatt <at> 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)); \ 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 (application/pgp-signature, inline)]
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.