diff options
authorNeels Hofmeyr <neels@hofmeyr.de>2017-10-19 05:11:57 +0200
committerNeels Hofmeyr <neels@hofmeyr.de>2018-11-27 18:27:47 +0100
commitc8ca02b93779e16880627215de12238069028a21 (patch)
parent3ce5a3648a620ce5e783680f2b6a3bb6028c0043 (diff)
refactor Makefile build rules, don't use the FORCE
The initial goal was to make sure we don't have overall FORCE rules causing unnecessary rebuilds -- annoying while writing documentation. As I looked through possible dependencies, I finally understood what's going on here. Remove code dup and nicely sort which belongs where in build/Makefile.*.inc. In each, describe in a top comment how to use it, and also unify how they are used: - Rename Makefile.inc to Makefile.docbook.inc and refactor - Add Makefile.vty-reference.inc - Add Makefile.common.inc Make sure that we accurately pick up all dependencies. Drop use of the macro called 'command', that silenced the actual command lines invoked and replaced them with short strings: it obscures what is actually going on and makes the Makefiles hard to read and understand. Each manual's makefile is greatly reduced to few definitions and a Makefile include, e.g. one for asciidoc, one for VTY reference. Move common/bsc_vty_additions.xml to OsmoBSC/vty/libbsc_vty_additions.xml, link from OsmoNITB. It applies only to OsmoBSC and OsmoNITB. Add a script that combines a VTY reference file with *all* additions files found in a manual's vty/ dir. Call this from Makefile.vty-reference.inc. Change-Id: I9758e04162a480e28c7dc83475b514cf7fd25ec0
1 files changed, 6 insertions, 35 deletions
diff --git a/doc/manuals/Makefile b/doc/manuals/Makefile
index 2dfedb2..e809632 100644
--- a/doc/manuals/Makefile
+++ b/doc/manuals/Makefile
@@ -1,39 +1,10 @@
-# XSL stylesheets downloaded from http://docbook.sourceforge.net/release/xsl/current/html/
-# Makefile from BitBake/OpenEmbedded manuals
-EXTRA_DEPS = gen-ggsn-vty-docbook
-topdir = .
-ggsn_reference = $(topdir)/osmoggsn-vty-reference.xml
-manuals = $(ggsn_reference)
-# types = pdf txt rtf ps xhtml html man tex texi dvi
-# types = pdf txt
-types = $(docbooktotypes)
-docbooktotypes = pdf
-# htmlcssfile =
-# htmlcss =
-TOPDIR := ..
-ASCIIDOCS := osmoggsn-usermanual
+TOPDIR = ..
+ASCIIDOC = osmoggsn-usermanual.adoc
+ASCIIDOC_DEPS = chapters/*.adoc
include $(TOPDIR)/build/Makefile.asciidoc.inc
-include $(TOPDIR)/build/Makefile.inc
-osmoggsn-usermanual.pdf: chapters/*.adoc
- -rm -rf $(cleanfiles)
- -rm osmoggsn-usermanual__*.svg osmoggsn-usermanual__*.png
- -rm osmoggsn-usermanual.check
+VTY_REFERENCE = osmoggsn-vty-reference.xml
+include $(TOPDIR)/build/Makefile.vty-reference.inc
-gen-ggsn-vty-docbook: FORCE
- $(call command,xsltproc -o generated/combined1.xml \
- --stringparam with $(PWD)/../common/vty_additions.xml \
- $(MERGE_DOC) vty/ggsn_vty_reference.xml, \
- XSLTPROC,Merging Common VTY)
- $(call command,xsltproc -o generated/combined2.xml \
- --stringparam with $(PWD)/vty/ggsn_vty_additions.xml \
- $(MERGE_DOC) generated/combined1.xml, \
- $(call command,xsltproc ../vty_reference.xsl generated/combined2.xml > generated/docbook_vty.xml, \
- XSLTPROC,Converting GGSN VTY to DocBook)
+include $(TOPDIR)/build/Makefile.common.inc