-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathMakefile
59 lines (42 loc) · 1.57 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# Create vignettes
# Variables --------------------------------------------------------------------
diagrams := $(patsubst scripts/diagrams/%.gv, \
vignettes/images/%.pdf, \
$(wildcard scripts/diagrams/*.gv) \
)
data := data/RNAseq123.RData
vignettes := $(patsubst vignettes/%.Rnw, \
vignettes/%.tex, \
$(wildcard vignettes/*.Rnw) \
)
# Targets ----------------------------------------------------------------------
all: diagrams data vignettes
diagrams: $(diagrams)
data: $(data)
vignettes: $(vignettes)
guide: vignettes/OmicNavigatorUsersGuide.tex
api: vignettes/OmicNavigatorAPI.tex
# Rules ------------------------------------------------------------------------
# Convert graphviz diagrams to PDF for vignettes
vignettes/images/%.pdf: scripts/diagrams/%.gv
mkdir -p vignettes/images/
dot -Tpdf $< > $@
# Run RNAseq123 analysis, subset objects, and save them for use in User's Guide
$(data): scripts/RNAseq123.R
Rscript $<
# Weave vignettes to LaTeX and compile to PDF
vignettes/%.tex: vignettes/%.Rnw $(diagrams) $(data)
cd vignettes; Rscript -e 'utils::Sweave(basename("$<"))'
cd vignettes; Rscript -e 'tools::texi2pdf(basename("$@"))'
.PHONY: clean
clean:
rm --force vignettes/images/*pdf \
vignettes/*aux \
vignettes/*bbl \
vignettes/*blg \
vignettes/*log \
vignettes/*out \
vignettes/*pdf \
vignettes/*synctex.gz \
vignettes/*tex \
vignettes/*toc