cmetrics出力機能追加
[YACASL2.git] / doc_inner / Makefile
1 .PHONY: all clean doxygen-clean gnu_global-clean
2
3 CD := cd
4 CMETRICS := cmetrics
5 DOXYGEN := doxygen
6 ECHO := echo
7 HTAGS := htags
8 INSTALL := install
9 MAKE := make
10 MV := mv
11 RMRF := rm -rf
12 WHICH := which
13
14 DOXYGEN_DIR := doxygen
15 GNU_GLOBAL_DIR := gnu_global
16 CMETRICS_DIR := cmetrics
17
18 all: $(DOXYGEN_DIR) $(GNU_GLOBAL_DIR) $(CMETRICS_DIR)
19
20 # doxygenのHTMLドキュメント作成先は、
21 # ../Doxyfileで設定された以下のディレクトリーの下のhtmlディレクトリー
22 #   OUTPUT_DIRECTORY = doc_inner
23 $(DOXYGEN_DIR): ../Doxyfile
24         $(if $(strip $(shell $(WHICH) $(DOXYGEN))),$(CD) .. && $(DOXYGEN) && $(MV) $(CURDIR)/html $(CURDIR)/$@,$(ECHO) '$(DOXYGEN): not found')
25
26 # htagsのHTMLドキュメント作成先は、
27 # 引数DIRで指定されたディレクトリーの下のHTMLディレクトリー
28 $(GNU_GLOBAL_DIR):
29         $(MAKE) -C .. gtags
30         $(if $(strip $(shell $(WHICH) $(HTAGS))),$(CD) .. && $(HTAGS) -anosx $(CURDIR) && $(MV) $(CURDIR)/HTML $(CURDIR)/$@,@$(ECHO) '$(HTAGS): not found')
31
32 $(CMETRICS_DIR):
33         $(INSTALL) -d $(CMETRICS_DIR)
34         $(CMETRICS) ../src | sed -e 's/  */\t/g' >$(CMETRICS_DIR)/files.tsv
35         $(CMETRICS) -f ../src | sed -e 's/  */\t/g' >$(CMETRICS_DIR)/functions.tsv
36
37 clean: doxygen-clean gnu_global-clean
38
39 doxygen-clean:
40         @$(RMRF) $(DOXYGEN_DIR)
41
42 gnu_global-clean:
43         @$(RMRF) $(GNU_GLOBAL_DIR)
44
45 cmetrics-clean:
46         @$(RMRF) $(CMETRICS_DIR)