From 7649cb9b4f48948848a4af2ac758e48bcd13dc90 Mon Sep 17 00:00:00 2001 From: David Lichteblau Date: Sun, 13 Jun 2010 15:29:36 +0200 Subject: [PATCH] Remove the at-system-definition-load-time closure-common dependency --- cxml.asd | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) diff --git a/cxml.asd b/cxml.asd index 95921fc..fa834ff 100644 --- a/cxml.asd +++ b/cxml.asd @@ -7,13 +7,31 @@ (defmethod asdf:component-name ((c dummy-cxml-component)) :cxml) -;; force loading of closure-common.asd, which installs *FEATURES* this -;; file depends on. Use MISSING-DEPENDENCY for asdf-install. -(unless (find-system :closure-common nil) - (error 'missing-dependency - :required-by (make-instance 'dummy-cxml-component) - :version nil - :requires :closure-common)) +(progn + (format t "~&;;; Checking for wide character support...") + (force-output) + (flet ((test (code) + (and (< code char-code-limit) (code-char code)))) + (cond + ((not (test 50000)) + (format t " no, reverting to octet strings.~%") + #+rune-is-character + (error "conflicting unicode configuration. Please recompile.") + (pushnew :rune-is-integer *features*)) + ((code-char 70000) + (when (test #xD800) + (format t " WARNING: Lisp implementation doesn't use UTF-16, ~ + but accepts surrogate code points.~%")) + (format t " yes, using code points.~%") + #+(or rune-is-integer rune-is-utf-16) + (error "conflicting unicode configuration. Please recompile.") + (pushnew :rune-is-character *features*)) + (t + (format t " yes, using UTF-16.~%") + #+(or rune-is-integer (and rune-is-character (not rune-is-utf-16))) + (error "conflicting unicode configuration. Please recompile.") + (pushnew :rune-is-utf-16 *features*) + (pushnew :rune-is-character *features*))))) (defclass closure-source-file (cl-source-file) ()) -- 2.11.4.GIT