# Mark Huang <mlhuang@cs.princeton.edu>
# Copyright (C) 2006 The Trustees of Princeton University
#
-# $Id$
-#
-all: PLCAPI.pdf
+all: PLCAPI.html
+
+# XML - as opposed to SGML - requires an identifier - see
+# http://www.docbook.org/tdg/en/html/appb.html
+# and, openjade opens http connections when using the official URL
+# as an identifier; this is slow, and sometimes fails and breaks the build
+
+# locating locally installed docbook43 dtd - fedora-specific
+remote-docbook-43 = http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd
+local-docbook-43 = $(wildcard /usr/share/sgml/docbook/xml-dtd-4.3*/docbookx.dtd)
+docbook-43=$(if $(local-docbook-43),$(local-docbook-43),$(remote-docbook-43))
+
+PLCAPI.xml: PLCAPI.xml.in
+ $(if $(local-docbook-43), \
+ echo Using locally installed DTD $(local-docbook-43), \
+ echo WARNING - could not locate local DTD - using remote $(remote-docbook-43))
+ sed -e "s,@DOCBOOK-43@,$(docbook-43)," $< > $@
.PLCAPI.xml.valid: Methods.xml
-Methods.xml: DocBook.py ../PLC/__init__.py ../PLC/Methods/__init__.py
- PYTHONPATH=.. python $< > $@
+API_SOURCES = ../PLC/__init__.py ../PLC/Methods/__init__.py
+
+Methods.xml: DocBook.py DocBookLocal.py $(API_SOURCES)
+ PYTHONPATH=.. ./DocBookLocal.py > $@
#
# Documentation
clean:
rm -f $(patsubst %,*.%,$(FORMATS)) .*.xml.valid Methods.xml
-force:
-
-.PHONY: force clean docclean
+.PHONY: clean all