mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
gnu: sbcl: Update to 2.3.8.
* gnu/packages/lisp.scm (sbcl): Update to 2.3.8. [source]: Remove 'patches' field. * gnu/packages/patches/sbcl-riscv-Make-contribs-build-again.patch: Remove file. * gnu/packages/local.mk (dist-patch_DATA): Unregister it. Co-authored-by: Guillaume Le Vaillant <glv@posteo.net>
This commit is contained in:
parent
047a0c31f9
commit
2f545cbaf5
3 changed files with 2 additions and 76 deletions
|
@ -1933,7 +1933,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/sbcl-clml-fix-types.patch \
|
%D%/packages/patches/sbcl-clml-fix-types.patch \
|
||||||
%D%/packages/patches/sbcl-eazy-gnuplot-skip-path-check.patch \
|
%D%/packages/patches/sbcl-eazy-gnuplot-skip-path-check.patch \
|
||||||
%D%/packages/patches/sbcl-png-fix-sbcl-compatibility.patch \
|
%D%/packages/patches/sbcl-png-fix-sbcl-compatibility.patch \
|
||||||
%D%/packages/patches/sbcl-riscv-Make-contribs-build-again.patch \
|
|
||||||
%D%/packages/patches/scalapack-gcc-10-compilation.patch \
|
%D%/packages/patches/scalapack-gcc-10-compilation.patch \
|
||||||
%D%/packages/patches/scheme48-tests.patch \
|
%D%/packages/patches/scheme48-tests.patch \
|
||||||
%D%/packages/patches/scons-test-environment.patch \
|
%D%/packages/patches/scons-test-environment.patch \
|
||||||
|
|
|
@ -438,17 +438,15 @@ an interpreter, a compiler, a debugger, and much more.")
|
||||||
(define-public sbcl
|
(define-public sbcl
|
||||||
(package
|
(package
|
||||||
(name "sbcl")
|
(name "sbcl")
|
||||||
(version "2.3.5")
|
(version "2.3.8")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-"
|
(uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-"
|
||||||
version "-source.tar.bz2"))
|
version "-source.tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32 "11ji5n65l31249r0v7hm0wc0yk2ila0y746nj36xn1cxrwh0gjc9"))
|
(base32 "0a8dranh15gsbq51ssnvccl91mzqmgs5xsmwisz5hvlimjr725a2"))
|
||||||
(modules '((guix build utils)))
|
(modules '((guix build utils)))
|
||||||
;; backport from upstream.
|
|
||||||
(patches (search-patches "sbcl-riscv-Make-contribs-build-again.patch"))
|
|
||||||
(snippet
|
(snippet
|
||||||
'(begin
|
'(begin
|
||||||
;; Don't force ARMv5.
|
;; Don't force ARMv5.
|
||||||
|
|
|
@ -1,71 +0,0 @@
|
||||||
From 8704f528f227f587d0e06dfd2f807aeca7a69a71 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Charles Zhang <charleszhang99@yahoo.com>
|
|
||||||
Date: Thu, 1 Jun 2023 16:39:26 +0200
|
|
||||||
Subject: [PATCH] riscv: Make contribs build again.
|
|
||||||
|
|
||||||
The issue was that the LINKAGE_TEMP_REG being NL3 was a C argument
|
|
||||||
register, so of course that caused clashing on C call-out, causing
|
|
||||||
problems with run-program. Going back to NL7 didn't work either
|
|
||||||
because it wasn't getting saved before entry into the trampoline. The
|
|
||||||
code here used to have NL7 before the trampoline code was gutted and
|
|
||||||
then restored, so I'm wondering how this ever worked before, because
|
|
||||||
it definitely did. Pick LIP as the TEMP_REG now because not only does
|
|
||||||
it get saved, it's also the least likely thing to get disturbed by
|
|
||||||
clobbering.
|
|
||||||
|
|
||||||
Fixes #lp2002930.
|
|
||||||
|
|
||||||
Also remove assembly routine printing because it doesn't need to be
|
|
||||||
part of the build script (unlike the other files in output/ which
|
|
||||||
can't trivially be recovered from a built image), and because not all
|
|
||||||
disassembler printers have been written on riscv yet.
|
|
||||||
---
|
|
||||||
NEWS | 3 +++
|
|
||||||
make-target-2-load.lisp | 4 ----
|
|
||||||
src/runtime/riscv-arch.c | 2 +-
|
|
||||||
3 files changed, 4 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/NEWS b/NEWS
|
|
||||||
index 17537ff92..5c0f7777b 100644
|
|
||||||
--- a/NEWS
|
|
||||||
+++ b/NEWS
|
|
||||||
@@ -1,5 +1,8 @@
|
|
||||||
;;;; -*- coding: utf-8; fill-column: 78 -*-
|
|
||||||
|
|
||||||
+changes relative to sbcl-2.3.5:
|
|
||||||
+ * bug fix: riscv can build contribs again.
|
|
||||||
+
|
|
||||||
changes in sbcl-2.3.5 relative to sbcl-2.3.4:
|
|
||||||
* enhancement: Unicode support has been updated to support version 15.0.0 of
|
|
||||||
the Unicode standard, including addition of characters and their collation
|
|
||||||
diff --git a/make-target-2-load.lisp b/make-target-2-load.lisp
|
|
||||||
index 885ebda74..b9a1a1e36 100644
|
|
||||||
--- a/make-target-2-load.lisp
|
|
||||||
+++ b/make-target-2-load.lisp
|
|
||||||
@@ -6,10 +6,6 @@
|
|
||||||
(defvar *compile-files-p* nil)
|
|
||||||
(load (merge-pathnames "src/cold/warm.lisp" *load-pathname*))
|
|
||||||
|
|
||||||
-(with-open-file (stream "output/asm-routines.txt" :direction :output
|
|
||||||
- :if-does-not-exist :create :if-exists :supersede)
|
|
||||||
- (sb-c:dis sb-fasl:*assembler-routines* stream))
|
|
||||||
-
|
|
||||||
;; sb-xref-for-internals is actively harmful to tree-shaking.
|
|
||||||
;; Remove some symbols to make the hide-packages test pass.
|
|
||||||
#+sb-xref-for-internals
|
|
||||||
diff --git a/src/runtime/riscv-arch.c b/src/runtime/riscv-arch.c
|
|
||||||
index 6c1994829..062623899 100644
|
|
||||||
--- a/src/runtime/riscv-arch.c
|
|
||||||
+++ b/src/runtime/riscv-arch.c
|
|
||||||
@@ -159,7 +159,7 @@ arch_install_interrupt_handlers(void)
|
|
||||||
* Linkage entry size is 8 or 20, because we need 2 instructions for the 32-bit case and we need 3 instructions and an 8 byte address in the 64-bit case.
|
|
||||||
*/
|
|
||||||
|
|
||||||
-#define LINKAGE_TEMP_REG reg_NL3
|
|
||||||
+#define LINKAGE_TEMP_REG reg_LIP // Lisp needs to save before entry.
|
|
||||||
|
|
||||||
void arch_write_linkage_table_entry(int index, void *target_addr, int datap)
|
|
||||||
{
|
|
||||||
--
|
|
||||||
2.40.1
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue