Table headings use "Setting" instead of "Element" for configuration items.
[mkws-moved-to-github.git] / doc / Makefile
index 54ddad4..1e436d4 100644 (file)
@@ -3,15 +3,36 @@
 # To build the PDFs, you will need these Debian packages:
 #      texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended
 
-DOCS = index.html index.pdf \
-       README.html README.pdf \
-       mkws-manual.html mkws-manual.pdf \
-       mkws-developer.html mkws-developer.pdf
+# Older versions of pandoc don't do PDF output, but have a companion program
+MARKDOWN2PDF = $(shell if which markdown2pdf > /dev/null; then echo markdown2pdf; else echo pandoc --standalone; fi)
+HAVE_PDFLATEX = $(shell which pdflatex 2>/dev/null)
+
+DOCS = index.html \
+       mkws-manual.html \
+       mkws-developer.html \
+       mkws-doc.css
+
+PDFS = index.pdf \
+       mkws-manual.pdf \
+       mkws-developer.pdf
+
+#
+# skip PDF creation if pdflatex is not installed
+# The debian tex package may download up to 650MB
+#
+ifneq "${HAVE_PDFLATEX}" ""
+DOCS+= ${PDFS}
+endif
 
 INSTALLED = $(DOCS:%=../tools/htdocs/%)
 
 all: $(INSTALLED)
 
+../tools/htdocs/%: %
+       rm -f $@
+       cp $< $@
+       chmod ugo-w $@
+
 # For a description of pandoc's markdown format, see:
 # http://johnmacfarlane.net/pandoc/demo/example9/pandocs-markdown.html
 
@@ -23,24 +44,23 @@ all: $(INSTALLED)
        pandoc --standalone --toc -c mkws-doc.css $< | ./tweak-html > $@
        chmod ugo-w $@
 
-# ### In order to compile the manual, which has tables, to PDF,
-# you will need to install the Debian package
-#      texlive-latex-recommended
 ../tools/htdocs/%.pdf: %.markdown
        rm -f $@
-       pandoc --standalone $< -o $@
+       $(MARKDOWN2PDF) $< -o $@
        chmod ugo-w $@
 
 clean:
        rm -f $(INSTALLED)
        rm -f *.drupal.html
 
+distclean: clean
+       # Nothing more to remove in the doc directory
+
 push:
-       pandoc --toc README.markdown > README.drupal.html
+       pandoc --toc index.markdown > index.drupal.html
        pandoc --toc mkws-manual.markdown > mkws-manual.drupal.html
-       cat README.drupal.html | ./drupaljson.pl | curl --upload-file - http://www.indexdata.com/script/node/332?services_token=cda1e26e5733ce3f604773e94f0721df5c31a948 -v --header "Content-Type:application/json"
+       cat index.drupal.html | ./drupaljson.pl | curl --upload-file - http://www.indexdata.com/script/node/332?services_token=cda1e26e5733ce3f604773e94f0721df5c31a948 -v --header "Content-Type:application/json"
        cat mkws-manual.drupal.html | ./drupaljson.pl | curl --upload-file - http://www.indexdata.com/script/node/323?services_token=cda1e26e5733ce3f604773e94f0721df5c31a948 -v --header "Content-Type:application/json"
 
 help:
        @echo "make [ all | clean | push ]"
-