From 1d353510252e1315a626bdca17e8f1e9c5c2d3af Mon Sep 17 00:00:00 2001 From: Douglas Katzman Date: Wed, 8 Nov 2017 13:07:49 -0500 Subject: [PATCH] Don't use "ansify" for self-hosted build. Move the muffling code into shared. If we have non-ansi-ness bugs, we need to fix them. No workarounds allowed. And show "creating directory" messages only if *compile-verbose*. --- src/cold/ansify.lisp | 12 ------------ src/cold/compile-cold-sbcl.lisp | 1 - src/cold/shared.lisp | 16 ++++++++++++++-- 3 files changed, 14 insertions(+), 15 deletions(-) diff --git a/src/cold/ansify.lisp b/src/cold/ansify.lisp index 010a0ddec..901286d9f 100644 --- a/src/cold/ansify.lisp +++ b/src/cold/ansify.lisp @@ -88,18 +88,6 @@ (unless (ignore-errors (funcall (constantly t) 1 2 3)) (error "please find a binary that understands CONSTANTLY to build from")) -;;;; Self-hosted issues - -#+sbcl -(progn - (setq *compile-print* nil) - (load "src/cold/muffler.lisp") - ;; Let's just say we never care to see these. - (declaim (sb-ext:muffle-conditions - (satisfies unable-to-optimize-note-p) - (satisfies optional+key-style-warning-p) - sb-ext:code-deletion-note))) - ;;;; general non-ANSI-ness (in-package :sb-cold) diff --git a/src/cold/compile-cold-sbcl.lisp b/src/cold/compile-cold-sbcl.lisp index 8cdb6cfa0..b2796c330 100644 --- a/src/cold/compile-cold-sbcl.lisp +++ b/src/cold/compile-cold-sbcl.lisp @@ -80,7 +80,6 @@ (setf *target-assemble-file* #'sb!c:assemble-file) (setf *in-target-compilation-mode-fn* #'in-target-cross-compilation-mode) -;;; Run the cross-compiler to produce cold fasl files. ;; ... and since the cross-compiler hasn't seen a DEFMACRO for QUASIQUOTE, ;; make it think it has, otherwise it fails more-or-less immediately. (setf (sb-xc:macro-function 'sb!int:quasiquote) diff --git a/src/cold/shared.lisp b/src/cold/shared.lisp index e3358dfb2..2055842df 100644 --- a/src/cold/shared.lisp +++ b/src/cold/shared.lisp @@ -161,7 +161,19 @@ (load "src/cold/with-stuff.lisp") ;;; Try to minimize/conceal any non-standardness of the host Common Lisp. -(load "src/cold/ansify.lisp") +#-sbcl (load "src/cold/ansify.lisp") + +;;;; Do not put SBCL-specific things in 'ansify'. Put them here. +;;;; And there had better not be a reason that SBCL needs ansification. +#+sbcl +(progn + (setq *compile-print* nil) + (load "src/cold/muffler.lisp") + ;; Let's just say we never care to see these. + (declaim (sb-ext:muffle-conditions + (satisfies unable-to-optimize-note-p) + (satisfies optional+key-style-warning-p) + sb-ext:code-deletion-note))) ;;;; special read-macros for building the cold system (and even for ;;;; building some of our tools for building the cold system) @@ -439,7 +451,7 @@ (ignore-failure-p (find :ignore-failure-p flags))) (declare (type function compile-file)) - (ensure-directories-exist obj :verbose t) + (ensure-directories-exist obj :verbose *compile-print*) ; host's value ;; We're about to set about building a new object file. First, we ;; delete any preexisting object file in order to avoid confusing -- 2.11.4.GIT