me
/
guix
Archived
1
0
Fork 0

gnu: sbcl-burgled-batteries3: Fix compiling with sbcl >= 2.1.6.

* gnu/packages/patches/sbcl-burgled-batteries3-fix-signals.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/lisp-xyz.scm (sbcl-burgled-batteries3)[source]: Use it.
master
Guillaume Le Vaillant 2021-09-28 11:34:37 +02:00
parent 226ff4147a
commit 1623e6023b
No known key found for this signature in database
GPG Key ID: 6BE8208ADF21FE3F
3 changed files with 74 additions and 1 deletions

View File

@ -1741,6 +1741,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-reproducible-builds.patch \ %D%/packages/patches/rust-reproducible-builds.patch \
%D%/packages/patches/rust-openssl-sys-no-vendor.patch \ %D%/packages/patches/rust-openssl-sys-no-vendor.patch \
%D%/packages/patches/sbc-fix-build-non-x86.patch \ %D%/packages/patches/sbc-fix-build-non-x86.patch \
%D%/packages/patches/sbcl-burgled-batteries3-fix-signals.patch \
%D%/packages/patches/sbcl-clml-fix-types.patch \ %D%/packages/patches/sbcl-clml-fix-types.patch \
%D%/packages/patches/sbcl-png-fix-sbcl-compatibility.patch \ %D%/packages/patches/sbcl-png-fix-sbcl-compatibility.patch \
%D%/packages/patches/scalapack-blacs-mpi-deprecations.patch \ %D%/packages/patches/scalapack-blacs-mpi-deprecations.patch \

View File

@ -5657,7 +5657,9 @@ high-level way. This library provides such operators.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1nzn7jawrfajyzwfnzrg2cmn9xxadcqh4szbpg0jggkhdkdzz4wa")))) "1nzn7jawrfajyzwfnzrg2cmn9xxadcqh4szbpg0jggkhdkdzz4wa"))
(patches
(search-patches "sbcl-burgled-batteries3-fix-signals.patch"))))
(build-system asdf-build-system/sbcl) (build-system asdf-build-system/sbcl)
(arguments (arguments
`(#:tests? #f `(#:tests? #f

View File

@ -0,0 +1,70 @@
commit 0854f21baa167da1ad19618daa331b1a46cbee07
Author: Satoshi Imai <satoshi.imai@gmail.com>
Date: Tue Jun 15 03:46:57 2021 +0900
Fix to make it works with the current SBCL
diff --git a/api.lisp b/api.lisp
index 2d8c29b..aed38be 100644
--- a/api.lisp
+++ b/api.lisp
@@ -8,8 +8,8 @@
(defun startup-python ()
(.initialize)
(initialize-modules)
- #+(and sbcl unix); python will fail sbcl's sigpipe-handler.
- (sb-unix::enable-interrupt sb-unix::sigpipe #'sb-unix::sigpipe-handler)
+ ;; #+(and sbcl unix); python will fail sbcl's sigpipe-handler.
+ ;; (sb-unix::enable-interrupt sb-unix::sigpipe #'sb-unix::sigpipe-handler)
)
(defun shutdown-python ()
@@ -35,8 +35,9 @@
(let ((cpython-initialized? (.is-initialized)))
(unless cpython-initialized?
(.initialize)
- #+(and sbcl unix); python will fail sbcl's sigpipe-handler.
- (sb-unix::enable-interrupt sb-unix::sigpipe #'sb-unix::sigpipe-handler))
+ ;; #+(and sbcl unix); python will fail sbcl's sigpipe-handler.
+ ;; (sb-unix::enable-interrupt sb-unix::sigpipe #'sb-unix::sigpipe-handler)
+ )
(unwind-protect
(funcall thunk)
(unless cpython-initialized?
diff --git a/ffi-conditions.lisp b/ffi-conditions.lisp
index ac03e80..ba1da33 100644
--- a/ffi-conditions.lisp
+++ b/ffi-conditions.lisp
@@ -3,8 +3,9 @@
;; Python must have been initialized for our macroexpansions to work.
(eval-when (:compile-toplevel :load-toplevel)
(.initialize)
- #+(and sbcl unix); python will fail sbcl's sigpipe-handler.
- (sb-unix::enable-interrupt sb-unix::sigpipe #'sb-unix::sigpipe-handler))
+ ;; #+(and sbcl unix); python will fail sbcl's sigpipe-handler.
+ ;; (sb-unix::enable-interrupt sb-unix::sigpipe #'sb-unix::sigpipe-handler)
+ )
(defpyexception "BaseException" (python-condition)
(("args" :initarg :args)))
diff --git a/grovel-include-dir.lisp b/grovel-include-dir.lisp
index 6583084..62e07f3 100644
--- a/grovel-include-dir.lisp
+++ b/grovel-include-dir.lisp
@@ -23,13 +23,15 @@
(or (and (uiop:file-exists-p env-value) (cl:list env-value))
(error "DLL for PYTHON3 not correctly pointed to by BB_PYTHON3_DYLIB: ~A" env-value)))))
+(defvar *detected-library* nil)
+
(defun detect-python ()
(setf *detected-library* nil)
(or
(let ((env-value (uiop:getenv "BB_PYTHON3_INCLUDE_DIR")))
(when env-value
(or (uiop:directory-exists-p env-value)
- (error "BB_PYTHON3_INCLUDE_DIR is set, but does not point to an actual directory: %a" env-value))))
+ (error "BB_PYTHON3_INCLUDE_DIR is set, but does not point to an actual directory: ~A" env-value))))
(when *miniconda3*
(let ((path (if (pathnamep *miniconda3*)
*miniconda3*