source: doc/theses/thierry_delisle_PhD/thesis/Makefile @ 13888c0

ADTast-experimentalenumpthread-emulationqualifiedEnum
Last change on this file since 13888c0 was 13888c0, checked in by Thierry Delisle <tdelisle@…>, 2 years ago

First complete draft of chapter 3.
Still very rough but probably worht reading.

  • Property mode set to 100644
File size: 3.4 KB
RevLine 
[86c1f1c3]1## Define the configuration variables.
2
3Build = build
4Figures = img
5Macros = ../../../LaTeXmacros
6TeXLIB = .:${Macros}:${Build}:../../../bibliography:
7LaTeX  = TEXINPUTS=${TeXLIB} && export TEXINPUTS && latex -halt-on-error -output-directory=${Build}
8BibTeX = BIBINPUTS=${TeXLIB} && export BIBINPUTS && bibtex
9
[b20465a]10MAKEFLAGS = --no-print-directory # --silent
[86c1f1c3]11VPATH = ${Build} ${Figures}
12
13## Define the text source files.
14TEXTS = ${addprefix text/, ${addsuffix .tex, \
15        front \
16        intro \
[b9537e6]17        existing \
[86c1f1c3]18        runtime \
19        core \
20        practice \
21        io \
[36a05d7]22        eval_micro \
23        eval_macro \
[86c1f1c3]24}}
25
26FIGURES = ${addsuffix .tex, \
27}
28
29PICTURES = ${addsuffix .pstex, \
30        base \
[6db62fa]31        base_avg \
[13888c0]32        cache-share \
33        cache-noshare \
[86c1f1c3]34        empty \
[c04a19e]35        emptybit \
36        emptytls \
37        emptytree \
38        fairness \
[c292244]39        io_uring \
[5ce9bea]40        pivot_ring \
[b9537e6]41        system \
[36a05d7]42        cycle \
[6db62fa]43        result.cycle.jax.ops \
[86c1f1c3]44}
45
46PROGRAMS = ${addsuffix .tex, \
47}
48
49GRAPHS = ${addsuffix .tex, \
50}
51
52## Define the documents that need to be made.
53all: thesis.pdf
[1cf8a9f]54thesis.pdf: ${TEXTS} ${FIGURES} ${PICTURES} thesis.tex glossary.tex local.bib ../../../LaTeXmacros/common.tex ../../../LaTeXmacros/common.sty
[86c1f1c3]55
56DOCUMENT = thesis.pdf
57BASE = ${basename ${DOCUMENT}}
58
59# Directives #
60
[b20465a]61.NOTPARALLEL:                                           # cannot make in parallel
62
[86c1f1c3]63.PHONY : all clean                                      # not file names
64
65all : ${DOCUMENT}
66
67clean :
68        @rm -frv ${DOCUMENT} ${BASE}.ps ${Build}
69
70# File Dependencies #
71
72%.pdf : build/%.ps | ${Build}
73        ps2pdf $<
74
75build/%.ps : build/%.dvi | ${Build}
76        dvips $< -o $@
77
78build/%.dvi : %.tex Makefile | ${Build}
[bace538]79        # Conditionally create an empty *.ind (index) file for inclusion until makeindex is run.
80        if [ ! -r ${basename $@}.ind ] ; then touch ${basename $@}.ind ; fi
[86c1f1c3]81        # Must have *.aux file containing citations for bibtex
82        if [ ! -r ${basename $@}.aux ] ; then ${LaTeX} $< ; fi
83        -${BibTeX} ${basename $@}
84        # Some citations reference others so run again to resolve these citations
85        ${LaTeX} $<
86        -${BibTeX} ${basename $@}
87        # Make index from *.aux entries and input index at end of document
88        -makeglossaries -q -s ${basename $@}.ist ${basename $@}
[bace538]89        # Make index from *.aux entries and input index at end of document
90        -makeindex ${basename $@}.idx
[86c1f1c3]91        # Run again to finish citations
92        ${LaTeX} $<
93
94## Define the default recipes.
95
96${Build}:
97        mkdir -p ${Build}
98
99%.tex : fig/%.fig | ${Build}
100        fig2dev -L eepic $< > ${Build}/$@
101
102%.ps : fig/%.fig | ${Build}
103        fig2dev -L ps $< > ${Build}/$@
104
105%.pstex : fig/%.fig | ${Build}
106        fig2dev -L pstex $< > ${Build}/$@
107        fig2dev -L pstex_t -p ${Build}/$@ $< > ${Build}/$@_t
108
[c04a19e]109%.pstex : build/%.svg | ${Build}
110        inkscape -z -D --file=$< --export-eps=${Build}/$@ --export-latex
111        mv ${Build}/$@_tex ${Build}/$@_t
112        echo "sed -i 's/$@/${Build}/$@/g' ${Build}/$@_t"
113        sed -i 's/$@/${Build}\/$@/g' ${Build}/$@_t
114
[b20465a]115build/fairness.svg : fig/fairness.py | ${Build}
116        python3 $< $@
[5ce9bea]117
[6db62fa]118build/result.%.ns.svg : data/% | ${Build}
119        ../../../../benchmark/plot.py -f $< -o $@ -y "ns per ops"
120
121build/result.%.ops.svg : data/% | ${Build}
122        ../../../../benchmark/plot.py -f $< -o $@ -y "Ops per second"
123
[86c1f1c3]124## pstex with inverted colors
125%.dark.pstex : fig/%.fig Makefile | ${Build}
126        fig2dev -L pstex $< > ${Build}/$@
127        sed -i 's/\/col-1 {0 setgray} bind def/\/col-1 {1 setgray} bind def/g' ${Build}/$@
128        sed -i 's/\/col0 {0.000 0.000 0.000 srgb} bind def/\/col0 {1.000 1.000 1.000 srgb} bind def/g' ${Build}/$@
129        sed -i 's/\/col7 {1.000 1.000 1.000 srgb} bind def/\/col7 {0.000 0.000 0.000 srgb} bind def/g' ${Build}/$@
130        fig2dev -L pstex_t -p ${Build}/$@ $< > ${Build}/$@_t
131
132# Local Variables: #
133# compile-command: "make" #
134# End: #
Note: See TracBrowser for help on using the repository browser.