OSDN Git Service

(split) LDP: (Makefile) Remove unused targets
[linuxjm/LDP_man-pages.git] / Makefile
1 PERKAMON_DIR = perkamon
2 LANGS = ja
3 THRESH = 80
4 THRESH_REL = 80
5 FLAGS ?=
6 PO4AFLAGS ?= -k $(THRESH) $(FLAGS)
7
8 PO4A_SUBDIRS = $(notdir $(wildcard po4a/*))
9
10 .PHONY: all release
11
12 all:    translate update-stats
13 release: release-pages update-tl-finish check-tl-nofinish
14
15 translate:      $(patsubst %, stamp/%, $(PO4A_SUBDIRS))
16 stamp/%:        stamp-jm-setup po4a/%/po/ja.po
17         @echo "*************** translate: $* ***************"
18         mkdir -p stamp
19         LC_ALL=C $(MAKE) process-$* \
20           PO4AFLAGS="$(PO4AFLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR)
21         touch $@
22
23 release-pages:
24         ../../admin/JM-release-all.sh -c
25
26 update-stats:   untrans.html
27
28 untrans.html:   $(patsubst %, stats/%, $(PO4A_SUBDIRS))
29         @echo "*************** Updating translation statistics ***************"
30         ./tools/generate-list.pl $^ > $@
31
32 stats/%:        stamp-jm-setup po4a/%/po/ja.po
33         @echo "*************** stats: $* ***************"
34         mkdir -p stats
35         mkdir -p _transtmp
36         $(RM) $(PERKAMON_DIR)/build/ja
37         ln -s ../../_transtmp $(PERKAMON_DIR)/build/ja
38         LC_ALL=C $(MAKE) process-$* \
39           PO4AFLAGS="-k 100 $(FLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR) \
40           | tee _log.txt
41         ./tools/extract-untrans.pl < _log.txt > $@
42         $(RM) $(PERKAMON_DIR)/build/ja
43         ln -s ../../draft $(PERKAMON_DIR)/build/ja
44         $(RM) -r _transtmp
45         $(RM) _log.txt
46
47 clean-stats:
48         $(RM) -r stats
49
50 update-tl-finish:
51         @cat stats/* | grep -v '^#' | cut -d , -f 1 | sort > _stats.txt
52         @grep '^[×☆]' translation_list | cut -d : -f 5-6 | sed -e 's/:/./' | sort > _tr_todo.txt
53         @for p in `comm -23 _tr_todo.txt _stats.txt`; do \
54           ../../admin/JM-tl-modify.pl -U translation_list $$p RO; \
55         done
56         @$(RM) _stats.txt _tr_todo.txt
57
58 check-tl-nofinish:
59         @cat stats/* | grep -v '^#' | cut -d , -f 1 | sort > _stats.txt
60         @grep '^○' translation_list | cut -d : -f 5-6 | sed -e 's/:/./' | sort > _tr_finish.txt
61         @comm -12 _tr_finish.txt _stats.txt
62         @$(RM) _stats.txt _tr_finish.txt
63
64 format:
65         set -e; for d in po4a/*; do \
66           echo "----- $$d -----"; cur=`pwd`; cd $$d/po; \
67           f=`/bin/mktemp`; \
68           LC_ALL=C msgmerge --verbose -o $$f ja.po $$(basename $$d) \
69             && mv -f $$f ja.po; \
70           cd $$cur; \
71         done
72
73 format-%:
74         set -e; for d in po4a/$*; do \
75           cd $$d/po; \
76           f=`/bin/mktemp`; \
77           msgmerge --verbose -o $$f ja.po $$(basename $$d) \
78             && mv -f $$f ja.po; \
79           cd $$cur; \
80         done
81
82 postats:        jm-setup
83         @LC_ALL=C $(MAKE) stats \
84           PO4AFLAGS="$(PO4AFLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR)
85
86 untrans-postats:        jm-setup
87         @LC_ALL=C $(MAKE) stats \
88           PO4AFLAGS="$(PO4AFLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR) \
89           2>&1 | grep -vE ' translated messages\.$$'
90
91 jm-setup:       stamp-jm-setup
92 stamp-jm-setup:
93         @# Create symlink to po4a/*/po in the top dir.
94         set -e; for d in $(PERKAMON_DIR)/po4a/*; do \
95           if [ ! -e $$d/po ]; then \
96             t=$$(echo $$d | sed -e "s|$(PERKAMON_DIR)/||"); \
97             ln -s ../../../$$t/po $$d/po; \
98           fi; \
99         done
100         cd $(PERKAMON_DIR) && make setup
101         @set -e; if [ ! -e $(PERKAMON_DIR)/build/ja ]; then \
102           ln -s ../../draft $(PERKAMON_DIR)/build/ja; \
103         fi
104         touch $@
105
106 clean-setup:
107         $(RM) stamp-jm-setup
108         $(RM) $(PERKAMON_DIR)/man-pages || true
109         $(RM) $(PERKAMON_DIR)/stamp-*
110         $(RM) -rf $(PERKAMON_DIR)/build
111         find $(PERKAMON_DIR) -type l | xargs $(RM)
112
113 help:
114         @echo "Available targets:"
115         @echo "   translate       Generate draft from po files"
116         @echo "   translate-<SEC> Generate draft from the specified po file"
117         @echo "   release         Generate release from po files"
118         @echo ""
119         @echo "   update-stats    Update per-page trans stats"
120         @echo "   clean-stats     Remove all caches of per-page trans stats"
121         @echo "   postats         Display per-po trans stats"
122         @echo "   untrans-postats Display per-po trans stats (untrans only)"
123         @echo ""
124         @echo "   jm-setup        Setup perkamon environment"
125         @echo "   clean-setup     Clean perkamon environment"