source: doc/papers/llheap/Makefile @ 0442f93f

ast-experimental
Last change on this file since 0442f93f was d697527, checked in by Peter A. Buhr <pabuhr@…>, 18 months ago

add Makefile for llheap paper

  • Property mode set to 100644
File size: 2.7 KB
RevLine 
[d697527]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, \
19AddressSpace \
20AllocatorComponents \
21AllocatedObject \
22IntExtFragmentation \
23MemoryFragmentation \
24ContigFragmentation \
25NonContigFragmentation \
26ProgramFalseSharing \
27AllocInducedActiveFalseSharing \
28AllocInducedPassiveFalseSharing \
29SingleHeap \
30SharedHeaps \
31PerThreadHeap \
32MultipleHeapsStorage \
33UserKernelHeaps \
34MultipleHeapsOwnership \
35MultipleHeapsNoOwnership \
36ObjectHeaders \
37Container \
38ContainerNoOwnershipFreelist \
39ContainerOwnershipFreelist \
40ContainerFalseSharing1 \
41ContainerFalseSharing2 \
42ContainerNoOwnership \
43ContainerOwnership \
44SuperContainers \
45FreeListAmongContainers \
46FreeListWithinContainers \
47PrivatePublicHeaps \
48AllocDS1 \
49AllocDS2 \
50llheap \
51Alignment1 \
52Alignment2 \
53Alignment2Impl \
54FakeHeader \
55Header \
56}
57
58PICTURES = ${addsuffix .pstex, \
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.