add Forms page to pdf spec
[libreriscv.git] / openpower / Makefile
1 #!/usr/bin/make -f
2 ISA_DIR := ../../openpower-isa/openpower/isa
3 SOURCE_TEX := tex_out/remap.tex tex_out/bitmanip.tex tex_out/vector_ops.tex \
4 tex_out/sv.tex tex_out/svp64_appendix.tex \
5 tex_out/overview.tex tex_out/svp64.tex \
6 tex_out/compliancy_levels.tex tex_out/svp64_quirks.tex \
7 tex_out/sprs.tex tex_out/opcode_regs_deduped.tex \
8 tex_out/normal.tex tex_out/ldst.tex \
9 tex_out/branches.tex tex_out/cr_ops.tex \
10 tex_out/setvl.tex tex_out/svstep.tex \
11 tex_out/mv_swizzle.tex tex_out/mv_vec.tex \
12 tex_out/pseudocode_simplev.tex \
13 tex_out/pseudocode_bitmanip.tex \
14 tex_out/cr_int_predication.tex \
15 tex_out/fcvt.tex tex_out/fclass.tex \
16 tex_out/int_fp_mv.tex tex_out/av_opcodes.tex \
17 tex_out/big_integer.tex \
18 tex_out/pseudocode_fixedshift.tex \
19 tex_out/pseudocode_svfparith.tex \
20 tex_out/pseudocode_fixedarith.tex \
21 tex_out/pseudocode_fixedlogical.tex \
22 tex_out/pseudocode_svfixedarith.tex \
23 tex_out/big_integer_analysis.tex \
24 tex_out/vector_isas.tex
25
26 # Does this umbrella rule need to be modified?
27 tex: $(SOURCE_TEX)
28 mkdir -p tex_out
29
30 tex_out/vector_isas.tex : sv/vector_isa_comparison.mdwn
31 mkdir -p tex_out
32 pandoc -f markdown -t latex --top-level-division=section \
33 --filter pandoc_img.py \
34 -N -o tex_out/vector_isas.tex sv/vector_isa_comparison.mdwn
35
36 tex_out/big_integer_analysis.tex : sv/biginteger/analysis.mdwn
37 mkdir -p tex_out
38 pandoc -f markdown -t latex --top-level-division=section \
39 --filter pandoc_img.py \
40 -N -o tex_out/big_integer_analysis.tex sv/biginteger/analysis.mdwn
41
42 tex_out/pseudocode_fixedlogical.tex : $(ISA_DIR)/fixedlogical.mdwn
43 mkdir -p tex_out
44 pandoc -f markdown -t latex --top-level-division=section \
45 --filter pandoc_img.py \
46 -N -o tex_out/pseudocode_fixedlogical.tex \
47 $(ISA_DIR)/fixedlogical.mdwn
48
49 tex_out/pseudocode_fixedarith.tex : $(ISA_DIR)/fixedarith.mdwn
50 mkdir -p tex_out
51 pandoc -f markdown -t latex --top-level-division=section \
52 --filter pandoc_img.py \
53 -N -o tex_out/pseudocode_fixedarith.tex \
54 $(ISA_DIR)/fixedarith.mdwn
55
56 tex_out/pseudocode_svfixedarith.tex : $(ISA_DIR)/svfixedarith.mdwn
57 mkdir -p tex_out
58 pandoc -f markdown -t latex --top-level-division=section \
59 --filter pandoc_img.py \
60 -N -o tex_out/pseudocode_svfixedarith.tex \
61 $(ISA_DIR)/svfixedarith.mdwn
62
63 tex_out/pseudocode_svfparith.tex : $(ISA_DIR)/svfparith.mdwn
64 mkdir -p tex_out
65 pandoc -f markdown -t latex --top-level-division=section \
66 --filter pandoc_img.py \
67 -N -o tex_out/pseudocode_svfparith.tex \
68 $(ISA_DIR)/svfparith.mdwn
69
70 tex_out/sv.tex : sv.mdwn
71 mkdir -p tex_out
72 pandoc -f markdown -t latex --top-level-division=section \
73 --filter pandoc_img.py \
74 -N -o tex_out/sv.tex sv.mdwn
75
76 tex_out/overview.tex : sv/overview.mdwn
77 mkdir -p tex_out
78 pandoc -f markdown -t latex --top-level-division=section \
79 --filter pandoc_img.py \
80 -N -o tex_out/overview.tex sv/overview.mdwn
81
82 tex_out/svp64.tex : sv/svp64.mdwn
83 mkdir -p tex_out
84 pandoc -f markdown -t latex --top-level-division=section \
85 --filter pandoc_img.py \
86 -N -o tex_out/svp64.tex sv/svp64.mdwn
87
88 tex_out/compliancy_levels.tex : sv/compliancy_levels.mdwn
89 mkdir -p tex_out
90 pandoc -f markdown -t latex --top-level-division=section \
91 --filter pandoc_img.py \
92 -N -o tex_out/compliancy_levels.tex sv/compliancy_levels.mdwn
93
94 tex_out/svp64_quirks.tex : sv/svp64_quirks.mdwn
95 mkdir -p tex_out
96 pandoc -f markdown -t latex --top-level-division=section \
97 --filter pandoc_img.py \
98 -N -o tex_out/svp64_quirks.tex sv/svp64_quirks.mdwn
99
100 tex_out/sprs.tex : sv/sprs.mdwn
101 mkdir -p tex_out
102 pandoc -f markdown -t latex --top-level-division=section \
103 --filter pandoc_img.py \
104 -N -o tex_out/sprs.tex sv/sprs.mdwn
105
106 tex_out/opcode_regs_deduped.tex : opcode_regs_deduped.mdwn
107 mkdir -p tex_out
108 pandoc -f markdown -t latex --top-level-division=section \
109 --filter pandoc_img.py \
110 -N -o tex_out/opcode_regs_deduped.tex opcode_regs_deduped.mdwn
111
112 tex_out/normal.tex : sv/normal.mdwn
113 mkdir -p tex_out
114 pandoc -f markdown -t latex --top-level-division=section \
115 --filter pandoc_img.py \
116 -N -o tex_out/normal.tex sv/normal.mdwn
117
118 tex_out/ldst.tex : sv/ldst.mdwn
119 mkdir -p tex_out
120 pandoc -f markdown -t latex --top-level-division=section \
121 --filter pandoc_img.py \
122 -N -o tex_out/ldst.tex sv/ldst.mdwn
123
124 tex_out/branches.tex : sv/branches.mdwn
125 mkdir -p tex_out
126 pandoc -f markdown -t latex --top-level-division=section \
127 --filter pandoc_img.py \
128 -N -o tex_out/branches.tex sv/branches.mdwn
129
130 tex_out/cr_ops.tex : sv/cr_ops.mdwn
131 mkdir -p tex_out
132 pandoc -f markdown -t latex --top-level-division=section \
133 --filter pandoc_img.py \
134 -N -o tex_out/cr_ops.tex sv/cr_ops.mdwn
135
136 tex_out/setvl.tex : sv/setvl.mdwn
137 mkdir -p tex_out
138 pandoc -f markdown -t latex --top-level-division=section \
139 --filter pandoc_img.py \
140 -N -o tex_out/setvl.tex sv/setvl.mdwn
141
142 tex_out/svstep.tex : sv/svstep.mdwn
143 mkdir -p tex_out
144 pandoc -f markdown -t latex --top-level-division=section \
145 --filter pandoc_img.py \
146 -N -o tex_out/svstep.tex sv/svstep.mdwn
147
148 tex_out/mv_swizzle.tex : sv/mv.swizzle.mdwn
149 mkdir -p tex_out
150 pandoc -f markdown -t latex --top-level-division=section \
151 --filter pandoc_img.py \
152 -N -o tex_out/mv_swizzle.tex sv/mv.swizzle.mdwn
153
154 tex_out/fields.tex : sv/fields.mdwn
155 mkdir -p tex_out
156 ./mdwn_inline.py sv/fields.mdwn tex_out/fields.mdwn
157 pandoc -f markdown -t latex --top-level-division=section \
158 --filter pandoc_img.py \
159 -N -o tex_out/fields.tex tex_out/fields.mdwn
160
161 tex_out/mv_vec.tex : sv/mv.vec.mdwn
162 mkdir -p tex_out
163 pandoc -f markdown -t latex --top-level-division=section \
164 --filter pandoc_img.py \
165 -N -o tex_out/mv_vec.tex sv/mv.vec.mdwn
166
167 tex_out/pseudocode_simplev.tex : $(ISA_DIR)/simplev.mdwn
168 mkdir -p tex_out
169 pandoc -f markdown -t latex --top-level-division=section \
170 --filter pandoc_img.py \
171 -N -o tex_out/pseudocode_simplev.tex \
172 $(ISA_DIR)/simplev.mdwn
173
174 tex_out/pseudocode_bitmanip.tex : $(ISA_DIR)/bitmanip.mdwn
175 mkdir -p tex_out
176 pandoc -f markdown -t latex --top-level-division=section \
177 --filter pandoc_img.py \
178 -N -o tex_out/pseudocode_bitmanip.tex \
179 $(ISA_DIR)/bitmanip.mdwn
180
181 tex_out/cr_int_predication.tex : sv/cr_int_predication.mdwn
182 mkdir -p tex_out
183 pandoc -f markdown -t latex --top-level-division=section \
184 --filter pandoc_img.py \
185 -N -o tex_out/cr_int_predication.tex sv/cr_int_predication.mdwn
186
187 tex_out/fcvt.tex : sv/fcvt.mdwn
188 mkdir -p tex_out
189 pandoc -f markdown -t latex --top-level-division=section \
190 --filter pandoc_img.py \
191 -N -o tex_out/fcvt.tex sv/fcvt.mdwn
192
193 tex_out/fclass.tex : sv/fclass.mdwn
194 mkdir -p tex_out
195 pandoc -f markdown -t latex --top-level-division=section \
196 --filter pandoc_img.py \
197 -N -o tex_out/fclass.tex sv/fclass.mdwn
198
199 tex_out/int_fp_mv.tex : sv/int_fp_mv.mdwn
200 mkdir -p tex_out
201 pandoc -f markdown -t latex --top-level-division=section \
202 --filter pandoc_img.py \
203 -N -o tex_out/int_fp_mv.tex sv/int_fp_mv.mdwn
204
205 tex_out/av_opcodes.tex : sv/av_opcodes.mdwn
206 mkdir -p tex_out
207 pandoc -f markdown -t latex --top-level-division=section \
208 --filter pandoc_img.py \
209 -N -o tex_out/av_opcodes.tex sv/av_opcodes.mdwn
210
211 tex_out/big_integer.tex : sv/biginteger.mdwn
212 mkdir -p tex_out
213 pandoc -f markdown -t latex --top-level-division=section \
214 --filter pandoc_img.py \
215 -N -o tex_out/big_integer.tex sv/biginteger.mdwn
216
217 tex_out/pseudocode_fixedshift.tex : $(ISA_DIR)/fixedshift.mdwn
218 mkdir -p tex_out
219 pandoc -f markdown -t latex --top-level-division=section \
220 --filter pandoc_img.py \
221 -N -o tex_out/pseudocode_fixedshift.tex \
222 $(ISA_DIR)/fixedshift.mdwn
223
224 tex_out/svp64_appendix.tex: sv/svp64/appendix.mdwn
225 mkdir -p tex_out
226 ./mdwn_inline.py sv/svp64/appendix.mdwn tex_out/appendix.mdwn
227 pandoc -f markdown -t latex --top-level-division=section \
228 --filter pandoc_img.py \
229 -N -o tex_out/svp64_appendix.tex tex_out/appendix.mdwn
230
231 tex_out/vector_ops.tex: sv/vector_ops.mdwn
232 mkdir -p tex_out
233 ./mdwn_inline.py sv/vector_ops.mdwn tex_out/vector_ops.mdwn
234 pandoc -f markdown -t latex --top-level-division=section \
235 --filter pandoc_img.py \
236 -N -o tex_out/vector_ops.tex tex_out/vector_ops.mdwn
237
238 tex_out/remap.tex: sv/remap.mdwn
239 mkdir -p tex_out
240 ./mdwn_inline.py sv/remap.mdwn tex_out/remap.mdwn
241 pandoc -f markdown -t latex --top-level-division=section \
242 --filter pandoc_img.py \
243 -N -o tex_out/remap.tex tex_out/remap.mdwn
244
245 tex_out/bitmanip.tex: sv/bitmanip.mdwn
246 mkdir -p tex_out
247 ./mdwn_inline.py sv/bitmanip.mdwn tex_out/bitmanip.mdwn
248 pandoc -f markdown -t latex --top-level-division=section \
249 --filter pandoc_img.py \
250 -N -o tex_out/bitmanip.tex tex_out/bitmanip.mdwn
251
252 simple_v_spec.pdf : tex simple_v_spec.tex
253 pdflatex -synctex=1 -interaction=nonstopmode simple_v_spec.tex
254
255 pdf : simple_v_spec.pdf
256
257 upload : pdf
258 rsync -HPavz simple_v_spec.pdf \
259 libre-soc.org:/var/www/ftp.libre-riscv.org
260
261 clean:
262 rm -fr tex_out