2 #==================================================================================
3 # Copyright (c) 2019 Nokia
4 # Copyright (c) 2018-2019 AT&T Intellectual Property.
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
10 # http://www.apache.org/licenses/LICENSE-2.0
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 #==================================================================================
19 # This is a stand-alone make file as the RTD documentation is NOT built and packaged
20 # with the normal CMake process and thus isn't covered in the CMake files.
22 # {X}fm is required to compile the source.
25 %.rst:: %.xfm man_list.im
26 OUTPUT_TYPE=rst tfm $< | sed 's/^ //' >$@
28 %.ps:: %.xfm man_list.im
29 OUTPUT_TYPE=ps pfm $< $@
31 %.txt:: %.xfm man_list.im
32 OUTPUT_TYPE=txt tfm $< $@
34 %.md:: %.xfm man_list.im
35 OUTPUT_TYPE=markdown tfm $< | sed 's/^ //' >$@
37 docs = config-deploy developer-guide rel-notes overview
39 all:: $(docs:%=%.rst) $(docs:%=%.txt) $(docs:%=%.md)
42 bash gen_man_list.sh >man_list.im
44 rel-notes.xfm:: always
45 ksh fmt_changes.ksh >rel-notes.xfm
48 # we force the docs to always be out of date so that we don't have to
49 # manage the list of man pages and other files that are read to generate the
50 # output needed for RTD.
52 $(docs:%=%.rst): always
53 $(docs:%=%.txt): always
54 $(docs:%=%.md): always
57 # copy the .rst files which have changed into the docs (plural) directory at the root of the repo
58 publish : $(docs:%=%.rst)
63 if ! diff -N -q $$f ../../../docs/$$f >/dev/null 2>&1;\
65 cp -p $$f ../../../docs/;\
69 # just list what would be published
70 verify : $(docs:%=%.rst)
73 if ! diff -N -q $$f ../../../docs/$$f >/dev/null 2>&1;\
75 echo "$$f would be published";\
82 # ditch any intermediate files
84 rm -f rel-notes.xfm *.sp *.ca
86 # ditch anything that can be rebuilt
88 rm -f *.ps *.pdf *.rst *.md *.txt
90 # make hack to force a rule to always be out of date