Makefile 1.8 KB
Newer Older
M
Mu Li 已提交
1
all: html
M
Mu Li 已提交
2

M
muli 已提交
3
build/%.ipynb: %.md build/build.yml utils.py
M
Mu Li 已提交
4
	@mkdir -p $(@D)
M
update  
Mu Li 已提交
5
	cd $(@D); python ../md2ipynb.py ../../$< ../../$@
M
Mu Li 已提交
6

M
Mu Li 已提交
7 8 9
build/%.md: %.md
	@mkdir -p $(@D)
	@cp $< $@
M
Mu Li 已提交
10

A
Aston Zhang 已提交
11
MARKDOWN = $(filter-out chapter_preface/notation.md, $(wildcard chapter_preface/*.md */index.md) chapter_appendix/install.md)
M
Mu Li 已提交
12
NOTEBOOK = $(filter-out $(MARKDOWN), $(wildcard chapter*/*.md))
M
Mu Li 已提交
13

M
Mu Li 已提交
14 15
OBJ = $(patsubst %.md, build/%.md, $(MARKDOWN)) \
	$(patsubst %.md, build/%.ipynb, $(NOTEBOOK))
M
Mu Li 已提交
16

M
muli 已提交
17 18
ORIGN_DEPS = $(wildcard img/* data/*) environment.yml utils.py README.md
DEPS = $(patsubst %, build/%, $(ORIGN_DEPS))
M
update  
Mu Li 已提交
19

M
update  
Mu Li 已提交
20 21 22 23 24 25 26 27 28 29
PKG = build/_build/html/gluon_tutorials_zh.tar.gz build/_build/html/gluon_tutorials_zh.zip

pkg: $(PKG)

build/_build/html/gluon_tutorials_zh.zip: $(OBJ) $(DEPS)
	cd build; zip -r $(patsubst build/%, %, $@ $(DEPS)) chapter*

build/_build/html/gluon_tutorials_zh.tar.gz: $(OBJ) $(DEPS)
	cd build; tar -zcvf $(patsubst build/%, %, $@ $(DEPS)) chapter*

M
update  
Mu Li 已提交
30
build/%: %
M
muli 已提交
31 32
	@mkdir -p $(@D)
	@cp -r $< $@
M
Mu Li 已提交
33

M
Mu Li 已提交
34
html: $(DEPS) $(OBJ)
M
Mu Li 已提交
35
	make -C build html
M
Mu Li 已提交
36
	bash build/htaccess.sh build/_build/html/
M
Mu Li 已提交
37

M
muli 已提交
38 39 40 41 42
TEX=build/_build/latex/gluon_tutorials_zh.tex

SVG=$(wildcard img/*.svg)
GIF=$(wildcard img/*.gif)

M
muli 已提交
43
build/_build/latex/%.pdf: img/%.svg
M
muli 已提交
44
	@mkdir -p $(@D)
A
Aston Zhang 已提交
45
	rsvg-convert -f pdf -o $@ $<
M
muli 已提交
46 47 48 49 50

build/_build/latex/%_00.pdf: img/%_00.pdf
	@mkdir -p $(@D)
	cp $< $@

M
muli 已提交
51
PDFIMG = $(patsubst img/%.svg, build/_build/latex/%.pdf, $(SVG)) \
M
muli 已提交
52 53 54 55
	$(patsubst img/%.gif, build/_build/latex/%_00.pdf, $(GIF))

pdf: $(DEPS) $(OBJ) $(PDFIMG)
	@echo $(PDFIMG)
M
update  
Mu Li 已提交
56
	make -C build latex
M
muli 已提交
57
	sed -i s/\.svg/\.pdf/ $(TEX)
M
muli 已提交
58 59
	sed -i s/\}\.gif/\_00\}.pdf/ $(TEX)
	sed -i s/{tocdepth}{0}/{tocdepth}{1}/ $(TEX)
A
Aston Zhang 已提交
60
	sed -i s/{\\\\releasename}{发布}/{\\\\releasename}{}/ $(TEX)
M
muli 已提交
61 62 63
	cd build/_build/latex && \
	buf_size=10000000 xelatex gluon_tutorials_zh.tex && \
	buf_size=10000000 xelatex gluon_tutorials_zh.tex
M
update  
Mu Li 已提交
64

M
Mu Li 已提交
65
clean:
M
update  
Mu Li 已提交
66
	rm -rf build/chapter* $(DEPS) $(PKG)