0.8.12.18: Rearranging COMPILER-ERROR protocol
[sbcl.git] / src / cold / shared.lisp
index 86dcd58..5f86752 100644 (file)
 
 (in-package "SB-COLD")
 
+;;; FIXME: This is embarassing -- SBCL violates SBCL style-package
+;;; locks on the host lisp. Rather then find and fix all the cases
+;;; right now, let's just remain self-hosting. The problems at least
+;;; involve a few defvars and local macros with names in the CL
+;;; package.
+#+sbcl
+(let ((plp (find-symbol PACKAGE-LOCKED-P :sb-ext)))
+  (when (and plp (fboundp plp))
+    (dolist (p (list-all-packages))
+      (sb-ext::unlock-package p))))
+
 ;;; prefixes for filename stems when cross-compiling. These are quite arbitrary
 ;;; (although of course they shouldn't collide with anything we don't want to
 ;;; write over). In particular, they can be either relative path names (e.g.
@@ -46,7 +57,8 @@
    ;; that we never explicitly refer to host object file suffixes,
    ;; only to the result of CL:COMPILE-FILE-PATHNAME.
    #+lispworks ".ufsl" ; as per Lieven Marchand sbcl-devel 2002-02-01
-   #+openmcl ".pfsl"
+   #+(and openmcl (not darwin)) ".pfsl"
+   #+(and openmcl darwin) ".dfsl"
    ;; On most xc hosts, any old extension works, so we use an
    ;; arbitrary one.
    ".lisp-obj"))