From: Christophe Rhodes <csr21@cam.ac.uk>
Date: Wed, 22 Oct 2003 11:30:19 +0000 (+0000)
Subject: 0.8.4.38:
X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=d543ff4caaabda2f33ce7b5a723013db06aa5c9d;p=sbcl.git

0.8.4.38:
	Solaris fixes (from Nikodemus Siivola sbcl-devel 2003-10-22)
	... sh(1) apparently doesn't like $(foo).  Make it `foo`.
	... allow building from cmucl/sparc, by suppressing underflow
		traps
	... /dev/random doesn't exist.  /dev/zero better had, though
---

diff --git a/make-config.sh b/make-config.sh
index 6990175..e71a786 100644
--- a/make-config.sh
+++ b/make-config.sh
@@ -181,7 +181,7 @@ elif [ "$sbcl_arch" = "ppc" -a "$sbcl_os" = "linux" ]; then
 elif [ "$sbcl_arch" = "ppc" -a "$sbcl_os" = "darwin" ]; then
     # The default stack ulimit under darwin is too small to run PURIFY.
     # Best we can do is complain and exit at this stage
-    if [ $(ulimit -s) = "512" ]; then
+    if [ "`ulimit -s`" = "512" ]; then
         echo "Your stack size limit is too small to build SBCL."
         echo "See the limit(1) or ulimit(1) commands and the README file."
         exit 1
diff --git a/src/cold/ansify.lisp b/src/cold/ansify.lisp
index 04a2794..006a0df 100644
--- a/src/cold/ansify.lisp
+++ b/src/cold/ansify.lisp
@@ -13,37 +13,8 @@
 ;;;; CLISP issues
 
 #+clisp
-(locally
-
-  (in-package "COMMON-LISP")
-
-  ;; no longer needed in CLISP 1999-01-08, hurrah!
-  #|
-  ;; ANSI specifies that package LISP defines the type BOOLEAN, and the CMU CL
-  ;; compiler uses it a lot. This should be trivial to patch in CLISP, except
-  ;; that CLISP defines FFI:BOOLEAN, which conflicts. Gads.. Here we try to fix
-  ;; it with some package hacking. (Please do not take this as an example of
-  ;; good package hacking, I just messed with it until it seemed to work well
-  ;; enough to bootstrap CMU CL, because I'm highly unmotivated to make elegant
-  ;; fixes for nonstandard behavior. -- WHN)
-  (shadow 'ffi:boolean "FFI")
-  (deftype cl::boolean () '(member t nil))
-  (export 'boolean "LISP")
-  |#
-
-  ;; apparently fixed sometime in 2001, hurray!
-  #| (error "can't use CLISP -- no MAKE-LOAD-FORM") |#
-
-  ;; CLISP is still unsupported as a cross-compilation host because of
-  ;; these known problems:
-  (flet ((clisp-ouch (s) (error "can't bootstrap with CLISP: ~A" s)))
-    ;; These problems don't seem deep, and could probably be worked
-    ;; around.
-    #+nil (clisp-ouch "no (DOCUMENTATION X) when X is a PACKAGE")
-    #+nil (clisp-ouch "no (FUNCTION (SETF SYMBOL-FUNCTION))"))
-  
-  (ext:without-package-lock ("SYSTEM")
-    (setf system::*inhibit-floating-point-underflow* t)))
+(ext:without-package-lock ("SYSTEM")
+  (setf system::*inhibit-floating-point-underflow* t))
 
 ;;;; CMU CL issues
 
@@ -79,6 +50,10 @@
 (unless (ignore-errors (read-from-string "1.0l0"))
   (error "CMUCL on Alpha can't read floats in the format \"1.0l0\".  Patch your core file~%~%"))
 
+#+(and cmu sparc)
+(ext:set-floating-point-modes :traps '(:overflow :invalid :divide-by-zero))
+
+;;;; OpenMCL issues
 #+openmcl 
 (unless (ignore-errors (funcall (constantly t) 1 2 3)) 
   (error "please find a binary that understands CONSTANTLY to build from"))
diff --git a/tests/stream.impure.lisp b/tests/stream.impure.lisp
index f98cb46..099c305 100644
--- a/tests/stream.impure.lisp
+++ b/tests/stream.impure.lisp
@@ -78,7 +78,7 @@
 
 (assert (raises-error? (read-byte (make-string-input-stream "abc"))
 		       type-error))
-(assert (raises-error? (with-open-file (s "/dev/random")
+(assert (raises-error? (with-open-file (s "/dev/zero")
 			 (read-byte s))
 		       type-error))
 ;;; success
diff --git a/version.lisp-expr b/version.lisp-expr
index af3f4ad..f69c0d9 100644
--- a/version.lisp-expr
+++ b/version.lisp-expr
@@ -17,4 +17,4 @@
 ;;; 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".)
-"0.8.4.37"
+"0.8.4.38"