]> 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 ae8aee85b451e1d38057868b0dccb949751d7729..48750797ea0fd2851e922ab82690f3a8efe96095 100644 (file)
@@ -2,23 +2,30 @@ DOC = rpp_simulink.pdf
 
 all: $(DOC)
 
--include _out/*.deps
+-include *.deps
+include ../rpp/lib/Makefile.config
 
-%.pdf: _out/%.pdf
-       ln -s $^ $@
-       ln -s $(^:%.pdf=%.synctex.gz) .
+# Search for target specific files in the right directory
+export TEXINPUTS=.:_$(TARGET):
 
-_out/%.pdf: %.tex block_desc.tex block_table.tex
+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,$^} > $@
+       $< --latex ${filter %.c,$^} | sed -e 's/\\bf\b/\\bfseries/g' > $@
 
 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 configure-test-sw
+       $(MAKE) -C test-sw/rpp-test-sw/commands/doc doc.tex
+       cp test-sw/rpp-test-sw/commands/doc/doc.tex $@
+
 upload: $(DOC)
        ./wiki-upload.pl $^
 
@@ -28,6 +35,10 @@ clean:
 %.pdf: %.svg
        inkscape --export-pdf=$@ $<
 
-.PHONY: version.tex
+.PHONY: version.tex configure-test-sw
 version.tex:
-       git describe --dirty --always --match 'version_*'|sed -e s/^version_// > $@
+       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