2011-01-26 09:35:08 +00:00
|
|
|
IMAGE_FILES = images/asciidoc.png \
|
2012-08-12 21:39:31 +00:00
|
|
|
images/hostedby.png \
|
2011-01-26 09:35:08 +00:00
|
|
|
images/nut_layering.png \
|
2012-01-24 10:22:33 +00:00
|
|
|
images/nut-logo.png \
|
2011-01-26 09:35:08 +00:00
|
|
|
images/note.png \
|
|
|
|
images/warning.png \
|
|
|
|
images/blue-arrow.png \
|
|
|
|
images/simple.png \
|
|
|
|
images/advanced.png \
|
|
|
|
images/bigbox.png \
|
|
|
|
images/bizarre.png \
|
|
|
|
images/old-cgi.png
|
|
|
|
|
2012-01-24 10:22:33 +00:00
|
|
|
# Only track here the local deps
|
|
|
|
SHARED_DEPS = nut-names.txt asciidoc.conf
|
|
|
|
|
2011-01-26 09:35:08 +00:00
|
|
|
USER_MANUAL_DEPS = acknowledgements.txt cables.txt config-notes.txt \
|
|
|
|
configure.txt download.txt documentation.txt features.txt history.txt \
|
|
|
|
outlets.txt scheduling.txt security.txt support.txt user-manual.txt \
|
|
|
|
stable-hcl.txt
|
|
|
|
|
|
|
|
DEVELOPER_GUIDE_DEPS = contact-closure.txt design.txt developers.txt \
|
2013-11-24 15:00:12 +00:00
|
|
|
developer-guide.txt hid-subdrivers.txt macros.txt new-clients.txt \
|
|
|
|
new-drivers.txt net-protocol.txt nutdrv_qx-subdrivers.txt \
|
|
|
|
snmp-subdrivers.txt sock-protocol.txt
|
2011-01-26 09:35:08 +00:00
|
|
|
|
|
|
|
CABLES_DEPS = cables/apc-rs500-serial.txt \
|
2010-03-25 23:20:59 +00:00
|
|
|
cables/apc.txt cables/ge-imv-victron.txt cables/imv.txt \
|
|
|
|
cables/mgeups.txt cables/powerware.txt cables/repotec.txt \
|
|
|
|
cables/sms.txt
|
2011-01-26 09:35:08 +00:00
|
|
|
|
|
|
|
CABLES_IMAGES = images/cables/73-0724.png images/cables/940-0024C.jpg \
|
|
|
|
images/cables/belkin-f6cx-rkm-xu-cable.jpg images/cables/Lansafecable.jpg \
|
|
|
|
images/cables/mac-940-0024C.png images/cables/mge-66049.png \
|
|
|
|
images/cables/mge-db9-rj12.jpg images/cables/mge-db9-rj45.jpg \
|
|
|
|
images/cables/SOLA-330.png
|
|
|
|
|
2013-11-24 15:00:12 +00:00
|
|
|
ALL_TXT_SRC = nut-names.txt $(USER_MANUAL_DEPS) $(DEVELOPER_GUIDE_DEPS) \
|
|
|
|
$(CABLES_DEPS) FAQ.txt nut-hal.txt nut-qa.txt packager-guide.txt snmp.txt
|
|
|
|
|
|
|
|
NUT_SPELL_DICT = nut.dict
|
|
|
|
EXTRA_DIST = $(ALL_TXT_SRC) $(SHARED_DEPS) $(IMAGE_FILES) \
|
|
|
|
$(CABLES_IMAGES) docinfo.xml $(NUT_SPELL_DICT)
|
2011-01-26 09:35:08 +00:00
|
|
|
|
|
|
|
ASCIIDOC_HTML_SINGLE = user-manual.html \
|
|
|
|
developer-guide.html \
|
|
|
|
packager-guide.html \
|
|
|
|
FAQ.html
|
|
|
|
|
|
|
|
ASCIIDOC_HTML_CHUNKED = user-manual.chunked \
|
|
|
|
developer-guide.chunked \
|
|
|
|
packager-guide.chunked \
|
|
|
|
FAQ.html
|
|
|
|
|
|
|
|
ASCIIDOC_PDF = user-manual.pdf \
|
|
|
|
developer-guide.pdf \
|
|
|
|
packager-guide.pdf \
|
|
|
|
FAQ.pdf
|
|
|
|
|
|
|
|
# Force build in ./ and man/ before website
|
|
|
|
SUBDIRS = . man website
|
|
|
|
SUFFIXES = .txt .html .pdf
|
|
|
|
|
|
|
|
all: doc
|
|
|
|
|
|
|
|
doc: @DOC_BUILD_LIST@
|
|
|
|
|
|
|
|
pdf: $(ASCIIDOC_PDF)
|
|
|
|
# also build the HTML manpages with these targets
|
|
|
|
html-single: $(ASCIIDOC_HTML_SINGLE)
|
|
|
|
html-chunked: $(ASCIIDOC_HTML_CHUNKED)
|
|
|
|
|
|
|
|
if HAVE_ASCIIDOC
|
|
|
|
website: html-chunked pdf
|
|
|
|
else !HAVE_ASCIIDOC
|
|
|
|
website:
|
|
|
|
@echo "Not building website documentation since 'asciidoc' was not found."
|
|
|
|
endif !HAVE_ASCIIDOC
|
|
|
|
|
|
|
|
clean-local:
|
2013-11-24 15:00:12 +00:00
|
|
|
rm -rf *.pdf *.html *.chunked docbook-xsl.css *.bak
|
2011-01-26 09:35:08 +00:00
|
|
|
|
2012-01-24 10:22:33 +00:00
|
|
|
# Static HCL is generated automatically
|
|
|
|
# This is more of a harness, since this file should have already been
|
|
|
|
# generated, due to the top level Makefile SUBDIRS ordering (tools before docs)
|
2013-11-24 15:00:12 +00:00
|
|
|
ups-html.txt: ../data/driver.list.in
|
|
|
|
cd ../data && $(MAKE) $(AM_MAKEFLAGS) driver.list
|
|
|
|
cd ../tools && $(MAKE) $(AM_MAKEFLAGS) website
|
2012-01-24 10:22:33 +00:00
|
|
|
|
2011-01-26 09:35:08 +00:00
|
|
|
### TODO: automatic dependency generation
|
2012-01-24 10:22:33 +00:00
|
|
|
# Add other directory deps (not for local EXTRA_DIST) and generated contents
|
|
|
|
FULL_USER_MANUAL_DEPS = $(USER_MANUAL_DEPS) $(SHARED_DEPS) ../README \
|
2012-06-01 13:55:19 +00:00
|
|
|
../INSTALL ../UPGRADING ../TODO ../scripts/ufw/README
|
2012-01-24 10:22:33 +00:00
|
|
|
FULL_DEVELOPER_GUIDE_DEPS = $(DEVELOPER_GUIDE_DEPS) $(SHARED_DEPS) \
|
|
|
|
../scripts/augeas/README ../TODO ../lib/README \
|
|
|
|
../tools/nut-scanner/README
|
2011-01-26 09:35:08 +00:00
|
|
|
|
|
|
|
user-manual.html user-manual.chunked user-manual.pdf: $(FULL_USER_MANUAL_DEPS)
|
|
|
|
developer-guide.html developer-guide.chunked developer-guide.pdf: $(FULL_DEVELOPER_GUIDE_DEPS)
|
|
|
|
packager-guide.html packager-guide.chunked packager-guide.pdf: packager-guide.txt asciidoc.conf
|
|
|
|
|
|
|
|
# Note: without the "-v", asciidoc (circa 8.6.2) sometimes hangs when
|
|
|
|
# generating the chunked HTML. In this case, export the environment
|
|
|
|
# variable ASCIIDOC_VERBOSE to "-v", ie:
|
|
|
|
# $ ASCIIDOC_VERBOSE=-v make
|
|
|
|
A2X_COMMON_OPTS = $(ASCIIDOC_VERBOSE) --attribute icons \
|
|
|
|
--attribute localdate=`TZ=UTC date +%Y-%m-%d` \
|
|
|
|
--attribute localtime=`TZ=UTC date +%H:%M:%S` \
|
|
|
|
--attribute iconsdir=$(srcdir)/images \
|
|
|
|
--attribute=badges \
|
|
|
|
--attribute=external_title \
|
2012-01-24 10:22:33 +00:00
|
|
|
--attribute tree_version=@TREE_VERSION@ \
|
2011-01-26 09:35:08 +00:00
|
|
|
-a toc -a numbered --destination-dir=.
|
|
|
|
|
|
|
|
.txt.html:
|
|
|
|
$(A2X) $(A2X_COMMON_OPTS) --attribute=xhtml11_format --format=xhtml $<
|
|
|
|
|
|
|
|
.txt.chunked:
|
|
|
|
$(A2X) $(A2X_COMMON_OPTS) --attribute=chunked_format --format=chunked $<
|
|
|
|
|
|
|
|
.txt.pdf: docinfo.xml
|
|
|
|
$(A2X) $(A2X_COMMON_OPTS) --attribute=pdf_format --format=pdf -a docinfo1 $<
|
|
|
|
|
2013-11-24 15:00:12 +00:00
|
|
|
if HAVE_ASPELL
|
|
|
|
# FIXME: also check ../{NEWS,README,UPGRADING}+other dirs
|
|
|
|
# Non-interactively spell check all documentation source files.
|
|
|
|
# This is useful for Buildbot and automated QA processing
|
|
|
|
# FIXME: how to present output (std{out,err}, single file or per target)?
|
|
|
|
spellcheck:
|
|
|
|
@for docsrc in $(ALL_TXT_SRC); do \
|
|
|
|
echo "Spell checking on $$docsrc"; \
|
|
|
|
LANG=C $(ASPELL) -a -t -p $(NUT_SPELL_DICT) < $$docsrc | grep [^*]; \
|
|
|
|
done
|
|
|
|
# Interactively spell check all documentation source files
|
|
|
|
spellcheck-interactive:
|
|
|
|
@for docsrc in $(ALL_TXT_SRC); do\
|
|
|
|
echo "Spell checking on $$docsrc"; \
|
|
|
|
LANG=C $(ASPELL) check -p $(NUT_SPELL_DICT) $$docsrc; \
|
|
|
|
done
|
|
|
|
else !HAVE_ASPELL
|
|
|
|
spellcheck:
|
|
|
|
@echo "Documentation spell check not available since 'aspell' was not found."
|
|
|
|
spellcheck-interactive:
|
|
|
|
@echo "Documentation spell check not available since 'aspell' was not found."
|
|
|
|
endif !HAVE_ASPELL
|
|
|
|
|
2011-01-26 09:35:08 +00:00
|
|
|
.PHONY: html html-single pdf website
|