|
1 | 1 | PDF := persimmon.pdf # PDF Main Target |
2 | | -MARKDOWN := introduction.md state_of_the_art.md workflow.md objectives.md \ |
3 | | - risk_analysis.md implementation.md postmortem.md # Markdown files |
4 | | -BODY := body.tex # Markdown files will be converted to this intermediate step |
5 | | -#APPENDICES := appendixX.md # Markdown Appendices |
6 | | -#APPENDIX := appendix.tex # And appendices to this intermediate step |
7 | | -#METADATA := metadata.yaml # Metadata files (Author, Date, Title, etc..) |
| 2 | +MARKDOWN := introduction.md state_of_the_art.md workflow.md milestones.md \ |
| 3 | + risk_analysis.md interface.md implementation.md type_checking.md \ |
| 4 | + postmortem.md # Markdown files |
| 5 | +MARKDOWN_COMPLUTENSE := introduction.md focus.md state_of_the_art.md \ |
| 6 | + workflow.md milestones.md risk_analysis.md interface.md implementation.md \ |
| 7 | + type_checking.md postmortem.md |
| 8 | +APPENDICES := appendixA.md appendixB.md # Appendix after bibliography |
| 9 | +METADATA := metadata.yaml # Metadata files (Author, Date, Title, etc..) |
8 | 10 | BIBLIOGRAPHY := persimmon.bib # BibLaTeX bibliography |
9 | 11 | CSL := emerald-harvard.csl # CSL file used for citations |
10 | 12 | TEMPLATE := template.tex # LaTeX template for producing PDF |
11 | 13 |
|
| 14 | +# Add src prefix to markdown files |
| 15 | +MARKDOWN := $(addprefix src/, $(MARKDOWN)) |
| 16 | +MARKDOWN_COMPLUTENSE := $(addprefix src/, $(MARKDOWN_COMPLUTENSE)) |
| 17 | +APPENDICES := $(addprefix src/, $(APPENDICES)) |
| 18 | + |
12 | 19 | GRAPHS := $(wildcard graphs/*.tex) # Latex diagrams |
13 | 20 | IMAGES := $(wildcard images/*.png) # .png images |
14 | | -IMAGES += $(addprefix images/, $(notdir $(GRAPHS:.tex=.pdf))) # Generated PDF Images |
| 21 | +# Generated PDF Images |
| 22 | +IMAGES += $(addprefix images/, $(notdir $(GRAPHS:.tex=.pdf))) |
15 | 23 |
|
16 | | -all: $(PDF) |
| 24 | +# Intermediate tex files required for appending after bibliography |
| 25 | +BODY := body.tex |
| 26 | +APPENDIX := appendices.tex |
| 27 | +BODY_COMPLUTENSE := body_complutense.tex |
17 | 28 |
|
| 29 | +all: $(PDF) |
18 | 30 |
|
19 | | -$(PDF): $(BODY) $(APPENDIX) $(TEMPLATE) $(IMAGES) # TODO: Add abstract |
20 | | - pandoc --smart --standalone --latex-engine xelatex --template $(TEMPLATE) \ |
21 | | - --metadata author:"Álvaro Bermejo" \ |
22 | | - --metadata date:"$(shell date +"%d/%m/%Y") ($(shell git describe --abbrev=0 --tags))" \ |
23 | | - --metadata title:Persimmon --metadata fontsize:12pt --toc \ |
24 | | - --metadata subtitle:"A sklearn visual programming interface" \ |
25 | | - --metadata mainlang:English --metada keywords:"Machine Learning","Visual Programming" \ |
26 | | - --metadata papersize:A4 --metadata sansfont:"Helvetica Neue LT Com" \ |
27 | | - --metadata colorlinks --metadata documentclass:scrreprt \ |
28 | | - --top-level-division chapter $(BODY) $(APPENDIX) -o $@ |
29 | | - |
30 | | -travis: $(BODY) $(APPENDIX) $(TEMPLATE) $(IMAGES) |
| 31 | +$(PDF): $(BODY) $(APPENDIX) $(TEMPLATE) $(IMAGES) |
31 | 32 | pandoc --smart --standalone --latex-engine xelatex --template $(TEMPLATE) \ |
32 | | - --metadata author:"Álvaro Bermejo" --metadata papersize:A4 \ |
33 | | - --metadata date:"$(shell date +"%d/%m/%Y") ($(shell git describe --abbrev=0 --tags))" \ |
34 | | - --metadata title:Persimmon --metadata fontsize:12pt --toc \ |
35 | | - --metadata subtitle:"A sklearn visual programming interface" \ |
36 | | - --metadata mainlang:English --metada keywords:"Machine Learning","Visual Programming" \ |
37 | | - --metadata colorlinks --metadata documentclass:scrreprt \ |
38 | | - --chapters $(BODY) $(APPENDIX) -o $(PDF) |
39 | | - |
40 | | -complutense: $(BODY) $(APPENDIX) $(TEMPLATE) $(IMAGES) |
41 | | - pandoc --smart --standalone --latex-engine xelatex --template $(TEMPLATE) \ |
42 | | - --metadata author:"Álvaro Bermejo" --metadata date:"Director: Pablo Moreno Ger" \ |
43 | | - --metadata title:Persimmon --metadata fontsize:12pt --toc \ |
44 | | - --metadata subtitle:"A scikitlearn visual programming interface" \ |
45 | | - --metadata mainlang:English --metadata colorlinks --metadata titlepic:images/fdi.png \ |
46 | | - --metadata papersize:A4 --metadata sansfont:"Helvetica Neue LT Com" \ |
47 | | - --metadata documentclass:scrreprt --metadata institute:"Universidad Complutense" \ |
48 | | - --metada keywords:"Machine Learning","Visual Programming","Serious Games" \ |
49 | | - --top-level-division chapter $(BODY) $(APPENDIX) -o $(PDF) |
50 | | - |
51 | | -twocol: $(BODY) $(APPENDIX) $(TEMPLATE) $(IMAGES) # Adjust Spacing with geometry |
| 33 | + --table-of-contents --top-level-division chapter \ |
| 34 | + --metadata author:"Álvaro Bermejo García" --metadata title:Persimmon \ |
| 35 | + --metadata subtitle:"A visual programming interface for machine learning" \ |
| 36 | + --metadata date:"$(shell date +%Y/%m/%d)" --metadata documentclass:scrreprt \ |
| 37 | + --metadata sansfont:"Helvetica Neue LT Com" --metadata colorlinks \ |
| 38 | + --metadata lof --metadata papersize:A4 --metadata fontsize:12pt \ |
| 39 | + --metadata mainlang:English \ |
| 40 | + --metadata keywords:"Dataflow Programming","Machine Learning","Visual Programming","Compilers" \ |
| 41 | + --metadata abstract:"Persimmon is a visual programming interface that leverages scikit-learn to provide\ |
| 42 | + a drag and drop interface for creating Machine Learning pipelines." \ |
| 43 | + $(BODY) $(APPENDIX) -o $@ |
| 44 | + |
| 45 | + |
| 46 | +complutense: $(BODY_COMPLUTENSE) $(APPENDIX) $(TEMPLATE) $(IMAGES) |
52 | 47 | pandoc --smart --standalone --latex-engine xelatex --template $(TEMPLATE) \ |
53 | | - --metadata author:"Álvaro Bermejo" --metadata colorlinks \ |
54 | | - --metadata date:"$(shell date +"%d/%m/%Y") ($(shell git describe --abbrev=0 --tags))" \ |
55 | | - --metadata title:Persimmon --metadata fontsize:12p --toc \ |
56 | | - --metadata subtitle:"A sklearn visual programming interface" \ |
57 | | - --metadata mainlang:English --metada keywords:"Machine Learning","Visual Programming" \ |
58 | | - --metadata papersize:A4 --metadata classoption:twocolumn \ |
59 | | - --metadata sansfont:"Helvetica Neue LT Com" --metadata documentclass:scrreprt \ |
60 | | - --top-level-division chapter $(BODY) $(APPENDIX) -o $(PDF) |
| 48 | + --table-of-contents --top-level-division chapter \ |
| 49 | + --metadata author:"Álvaro Bermejo García" \ |
| 50 | + --metadata title:"A scikit-learn visual programming interface" \ |
| 51 | + --metadata date:"Director:Manuel Freire Moran, Codirector: Pablo Moreno Ger" \ |
| 52 | + --metadata documentclass:scrreprt \ |
| 53 | + --metadata sansfont:"Helvetica Neue LT Com" --metadata colorlinks \ |
| 54 | + --metadata lof --metadata papersize:A4 --metadata fontsize:12pt \ |
| 55 | + --metadata mainlang:English \ |
| 56 | + --metadata keywords:"Serious Learning","Machine Learning","Visual Programming" \ |
| 57 | + --metadata titlepic:images/fdi.png $(BODY_COMPLUTENSE) $(APPENDIX) \ |
| 58 | + -o $(PDF) |
| 59 | + |
61 | 60 |
|
62 | 61 | # For standalone images |
63 | 62 | images/%.pdf: graphs/%.tex |
64 | | - xelatex $< > /dev/null # TODO: actually output in graphs directory |
| 63 | + xelatex $< > /dev/null |
65 | 64 | mv $*.pdf images/ |
| 65 | + rm -f $*.log $*.aux |
66 | 66 |
|
67 | | -# Body and Appendices Middle Steps creation |
68 | 67 | $(BODY): $(MARKDOWN) $(BIBLIOGRAPHY) $(CSL) |
69 | | - pandoc --no-tex-ligatures --bibliography $(BIBLIOGRAPHY) --csl $(CSL) \ |
70 | | - metadata.yaml $(MARKDOWN) -o $@ |
| 68 | + pandoc --no-tex-ligatures --top-level-division chapter \ |
| 69 | + --bibliography $(BIBLIOGRAPHY) --csl $(CSL) $(MARKDOWN) -o $@ |
| 70 | + |
| 71 | + |
| 72 | +$(BODY_COMPLUTENSE): $(MARKDOWN_COMPLUTENSE) $(BIBLIOGRAPHY) $(CSL) |
| 73 | + pandoc --no-tex-ligatures --top-level-division chapter --table -of-contents \ |
| 74 | + --bibliography $(BIBLIOGRAPHY) --csl $(CSL) $(MARKDOWN_COMPLUTENSE) \ |
| 75 | + -o $@ |
71 | 76 |
|
72 | 77 | $(APPENDIX): $(APPENDICES) |
73 | | - pandoc --no-tex-ligatures $(APPENDICES) -o $@ |
| 78 | + pandoc --no-tex-ligatures --top-level-division chapter $(APPENDICES) -o $@ |
| 79 | + |
| 80 | +# Travis generation, only necessary because travis version of pandoc is old. |
| 81 | +BODY_TRAVIS := body_travis.tex |
| 82 | + |
| 83 | +travis: $(BODY_TRAVIS) $(APPENDIX_TRAVIS) $(TEMPLATE) $(IMAGES) |
| 84 | + pandoc --smart --standalone --latex-engine xelatex --template $(TEMPLATE) \ |
| 85 | + --table-of-contents --chapters \ |
| 86 | + --metadata author:"Álvaro Bermejo García" --metadata title:Persimmon \ |
| 87 | + --metadata subtitle:"A scikit-learn visual programming interface" \ |
| 88 | + --metadata date:2017-02-18 --metadata documentclass:scrreprt \ |
| 89 | + --metadata colorlinks --metadata lof --metadata papersize:A4 \ |
| 90 | + --metadata fontsize:12pt --metadata mainlang:English \ |
| 91 | + --metadata keywords:"Machine Learning","Visual Programming" \ |
| 92 | + $(BODY_TRAVIS) $(APPENDIX_TRAVIS) -o $(PDF) |
| 93 | + |
| 94 | +$(BODY_TRAVIS): $(MARKDOWN) $(BIBLIOGRAPHY) $(CSL) |
| 95 | + pandoc --no-tex-ligatures --chapters --bibliography $(BIBLIOGRAPHY) --csl \ |
| 96 | + $(CSL) $(MARKDOWN) -o $@ |
| 97 | + |
| 98 | +$(APPENDIX_TRAVIS): $(APPENDICES) |
| 99 | + pandoc --no-tex-ligatures --chapters $(APPENDICES) -o $@ |
| 100 | + |
74 | 101 |
|
75 | 102 | clean: |
76 | | - rm -f $(BODY) $(APPENDIX) images/*.pdf *.pdf *.log *.aux |
| 103 | + rm -f images/*.pdf $(PDF) *.log *.aux $(BODY) $(APPENDIX) |
77 | 104 |
|
78 | | -test: |
79 | | - @echo $(GRAPHS) |
80 | | - @echo $(IMAGES) |
|
0 commit comments