107 lines
5.1 KiB
Makefile
107 lines
5.1 KiB
Makefile
OBJDIR = build
|
|
SUPPORT_FILES = support/glyph.js support/stroke.js support/spiroexpand.js support/spirokit.js parameters.js extract.js generate.js emptyfont.toml parameters.toml
|
|
GLYPH_SEGMENTS = glyphs/common-shapes.patel glyphs/overmarks.patel glyphs/latin-basic-capital.patel glyphs/latin-basic-lower.patel glyphs/greek.patel glyphs/cyrillic-basic.patel glyphs/latin-extend-basis.patel glyphs/latin-extend-decorated.patel glyphs/cyrillic-extended.patel glyphs/numbers.patel glyphs/symbol-ascii.patel glyphs/symbol-punctuation.patel glyphs/symbol-math.patel glyphs/symbol-geometric.patel glyphs/symbol-other.patel glyphs/symbol-letter.patel glyphs/autobuilds.patel
|
|
FILES = $(SUPPORT_FILES) buildglyphs.js
|
|
PARAM_DEFAULT = FAST='$(FAST)' SUFFIX='' VARIANTNAME='$(VARIANTNAME)' STYLE_COMMON='$(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' VERSION='$(VERSION)'
|
|
PARAM_SLAB = FAST='$(FAST)' SUFFIX='-slab' VARIANTNAME='$(VARIANTNAME)' STYLE_COMMON='slab $(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' STYLE_X_REGULAR='x-slab-regular' STYLE_X_BOLD='x-slab-bold' STYLE_X_ITALIC='x-slab-italic' STYLE_X_BOLDITALIC='x-slab-bolditalic' VERSION='$(VERSION)'
|
|
PARAM_CC = FAST='$(FAST)' SUFFIX='cc' VARIANTNAME='$(VARIANTNAME)' STYLE_COMMON='cc $(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' VERSION='$(VERSION)'
|
|
PARAM_CC_SLAB = FAST='$(FAST)' SUFFIX='cc-slab' VARIANTNAME='$(VARIANTNAME)' STYLE_COMMON='cc slab x-cc-slab $(STYLE_COMMON)' STYLE_UPRIGHT='$(STYLE_UPRIGHT)' STYLE_ITALIC='$(STYLE_ITALIC)' STYLE_X_REGULAR='x-slab-regular' STYLE_X_BOLD='x-slab-bold' STYLE_X_ITALIC='x-slab-italic' STYLE_X_BOLDITALIC='x-slab-bolditalic' VERSION='$(VERSION)'
|
|
|
|
### Sometimes make will freak out and report ACCESS VIOLATION for me... so i have to add some repeation
|
|
ifeq ($(OS),Windows_NT)
|
|
LOOPS = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
|
else
|
|
LOOPS = 1
|
|
endif
|
|
|
|
fonts : fonts-default fonts-cc fonts-slab fonts-cc-slab
|
|
test : test-default test-cc test-slab test-cc-slab
|
|
pages : pages-default pages-cc pages-slab pages-cc-slab
|
|
release : release-default release-cc release-slab release-cc-slab
|
|
|
|
$(OBJDIR) :
|
|
@- mkdir $@
|
|
|
|
|
|
# fdts
|
|
fdts-default : $(FILES) | $(OBJDIR)
|
|
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_DEFAULT) LOOP=$(var);)
|
|
fdts-slab : $(FILES) | $(OBJDIR)
|
|
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_SLAB) LOOP=$(var);)
|
|
fdts-cc : $(FILES) | $(OBJDIR)
|
|
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_CC) LOOP=$(var);)
|
|
fdts-cc-slab : $(FILES) | $(OBJDIR)
|
|
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_CC_SLAB) LOOP=$(var);)
|
|
|
|
# ttfs
|
|
fonts-default : fdts-default
|
|
@$(MAKE) -f onegroup.mk fonts $(PARAM_DEFAULT)
|
|
fonts-slab : fdts-slab
|
|
@$(MAKE) -f onegroup.mk fonts $(PARAM_SLAB)
|
|
fonts-cc : fdts-cc
|
|
@$(MAKE) -f onegroup.mk fonts $(PARAM_CC)
|
|
fonts-cc-slab : fdts-cc-slab
|
|
@$(MAKE) -f onegroup.mk fonts $(PARAM_CC_SLAB)
|
|
|
|
|
|
### USED FOR TESTING AND RELEASING
|
|
### DO NOT TOUCH!
|
|
# testdrive
|
|
test-default : fonts-default
|
|
@$(MAKE) -f onegroup.mk test $(PARAM_DEFAULT)
|
|
test-slab : fonts-slab
|
|
@$(MAKE) -f onegroup.mk test $(PARAM_SLAB)
|
|
test-cc : fonts-cc
|
|
@$(MAKE) -f onegroup.mk test $(PARAM_CC)
|
|
test-cc-slab : fonts-cc-slab
|
|
@$(MAKE) -f onegroup.mk test $(PARAM_CC_SLAB)
|
|
|
|
# Pages
|
|
pages-default : fonts-default
|
|
@$(MAKE) -f onegroup.mk pages $(PARAM_DEFAULT)
|
|
pages-slab : fonts-slab
|
|
@$(MAKE) -f onegroup.mk pages $(PARAM_SLAB)
|
|
pages-cc : fonts-cc
|
|
@$(MAKE) -f onegroup.mk pages $(PARAM_CC)
|
|
pages-cc-slab : fonts-cc-slab
|
|
@$(MAKE) -f onegroup.mk pages $(PARAM_CC_SLAB)
|
|
|
|
# Release
|
|
release-default : fonts-default
|
|
@$(MAKE) -f onegroup.mk release $(PARAM_DEFAULT)
|
|
release-slab : fonts-slab
|
|
@$(MAKE) -f onegroup.mk release $(PARAM_SLAB)
|
|
release-cc : fonts-cc
|
|
@$(MAKE) -f onegroup.mk release $(PARAM_CC)
|
|
release-cc-slab : fonts-cc-slab
|
|
@$(MAKE) -f onegroup.mk release $(PARAM_CC_SLAB)
|
|
|
|
# Archives
|
|
archives-default : fonts-default
|
|
@$(MAKE) -f onegroup.mk archives $(PARAM_DEFAULT)
|
|
archives-slab : fonts-slab
|
|
@$(MAKE) -f onegroup.mk archives $(PARAM_SLAB)
|
|
archives-cc : fonts-cc
|
|
@$(MAKE) -f onegroup.mk archives $(PARAM_CC)
|
|
archives-cc-slab : fonts-cc-slab
|
|
@$(MAKE) -f onegroup.mk archives $(PARAM_CC_SLAB)
|
|
|
|
# Variant releases
|
|
releasepack-default : $(FILES) | $(OBJDIR)
|
|
$(MAKE) pages release VERSION=$(VERSION)
|
|
releasepack-hooky : $(FILES) | $(OBJDIR)
|
|
$(MAKE) archives-default archives-cc VERSION=$(VERSION) VARIANTNAME='variant-hooky-' STYLE_UPRIGHT='v-l-hooky v-i-hooky'
|
|
releasepack-zshaped : $(FILES) | $(OBJDIR)
|
|
$(MAKE) archives-default archives-cc VERSION=$(VERSION) VARIANTNAME='variant-zshaped-' STYLE_UPRIGHT='v-l-zshaped v-i-zshaped'
|
|
release-all : releasepack-default releasepack-hooky releasepack-zshaped
|
|
|
|
$(SUPPORT_FILES) :
|
|
patel-c --strict $< -o $@
|
|
|
|
buildglyphs.js : buildglyphs.patel $(GLYPH_SEGMENTS)
|
|
patel-c --optimize --mangle --strict $< -o $@
|
|
support/glyph.js : support/glyph.patel
|
|
support/stroke.js : support/stroke.patel
|
|
support/spirokit.js : support/spirokit.patel
|
|
support/spiroexpand.js : support/spiroexpand.patel
|
|
parameters.js : parameters.patel |