Merge branch 'PolynomialDivision-feature/add_workflow'
[olsrd.git] / lib / pud / doc / Makefile
1 # The olsr.org Optimized Link-State Routing daemon (olsrd)
2 #
3 # (c) by the OLSR project
4 #
5 # See our Git repository to find out who worked on this file
6 # and thus is a copyright holder on it.
7 #
8 # All rights reserved.
9 #
10 # Redistribution and use in source and binary forms, with or without
11 # modification, are permitted provided that the following conditions
12 # are met:
13 #
14 # * Redistributions of source code must retain the above copyright
15 #   notice, this list of conditions and the following disclaimer.
16 # * Redistributions in binary form must reproduce the above copyright
17 #   notice, this list of conditions and the following disclaimer in
18 #   the documentation and/or other materials provided with the
19 #   distribution.
20 # * Neither the name of olsr.org, olsrd nor the names of its
21 #   contributors may be used to endorse or promote products derived
22 #   from this software without specific prior written permission.
23 #
24 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
25 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
26 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
27 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
28 # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
29 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
30 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
31 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
32 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
34 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 # POSSIBILITY OF SUCH DAMAGE.
36 #
37 # Visit http://www.olsr.org for more information.
38 #
39 # If you find this software useful feel free to make a donation
40 # to the project. For more information see the website or contact
41 # the copyright holders.
42 #
43
44 include ../Makefile.inc
45
46 HTML_DIR = html
47 MAN_DIR = man
48 LATEX_DIR = latex
49 PDF_NAME = $(PLUGIN_NAME).pdf
50 DOX_FILE = doxygen.conf
51 TMP_DOX_FILE = $(DOX_FILE).temp
52
53 .PHONY: .gitignore all clean
54
55 .gitignore:
56 ifeq ($(VERBOSE),0)
57         @echo "[$@] doc"
58 endif
59         $(MAKECMDPREFIX)echo "/$(HTML_DIR)/" > $@
60         $(MAKECMDPREFIX)echo "/$(MAN_DIR)/" >> $@
61         $(MAKECMDPREFIX)echo "/$(LATEX_DIR)/" >> $@
62         $(MAKECMDPREFIX)echo "/$(TMP_DOX_FILE)" >> $@
63         $(MAKECMDPREFIX)echo "/$(PDF_NAME)" >> $@
64
65 clean:
66 ifeq ($(VERBOSE),0)
67         @echo "[$@] doc"
68 endif
69         $(MAKECMDPREFIX)rm -fr "$(TMP_DOX_FILE)" "$(HTML_DIR)" "$(LATEX_DIR)" "$(MAN_DIR)" "$(PDF_NAME)"
70
71 all: clean $(DOX_FILE)
72 ifeq ($(VERBOSE),0)
73         @echo "[$@] doc"
74 endif
75         $(MAKECMDPREFIX)sed \
76           -e "s/__PLUGIN_VER__/$(PLUGIN_VER)/" \
77           -e "s/__LIBNAME__/$(PLUGIN_NAME)/" \
78           "$(DOX_FILE)" > "$(TMP_DOX_FILE)"
79         $(MAKECMDPREFIX)doxygen "$(TMP_DOX_FILE)"
80         $(MAKECMDPREFIX)rm "$(TMP_DOX_FILE)"
81         $(MAKECMDPREFIX)$(MAKE) -s -C $(LATEX_DIR) all > /dev/null 2>&1
82         $(MAKECMDPREFIX)mv "$(LATEX_DIR)/refman.pdf" "$(PDF_NAME)"
83         $(MAKECMDPREFIX)rm -fr "$(LATEX_DIR)"