summary refs log tree commit diff
path: root/gnu/packages/patches/sbcl-burgled-batteries3-fix-signals.patch
blob: 6a41cb035910b0a2a7fdb62f1816f1f591c09c05 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
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*