source: doc/theses/colby_parsons_MMAth/Makefile@ 302a16c

ADT ast-experimental stuck-waitfor-destruct
Last change on this file since 302a16c was 302a16c, checked in by Peter A. Buhr <pabuhr@…>, 3 years ago

formatting, add intro chapter to tex dependencies

  • Property mode set to 100644
File size: 4.2 KB
Line 
1## Define the configuration variables.
2
3Build = build
4Figures = figures
5Macros = ../../LaTeXmacros
6TeXLIB = .:style:text:${Macros}:${Build}:../../bibliography:
7LaTeX = TEXINPUTS=${TeXLIB} && export TEXINPUTS && latex -halt-on-error -output-directory=${Build}
8BibTeX = BIBINPUTS=${TeXLIB} && export BIBINPUTS && bibtex -terse
9
10MAKEFLAGS = --no-print-directory --silent #
11VPATH = ${Build} ${Figures}
12
13## Define the text source files.
14
15SOURCES = ${addsuffix .tex, \
16 text/intro \
17 text/CFA_intro \
18 text/actors \
19 text/frontpgs \
20 text/CFA_concurrency \
21 thesis \
22 text/mutex_stmt \
23 text/channels \
24}
25
26FIGURES = ${addsuffix .pgf, \
27 figures/pykeExecutor \
28 figures/pykeCFAExecutor \
29 figures/nasusExecutor \
30 figures/nasusCFAExecutor \
31 figures/pykeMatrix \
32 figures/pykeCFAMatrix \
33 figures/nasusMatrix \
34 figures/nasusCFAMatrix \
35 figures/pykeRepeat \
36 figures/pykeCFARepeat \
37 figures/nasusRepeat \
38 figures/nasusCFARepeat \
39 figures/pykeCFABalance-One \
40 figures/nasusCFABalance-One\
41 figures/pykeCFABalance-Multi \
42 figures/nasusCFABalance-Multi \
43 figures/pyke_Aggregate_Lock_2 \
44 figures/pyke_Aggregate_Lock_4 \
45 figures/pyke_Aggregate_Lock_8 \
46 figures/nasus_Aggregate_Lock_2 \
47 figures/nasus_Aggregate_Lock_4 \
48 figures/nasus_Aggregate_Lock_8 \
49 figures/nasus_Channel_Contention \
50 figures/pyke_Channel_Contention \
51}
52
53DATA = data/pykeSendStatic \
54 data/pykeSendDynamic\
55 data/pykeExecutorMem\
56 data/nasusSendStatic\
57 data/nasusSendDynamic\
58 data/pykeExecutorMem\
59
60PICTURES = ${addsuffix .tikz, \
61 diagrams/standard_actor \
62 diagrams/inverted_actor \
63 diagrams/gulp \
64 diagrams/chain_swap \
65 diagrams/M_to_one_swap \
66 diagrams/acyclic_swap \
67 diagrams/cyclic_swap \
68}
69
70PROGRAMS = ${addsuffix .tex, \
71}
72
73GRAPHS = ${addsuffix .tex, \
74}
75
76## Define the documents that need to be made.
77
78DOCUMENT = thesis.pdf
79BASE = ${basename ${DOCUMENT}}
80
81# Directives #
82
83.PHONY : all clean # not file names
84
85all : ${DOCUMENT}
86
87clean :
88 @rm -frv ${DOCUMENT} ${BASE}.ps ${Build}
89
90# File Dependencies #
91
92${DOCUMENT} : ${BASE}.ps
93 ps2pdf $<
94
95${BASE}.ps : ${BASE}.dvi
96 dvips ${Build}/$< -o $@
97
98${BASE}.dvi : Makefile ${GRAPHS} ${PROGRAMS} ${PICTURES} ${FIGURES} ${SOURCES} ${DATA} \
99 style/style.tex ${Macros}/common.tex ${Macros}/indexstyle local.bib ../../bibliography/pl.bib | ${Build}
100 # Must have *.aux file containing citations for bibtex
101 if [ ! -r ${basename $@}.aux ] ; then ${LaTeX} ${basename $@}.tex ; fi
102 -${BibTeX} ${Build}/${basename $@}
103 # Some citations reference others so run again to resolve these citations
104# ${LaTeX} ${basename $@}.tex
105# -${BibTeX} ${Build}/${basename $@}
106 # Make index from *.aux entries and input index at end of document
107 makeglossaries -q -s ${Build}/${basename $@}.ist ${Build}/${basename $@}
108 -version.sh
109 # Run again to finish citations
110 ${LaTeX} ${basename $@}.tex
111
112## Define the default recipes.
113
114${Build}:
115 mkdir -p ${Build}
116
117# The following rules are currently unused but could be used later
118# if we want to swap figures to be .pngs
119# %.tex : %.fig ${Build}
120# fig2dev -L eepic $< > ${Build}/$@
121
122# %.ps : %.fig | ${Build}
123# fig2dev -L ps $< > ${Build}/$@
124
125# %.pstex : %.fig | ${Build}
126# fig2dev -L pstex $< > ${Build}/$@
127# fig2dev -L pstex_t -p ${Build}/$@ $< > ${Build}/$@_t
128
129# #-----------------------------------------------------------------------------------
130# # Tools to generate png files
131# # to create a png we create a pdf and convert it to png
132# %.png : build/%.pstex figures/%.tex ${Build}
133# echo ${basename $@}
134# ${LaTeX} figures/${basename $@}.tex
135# dvips build/${basename $@}.dvi -o build/${basename $@}.ps
136# ps2pdf build/${basename $@}.ps
137# convert -negate ${basename $@}.pdf $@
138
139# creating a pdf of a figure requires generating some latex that just includes the figure
140# figures/%.tex: build/%.pstex ${Build}
141# echo -n "\documentclass[preview]{standalone}\n" \
142# "\usepackage[T1]{fontenc}\n" \
143# "\usepackage[usenames]{color}\n" \
144# "\usepackage{graphicx}\n" \
145# "\usepackage{listings}\n" \
146# "\usepackage{xspace}\n" \
147# "\input{style}\n" \
148# "\\\\begin{document}\n" \
149# "{\\\\resizebox{3\\\\textwidth}{!}{\input{${basename ${notdir $@}}.pstex_t}}}\n" \
150# "\end{document}" > $@
151
152data/%: ;
153%.tikz: ;
154%.pgf: ;
155
156# Local Variables: #
157# compile-command: "make" #
158# End: #
Note: See TracBrowser for help on using the repository browser.