Don't generate (or include) genesis/lutex.h when building without
SB-THREAD. Should fix the FreeBSD 4 build problems reported
on sbcl-devel.
Whitespace fixes.
fdefn ; 01010110
no-tls-value-marker ; 01011010
fdefn ; 01010110
no-tls-value-marker ; 01011010
+ #!-(and sb-lutex sb-thread)
+ #!+(and sb-lutex sb-thread)
lutex ; 01011110
unused02 ; 01100010
unused03 ; 01100110
lutex ; 01011110
unused02 ; 01100010
unused03 ; 01100110
(defconstant new-directory-core-entry-type-code 3861)
(defconstant initial-fun-core-entry-type-code 3863)
(defconstant page-table-core-entry-type-code 3880)
(defconstant new-directory-core-entry-type-code 3861)
(defconstant initial-fun-core-entry-type-code 3863)
(defconstant page-table-core-entry-type-code 3880)
+#!+(and sb-lutex sb-thread)
(defconstant lutex-table-core-entry-type-code 3887)
(defconstant end-core-entry-type-code 3840)
(defconstant lutex-table-core-entry-type-code 3887)
(defconstant end-core-entry-type-code 3840)
(real :c-type "double" :length #!-x86-64 2 #!+x86-64 1)
(imag :c-type "double" :length #!-x86-64 2 #!+x86-64 1))
(real :c-type "double" :length #!-x86-64 2 #!+x86-64 1)
(imag :c-type "double" :length #!-x86-64 2 #!+x86-64 1))
+#!+(and sb-lutex sb-thread)
(define-primitive-object (lutex
:lowtag other-pointer-lowtag
:widetag lutex-widetag
(define-primitive-object (lutex
:lowtag other-pointer-lowtag
:widetag lutex-widetag
+#!+(and sb-lutex sb-thread)
(progn
(defknown sb!vm::%make-lutex () sb!vm::lutex ())
(defknown sb!vm::lutexp (t) boolean (foldable flushable)))
(progn
(defknown sb!vm::%make-lutex () sb!vm::lutex ())
(defknown sb!vm::lutexp (t) boolean (foldable flushable)))
#include "genesis/static-symbols.h"
#include "genesis/symbol.h"
#include "genesis/static-symbols.h"
#include "genesis/symbol.h"
-#ifdef LISP_FEATURE_SB_LUTEX
+#if defined(LISP_FEATURE_SB_THREAD) && defined(LISP_FEATURE_SB_LUTEX)
#include "genesis/lutex.h"
#endif
#include "genesis/lutex.h"
#endif
(defun make-pipe ()
(multiple-value-bind (in out) (sb-posix:pipe)
(defun make-pipe ()
(multiple-value-bind (in out) (sb-posix:pipe)
- (let ((input (sb-sys:make-fd-stream in
- :input t
+ (let ((input (sb-sys:make-fd-stream in
+ :input t
:external-format :ascii
:buffering :none :name "in"))
:external-format :ascii
:buffering :none :name "in"))
- (output (sb-sys:make-fd-stream out
- :output t
+ (output (sb-sys:make-fd-stream out
+ :output t
:external-format :ascii
:buffering :none :name "out")))
(make-two-way-stream input output))))
:external-format :ascii
:buffering :none :name "out")))
(make-two-way-stream input output))))
(defvar *out-pipe* (make-pipe))
(defvar *out* (make-synonym-stream '*out-pipe*))
(defvar *out-pipe* (make-pipe))
(defvar *out* (make-synonym-stream '*out-pipe*))
(run-program "/bin/ed" (list *tmpfile*) :input *in* :output *out* :wait nil))
(defun real-input (stream)
(run-program "/bin/ed" (list *tmpfile*) :input *in* :output *out* :wait nil))
(defun real-input (stream)
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)