.PHONY: all clean ttf web pack check NAME=amiri VERSION=0.104 TOOLS=tools SRC=sources WEB=web DOC=documentation TESTS=test-suite FONTS=$(NAME)-regular $(NAME)-bold $(NAME)-slanted $(NAME)-boldslanted DOCS=README README-Arabic NEWS NEWS-Arabic DIST=$(NAME)-$(VERSION) BUILD=$(TOOLS)/build.py RUNTEST=$(TOOLS)/runtest.py FF=python $(BUILD) SFNTTOOL=sfnttool SFDS=$(FONTS:%=$(SRC)/%.sfd) DTTF=$(FONTS:%=%.ttf) WTTF=$(FONTS:%=$(WEB)/%.ttf) WOFF=$(FONTS:%=$(WEB)/%.woff) EOTS=$(FONTS:%=$(WEB)/%.eot) PDFS=$(DOC)/$(NAME)-table.pdf HTML=$(DOC)/documentation-arabic.html CSSS=$(WEB)/$(NAME).css FEAT=$(wildcard $(SRC)/*.fea) TEST=$(wildcard $(TESTS)/*.test) TEST+=$(wildcard $(TESTS)/*.ptest) DOCFILES=$(DOCS:%=$(DOC)/%.txt) license=OFL.txt OFL-FAQ.txt all: ttf web ttf: $(DTTF) web: $(WTTF) $(WOFF) $(EOTS) $(CSSS) doc: $(PDFS) $(HTML) $(NAME)-regular.ttf: $(SRC)/$(NAME)-regular.sfd $(SRC)/$(NAME)-regular.fea $(FEAT) $(BUILD) @echo " FF\t$@" @$(FF) --input $< --output $@ --features=$(SRC)/$(NAME)-regular.fea --version $(VERSION) $(NAME)-slanted.ttf: $(SRC)/$(NAME)-regular.sfd $(SRC)/$(NAME)-slanted.fea $(FEAT) $(BUILD) @echo " FF\t$@" @$(FF) --input $< --output $@ --features=$(SRC)/$(NAME)-slanted.fea --version $(VERSION) --slant=7 $(NAME)-bold.ttf: $(SRC)/$(NAME)-bold.sfd $(SRC)/$(NAME)-regular.fea $(FEAT) $(BUILD) @echo " FF\t$@" @$(FF) --input $< --output $@ --features=$(SRC)/$(NAME)-regular.fea --version $(VERSION) $(NAME)-boldslanted.ttf: $(SRC)/$(NAME)-bold.sfd $(SRC)/$(NAME)-slanted.fea $(FEAT) $(BUILD) @echo " FF\t$@" @$(FF) --input $< --output $@ --features=$(SRC)/$(NAME)-slanted.fea --version $(VERSION) --slant=7 $(WEB)/%.ttf: %.ttf $(BUILD) @echo " FF\t$@" @mkdir -p $(WEB) @$(FF) --input $< --output $@ --web 1>/dev/null 2>&1 $(WEB)/%.woff: $(WEB)/%.ttf @echo " FF\t$@" @mkdir -p $(WEB) @$(SFNTTOOL) -w $< $@ $(WEB)/%.eot: $(WEB)/%.ttf @echo " FF\t$@" @mkdir -p $(WEB) @$(SFNTTOOL) -e -x $< $@ $(WEB)/%.css: $(WTTF) $(BUILD) @echo " GEN\t$@" @mkdir -p $(WEB) @$(FF) --css --input "$(WTTF)" --output $@ --version $(VERSION) $(DOC)/$(NAME)-table.pdf: $(NAME)-regular.ttf @echo " GEN\t$@" @mkdir -p $(DOC) @fntsample --font-file $< --output-file $@.tmp --print-outline > $@.txt @pdfoutline $@.tmp $@.txt $@ @rm -f $@.tmp $@.txt $(DOC)/documentation-arabic.html: $(DOC)/documentation-sources/documentation-arabic.md @echo " GEN\t$@" @pandoc $< -o $@ -f markdown -t html -s -c documentation-arabic.css --toc check: $(TEST) $(DTTF) ifeq ($(shell which hb-shape),) @echo "hb-shape not found, skipping tests" else @echo "running tests" @$(RUNTEST) $(TEST) endif clean: rm -rfv $(DTTF) $(WTTF) $(WOFF) $(EOTS) $(CSSS) $(PDFS)