X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=Makefile;h=f697816eebd1399d6b418b8f1370378eede437ad;hb=c08c5c2fcad3965c901ce568ff80b9a1e5b564f1;hp=d6d7780748c54184a085c0636edfeee4e4d96619;hpb=bffd209ff268998b21b2350c938c2041de97a4da;p=linuxjm%2FLDP_man-pages.git diff --git a/Makefile b/Makefile index d6d77807..f697816e 100644 --- a/Makefile +++ b/Makefile @@ -5,53 +5,62 @@ THRESH_REL = 80 FLAGS ?= PO4AFLAGS ?= -k $(THRESH) $(FLAGS) -all: translate +PO4A_SUBDIRS = $(notdir $(wildcard po4a/*)) -translate: jm-setup - LC_ALL=C $(MAKE) translate \ - PO4AFLAGS="$(PO4AFLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR) - @# I don't know why untrans.txt is generated in release target - $(RM) untrans.txt +.PHONY: all release translate + +all: translate +translate: translate-pages update-stats +release: release-pages update-tl-finish check-tl-nofinish -translate-%: jm-setup - LC_ALL=C $(MAKE) translate-$* \ +translate-pages: $(patsubst %, stamp/%, $(PO4A_SUBDIRS)) +stamp/%: stamp-jm-setup po4a/%/po/ja.po + @echo "*************** translate: $* ***************" + mkdir -p stamp + LC_ALL=C $(MAKE) process-$* \ PO4AFLAGS="$(PO4AFLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR) + touch $@ -release: jm-setup - rm -f $(PERKAMON_DIR)/build/ja - ln -s ../../release $(PERKAMON_DIR)/build/ja - LC_ALL=C $(MAKE) translate \ - PO4AFLAGS="-k $(THRESH_REL) $(FLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR) - $(RM) $(PERKAMON_DIR)/build/ja - ln -s ../../draft $(PERKAMON_DIR)/build/ja - @# Do not remove unreleased pages - @sleep 1 - set -e; if git status release | grep deleted >/dev/null; then \ - git status release | grep deleted | awk '{print $$3;}' | xargs -n1 echo; \ - git status release | grep deleted | awk '{print $$3;}' | xargs -n1 git checkout; \ - fi - @# I don't know why untrans.txt is generated in release target - $(RM) untrans.txt +release-pages: + ../../admin/JM-release-all.sh -c -update-stats: jm-setup - mkdir _transtmp +update-stats: untrans.html + +untrans.html: $(patsubst %, stats/%, $(PO4A_SUBDIRS)) + @echo "*************** Updating translation statistics ***************" + ./tools/generate-list.pl $^ > $@ + +stats/%: stamp-jm-setup po4a/%/po/ja.po + @echo "*************** stats: $* ***************" + mkdir -p stats + mkdir -p _transtmp $(RM) $(PERKAMON_DIR)/build/ja ln -s ../../_transtmp $(PERKAMON_DIR)/build/ja - LC_ALL=C $(MAKE) translate \ + LC_ALL=C $(MAKE) process-$* \ PO4AFLAGS="-k 100 $(FLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR) \ | tee _log.txt - ./untrans-list.pl < _log.txt > untrans.html + ./tools/extract-untrans.pl < _log.txt > $@ $(RM) $(PERKAMON_DIR)/build/ja ln -s ../../draft $(PERKAMON_DIR)/build/ja $(RM) -r _transtmp $(RM) _log.txt - @# I don't know why untrans.txt is generated in release target - $(RM) untrans.txt -release-tl: - set -e; if git status release | grep modified >/dev/null; then \ - git status release | grep modified | awk '{print $$3;}' | cut -d / -f 3 | xargs -n1 -IXXXXX ../../admin/JM-tl-modify.pl -U translation_list XXXXX RO; \ - fi +clean-stats: + $(RM) -r stats + +update-tl-finish: + @cat stats/* | grep -v '^#' | cut -d , -f 1 | sort > _stats.txt + @grep '^[×☆]' translation_list | cut -d : -f 5-6 | sed -e 's/:/./' | sort > _tr_todo.txt + @for p in `comm -23 _tr_todo.txt _stats.txt`; do \ + ../../admin/JM-tl-modify.pl -U translation_list $$p RO; \ + done + @$(RM) _stats.txt _tr_todo.txt + +check-tl-nofinish: + @cat stats/* | grep -v '^#' | cut -d , -f 1 | sort > _stats.txt + @grep '^○' translation_list | cut -d : -f 5-6 | sed -e 's/:/./' | sort > _tr_finish.txt + @comm -12 _tr_finish.txt _stats.txt + @$(RM) _stats.txt _tr_finish.txt format: set -e; for d in po4a/*; do \ @@ -71,11 +80,11 @@ format-%: cd $$cur; \ done -stats: jm-setup +postats: jm-setup @LC_ALL=C $(MAKE) stats \ PO4AFLAGS="$(PO4AFLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR) -untrans-stats: jm-setup +untrans-postats: jm-setup @LC_ALL=C $(MAKE) stats \ PO4AFLAGS="$(PO4AFLAGS)" LANGS="$(LANGS)" -C $(PERKAMON_DIR) \ 2>&1 | grep -vE ' translated messages\.$$' @@ -89,17 +98,11 @@ stamp-jm-setup: ln -s ../../../$$t/po $$d/po; \ fi; \ done - @# Create symlink to original dir instead of downloading tarball. - @#cd $(PERKAMON_DIR) && \ - @# if [ ! -e man-pages ]; then \ - @# ln -s ../original man-pages; \ - @# fi && \ - @# touch stamp-unpack-release && \ - @# touch stamp-unpack cd $(PERKAMON_DIR) && make setup @set -e; if [ ! -e $(PERKAMON_DIR)/build/ja ]; then \ ln -s ../../draft $(PERKAMON_DIR)/build/ja; \ fi + ln -s ../../add_ja $(PERKAMON_DIR)/po4a touch $@ clean-setup: @@ -116,8 +119,9 @@ help: @echo " release Generate release from po files" @echo "" @echo " update-stats Update per-page trans stats" - @echo " stats Display per-po trans stats" - @echo " untrans-stats Display per-po trans stats (untrans only)" + @echo " clean-stats Remove all caches of per-page trans stats" + @echo " postats Display per-po trans stats" + @echo " untrans-postats Display per-po trans stats (untrans only)" @echo "" @echo " jm-setup Setup perkamon environment" @echo " clean-setup Clean perkamon environment"