tvl-depot/third_party/lisp/closure-html/dtds-from-store.patch
sterni 70e5783e22 feat(3p/lisp/closure-html): init at 2017-04-19
This one requires a bit of jumping through hoops. Patching the dtd /
catalog lookup is quite straightforward and similar to cxml, but the
CLOSURE-HTML:*html-dtd* variable gives us a bit of trouble: It is
defined quite late in `html-parser.lisp`, but files that need to be
built first already reference it. SBCL has apparently decided to be
particular about this and emits a `WARNING` (!) condition for this
which is also worthy of `failure-p` of `compile-file` being true,
so that `buildLisp` will abort compilation. We workaround this issue
by injecting an extra source file which `defvar`s the desired symbol.

A similar issue exists with `dump-dtd` which references
`CL-USER:*HTML-DTD*` for some reason. Since this is a helper intended
for development (?) and not exported we just throw it away via a
patch.

Change-Id: Ic0f92815a21f3793925c49a70a72f4a86791efe4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3263
Tested-by: BuildkiteCI
Reviewed-by: grfn <grfn@gws.fyi>
2021-09-01 22:57:17 +00:00

16 lines
511 B
Diff

diff --git a/src/parse/html-parser.lisp b/src/parse/html-parser.lisp
index 4e45b81..5025a26 100644
--- a/src/parse/html-parser.lisp
+++ b/src/parse/html-parser.lisp
@@ -36,10 +36,7 @@
(make-pathname
:name nil
:type nil
- :defaults (merge-pathnames
- "resources/"
- (asdf:component-relative-pathname
- (asdf:find-system :closure-html))))))
+ :defaults "@out@/resources/")))
(loop
:for (name . filename)
:in '(("-//W3O//DTD W3 HTML 3.0//EN" . "dtd/HTML-3.0")