source: doc/papers/llheap/Makefile

Last change on this file was 7a29392f, checked in by Peter A. Buhr <pabuhr@…>, 7 months ago

continue work on memory allocation paper

  • Property mode set to 100644
File size: 2.7 KB
Line 
1## Define the configuration variables.
2
3Build = build
4Figures = figures
5TeXLIB = .:../../LaTeXmacros:${Build}:
6LaTeX  = TEXINPUTS=${TeXLIB} && export TEXINPUTS && latex -halt-on-error -output-directory=${Build}
7BibTeX = BIBINPUTS=../../bibliography: && export BIBINPUTS && bibtex
8
9MAKEFLAGS = --no-print-directory # --silent
10VPATH = ${Build} ${Figures}
11
12## Define the text source files.
13
14SOURCES = ${addsuffix .tex, \
15Paper \
16}
17
18FIGURES = ${addsuffix .tex, \
19AllocatorComponents \
20AllocatedObject \
21IntExtFragmentation \
22MemoryFragmentation \
23ContigFragmentation \
24NonContigFragmentation \
25ProgramFalseSharing \
26AllocInducedActiveFalseSharing \
27AllocInducedPassiveFalseSharing \
28SingleHeap \
29SharedHeaps \
30PerThreadHeap \
31MultipleHeapsStorage \
32UserKernelHeaps \
33MultipleHeapsOwnership \
34MultipleHeapsNoOwnership \
35ObjectHeaders \
36Container \
37ContainerNoOwnershipFreelist \
38ContainerOwnershipFreelist \
39ContainerFalseSharing1 \
40ContainerFalseSharing2 \
41ContainerNoOwnership \
42ContainerOwnership \
43SuperContainers \
44FreeListAmongContainers \
45FreeListWithinContainers \
46PrivatePublicHeaps \
47AllocDS1 \
48AllocDS2 \
49llheap \
50Alignment1 \
51Alignment2 \
52Alignment2Impl \
53FakeHeader \
54Header \
55}
56
57PICTURES = ${addsuffix .pstex, \
58AddressSpace \
59MultipleHeapsOwnershipStorage \
60PrivatePublicHeaps \
61RemoteFreeList \
62}
63
64PROGRAMS = ${addsuffix .tex, \
65}
66
67GRAPHS = ${addsuffix .tex, \
68}
69
70## Define the documents that need to be made.
71
72DOCUMENT = Paper.pdf
73BASE = ${basename ${DOCUMENT}}
74
75# Directives #
76
77.PHONY : all clean                                      # not file names
78
79all : ${DOCUMENT}
80
81clean :
82        @rm -frv ${DOCUMENT} ${BASE}.ps WileyNJD-AMA.bst ${BASE}.out.ps ${Build}
83
84# File Dependencies #
85
86${DOCUMENT} : ${BASE}.ps
87        ps2pdf $<
88
89${BASE}.ps : ${BASE}.dvi
90        dvips ${Build}/$< -o $@
91
92${BASE}.dvi : Makefile ${BASE}.out.ps WileyNJD-AMA.bst ${GRAPHS} ${PROGRAMS} ${PICTURES} ${FIGURES} ${SOURCES} \
93                local.bib ../../bibliography/pl.bib | ${Build}
94        # Must have *.aux file containing citations for bibtex
95        if [ ! -r ${basename $@}.aux ] ; then ${LaTeX} ${basename $@}.tex ; fi
96        -${BibTeX} ${Build}/${basename $@}
97        # Some citations reference others so run again to resolve these citations
98        ${LaTeX} ${basename $@}.tex
99        -${BibTeX} ${Build}/${basename $@}
100        # Run again to finish citations
101        ${LaTeX} ${basename $@}.tex
102
103## Define the default recipes.
104
105${Build} :
106        mkdir -p ${Build}
107
108${BASE}.out.ps : | ${Build}
109        ln -fs ${Build}/Paper.out.ps .
110
111WileyNJD-AMA.bst :
112        ln -fs ../AMA/AMA-stix/ama/WileyNJD-AMA.bst .
113
114%.tex : %.fig | ${Build}
115        fig2dev -L eepic $< > ${Build}/$@
116
117%.ps : %.fig | ${Build}
118        fig2dev -L ps $< > ${Build}/$@
119
120%.pstex : %.fig | ${Build}
121        fig2dev -L pstex $< > ${Build}/$@
122        fig2dev -L pstex_t -p ${Build}/$@ $< > ${Build}/$@_t
123
124# Local Variables: #
125# compile-command: "make" #
126# End: #
Note: See TracBrowser for help on using the repository browser.