summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès2009-11-20 11:46:42 +0100
committerLudovic Courtès2009-11-20 11:46:42 +0100
commit39175b785f2e5d3362f3bd72a41f2702190333e1 (patch)
treeddbb2e5e2a30d3dbc8632d4ffdf924e47a54c03f
parente7df9978d83d5d858c29d2d0160c7bba38145bbd (diff)
downloadskribilo-39175b785f2e5d3362f3bd72a41f2702190333e1.tar.gz
skribilo-39175b785f2e5d3362f3bd72a41f2702190333e1.tar.lz
skribilo-39175b785f2e5d3362f3bd72a41f2702190333e1.zip
Remove circular dependency introduced by `(skribilo sui)'.
* src/guile/skribilo/sui.scm (sui-referenced-file)[html-file]: New
  procedure.
-rw-r--r--src/guile/skribilo/sui.scm8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/guile/skribilo/sui.scm b/src/guile/skribilo/sui.scm
index 8e5cb12..3388ce8 100644
--- a/src/guile/skribilo/sui.scm
+++ b/src/guile/skribilo/sui.scm
@@ -26,7 +26,6 @@
   :autoload   (skribilo reader)     (make-reader)
   :autoload   (skribilo engine)     (find-engine)
   :autoload   (skribilo evaluator)  (evaluate-document)
-  :autoload   (skribilo engine html)(html-file)
   :use-module (skribilo condition)
   :use-module (skribilo utils strings)
   :use-module (skribilo utils syntax)
@@ -294,6 +293,13 @@
 ;*    sui-referenced-file ...                                          */
 ;*---------------------------------------------------------------------*/
 (define (sui-referenced-file n e)
+
+   ;; Hack to avoid a compile-time dependency on the HTML engine, which would
+   ;; create a dependency loop:
+   ;; (package base) -> (sui) -> (engine html) -> (package base).
+   (define html-file
+     (@ (skribilo engine html) html-file))
+
    (let ((file (html-file n e)))
       (if (member (file-suffix file) '("skb" "sui" "skr" "html"))
 	  (string-append (strip-ref-base (file-prefix file)) ".html")