From 471be2cd6f51a93ee355a5e0300b97509f692546 Mon Sep 17 00:00:00 2001 From: Neels Hofmeyr Date: Thu, 19 Oct 2017 05:11:57 +0200 Subject: 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 --- doc/manuals/Makefile | 45 ++++++--------------------------------------- 1 file changed, 6 insertions(+), 39 deletions(-) diff --git a/doc/manuals/Makefile b/doc/manuals/Makefile index 6f7d28d65..baa1a49f9 100644 --- a/doc/manuals/Makefile +++ b/doc/manuals/Makefile @@ -1,43 +1,10 @@ -# XSL stylesheets downloaded from http://docbook.sourceforge.net/release/xsl/current/html/ -# Makefile from BitBake/OpenEmbedded manuals - -EXTRA_DEPS = gen-sgsn-vty-docbook - -topdir = . -sgsn_reference = $(topdir)/osmosgsn-vty-reference.xml -manuals = $(sgsn_reference) -# types = pdf txt rtf ps xhtml html man tex texi dvi -# types = pdf txt -types = $(docbooktotypes) -docbooktotypes = pdf -# htmlcssfile = -# htmlcss = - -TOPDIR := .. -ASCIIDOCS := osmosgsn-usermanual +TOPDIR = .. +ASCIIDOC = osmosgsn-usermanual.adoc +ASCIIDOC_DEPS = chapters/*.adoc include $(TOPDIR)/build/Makefile.asciidoc.inc -include $(TOPDIR)/build/Makefile.inc - -osmosgsn-usermanual.pdf: chapters/*.adoc -clean: - -rm -rf $(cleanfiles) - -rm osmosgsn-usermanual__*.svg osmosgsn-usermanual__*.png - -rm osmosgsn-usermanual.check +VTY_REFERENCE = osmosgsn-vty-reference.xml +include $(TOPDIR)/build/Makefile.vty-reference.inc -gen-sgsn-vty-docbook: FORCE - $(call command,xsltproc -o generated/combined1.xml \ - --stringparam with $(PWD)/../common/vty_additions.xml \ - $(MERGE_DOC) vty/sgsn_vty_reference.xml, \ - XSLTPROC,Merging Common VTY) - $(call command,xsltproc -o generated/combined2.xml \ - --stringparam with $(PWD)/../common/ns_vty_additions.xml \ - $(MERGE_DOC) generated/combined1.xml, \ - XSLTPROC,Merging Common NS VTY) - $(call command,xsltproc -o generated/combined3.xml \ - --stringparam with $(PWD)/vty/sgsn_vty_additions.xml \ - $(MERGE_DOC) generated/combined2.xml, \ - XSLTPROC,Merging SGSN VTY) - $(call command,xsltproc ../vty_reference.xsl generated/combined3.xml > generated/docbook_vty.xml, \ - XSLTPROC,Converting SGSN VTY to DocBook) +include $(TOPDIR)/build/Makefile.common.inc -- cgit v1.2.3