diff --git a/cxml.asd b/cxml.asd index 49b826a..da092da 100644 --- a/cxml.asd +++ b/cxml.asd @@ -1,6 +1,3 @@ -;;; XXX Die vielen verschiedenen Systeme hier sollten vielleicht -;;; Module eines grossen Systems CXML werden? - (defpackage :cxml-system (:use :asdf :cl)) (in-package :cxml-system) @@ -14,45 +11,6 @@ (let (#+sbcl (*compile-print* nil)) (call-next-method)))) -#-(or rune-is-character rune-is-integer) -(progn - (format t "~&;;; Checking for wide character support...") - (force-output) - (pushnew (dotimes (x 65536 - (progn - (format t " ok, characters have at least 16 bits.~%") - :rune-is-character)) - (unless (and (< x char-code-limit) (code-char x)) - (format t " no, reverting to octet strings.~%") - (return :rune-is-integer))) - *features*)) - -#-rune-is-character -(format t "~&;;; Building cxml with (UNSIGNED-BYTE 16) RUNES~%") - -#+rune-is-character -(format t "~&;;; Building cxml with CHARACTER RUNES~%") - -(defsystem :cxml-runes - :default-component-class closure-source-file - :pathname (merge-pathnames - "runes/" - (make-pathname :name nil :type nil :defaults *load-truename*)) - :serial t - :components - ((:file "package") - (:file "definline") - (:file runes - :pathname - #-rune-is-character "runes" - #+rune-is-character "characters") - #+rune-is-integer (:file "utf8") - (:file "syntax") - (:file "encodings") - (:file "encodings-data") - (:file "xstream") - (:file "ystream"))) - (asdf:defsystem :cxml-xml :default-component-class closure-source-file :pathname (merge-pathnames @@ -72,7 +30,7 @@ (:file "space-normalizer" :depends-on ("xml-parse")) (:file "catalog" :depends-on ("xml-parse")) (:file "sax-proxy" :depends-on ("xml-parse"))) - :depends-on (:cxml-runes :puri :trivial-gray-streams)) + :depends-on (:runes :puri :trivial-gray-streams)) (defclass utf8dom-file (closure-source-file) ((of))) @@ -90,11 +48,10 @@ (defmethod perform ((o load-op) (c utf8dom-file)) (load (slot-value c 'of))) -(defvar *utf8-runes-readtable*) - (defmethod perform ((operation compile-op) (c utf8dom-file)) (let ((*features* (cons 'utf8dom-file *features*)) - (*readtable* *utf8-runes-readtable*)) + (*readtable* + (symbol-value (find-symbol "*UTF8-RUNES-READTABLE*" :runes-system)))) (call-next-method))) (asdf:defsystem :cxml-dom diff --git a/doc/index.xml b/doc/index.xml index 0792bc3..35e0f61 100644 --- a/doc/index.xml +++ b/doc/index.xml @@ -51,14 +51,19 @@
Relax NG validation is available as a separate - project: cxml-rng. + project: cxml-rng.
rel-2007-xx-yy
+rel-2007-05-26
rel-2007-02-18
$ ln -sf `pwd`/cxml.asd /path/to/your/registry/+
$ ln -sf `pwd`/cxml.asd /path/to/your/registry/ +$ ln -sf `pwd`/runes.asd /path/to/your/registry/
Then compile CXML using:
* (asdf:operate 'asdf:load-op :cxml)diff --git a/runes/utf8.lisp b/runes/utf8.lisp index 48e4183..5aef7f1 100644 --- a/runes/utf8.lisp +++ b/runes/utf8.lisp @@ -29,7 +29,7 @@ (defun rod-reader (stream subchar arg) (runes::rod-string (runes::rod-reader stream subchar arg))) -(setf cxml-system::*utf8-runes-readtable* +(setf runes-system:*utf8-runes-readtable* (let ((rt (copy-readtable))) (set-dispatch-macro-character #\# #\/ 'rune-reader rt) (set-dispatch-macro-character #\# #\" 'rod-reader rt)