]>
Commit | Line | Data |
---|---|---|
7a9e5112 | 1 | SHELL=/bin/bash |
2 | ENV ?= dev | |
3 | export PATH := $(PATH):./node_modules/.bin | |
4 | ||
5 | SRC_DIR=js | |
6 | BUILD_DIR=build/js | |
d5b8f0ff | 7 | JSX_SRC= header_footer.jsx main.jsx signup.jsx signin.jsx otp.jsx poloniex.jsx password_reset.jsx change_password.jsx account.jsx balance.jsx admin.jsx panel.jsx |
7a9e5112 | 8 | JS_SRC= cookies.js app.js api.js |
bf5deb87 | 9 | STATIC_FILES= index.html style.css fontello.css |
d5b8f0ff | 10 | STATIC_FILES+=$(addprefix fonts/, fontello.eot fontello.svg fontello.ttf fontello.woff fontello.woff2 cryptocoins.css cryptocoins.ttf cryptocoins.woff cryptocoins.woff2) |
7a9e5112 | 11 | JSX_OBJS=$(addprefix $(BUILD_DIR)/,$(JSX_SRC:.jsx=.js)) |
12 | JS_OBJS=$(addprefix $(BUILD_DIR)/,$(JS_SRC)) | |
6b3f0ad0 | 13 | ICONS=$(addprefix $(STATIC_BUILD_DIR)/icons/black/, $(notdir $(wildcard static/icons/black/*.svg))) |
14 | ICONS+=$(addprefix $(STATIC_BUILD_DIR)/icons/color/, $(notdir $(wildcard static/icons/color/*.svg))) | |
7a9e5112 | 15 | STATIC_BUILD_DIR=build/static |
16 | ||
17 | install: | |
18 | node --version | |
19 | npm --version | |
20 | yarn --version | |
21 | yarn install | |
22 | ||
78e3e81d | 23 | static: $(STATIC_BUILD_DIR) $(STATIC_BUILD_DIR)/fonts js $(addprefix $(STATIC_BUILD_DIR)/, $(STATIC_FILES)) $(ICONS) |
7a9e5112 | 24 | |
25 | js: build/static/main.js | |
26 | ||
2f91f20a | 27 | $(STATIC_BUILD_DIR)/%: static/% |
28 | cp $< $@ | |
7a9e5112 | 29 | |
2f91f20a | 30 | $(STATIC_BUILD_DIR): |
31 | mkdir -p $(BUILD_DIR) | |
32 | mkdir -p $@ | |
6b3f0ad0 | 33 | mkdir -p $@/icons/black |
34 | mkdir -p $@/icons/color | |
78e3e81d | 35 | |
36 | $(STATIC_BUILD_DIR)/fonts: | |
37 | mkdir -p $@ | |
7a9e5112 | 38 | |
39 | $(BUILD_DIR)/%.js: $(SRC_DIR)/%.jsx | |
989fb5c7 | 40 | eslint --fix $< |
41 | cp $< $@ | |
7a9e5112 | 42 | |
43 | $(BUILD_DIR)/%.js: $(SRC_DIR)/%.js | |
989fb5c7 | 44 | eslint $< |
7a9e5112 | 45 | cp $< $@ |
7a9e5112 | 46 | |
6b3f0ad0 | 47 | $(STATIC_BUILD_DIR)/icons/black/%.svg: static/icons/black/%.svg |
48 | cp $< $@ | |
49 | ||
7a9e5112 | 50 | build/static/main.js: $(JSX_OBJS) $(JS_OBJS) env/$(ENV).env |
989fb5c7 | 51 | browserify -t [ babelify --presets [ env react ] --plugins [ transform-class-properties ] ] \ |
52 | -t [ localenvify --envfile env/$(ENV).env ] \ | |
53 | -t [ debowerify ] \ | |
54 | $(BUILD_DIR)/main.js -o $@ | |
7a9e5112 | 55 | |
6b3f0ad0 | 56 | build/webapp.tar.gz: $(addprefix $(STATIC_BUILD_DIR)/, $(STATIC_FILES)) build/static/main.js $(ICONS) |
57 | tar czf $@ --directory=$(dir $<) $(subst $(STATIC_BUILD_DIR)/,,$^) | |
7a9e5112 | 58 | |
2f91f20a | 59 | release: $(STATIC_BUILD_DIR) build/webapp.tar.gz |
7a9e5112 | 60 | |
61 | clean: | |
62 | rm -rf build | |
2f91f20a | 63 | rm -rf node_modules |
bf5deb87 | 64 | |
65 | ||
66 | FONT_DIR = ./static/fontello | |
67 | FONTELLO_HOST ?= http://fontello.com | |
68 | ||
d5b8f0ff | 69 | crypto-icons: |
70 | curl "https://raw.githubusercontent.com/AllienWorks/cryptocoins/master/webfont/cryptocoins.css" > ./static/fonts/cryptocoins.css | |
71 | curl "https://raw.githubusercontent.com/AllienWorks/cryptocoins/master/webfont/cryptocoins.ttf" > ./static/fonts/cryptocoins.ttf | |
72 | curl "https://raw.githubusercontent.com/AllienWorks/cryptocoins/master/webfont/cryptocoins.woff" > ./static/fonts/cryptocoins.woff | |
73 | curl "https://raw.githubusercontent.com/AllienWorks/cryptocoins/master/webfont/cryptocoins.woff2" > ./static/fonts/cryptocoins.woff2 | |
74 | ||
bf5deb87 | 75 | fontopen: |
76 | @if test ! `which curl` ; then \ | |
77 | echo 'Install curl first.' >&2 ; \ | |
78 | exit 128 ; \ | |
79 | fi | |
80 | curl --silent --show-error --fail --output .fontello \ | |
81 | --form "config=@fontello_config.json" \ | |
82 | ${FONTELLO_HOST} | |
83 | x-www-browser ${FONTELLO_HOST}/`cat .fontello` | |
84 | ||
85 | ||
86 | fontsave: | |
87 | @if test ! `which unzip` ; then \ | |
88 | echo 'Install unzip first.' >&2 ; \ | |
89 | exit 128 ; \ | |
90 | fi | |
91 | @if test ! -e .fontello ; then \ | |
92 | echo 'Run `make fontopen` first.' >&2 ; \ | |
93 | exit 128 ; \ | |
94 | fi | |
95 | rm -rf .fontello.src .fontello.zip | |
96 | curl --silent --show-error --fail --output .fontello.zip \ | |
97 | ${FONTELLO_HOST}/`cat .fontello`/get | |
98 | unzip .fontello.zip -d .fontello.src | |
99 | rm -rf ${FONT_DIR} | |
100 | mv `find ./.fontello.src -maxdepth 1 -name 'fontello-*'` ${FONT_DIR} | |
101 | rm -rf .fontello.src .fontello.zip | |
102 | cp ${FONT_DIR}/font/* static/fonts/ | |
103 | cp ${FONT_DIR}/css/fontello-codes.css static/fontello.css | |
104 | rm -rf ${FONT_DIR} |