Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/13rac1/emojione-color-font.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Erickson <eosrei@gmail.com>2016-02-13 06:01:30 +0300
committerBrad Erickson <eosrei@gmail.com>2016-02-16 11:45:43 +0300
commit22feb00e4f1a965a762061a595f3a640f52e27af (patch)
tree86525e418bbee28d4c332c4c6959330216e3de7d
parent34dc3a8570930a7bffbdaadc18c996ba3d06d177 (diff)
make: Use ramdisk storage for temporary files
17min -> 11min and far less disk churn on my machine.
-rw-r--r--Makefile34
1 files changed, 19 insertions, 15 deletions
diff --git a/Makefile b/Makefile
index d40f77f..019936e 100644
--- a/Makefile
+++ b/Makefile
@@ -1,35 +1,39 @@
+# Run with: make -j [NUMBER_OF_CPUS]
+
SVG_SOURCE := assets/emojione/assets/svg
SVG_FILES := $(wildcard $(SVG_SOURCE)/*.svg)
-SVG_TRACE_FILES := $(patsubst $(SVG_SOURCE)/%.svg, build/4-svg-trace/%.svg, $(SVG_FILES))
+SVG_TRACE_FILES := $(patsubst $(SVG_SOURCE)/%.svg, build/svg-trace/%.svg, $(SVG_FILES))
-.PHONY: build
+# Use the default Linux ramdisk, change for other systems or testing.
+TMP := /dev/shm/emojione
+.PHONY: build clean
all: EmojiOne-SVGinOT.ttf
EmojiOne-SVGinOT.ttf: build $(SVG_TRACE_FILES)
echo "done!"
-
# Create black SVG traces of the color SVGs to use as glyphs.
# 1. Make the EmojiOne SVG into a PNG with Inkscape
# 2. Make the PNG into a BMP with ImageMagick
# 3. Make the BMP into a Edge Detected PGM with mkbitmap
# 4. Make the PGM into a black SVG trace with potrace
-build/4-svg-trace/%.svg: $(SVG_SOURCE)/%.svg
- inkscape -w 1000 -h 1000 -z -e build/1-svg-png/$(*F).png $<
- convert build/1-svg-png/$(*F).png build/2-svg-bmp/$(*F).bmp
- rm build/1-svg-png/$(*F).png
- mkbitmap -g -s1 -f 10 -o build/3-svg-pgm/$(*F).pgm build/2-svg-bmp/$(*F).bmp
- rm build/2-svg-bmp/$(*F).bmp
- potrace -s --height 1000pt --width 1000pt -o $@ build/3-svg-pgm/$(*F).pgm
- rm build/3-svg-pgm/$(*F).pgm
+build/svg-trace/%.svg: $(SVG_SOURCE)/%.svg
+ inkscape -w 1000 -h 1000 -z -e $(TMP)/$(*F).png $<
+ convert $(TMP)/$(*F).png $(TMP)/$(*F).bmp
+ rm $(TMP)/$(*F).png
+ mkbitmap -g -s1 -f 10 -o $(TMP)/$(*F).pgm $(TMP)/$(*F).bmp
+ rm $(TMP)/$(*F).bmp
+ potrace -s --height 1000pt --width 1000pt -o $@ $(TMP)/$(*F).pgm
+ rm $(TMP)/$(*F).pgm
# Create the build directories
build:
+ mkdir -p $(TMP)
mkdir -p build
- mkdir -p build/1-svg-png
- mkdir -p build/2-svg-bmp
- mkdir -p build/3-svg-pgm
- mkdir -p build/4-svg-trace
+ mkdir -p build/svg-trace
+
+clean:
+ rm -rf build