source: doc/theses/colby_parsons_MMAth/Makefile@ 3a7aa94

Last change on this file since 3a7aa94 was 5668740, checked in by caparsons <caparson@…>, 3 years ago

Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc

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