Change line endings.
This commit is contained in:
parent
2546c0af4e
commit
3dc8a35782
184
makefile
184
makefile
|
@ -1,93 +1,93 @@
|
|||
default: fonts
|
||||
|
||||
OBJDIR = build
|
||||
include makesupport.mk
|
||||
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
|
||||
LOOPS = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
||||
|
||||
fdts : fdts-default fdts-cc fdts-slab fdts-cc-slab
|
||||
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 : $(SCRIPTS) | $(OBJDIR)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_DEFAULT) LOOP=$(var);)
|
||||
fdts-slab : $(SCRIPTS) | $(OBJDIR)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_SLAB) LOOP=$(var);)
|
||||
fdts-cc : $(SCRIPTS) | $(OBJDIR)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_CC) LOOP=$(var);)
|
||||
fdts-cc-slab : $(SCRIPTS) | $(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 : $(SCRIPTS) | $(OBJDIR)
|
||||
$(MAKE) pages release VERSION=$(VERSION)
|
||||
releasepack-hooky : $(SCRIPTS) | $(OBJDIR)
|
||||
$(MAKE) archives-default archives-cc VERSION=$(VERSION) VARIANTNAME='variant-hooky-' STYLE_UPRIGHT='v-l-hooky v-i-hooky'
|
||||
releasepack-zshaped : $(SCRIPTS) | $(OBJDIR)
|
||||
$(MAKE) archives-default archives-cc VERSION=$(VERSION) VARIANTNAME='variant-zshaped-' STYLE_UPRIGHT='v-l-zshaped v-i-zshaped'
|
||||
default: fonts
|
||||
|
||||
OBJDIR = build
|
||||
include makesupport.mk
|
||||
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
|
||||
LOOPS = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
||||
|
||||
fdts : fdts-default fdts-cc fdts-slab fdts-cc-slab
|
||||
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 : $(SCRIPTS) | $(OBJDIR)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_DEFAULT) LOOP=$(var);)
|
||||
fdts-slab : $(SCRIPTS) | $(OBJDIR)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_SLAB) LOOP=$(var);)
|
||||
fdts-cc : $(SCRIPTS) | $(OBJDIR)
|
||||
@$(foreach var,$(LOOPS),$(MAKE) -s -f onegroup.mk fdts $(PARAM_CC) LOOP=$(var);)
|
||||
fdts-cc-slab : $(SCRIPTS) | $(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 : $(SCRIPTS) | $(OBJDIR)
|
||||
$(MAKE) pages release VERSION=$(VERSION)
|
||||
releasepack-hooky : $(SCRIPTS) | $(OBJDIR)
|
||||
$(MAKE) archives-default archives-cc VERSION=$(VERSION) VARIANTNAME='variant-hooky-' STYLE_UPRIGHT='v-l-hooky v-i-hooky'
|
||||
releasepack-zshaped : $(SCRIPTS) | $(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
|
|
@ -1,20 +1,20 @@
|
|||
SUPPORT_FILES_FROM_PATEL = support/glyph.js support/stroke.js support/spiroexpand.js support/spirokit.js parameters.js
|
||||
SUPPORT_FILES = $(SUPPORT_FILES_FROM_PATEL) 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-punctuation.patel glyphs/symbol-math.patel glyphs/symbol-geometric.patel glyphs/symbol-other.patel glyphs/symbol-letter.patel glyphs/autobuilds.patel
|
||||
SCRIPTS = $(SUPPORT_FILES) buildglyphs.js
|
||||
SCRIPTS_FROM_PATEL = $(SUPPORT_FILES_FROM_PATEL) buildglyphs.js
|
||||
|
||||
buildglyphs.js : buildglyphs.patel $(GLYPH_SEGMENTS)
|
||||
patel-c --optimize --strict $< -o $@
|
||||
|
||||
$(SUPPORT_FILES_FROM_PATEL) :
|
||||
patel-c --optimize --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
|
||||
|
||||
cleanscripts :
|
||||
-@rm $(SCRIPTS_FROM_PATEL)
|
||||
SUPPORT_FILES_FROM_PATEL = support/glyph.js support/stroke.js support/spiroexpand.js support/spirokit.js parameters.js
|
||||
SUPPORT_FILES = $(SUPPORT_FILES_FROM_PATEL) 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-punctuation.patel glyphs/symbol-math.patel glyphs/symbol-geometric.patel glyphs/symbol-other.patel glyphs/symbol-letter.patel glyphs/autobuilds.patel
|
||||
SCRIPTS = $(SUPPORT_FILES) buildglyphs.js
|
||||
SCRIPTS_FROM_PATEL = $(SUPPORT_FILES_FROM_PATEL) buildglyphs.js
|
||||
|
||||
buildglyphs.js : buildglyphs.patel $(GLYPH_SEGMENTS)
|
||||
patel-c --optimize --strict $< -o $@
|
||||
|
||||
$(SUPPORT_FILES_FROM_PATEL) :
|
||||
patel-c --optimize --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
|
||||
|
||||
cleanscripts :
|
||||
-@rm $(SCRIPTS_FROM_PATEL)
|
||||
scripts : $(SCRIPTS)
|
238
onegroup.mk
238
onegroup.mk
|
@ -1,120 +1,120 @@
|
|||
default: fonts
|
||||
|
||||
TARGETUPM = 1000
|
||||
OBJDIR = build
|
||||
include makesupport.mk
|
||||
PREFIX = $(VARIANTNAME)iosevka$(SUFFIX)
|
||||
|
||||
# Change this when an error reports
|
||||
# On windows, maybe `2> NUL`.
|
||||
|
||||
ifeq ($(OS),Windows_NT)
|
||||
SHELL = C:\\Windows\\System32\\cmd.exe
|
||||
SUPPRESS_ERRORS = 2> NUL
|
||||
else
|
||||
SUPPRESS_ERRORS = 2> /dev/null
|
||||
endif
|
||||
|
||||
NODE = node --max_executable_size=4096
|
||||
|
||||
UPRIGHT = $(OBJDIR)/$(PREFIX)-regular.ttf $(OBJDIR)/$(PREFIX)-bold.ttf
|
||||
ITALIC = $(OBJDIR)/$(PREFIX)-italic.ttf $(OBJDIR)/$(PREFIX)-bolditalic.ttf
|
||||
TARGETS = $(UPRIGHT) $(ITALIC)
|
||||
MAPS = $(subst .ttf,.charmap,$(TARGETS))
|
||||
|
||||
FDTS = $(subst .ttf,.fdt,$(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(TARGETS)))
|
||||
PASS0 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(TARGETS))
|
||||
ABFEAT = $(subst .ttf,.ab.fea,$(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(TARGETS)))
|
||||
FEATURE = $(subst .ttf,.fea,$(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(UPRIGHT)))
|
||||
FEATITA = $(subst .ttf,.fea,$(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(ITALIC)))
|
||||
PASS1 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(TARGETS))
|
||||
PASS1 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass1-,$(TARGETS))
|
||||
PASS2 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass2-,$(TARGETS))
|
||||
PASS3 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass3-,$(TARGETS))
|
||||
PASS4 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass4-,$(TARGETS))
|
||||
|
||||
fonts : $(TARGETS)
|
||||
|
||||
fdts : $(FDTS)
|
||||
|
||||
# Pass 0 : file construction
|
||||
$(OBJDIR)/.pass0-$(PREFIX)-regular.fdt : $(SCRIPTS) | $(OBJDIR)
|
||||
$(NODE) generate -o $@ iosevka $(STYLE_COMMON) w-book s-upright x-regular $(STYLE_UPRIGHT) $(STYLE_X_REGILAR)
|
||||
$(OBJDIR)/.pass0-$(PREFIX)-bold.fdt : $(SCRIPTS) | $(OBJDIR)
|
||||
$(NODE) generate -o $@ iosevka $(STYLE_COMMON) w-bold s-upright x-bold $(STYLE_UPRIGHT) $(STYLE_X_BOLD)
|
||||
$(OBJDIR)/.pass0-$(PREFIX)-italic.fdt : $(SCRIPTS) | $(OBJDIR)
|
||||
$(NODE) generate -o $@ iosevka $(STYLE_COMMON) w-book s-italic x-italic $(STYLE_ITALIC) $(STYLE_X_ITALIC)
|
||||
$(OBJDIR)/.pass0-$(PREFIX)-bolditalic.fdt : $(SCRIPTS) | $(OBJDIR)
|
||||
$(NODE) generate -o $@ iosevka $(STYLE_COMMON) w-bold s-italic x-bolditalic $(STYLE_ITALIC) $(STYLE_X_BOLDITALIC)
|
||||
|
||||
$(PASS0) : $(OBJDIR)/.pass0-%.ttf : $(OBJDIR)/.pass0-%.fdt
|
||||
$(NODE) extract --upm 12800 --uprightify 1 --ttf $@ $<
|
||||
$(ABFEAT) : $(OBJDIR)/.pass0-%.ab.fea : $(OBJDIR)/.pass0-%.fdt
|
||||
$(NODE) extract --feature $@ $<
|
||||
$(MAPS) : $(OBJDIR)/%.charmap : $(OBJDIR)/.pass0-%.fdt
|
||||
$(NODE) extract --charmap $@ $<
|
||||
$(FEATURE) : $(OBJDIR)/.pass0-%.fea : $(OBJDIR)/.pass0-%.ab.fea features/common.fea features/uprightonly.fea
|
||||
cat $^ > $@
|
||||
$(FEATITA) : $(OBJDIR)/.pass0-%.fea : $(OBJDIR)/.pass0-%.ab.fea features/common.fea features/italiconly.fea
|
||||
cat $^ > $@
|
||||
|
||||
|
||||
# Pass 1 : Outline cleanup and merge
|
||||
$(PASS1) : $(OBJDIR)/.pass1-%.ttf : pass1-cleanup.py $(OBJDIR)/.pass0-%.ttf
|
||||
fontforge -quiet -script $^ $@ $(FAST) $(SUPPRESS_ERRORS)
|
||||
$(PASS2) : $(OBJDIR)/.pass2-%.ttf : pass2-smartround.js $(OBJDIR)/.pass1-%.ttf
|
||||
$(NODE) $^ $@ --upm $(TARGETUPM)
|
||||
$(PASS3) : $(OBJDIR)/.pass3-%.ttf : pass3-features.py $(OBJDIR)/.pass2-%.ttf $(OBJDIR)/.pass0-%.fea
|
||||
fontforge -quiet -script $^ $@ $(TARGETUPM) $(SUPPRESS_ERRORS)
|
||||
$(PASS4) : $(OBJDIR)/.pass4-%.ttf : pass4-finalize.js $(OBJDIR)/.pass3-%.ttf
|
||||
@$(NODE) $^ $@.a.ttf
|
||||
@ttx -q -o $@.a.ttx $@.a.ttf $(SUPPRESS_ERRORS)
|
||||
@ttx -q -o $@ $@.a.ttx $(SUPPRESS_ERRORS)
|
||||
@rm $@.a.ttf $@.a.ttx
|
||||
$(TARGETS) : $(OBJDIR)/%.ttf : $(OBJDIR)/.pass4-%.ttf
|
||||
ttfautohint $< $@
|
||||
|
||||
$(OBJDIR) :
|
||||
@- mkdir $@
|
||||
|
||||
# releaseing
|
||||
RELEASEDIR = releases
|
||||
ARCHIVEDIR = release-archives
|
||||
|
||||
RELEASES = $(subst $(OBJDIR)/,$(RELEASEDIR)/,$(TARGETS))
|
||||
$(RELEASES) : $(RELEASEDIR)/%.ttf : $(OBJDIR)/%.ttf
|
||||
cp $< $@
|
||||
|
||||
PAGEDIR = pages/assets
|
||||
PAGESTTF = $(subst $(OBJDIR)/,$(PAGEDIR)/,$(TARGETS))
|
||||
$(PAGESTTF) : $(PAGEDIR)/%.ttf : $(OBJDIR)/%.ttf
|
||||
cp $< $@
|
||||
PAGESWOFF = $(subst .ttf,.woff,$(PAGESTTF))
|
||||
$(PAGESWOFF) : $(PAGEDIR)/%.woff : $(PAGEDIR)/%.ttf
|
||||
sfnt2woff $<
|
||||
PAGESMAPS = $(subst $(OBJDIR)/,$(PAGEDIR)/,$(MAPS))
|
||||
$(PAGESMAPS) : $(PAGEDIR)/%.charmap : $(OBJDIR)/%.charmap
|
||||
cp $< $@
|
||||
|
||||
$(ARCHIVEDIR)/$(PREFIX)-$(VERSION).tar.bz2 : $(TARGETS)
|
||||
cd $(OBJDIR) && tar -cjvf ../$@ $(subst $(OBJDIR)/,,$^)
|
||||
$(ARCHIVEDIR)/$(PREFIX)-$(VERSION).zip : $(TARGETS)
|
||||
cd $(OBJDIR) && 7z a -tzip ../$@ $(subst $(OBJDIR)/,,$^)
|
||||
|
||||
archives : $(ARCHIVEDIR)/$(PREFIX)-$(VERSION).tar.bz2 $(ARCHIVEDIR)/$(PREFIX)-$(VERSION).zip
|
||||
pages : $(PAGESTTF) $(PAGESWOFF) $(PAGESMAPS)
|
||||
release : $(RELEASES) archives pages
|
||||
|
||||
# testdrive
|
||||
TESTDIR = testdrive/assets
|
||||
TESTTTF = $(subst $(OBJDIR)/,$(TESTDIR)/,$(TARGETS))
|
||||
$(TESTTTF) : $(TESTDIR)/%.ttf : $(OBJDIR)/%.ttf
|
||||
cp $< $@
|
||||
TESTWOFF = $(subst .ttf,.woff,$(TESTTTF))
|
||||
$(TESTWOFF) : $(TESTDIR)/%.woff : $(TESTDIR)/%.ttf
|
||||
sfnt2woff $<
|
||||
TESTMAPS = $(subst $(OBJDIR)/,$(TESTDIR)/,$(MAPS))
|
||||
$(TESTMAPS) : $(TESTDIR)/%.charmap : $(OBJDIR)/%.charmap
|
||||
cp $< $@
|
||||
|
||||
default: fonts
|
||||
|
||||
TARGETUPM = 1000
|
||||
OBJDIR = build
|
||||
include makesupport.mk
|
||||
PREFIX = $(VARIANTNAME)iosevka$(SUFFIX)
|
||||
|
||||
# Change this when an error reports
|
||||
# On windows, maybe `2> NUL`.
|
||||
|
||||
ifeq ($(OS),Windows_NT)
|
||||
SHELL = C:\\Windows\\System32\\cmd.exe
|
||||
SUPPRESS_ERRORS = 2> NUL
|
||||
else
|
||||
SUPPRESS_ERRORS = 2> /dev/null
|
||||
endif
|
||||
|
||||
NODE = node --max_executable_size=4096
|
||||
|
||||
UPRIGHT = $(OBJDIR)/$(PREFIX)-regular.ttf $(OBJDIR)/$(PREFIX)-bold.ttf
|
||||
ITALIC = $(OBJDIR)/$(PREFIX)-italic.ttf $(OBJDIR)/$(PREFIX)-bolditalic.ttf
|
||||
TARGETS = $(UPRIGHT) $(ITALIC)
|
||||
MAPS = $(subst .ttf,.charmap,$(TARGETS))
|
||||
|
||||
FDTS = $(subst .ttf,.fdt,$(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(TARGETS)))
|
||||
PASS0 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(TARGETS))
|
||||
ABFEAT = $(subst .ttf,.ab.fea,$(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(TARGETS)))
|
||||
FEATURE = $(subst .ttf,.fea,$(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(UPRIGHT)))
|
||||
FEATITA = $(subst .ttf,.fea,$(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(ITALIC)))
|
||||
PASS1 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass0-,$(TARGETS))
|
||||
PASS1 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass1-,$(TARGETS))
|
||||
PASS2 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass2-,$(TARGETS))
|
||||
PASS3 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass3-,$(TARGETS))
|
||||
PASS4 = $(subst $(OBJDIR)/,$(OBJDIR)/.pass4-,$(TARGETS))
|
||||
|
||||
fonts : $(TARGETS)
|
||||
|
||||
fdts : $(FDTS)
|
||||
|
||||
# Pass 0 : file construction
|
||||
$(OBJDIR)/.pass0-$(PREFIX)-regular.fdt : $(SCRIPTS) | $(OBJDIR)
|
||||
$(NODE) generate -o $@ iosevka $(STYLE_COMMON) w-book s-upright x-regular $(STYLE_UPRIGHT) $(STYLE_X_REGILAR)
|
||||
$(OBJDIR)/.pass0-$(PREFIX)-bold.fdt : $(SCRIPTS) | $(OBJDIR)
|
||||
$(NODE) generate -o $@ iosevka $(STYLE_COMMON) w-bold s-upright x-bold $(STYLE_UPRIGHT) $(STYLE_X_BOLD)
|
||||
$(OBJDIR)/.pass0-$(PREFIX)-italic.fdt : $(SCRIPTS) | $(OBJDIR)
|
||||
$(NODE) generate -o $@ iosevka $(STYLE_COMMON) w-book s-italic x-italic $(STYLE_ITALIC) $(STYLE_X_ITALIC)
|
||||
$(OBJDIR)/.pass0-$(PREFIX)-bolditalic.fdt : $(SCRIPTS) | $(OBJDIR)
|
||||
$(NODE) generate -o $@ iosevka $(STYLE_COMMON) w-bold s-italic x-bolditalic $(STYLE_ITALIC) $(STYLE_X_BOLDITALIC)
|
||||
|
||||
$(PASS0) : $(OBJDIR)/.pass0-%.ttf : $(OBJDIR)/.pass0-%.fdt
|
||||
$(NODE) extract --upm 12800 --uprightify 1 --ttf $@ $<
|
||||
$(ABFEAT) : $(OBJDIR)/.pass0-%.ab.fea : $(OBJDIR)/.pass0-%.fdt
|
||||
$(NODE) extract --feature $@ $<
|
||||
$(MAPS) : $(OBJDIR)/%.charmap : $(OBJDIR)/.pass0-%.fdt
|
||||
$(NODE) extract --charmap $@ $<
|
||||
$(FEATURE) : $(OBJDIR)/.pass0-%.fea : $(OBJDIR)/.pass0-%.ab.fea features/common.fea features/uprightonly.fea
|
||||
cat $^ > $@
|
||||
$(FEATITA) : $(OBJDIR)/.pass0-%.fea : $(OBJDIR)/.pass0-%.ab.fea features/common.fea features/italiconly.fea
|
||||
cat $^ > $@
|
||||
|
||||
|
||||
# Pass 1 : Outline cleanup and merge
|
||||
$(PASS1) : $(OBJDIR)/.pass1-%.ttf : pass1-cleanup.py $(OBJDIR)/.pass0-%.ttf
|
||||
fontforge -quiet -script $^ $@ $(FAST) $(SUPPRESS_ERRORS)
|
||||
$(PASS2) : $(OBJDIR)/.pass2-%.ttf : pass2-smartround.js $(OBJDIR)/.pass1-%.ttf
|
||||
$(NODE) $^ $@ --upm $(TARGETUPM)
|
||||
$(PASS3) : $(OBJDIR)/.pass3-%.ttf : pass3-features.py $(OBJDIR)/.pass2-%.ttf $(OBJDIR)/.pass0-%.fea
|
||||
fontforge -quiet -script $^ $@ $(TARGETUPM) $(SUPPRESS_ERRORS)
|
||||
$(PASS4) : $(OBJDIR)/.pass4-%.ttf : pass4-finalize.js $(OBJDIR)/.pass3-%.ttf
|
||||
@$(NODE) $^ $@.a.ttf
|
||||
@ttx -q -o $@.a.ttx $@.a.ttf $(SUPPRESS_ERRORS)
|
||||
@ttx -q -o $@ $@.a.ttx $(SUPPRESS_ERRORS)
|
||||
@rm $@.a.ttf $@.a.ttx
|
||||
$(TARGETS) : $(OBJDIR)/%.ttf : $(OBJDIR)/.pass4-%.ttf
|
||||
ttfautohint $< $@
|
||||
|
||||
$(OBJDIR) :
|
||||
@- mkdir $@
|
||||
|
||||
# releaseing
|
||||
RELEASEDIR = releases
|
||||
ARCHIVEDIR = release-archives
|
||||
|
||||
RELEASES = $(subst $(OBJDIR)/,$(RELEASEDIR)/,$(TARGETS))
|
||||
$(RELEASES) : $(RELEASEDIR)/%.ttf : $(OBJDIR)/%.ttf
|
||||
cp $< $@
|
||||
|
||||
PAGEDIR = pages/assets
|
||||
PAGESTTF = $(subst $(OBJDIR)/,$(PAGEDIR)/,$(TARGETS))
|
||||
$(PAGESTTF) : $(PAGEDIR)/%.ttf : $(OBJDIR)/%.ttf
|
||||
cp $< $@
|
||||
PAGESWOFF = $(subst .ttf,.woff,$(PAGESTTF))
|
||||
$(PAGESWOFF) : $(PAGEDIR)/%.woff : $(PAGEDIR)/%.ttf
|
||||
sfnt2woff $<
|
||||
PAGESMAPS = $(subst $(OBJDIR)/,$(PAGEDIR)/,$(MAPS))
|
||||
$(PAGESMAPS) : $(PAGEDIR)/%.charmap : $(OBJDIR)/%.charmap
|
||||
cp $< $@
|
||||
|
||||
$(ARCHIVEDIR)/$(PREFIX)-$(VERSION).tar.bz2 : $(TARGETS)
|
||||
cd $(OBJDIR) && tar -cjvf ../$@ $(subst $(OBJDIR)/,,$^)
|
||||
$(ARCHIVEDIR)/$(PREFIX)-$(VERSION).zip : $(TARGETS)
|
||||
cd $(OBJDIR) && 7z a -tzip ../$@ $(subst $(OBJDIR)/,,$^)
|
||||
|
||||
archives : $(ARCHIVEDIR)/$(PREFIX)-$(VERSION).tar.bz2 $(ARCHIVEDIR)/$(PREFIX)-$(VERSION).zip
|
||||
pages : $(PAGESTTF) $(PAGESWOFF) $(PAGESMAPS)
|
||||
release : $(RELEASES) archives pages
|
||||
|
||||
# testdrive
|
||||
TESTDIR = testdrive/assets
|
||||
TESTTTF = $(subst $(OBJDIR)/,$(TESTDIR)/,$(TARGETS))
|
||||
$(TESTTTF) : $(TESTDIR)/%.ttf : $(OBJDIR)/%.ttf
|
||||
cp $< $@
|
||||
TESTWOFF = $(subst .ttf,.woff,$(TESTTTF))
|
||||
$(TESTWOFF) : $(TESTDIR)/%.woff : $(TESTDIR)/%.ttf
|
||||
sfnt2woff $<
|
||||
TESTMAPS = $(subst $(OBJDIR)/,$(TESTDIR)/,$(MAPS))
|
||||
$(TESTMAPS) : $(TESTDIR)/%.charmap : $(OBJDIR)/%.charmap
|
||||
cp $< $@
|
||||
|
||||
test : $(TESTTTF) $(TESTWOFF) $(TESTMAPS)
|
Loading…
Reference in New Issue
Block a user