BASEDIR=~/projects/Guides/LFS/HTML
CHUNK_QUIET=0
PDF_OUTPUT=LFS-BOOK.pdf
PRINT_OUTPUT=LFS-BOOK-PRINTABLE.pdf
NOCHUNKS_OUTPUT=LFS-BOOK.html

lfs:
	xsltproc --xinclude --nonet -stringparam chunk.quietly $(CHUNK_QUIET) \
	  -stringparam navig.graphics 1 -stringparam navig.graphics.extension ".png" -stringparam navig.graphics.path "../images/" \
	  -stringparam base.dir $(BASEDIR)/ stylesheets/lfs-chunked.xsl \
	  index.xml

	if [ ! -e $(BASEDIR)/stylesheets ]; then \
	  mkdir -p $(BASEDIR)/stylesheets; \
	fi;
	cp stylesheets/lfs.css $(BASEDIR)/stylesheets

	if [ ! -e $(BASEDIR)/images ]; then \
	  mkdir -p $(BASEDIR)/images; \
	fi;
	cp /usr/share/sgml/docbook/stylesheet/images/*.png \
	  $(BASEDIR)/images
	cd $(BASEDIR)/; sed -i -e "s@../stylesheets@stylesheets@" \
	  index.html part1.html part2.html part3.html longindex.html
	cd $(BASEDIR)/; sed -i -e "s@../images@images@g" \
	  index.html part1.html part2.html part3.html longindex.html

	sh goTidy $(BASEDIR)/

pdf:
	xsltproc --xinclude --nonet --output lfs.fo stylesheets/lfs-pdf.xsl \
	  index.xml
	sed -i -e "s/inherit/all/" lfs.fo
	fop.sh lfs.fo $(PDF_OUTPUT)

print:
	xsltproc --xinclude --nonet --output lfs-print.fo \
	  stylesheets/lfs-print.xsl index.xml
	sed -i -e "s/inherit/all/" lfs-print.fo
	fop.sh lfs-print.fo $(PRINT_OUTPUT)

nochunks:
	xsltproc --xinclude --nonet --output $(NOCHUNKS_OUTPUT) \
	  stylesheets/lfs-nochunks.xsl index.xml
	tidy -config tidy.conf $(NOCHUNKS_OUTPUT) || true

validate:
	xmllint --noout --nonet --xinclude --postvalid index.xml
