Makefile 921 B

12345678910111213141516171819202122232425262728293031
  1. LFS_EN = /home/xry111/svn-repos/LFS-BOOK
  2. MLANG=zh_CN
  3. ALL_XML_FILES = $(shell find $(LFS_EN) -type f -name '*.xml')
  4. XML_FILES = $(filter-out $(LFS_EN)/chapter01/changelog.xml, $(ALL_XML_FILES))
  5. PO_FILES = $(patsubst $(LFS_EN)/%.xml, $(MLANG)/%.po, $(XML_FILES))
  6. run: $(PO_FILES)
  7. $(MLANG)/%.po: $(LFS_EN)/%.xml
  8. mkdir -pv "$(@D)"
  9. po4a-updatepo -f docbook -m $< -p $@
  10. MXML_FILES = $(patsubst $(LFS_EN)/%.xml, %.xml, $(XML_FILES))
  11. BOOK_FILES = $(patsubst $(LFS_EN)/%, %, $(shell find $(LFS_EN) -type f -not -path "$(LFS_EN)/.svn/*"))
  12. KEEP_FILES = $(filter-out $(MXML_FILES), KEEP_FILES)
  13. MBOOK_FILES = $(patsubst %, $(MLANG)/book/%, $(BOOK_FILES))
  14. booksrc: $(MBOOK_FILES)
  15. $(MLANG)/book/%.xml: $(LFS_EN)/%.xml $(MLANG)/%.po
  16. mkdir -pv "$(@D)"
  17. po4a-translate -f docbook -m $< -p $(filter-out $<, $^) -l $@
  18. [ -e $@ ] || cp -v $< $@
  19. $(MLANG)/book/%: $(LFS_EN)/%
  20. mkdir -pv "$(@D)"
  21. cp -v $< $@
  22. test:
  23. echo $(XML_FILES)