]> rtime.felk.cvut.cz Git - pes-rpp/rpp-simulink.git/blobdiff - doc/Makefile
doc: Build documentation only with block that are part of the release
[pes-rpp/rpp-simulink.git] / doc / Makefile
index 2482c6d058fc05c1c166c50fd2d752998c070215..48750797ea0fd2851e922ab82690f3a8efe96095 100644 (file)
@@ -3,11 +3,18 @@ DOC = rpp_simulink.pdf
 all: $(DOC)
 
 -include *.deps
+include ../rpp/lib/Makefile.config
 
-%.pdf: %.tex block_desc.tex block_table.tex rpp-test-sw-cmds.tex version.tex
+# Search for target specific files in the right directory
+export TEXINPUTS=.:_$(TARGET):
+
+rpp_simulink.pdf: rpp_simulink.tex
        latexmk -deps -deps-out=$@.deps $< # See also .latexmkrc
 
-blocks = $(sort $(wildcard ../rpp/blocks/sfunction_*.c))
+
+rpp_simulink.tex: block_desc.tex block_table.tex rpp-test-sw-cmds.tex version.tex _$(TARGET)/target_def.tex _$(TARGET)/hwdesc.tex
+
+blocks = $(sort $(shell $(if $(RELEASE_ATTR),../rpp/lib/etc/git-ls-files-attr $(RELEASE_ATTR),git ls-files) ../rpp/blocks/sfunction_*.c))
 
 block_desc.tex: ../rpp/blocks/scripts/doc_parse.py $(blocks)
        $< --latex ${filter %.c,$^} | sed -e 's/\\bf\b/\\bfseries/g' > $@
@@ -15,7 +22,7 @@ block_desc.tex: ../rpp/blocks/scripts/doc_parse.py $(blocks)
 block_table.tex: ../rpp/blocks/scripts/doc_parse.py $(blocks)
        $< --latex-table ${filter %.c,$^} > $@
 
-rpp-test-sw-cmds.tex: test-sw/rpp-test-sw/commands/cmd_*.c
+rpp-test-sw-cmds.tex: test-sw/rpp-test-sw/commands/cmd_*.c configure-test-sw
        $(MAKE) -C test-sw/rpp-test-sw/commands/doc doc.tex
        cp test-sw/rpp-test-sw/commands/doc/doc.tex $@
 
@@ -28,7 +35,10 @@ clean:
 %.pdf: %.svg
        inkscape --export-pdf=$@ $<
 
-.PHONY: version.tex
+.PHONY: version.tex configure-test-sw
 version.tex:
        git describe --dirty --always |sed -e s/^[-_a-zA-Z]*// > $@.tmp
        if cmp $@ $@.tmp; then rm $@.tmp; else mv $@.tmp $@; fi
+
+configure-test-sw:
+       if ! cmp ../rpp/lib/Makefile.config test-sw/rpp-lib/Makefile.config; then cp ../rpp/lib/Makefile.config test-sw/rpp-lib; fi