From d03fcff19d02f7a1df49b3b675297b3bc97375dd Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Fri, 29 Mar 2024 21:16:07 +0100 Subject: gnu: sbcl: Update to 2.4.5. * gnu/packages/lisp.scm (sbcl): Update to 2.4.5. [source]: Remove obsolete patches. [inputs]: Add bash-minimal. [arguments]: Remove trailing booleans. * gnu/local.mk (dist_patch_DATA): Remove obsolete patches. * gnu/packages/patches/sbcl-fix-ppc64-build.patch: Remove file. * gnu/packages/patches/sbcl-fix-riscv-build.patch: Remove file. Change-Id: Id918ee31aec016b987b0831680847b502c88fb5c --- gnu/local.mk | 2 -- gnu/packages/lisp.scm | 35 ++++++++++--------------- gnu/packages/patches/sbcl-fix-ppc64-build.patch | 27 ------------------- gnu/packages/patches/sbcl-fix-riscv-build.patch | 19 -------------- 4 files changed, 14 insertions(+), 69 deletions(-) delete mode 100644 gnu/packages/patches/sbcl-fix-ppc64-build.patch delete mode 100644 gnu/packages/patches/sbcl-fix-riscv-build.patch diff --git a/gnu/local.mk b/gnu/local.mk index 9cd3afadf6..c386e773ed 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2065,8 +2065,6 @@ dist_patch_DATA = \ %D%/packages/patches/sbcl-burgled-batteries3-fix-signals.patch \ %D%/packages/patches/sbcl-clml-fix-types.patch \ %D%/packages/patches/sbcl-eazy-gnuplot-skip-path-check.patch \ - %D%/packages/patches/sbcl-fix-ppc64-build.patch \ - %D%/packages/patches/sbcl-fix-riscv-build.patch \ %D%/packages/patches/sbcl-png-fix-sbcl-compatibility.patch \ %D%/packages/patches/scalapack-gcc-10-compilation.patch \ %D%/packages/patches/scheme48-tests.patch \ diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 783e168dc8..40ae19660e 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -444,17 +444,14 @@ an interpreter, a compiler, a debugger, and much more.") (define-public sbcl (package (name "sbcl") - (version "2.4.0") + (version "2.4.5") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-" version "-source.tar.bz2")) (sha256 - (base32 "0xhpdnsg8idzxkn20iw8gd2rk470d7vc22vrp5clq9fj117vgn43")) - ;; TODO: Remove these patches when updating to sbcl > 2.4.0. - (patches (search-patches "sbcl-fix-ppc64-build.patch" - "sbcl-fix-riscv-build.patch")) + (base32 "1lbvb9rzlkl3h8s75i2js4dnmgxmvs41jxjb5dj0f603r688xxjd")) (modules '((guix build utils))) (snippet '(begin @@ -497,7 +494,8 @@ an interpreter, a compiler, a debugger, and much more.") (texlive-updmap.cfg (list texlive-texinfo)) which)) (inputs - (list gmp ; for sb-gmp + (list bash-minimal + gmp ; for sb-gmp mpfr ; for sb-mpfr (list zstd "lib"))) (arguments @@ -532,8 +530,7 @@ an interpreter, a compiler, a debugger, and much more.") cl-asdf "/share/common-lisp/source/asdf/asdf.lisp")) (contrib-asdf "contrib/asdf/asdf.lisp")) - (copy-file guix-asdf contrib-asdf)) - #t)) + (copy-file guix-asdf contrib-asdf)))) (add-before 'build 'patch-unix-tool-paths (lambda* (#:key outputs inputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) @@ -579,17 +576,17 @@ an interpreter, a compiler, a debugger, and much more.") (("\\(deftest pwent\\.[12]" all) (string-append "#+nil ;disabled by Guix\n" all)) (("\\(deftest grent\\.[12]" all) - (string-append "#+nil ;disabled by Guix\n" all)))) - #t)) + (string-append "#+nil ;disabled by Guix\n" all)))))) (add-before 'build 'fix-contrib-library-path (lambda* (#:key inputs #:allow-other-keys) (let ((gmp (assoc-ref inputs "gmp")) (mpfr (assoc-ref inputs "mpfr"))) (substitute* '("contrib/sb-gmp/gmp.lisp") - (("\"libgmp\\.so") (string-append "\"" gmp "/lib/libgmp.so"))) + (("\"libgmp\\.so") + (string-append "\"" gmp "/lib/libgmp.so"))) (substitute* '("contrib/sb-mpfr/mpfr.lisp") - (("\"libmpfr\\.so") (string-append "\"" mpfr "/lib/libmpfr.so")))) - #t)) + (("\"libmpfr\\.so") + (string-append "\"" mpfr "/lib/libmpfr.so")))))) (replace 'build (lambda* (#:key outputs #:allow-other-keys) (setenv "CC" "gcc") @@ -635,8 +632,7 @@ an interpreter, a compiler, a debugger, and much more.") (lambda () (display (string-append "(sb-ext:set-sbcl-source-location \"" - source-dir "\")") ))) - #t))) + source-dir "\")") )))))) (add-after 'install 'remove-coreutils-references ;; They are only useful on non-Linux, non-SBCL. (lambda* (#:key outputs #:allow-other-keys) @@ -650,14 +646,12 @@ an interpreter, a compiler, a debugger, and much more.") "(\"/usr/bin/env\"")) (substitute* (string-append share-dir "contrib/asdf/uiop.lisp") (("\\(\".*/usr/bin/env\"") - "(\"/usr/bin/env\"")) - #t))) + "(\"/usr/bin/env\""))))) (add-after 'install 'install-shared-library (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (lib-dir (string-append out "/lib"))) - (install-file "src/runtime/libsbcl.so" lib-dir) - #t))) + (install-file "src/runtime/libsbcl.so" lib-dir)))) (add-after 'install 'install-doc (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -668,8 +662,7 @@ an interpreter, a compiler, a debugger, and much more.") (mkdir-p new-doc/sbcl-dir) (copy-recursively (string-append old-doc-dir "/sbcl") new-doc/sbcl-dir) - (delete-file-recursively old-doc-dir) - #t)))) + (delete-file-recursively old-doc-dir))))) ;; No 'check' target, though "make.sh" (build phase) runs tests. #:tests? #f)) (native-search-paths diff --git a/gnu/packages/patches/sbcl-fix-ppc64-build.patch b/gnu/packages/patches/sbcl-fix-ppc64-build.patch deleted file mode 100644 index a7d4d9a21e..0000000000 --- a/gnu/packages/patches/sbcl-fix-ppc64-build.patch +++ /dev/null @@ -1,27 +0,0 @@ -commit 255f3ead060129aa097b62f10d054cdc4997a431 -Author: Douglas Katzman -Date: Mon Jan 1 23:59:50 2024 -0500 - - Fix ppc64 failure-to-build (from a few weeks ago) - - Git rev 7354472bb5 caused NIL to get a bogus widetag. - -diff --git a/make-target-2-load.lisp b/make-target-2-load.lisp -index 6571ec27d..daef942ea 100644 ---- a/make-target-2-load.lisp -+++ b/make-target-2-load.lisp -@@ -339,7 +339,13 @@ Please check that all strings which were not recognizable to the compiler - - - (do-all-symbols (symbol) -- (sb-kernel:logior-header-bits symbol sb-vm::+symbol-initial-core+) -+ ;; Don't futz with the header of static symbols. -+ ;; Technically LOGIOR-HEADER-BITS can only be used on an OTHER-POINTER-LOWTAG -+ ;; objects, so modifying NIL should not ever work, but it's especially wrong -+ ;; on ppc64 where OTHER- and LIST- pointer lowtags are 10 bytes apart instead -+ ;; of 8, so this was making a random alteration to the header. -+ (unless (eq (heap-allocated-p symbol) :static) -+ (sb-kernel:logior-header-bits symbol sb-vm::+symbol-initial-core+)) - - ;; A symbol whose INFO slot underwent any kind of manipulation - ;; such that it now has neither properties nor globaldb info, diff --git a/gnu/packages/patches/sbcl-fix-riscv-build.patch b/gnu/packages/patches/sbcl-fix-riscv-build.patch deleted file mode 100644 index 3e01ee6579..0000000000 --- a/gnu/packages/patches/sbcl-fix-riscv-build.patch +++ /dev/null @@ -1,19 +0,0 @@ -commit b286d92af7468164c155c70d38213211b296fdfe -Author: Douglas Katzman -Date: Wed Jan 10 11:46:55 2024 -0500 - - Fix riscv build - -diff --git a/src/compiler/riscv/float.lisp b/src/compiler/riscv/float.lisp -index ce46d24ac..a16380293 100644 ---- a/src/compiler/riscv/float.lisp -+++ b/src/compiler/riscv/float.lisp -@@ -578,7 +578,7 @@ - (:results (res :scs (double-reg))) - (:arg-types signed-num) - (:result-types double-float) -- (:translate make-double-float) -+ (:translate %make-double-float) - (:policy :fast-safe) - (:generator 2 - (inst fmvx-> :double res bits))) -- cgit v1.2.3