Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | ################################################################################ |
2 | ## File: Makefile | |
3 | ## Notes: runs with "gmake" only, not with "make" | |
4 | ## | |
5 | ## Description: | |
6 | ## ----------- | |
7 | ## Top level Makefile for compiling Vera/NTB environment. | |
8 | ## | |
9 | ## $Id: Makefile,v 1.6.4.2 2008/06/19 08:36:03 ib135226 Exp $ | |
10 | ################################################################################ | |
11 | ||
12 | ################################################################################ | |
13 | # variable declarations | |
14 | ################################################################################ | |
15 | ||
16 | #define N2_FC | |
17 | ||
18 | .SUFFIXES: | |
19 | ||
20 | VERA_LIBDIR ?= ./lib | |
21 | THIS_DIR := ${PWD} | |
22 | ECHO := echo | |
23 | COPY_CMD = cp -f $< $@ | |
24 | ||
25 | ILU_PEU_DIR := ${DV_ROOT}/verif/env/ilu_peu/vera | |
26 | PKT_DIR := ${DV_ROOT}/verif/env/common/vera/niu_ippktgen | |
27 | COMMON_DIR := ${DV_ROOT}/verif/env/common/vera | |
28 | TCU_DIR := ${DV_ROOT}/verif/env/tcu/vera | |
29 | NIU_UTIL_DIR := ${DV_ROOT}/verif/env/niu/vera/niu_utils/include | |
30 | NIU_PKT_DIR := ${DV_ROOT}/verif/env/common/vera/niu_ippktgen/include | |
31 | NIU_DMC_UTIL_DIR := ${DV_ROOT}verif/env/niu/vera/dmc_utils | |
32 | CTOP := ${DV_ROOT}/verif/env/common/coverage | |
33 | ||
34 | # Add new generic defines to existing config file line -vera_build_args=VERA_SYS_DEFS="". | |
35 | VERA_SYS_DEFS ?= | |
36 | # for any user to use and over-ride at will via command line. Leave alone in here. | |
37 | VERA_DEFS ?= | |
38 | ||
39 | ALL_VERA_DEFS := $(VERA_SYS_DEFS) $(VERA_DEFS) | |
40 | ||
41 | ifdef RTL_NO_SPC_LIST | |
42 | ALL_VERA_DEFS += $(RTL_NO_SPC_LIST) | |
43 | endif | |
44 | ||
45 | ifdef USE_JTAG_DRIVER | |
46 | ifdef FC_JTAG_DEBUG_COVERAGE | |
47 | COV_UNIT_NCU += ncu | |
48 | VERA_DEFS_COV += -DFC_JTAG_DEBUG_COVERAGE | |
49 | endif | |
50 | ALL_VERA_DEFS += -DUSE_JTAG_DRIVER | |
51 | endif | |
52 | ||
53 | #this macro was already there before OpenSparc T2 | |
54 | ifdef FC_NO_PEU_VERA | |
55 | ALL_VERA_DEFS += -DFC_NO_PEU_VERA | |
56 | endif | |
57 | ||
58 | # added these 3 macros for OpenSPARC | |
59 | ifdef FC_NO_PEU_T2 | |
60 | ALL_VERA_DEFS += -DFC_NO_PEU_T2 | |
61 | endif | |
62 | ifdef FC_NO_NIU_T2 | |
63 | ALL_VERA_DEFS += -DFC_NO_NIU_T2 | |
64 | endif | |
65 | ||
66 | ifdef PEU_SYSTEMC_T2 | |
67 | ALL_VERA_DEFS += -DPEU_SYSTEMC_T2 | |
68 | endif | |
69 | ||
70 | ifdef NIU_SYSTEMC_T2 | |
71 | ALL_VERA_DEFS += -DNIU_SYSTEMC_T2 | |
72 | endif | |
73 | ||
74 | ||
75 | ifdef BUILD_USE_BOBO | |
76 | ALL_VERA_DEFS += -DBUILD_USE_BOBO -DUSE_BOBO | |
77 | endif | |
78 | ||
79 | ifndef FC_NO_NIU_T2 | |
80 | VPATH := \ | |
81 | ${PWD}/include ${PWD}/classes ${PWD}/interfaces ${PWD} \ | |
82 | $(COMMON_DIR)/ccxDevices \ | |
83 | $(COMMON_DIR)/include $(COMMON_DIR)/classes $(COMMON_DIR)/interfaces \ | |
84 | $(TCU_DIR)/include $(NIU_UTIL_DIR) $(NIU_PKT_DIR) $(PKT_DIR) $(PKT_DIR)/include \ | |
85 | ${PWD}/../../../../design/sys/iop/cpu/rtl | |
86 | else | |
87 | VPATH := \ | |
88 | ${PWD}/include ${PWD}/classes ${PWD}/interfaces ${PWD} \ | |
89 | $(COMMON_DIR)/ccxDevices \ | |
90 | $(COMMON_DIR)/include $(COMMON_DIR)/classes $(COMMON_DIR)/interfaces \ | |
91 | $(TCU_DIR)/include \ | |
92 | ${PWD}/../../../../design/sys/iop/cpu/rtl | |
93 | endif | |
94 | ||
95 | ifdef GATESIM | |
96 | ORDERD_LIST := \ | |
97 | std_display_class.vr \ | |
98 | baseUtilsClass.vr \ | |
99 | sparcBenchUtils.vr \ | |
100 | baseParamsClass.vr \ | |
101 | sparcParams.vr \ | |
102 | ssi.vr \ | |
103 | utilsClass.vr \ | |
104 | memArray.vr \ | |
105 | fc_niu_ev2a.vr \ | |
106 | basePktClass.vr \ | |
107 | cpxPktClass.vr \ | |
108 | pcxPktClass.vr \ | |
109 | ccxDevBaseBFM.vr \ | |
110 | ccxDevMemBFM.vr \ | |
111 | ccxDevSpcBFM.vr \ | |
112 | ccxPktMon.vr \ | |
113 | ccx_tag_class.vr \ | |
114 | asmEvent.vr \ | |
115 | asmEventsToVera.vr \ | |
116 | baseAsmToVeraIntf.vr \ | |
117 | asmToVeraIntf.vr \ | |
118 | generic_ev_packet.vr \ | |
119 | cpxorder.vr \ | |
120 | FcMcuMon.vr \ | |
121 | siu_ncu_mondo_checker.vr \ | |
122 | fc_top.vr | |
123 | else | |
124 | ifdef FC_NO_NIU_T2 | |
125 | ORDERD_LIST := \ | |
126 | std_display_class.vr \ | |
127 | baseUtilsClass.vr \ | |
128 | sparcBenchUtils.vr \ | |
129 | baseParamsClass.vr \ | |
130 | sparcParams.vr \ | |
131 | ssi.vr \ | |
132 | utilsClass.vr \ | |
133 | memArray.vr \ | |
134 | basePktClass.vr \ | |
135 | cpxPktClass.vr \ | |
136 | pcxPktClass.vr \ | |
137 | ccxDevBaseBFM.vr \ | |
138 | ccxDevMemBFM.vr \ | |
139 | ccxDevSpcBFM.vr \ | |
140 | ccxPktMon.vr \ | |
141 | ccx_tag_class.vr \ | |
142 | asmEvent.vr \ | |
143 | asmEventsToVera.vr \ | |
144 | baseAsmToVeraIntf.vr \ | |
145 | asmToVeraIntf.vr \ | |
146 | generic_ev_packet.vr \ | |
147 | cpxorder.vr \ | |
148 | l2jbi.vr \ | |
149 | FcMcuMon.vr \ | |
150 | siu_ncu_mondo_checker.vr \ | |
151 | fc_top.vr | |
152 | else | |
153 | ORDERD_LIST := \ | |
154 | std_display_class.vr \ | |
155 | baseUtilsClass.vr \ | |
156 | sparcBenchUtils.vr \ | |
157 | baseParamsClass.vr \ | |
158 | sparcParams.vr \ | |
159 | ssi.vr \ | |
160 | utilsClass.vr \ | |
161 | memArray.vr \ | |
162 | fc_niu_ev2a.vr \ | |
163 | basePktClass.vr \ | |
164 | cpxPktClass.vr \ | |
165 | pcxPktClass.vr \ | |
166 | ccxDevBaseBFM.vr \ | |
167 | ccxDevMemBFM.vr \ | |
168 | ccxDevSpcBFM.vr \ | |
169 | ccxPktMon.vr \ | |
170 | ccx_tag_class.vr \ | |
171 | asmEvent.vr \ | |
172 | asmEventsToVera.vr \ | |
173 | baseAsmToVeraIntf.vr \ | |
174 | asmToVeraIntf.vr \ | |
175 | generic_ev_packet.vr \ | |
176 | cpxorder.vr \ | |
177 | l2jbi.vr \ | |
178 | FcMcuMon.vr \ | |
179 | siu_ncu_mondo_checker.vr \ | |
180 | fc_top.vr | |
181 | endif | |
182 | endif | |
183 | ||
184 | # these files also need headers made by vera | |
185 | ifdef GATESIM | |
186 | ORDERD_LIST_VRH := \ | |
187 | FcMcuMon.vr \ | |
188 | siu_ncu_mondo_checker.vr | |
189 | else | |
190 | ORDERD_LIST_VRH := \ | |
191 | FcMcuMon.vr \ | |
192 | fcShadowScanClass.vr \ | |
193 | siu_ncu_mondo_checker.vr | |
194 | endif | |
195 | ||
196 | ||
197 | ifdef FC_COVERAGE | |
198 | COV_UNIT_NCU += ncu | |
199 | COV_UNIT_L2 += l2 | |
200 | COV_UNIT_MCU += mcu | |
201 | COV_UNIT_DMU += dmu | |
202 | COV_UNIT_SIU += siu | |
203 | COV_UNIT_FC += fc | |
204 | COV_UNITS_ILU_PEU += ilu_peu | |
205 | VERA_DEFS_COV += -DFC_COVERAGE | |
206 | endif | |
207 | ||
208 | ifdef GATESIM | |
209 | VERA_DEFS_GATE += -DGATESIM | |
210 | endif | |
211 | ifdef DMU_GATE | |
212 | VERA_DEFS_GATE += -DDMU_GATE | |
213 | endif | |
214 | ifdef NIU_GATE | |
215 | VERA_DEFS_GATE += -DNIU_GATE | |
216 | endif | |
217 | ifdef NCU_GATE | |
218 | VERA_DEFS_GATE += -DNCU_GATE | |
219 | endif | |
220 | ifdef MCU_GATE | |
221 | VERA_DEFS_GATE += -DMCU_GATE | |
222 | endif | |
223 | ifdef CCX_GATE | |
224 | VERA_DEFS_GATE += -DCCX_GATE | |
225 | endif | |
226 | ifdef TCU_GATE | |
227 | VERA_DEFS_GATE += -DTCU_GATE | |
228 | endif | |
229 | ifdef EFU_GATE | |
230 | VERA_DEFS_GATE += -DEFU_GATE | |
231 | endif | |
232 | ||
233 | FC_COMMON_INCLUDE := $(wildcard $(COMMON_DIR)include/*.vri) | |
234 | ||
235 | FC_IOS_RAS := ${DV_ROOT}/verif/env/ios/vera/include/ios_verilog_tasks.vri | |
236 | ||
237 | # targets list. .vro's we want to make. | |
238 | # files in ORDERD_VRH will have headers made too | |
239 | ORDERD_VRH := $(patsubst %.vr,$(VERA_LIBDIR)/%.vrh,$(ORDERD_LIST_VRH)) | |
240 | ORDERD_VRO := $(patsubst %.vr,$(VERA_LIBDIR)/%.vro,$(ORDERD_LIST)) | |
241 | VERA_DEP := $(foreach dir,$(VPATH),$(wildcard $(dir)/*.vr*)) | |
242 | ||
243 | # vera command line defines | |
244 | EMPTY := | |
245 | SPACE := $(EMPTY) $(EMPTY) | |
246 | VERA_INCDIR := $(subst $(SPACE),$(SPACE)-I,$(VPATH)) | |
247 | VERA_INCDIR := -I$(VERA_INCDIR) -I. | |
248 | ||
249 | ||
250 | # NTB command line defines | |
251 | NTB_INCDIR := $(subst $(SPACE),+,$(VPATH)) | |
252 | NTB_INCDIR := -ntb_incdir $(NTB_INCDIR) | |
253 | NTB_OPTS := -ntb_opts compat+verbose | |
254 | # add for 7.1.1 +file_by_file | |
255 | ||
256 | # commands | |
257 | VERA_VRH := vera -cmp -DFC_BENCH ${ALL_VERA_DEFS} ${VERA_DEFS_COV} ${VERA_DEFS_GATE} $(VERA_INCDIR) -max_error 5 -q -g -H | |
258 | VERA_VRO := vera -cmp -DFC_BENCH ${ALL_VERA_DEFS} ${VERA_DEFS_COV} ${VERA_DEFS_GATE} $(VERA_INCDIR) -max_error 5 -q -g | |
259 | ||
260 | VERA_NTB := vcs -ntb -ntb_define NTB -ntb_define FC_BENCH -ntb_cmp -ntb_sname cmp_test -ntb_filext .vr+.vrh+.vri+.vrl $(NTB_OPTS) $(NTB_INCDIR) $(ORDERD_LIST) -Mupdate | |
261 | ||
262 | ||
263 | ################################################################################ | |
264 | # NIU_DMC_UTIL Stuff | |
265 | ################################################################################ | |
266 | NIU_DMC_UTIL_DIR := ${DV_ROOT}/verif/env/niu/vera/niu_utils/include | |
267 | ||
268 | NIU_DMC_UTIL_COMMON_INCLUDE := $(wildcard $(NIU_DMC_UTIL_DIR)/*.vri) | |
269 | NIU_DMC_UTIL_COMMON_INCLUDE := $(subst $(NIU_DMC_UTIL_DIR),$(VERA_LIBDIR),$(NIU_DMC_UTIL_COMMON_INCLUDE)) | |
270 | ||
271 | NIU_DMC_UTILS_DIR := ${DV_ROOT}/verif/env/niu/vera/dmc_utils | |
272 | ||
273 | NIU_DMC_UTILS := $(NIU_DMC_UTILS_DIR)/niu_dmc_descr.vr | |
274 | NIU_DMC_UTILS += $(NIU_DMC_UTILS_DIR)/niu_dmc_descr_ring.vr | |
275 | NIU_DMC_UTILS += $(NIU_DMC_UTILS_DIR)/niu_dma.vr | |
276 | NIU_DMC_UTILS := $(subst $(NIU_DMC_UTILS_DIR),$(VERA_LIBDIR),$(NIU_DMC_UTILS)) | |
277 | NIU_DMC_UTILS_VRH := $(patsubst %.vr,%.vrh,$(NIU_DMC_UTILS)) | |
278 | NIU_DMC_UTILS_VRO := $(patsubst %.vr,%.vro,$(NIU_DMC_UTILS)) | |
279 | ||
280 | ################################################################################ | |
281 | # NIU_UTIL Stuff | |
282 | ################################################################################ | |
283 | NIU_UTIL_DIR := ${DV_ROOT}/verif/env/niu/vera/niu_utils/include | |
284 | ||
285 | NIU_UTIL_COMMON_INCLUDE := $(wildcard $(NIU_UTIL_DIR)/*.vri) | |
286 | NIU_UTIL_COMMON_INCLUDE := $(subst $(NIU_UTIL_DIR),$(VERA_LIBDIR),$(NIU_UTIL_COMMON_INCLUDE)) | |
287 | ||
288 | NIU_UTILS_DIR := ${DV_ROOT}/verif/env/niu/vera/niu_utils | |
289 | ||
290 | NIU_UTILS := $(NIU_UTILS_DIR)/mbox_class.vr | |
291 | NIU_UTILS += $(NIU_UTILS_DIR)/get_mbox_id.vr | |
292 | NIU_UTILS += $(NIU_UTILS_DIR)/cMesg.vr | |
293 | NIU_UTILS += $(NIU_UTILS_DIR)/niu_cntrl.vr | |
294 | NIU_UTILS := $(subst $(NIU_UTILS_DIR),$(VERA_LIBDIR),$(NIU_UTILS)) | |
295 | NIU_UTILS_VRH := $(patsubst %.vr,%.vrh,$(NIU_UTILS)) | |
296 | NIU_UTILS_VRO := $(patsubst %.vr,%.vro,$(NIU_UTILS)) | |
297 | ||
298 | ################################################################################ | |
299 | # NIU PACKET stuff | |
300 | ################################################################################ | |
301 | NIU_PKT_DIR := ${DV_ROOT}/verif/env/common/vera/niu_ippktgen/include | |
302 | ||
303 | NIU_PKT_COMMON_INCLUDE := $(wildcard $(NIU_PKT_DIR)/*.vri) | |
304 | NIU_PKT_COMMON_INCLUDE := $(subst $(NIU_PKT_DIR),$(VERA_LIBDIR),$(NIU_PKT_COMMON_INCLUDE)) | |
305 | ||
306 | NIU_PKTS_DIR := ${DV_ROOT}/verif/env/common/vera/niu_ippktgen | |
307 | ||
308 | NIU_PKTS := $(NIU_PKTS_DIR)/mac_db.vr | |
309 | NIU_PKTS += $(NIU_PKTS_DIR)/ipp_db.vr | |
310 | NIU_PKTS += $(NIU_PKTS_DIR)/fflp_db.vr | |
311 | NIU_PKTS += $(NIU_PKTS_DIR)/flow_db.vr | |
312 | NIU_PKTS += $(NIU_PKTS_DIR)/flow_db_tasks.vr | |
313 | NIU_PKTS += $(NIU_PKTS_DIR)/pack_db.vr | |
314 | NIU_PKTS += $(NIU_PKTS_DIR)/pcg_token.vr | |
315 | NIU_PKTS += $(NIU_PKTS_DIR)/pg_top_pp.vr | |
316 | NIU_PKTS += $(NIU_PKTS_DIR)/pc_top_pp.vr | |
317 | NIU_PKTS := $(subst $(NIU_PKTS_DIR),$(VERA_LIBDIR),$(NIU_PKTS)) | |
318 | NIU_PKTS_VRH := $(patsubst %.vr,%.vrh,$(NIU_PKTS)) | |
319 | NIU_PKTS_VRO := $(patsubst %.vr,%.vro,$(NIU_PKTS)) | |
320 | ||
321 | ################################################################################ | |
322 | # TCU stuff | |
323 | ################################################################################ | |
324 | TCU_ORDERD_LIST := \ | |
325 | $(VERA_LIBDIR)/systemTapClass.vr \ | |
326 | $(VERA_LIBDIR)/tcu_siu_packet.vr \ | |
327 | $(VERA_LIBDIR)/tcu_tasks.vr \ | |
328 | $(VERA_LIBDIR)/sys_registers.vr \ | |
329 | $(VERA_LIBDIR)/ucb_monitor.vr \ | |
330 | $(VERA_LIBDIR)/sys_reset.vr | |
331 | ||
332 | TCU_VRH := $(patsubst %.vr,%.vrh,$(TCU_ORDERD_LIST)) | |
333 | TCU_VRO := $(patsubst %.vr,%.vro,$(TCU_ORDERD_LIST)) | |
334 | ||
335 | TCU_PACKETS := $(TCU_DIR)/packets/tcu_siu_packet.vr | |
336 | TCU_PACKETS += $(wildcard $(TCU_DIR)/packets/*.vr) | |
337 | TCU_PACKETS := $(subst $(TCU_DIR)/packets,$(VERA_LIBDIR),$(TCU_PACKETS)) | |
338 | ||
339 | TCU_PACKETS_VRH := $(patsubst %.vr,%.vrh,$(TCU_PACKETS)) | |
340 | TCU_PACKETS_VRO := $(patsubst %.vr,%.vro,$(TCU_PACKETS)) | |
341 | ||
342 | BUILD_JTAG_DRIVER := \ | |
343 | $(TCU_PACKETS_VRH) $(TCU_PACKETS_VRO) \ | |
344 | $(TCU_VRH) $(TCU_VRO) | |
345 | ||
346 | ################################################################################ | |
347 | # CCU and CLOCKS | |
348 | ################################################################################ | |
349 | ifdef GATESIM | |
350 | CCU_ORDERD_LIST := \ | |
351 | $(VERA_LIBDIR)/ucb_monitor.vr | |
352 | else | |
353 | CCU_ORDERD_LIST := \ | |
354 | $(VERA_LIBDIR)/ucb_monitor.vr \ | |
355 | $(VERA_LIBDIR)/ccu_clks_states.vr \ | |
356 | $(VERA_LIBDIR)/ccu_checker.vr \ | |
357 | $(VERA_LIBDIR)/cluster_hdr_chkr.vr \ | |
358 | $(VERA_LIBDIR)/ccu_clk_chkr_4fc.vr \ | |
359 | $(VERA_LIBDIR)/cluster_hdrs_mon.vr | |
360 | endif | |
361 | CCU_CLKS_VRH := $(patsubst %.vr,%.vrh,$(CCU_ORDERD_LIST)) | |
362 | CCU_CLKS_VRO := $(patsubst %.vr,%.vro,$(CCU_ORDERD_LIST)) | |
363 | ||
364 | ################################################################################ | |
365 | $(VERA_LIBDIR)/%.vrh: $(VERA_LIBDIR)/%.vr | |
366 | cd $(VERA_LIBDIR); $(VERA_VRH) $(notdir $<) $(notdir $(@:%.vrh=%)) | |
367 | ||
368 | $(VERA_LIBDIR)/%.vro: $(VERA_LIBDIR)/%.vr | |
369 | cd $(VERA_LIBDIR); $(VERA_VRO) $(notdir $<) $(notdir $@) | |
370 | ||
371 | ifndef FC_NO_NIU_T2 | |
372 | $(VERA_LIBDIR)/%: $(NIU_DMC_UTIL_DIR)/% | |
373 | cp -f $< $@ | |
374 | ||
375 | $(VERA_LIBDIR)/%: $(NIU_UTIL_DIR)/% | |
376 | cp -f $< $@ | |
377 | ||
378 | $(VERA_LIBDIR)/%: $(NIU_UTILS_DIR)/% | |
379 | cp -f $< $@ | |
380 | ||
381 | $(VERA_LIBDIR)/%: $(NIU_PIO_INCLUDE_DIR)/% | |
382 | cp -f $< $@ | |
383 | ||
384 | $(VERA_LIBDIR)/%: $(NIU_PIO_DIR)/% | |
385 | cp -f $< $@ | |
386 | endif | |
387 | ||
388 | $(VERA_LIBDIR)/%.vr: $(TCU_DIR)/classes/%.vr | |
389 | cp -f $< $@ | |
390 | ||
391 | $(VERA_LIBDIR)/%.vr: $(TCU_DIR)/packets/%.vr | |
392 | cp -f $< $@ | |
393 | ||
394 | ################################################################################ | |
395 | # all | |
396 | ################################################################################ | |
397 | ||
398 | all: vera | |
399 | ||
400 | # this ifdef includes neither PEU nor NIU | |
401 | ifdef FC_NO_NIU_T2 | |
402 | vera: makedir copy_stuff \ | |
403 | $(ORDERD_VRH) \ | |
404 | $(COV_UNIT_FC) \ | |
405 | LOADNGO \ | |
406 | SIU_MON \ | |
407 | $(BUILD_JTAG_DRIVER) \ | |
408 | $(CCU_CLKS_VRH) $(CCU_CLKS_VRO) \ | |
409 | RAS_INJ \ | |
410 | $(FC_COMMON_INCLUDE) $(COV_UNIT_NCU) \ | |
411 | $(COV_UNIT_L2) $(COV_UNIT_MCU) $(COV_UNIT_DMU) $(COV_UNIT_SIU) \ | |
412 | $(ORDERD_VRO) | |
413 | else | |
414 | # does not include PEU, but includes NIU | |
415 | ifdef FC_NO_PEU_VERA | |
416 | vera: makedir copy_stuff \ | |
417 | $(ORDERD_VRH) \ | |
418 | $(COV_UNIT_FC) \ | |
419 | LOADNGO \ | |
420 | SIU_MON \ | |
421 | $(BUILD_JTAG_DRIVER) \ | |
422 | $(CCU_CLKS_VRH) $(CCU_CLKS_VRO) \ | |
423 | NIU \ | |
424 | RAS_INJ \ | |
425 | $(FC_COMMON_INCLUDE) $(COV_UNIT_NCU) \ | |
426 | $(COV_UNIT_L2) $(COV_UNIT_MCU) $(COV_UNIT_DMU) $(COV_UNIT_SIU) \ | |
427 | $(ORDERD_VRO) | |
428 | else | |
429 | # includes both PEU and NIU | |
430 | vera: makedir copy_stuff \ | |
431 | $(ORDERD_VRH) \ | |
432 | $(COV_UNIT_FC) \ | |
433 | LOADNGO \ | |
434 | SIU_MON \ | |
435 | $(BUILD_JTAG_DRIVER) \ | |
436 | $(CCU_CLKS_VRH) $(CCU_CLKS_VRO) \ | |
437 | NIU_CHK \ | |
438 | L2_STUBS \ | |
439 | NIU \ | |
440 | ILU_PEU \ | |
441 | $(FC_IOS_RAS) \ | |
442 | RAS_INJ \ | |
443 | $(FC_COMMON_INCLUDE) $(COV_UNIT_NCU) \ | |
444 | $(COV_UNIT_L2) $(COV_UNIT_MCU) $(COV_UNIT_DMU) $(COV_UNIT_SIU) \ | |
445 | $(COV_UNITS_ILU_PEU) \ | |
446 | $(ORDERD_VRO) | |
447 | endif | |
448 | endif | |
449 | ||
450 | # target is libtb.so | |
451 | ntb: makedir $(VERA_LIBDIR)/libtb.so | |
452 | ||
453 | makedir: | |
454 | @if (test ! -d $(VERA_LIBDIR)) then mkdir $(VERA_LIBDIR) ; fi | |
455 | ||
456 | copy_stuff: | |
457 | @$(ECHO) "copy_stuff: tgt" | |
458 | @cp -f $(THIS_DIR)/include/*vcon* $(VERA_LIBDIR) | |
459 | @cp -f $(VERA_DEP) $(VERA_LIBDIR) | |
460 | @cp -f ${PWD}/fc_top.vr $(VERA_LIBDIR) | |
461 | # Changed avoid copying CVS dirs | |
462 | # @cp -f ${PWD}/classes/* $(VERA_LIBDIR) | |
463 | @cp -f $(patsubst %CVS, , $(wildcard ${PWD}/classes/*)) $(VERA_LIBDIR) | |
464 | @cp -f $(PKT_DIR)/*vr $(VERA_LIBDIR) | |
465 | # Changed avoid copying CVS dirs | |
466 | # @cp -f $(PKT_DIR)/include/* $(VERA_LIBDIR) | |
467 | @cp -f $(patsubst %CVS, , $(wildcard $(PKT_DIR)/include/*)) $(VERA_LIBDIR) | |
468 | @rm -f $(VERA_LIBDIR)/../fc_top_shell.v | |
469 | @vera -V | |
470 | ||
471 | NIU_CHK: | |
472 | @$(ECHO) "NIU_CHK: tgt" | |
473 | cd ${DV_ROOT}/verif/env/fc/vera/niu_chk; gmake VERA_LIBDIR=$(VERA_LIBDIR) | |
474 | ||
475 | ifdef GATESIM | |
476 | L2_STUBS: | |
477 | @$(ECHO) "L2_STUBS: tgt" | |
478 | cd ${DV_ROOT}/verif/env/fc/vera/stubs; gmake VERA_LIBDIR=$(VERA_LIBDIR) GATESIM=1 | |
479 | else | |
480 | L2_STUBS: | |
481 | @$(ECHO) "L2_STUBS: tgt" | |
482 | cd ${DV_ROOT}/verif/env/fc/vera/stubs; gmake VERA_LIBDIR=$(VERA_LIBDIR) | |
483 | endif | |
484 | ||
485 | ifdef NIU_GATE | |
486 | NIU: | |
487 | @$(ECHO) "NIU: tgt if GATE" | |
488 | cd ${DV_ROOT}/verif/env/niu/vera; gmake VERA_LIBDIR=$(VERA_LIBDIR) N2_FC=1 NIU_GATE=1 | |
489 | else | |
490 | NIU: | |
491 | @$(ECHO) "NIU: tgt" | |
492 | cd ${DV_ROOT}/verif/env/niu/vera; gmake VERA_LIBDIR=$(VERA_LIBDIR) N2_FC=1 | |
493 | endif | |
494 | ||
495 | NIU_UTILS: | |
496 | @$(ECHO) "NIU_UTILS: tgt" | |
497 | $(NIU_COMMON_INCLUDE) \ | |
498 | $(NIU_UTIL_COMMON_INCLUDE) $(NIU_UTILS_VRH) $(NIU_UTILS_VRO) | |
499 | ||
500 | NIU_IPPKTGEN: | |
501 | @$(ECHO) "NIU_IPPKTGEN: tgt " | |
502 | cd ${DV_ROOT}/verif/env/common/vera/niu_ippktgen; gmake VERA_LIBDIR=$(VERA_LIBDIR) | |
503 | ||
504 | NIU_TOKEN: | |
505 | @$(ECHO) "NIU_TOKEN: tgt" | |
506 | cd ${DV_ROOT}/verif/env/niu/vera/niu_tokens; gmake VERA_LIBDIR=$(VERA_LIBDIR) | |
507 | ||
508 | NIU_RX_CHK: | |
509 | @$(ECHO) "NIU_RX_CHK: tgt" | |
510 | cd ${DV_ROOT}/verif/env/niu/rxc_sat/vera; gmake VERA_LIBDIR=$(VERA_LIBDIR) | |
511 | ||
512 | SIU_MON: | |
513 | @$(ECHO) "siu_mon: tgt" | |
514 | cd ${DV_ROOT}/verif/env/siu/vera; gmake siu_mon VERA_LIBDIR=$(VERA_LIBDIR) NO_0INMGR=1 | |
515 | ||
516 | ILU_PEU: | |
517 | @$(ECHO) "ILU_PEU: tgt" | |
518 | cd ${DV_ROOT}/verif/env/ilu_peu/vera; gmake -f Makefile VERA_LIBDIR=$(VERA_LIBDIR) N2_FC=1 NO_0INMGR=1 | |
519 | ||
520 | ifdef CONFIG_LOADNGO | |
521 | LOADNGO: | |
522 | cd ${DV_ROOT}/verif/env/fc/loadngo/c; gmake | |
523 | else | |
524 | LOADNGO: | |
525 | @$(ECHO) "No loadngo" | |
526 | endif | |
527 | ||
528 | ifdef GATESIM | |
529 | RAS_INJ: | |
530 | @$(ECHO) "RAS_INJ: tgt" | |
531 | cd ${DV_ROOT}/verif/env/ios/vera/ras; gmake VERA_LIBDIR=$(VERA_LIBDIR) N2_FC=1 GATESIM=1 | |
532 | else | |
533 | RAS_INJ: | |
534 | @$(ECHO) "RAS_INJ: tgt" | |
535 | cd ${DV_ROOT}/verif/env/ios/vera/ras; gmake VERA_LIBDIR=$(VERA_LIBDIR) N2_FC=1 | |
536 | endif | |
537 | ||
538 | MAKE_CMD := $(MAKE) --no-print-directory -j $(p) | |
539 | ||
540 | ncu: | |
541 | @$(ECHO) "" | |
542 | @$(ECHO) "[Building ncu Interface coverage" | |
543 | if (test -d $(CTOP)/ncu) then \ | |
544 | ( cd $(CTOP)/ncu; \ | |
545 | if (test -f Makefile) then $(MAKE_CMD) ; fi ) \ | |
546 | fi | |
547 | @$(ECHO) "Done with ncu Interface coverage]" | |
548 | @$(ECHO) "" | |
549 | ||
550 | l2: | |
551 | @$(ECHO) "" | |
552 | @$(ECHO) "Building l2sat Interface coverage" | |
553 | if (test -d $(CTOP)/l2sat) then \ | |
554 | ( cd $(CTOP)/l2sat; \ | |
555 | if (test -f Makefile) then $(MAKE_CMD) ; fi ) \ | |
556 | fi | |
557 | @$(ECHO) "Done with l2 Interface coverage]" | |
558 | @$(ECHO) "" | |
559 | ||
560 | mcu: | |
561 | @$(ECHO) "" | |
562 | @$(ECHO) "[Building mcu Interface coverage" | |
563 | if (test -d $(CTOP)/mcusat) then \ | |
564 | ( cd $(CTOP)/mcusat; \ | |
565 | if (test -f Makefile) then $(MAKE_CMD) ; fi ) \ | |
566 | fi | |
567 | @$(ECHO) "Done with mcu Interface coverage]" | |
568 | @$(ECHO) "" | |
569 | ||
570 | dmu: | |
571 | @$(ECHO) "" | |
572 | @$(ECHO) "[Building dmu Interface coverage" | |
573 | if (test -d $(CTOP)/dmu) then \ | |
574 | ( cd $(CTOP)/dmu; \ | |
575 | if (test -f Makefile) then $(MAKE_CMD) ; fi ) \ | |
576 | fi | |
577 | @$(ECHO) "Done with dmu Interface coverage]" | |
578 | @$(ECHO) "" | |
579 | ||
580 | siu: | |
581 | @$(ECHO) "" | |
582 | @$(ECHO) "[Building siu Interface coverage" | |
583 | if (test -d $(CTOP)/siu) then \ | |
584 | ( cd $(CTOP)/siu; \ | |
585 | if (test -f Makefile) then $(MAKE_CMD) ; fi ) \ | |
586 | fi | |
587 | @$(ECHO) "Done with siu Interface coverage]" | |
588 | @$(ECHO) "" | |
589 | ||
590 | fc: | |
591 | @$(ECHO) "" | |
592 | @$(ECHO) "[Building fc Interface coverage" | |
593 | if (test -d $(CTOP)/fc) then \ | |
594 | ( cd $(CTOP)/fc; \ | |
595 | if (test -f Makefile) then $(MAKE_CMD) ; fi ) \ | |
596 | fi | |
597 | @$(ECHO) "Done with fc Interface coverage]" | |
598 | @$(ECHO) "" | |
599 | ||
600 | ilu_peu: $(VERA_LIBDIR)/plusArgMacros.vri | |
601 | @$(ECHO) "" | |
602 | @$(ECHO) "[Building ilu_peu Interface coverage" | |
603 | if (test -d $(CTOP)/ilu_peu) then \ | |
604 | ( cd $(CTOP)/ilu_peu; \ | |
605 | if (test -f Makefile) then $(MAKE_CMD) ; fi ) \ | |
606 | fi | |
607 | @$(ECHO) "Done with ilu_peu Interface coverage]" | |
608 | @$(ECHO) "" | |
609 | ||
610 | clean: | |
611 | ifdef FC_NO_NIU_T2 | |
612 | rm -rf $(VERA_LIBDIR)/* ; rm -rf $(VERA_LIBDIR)/../fc_top_shell.v | |
613 | else | |
614 | cd ${DV_ROOT}/verif/model/verilog/niu/sparse_mem_model/pli/src; gmake clean; \ | |
615 | rm -rf $(VERA_LIBDIR)/* ; rm -rf $(VERA_LIBDIR)/../fc_top_shell.v | |
616 | endif | |
617 | ||
618 | # cleanNTB: | |
619 | # @rm -f $(VERA_LIBDIR)/libtb.so $(VERA_LIBDIR)/*.vcon | |
620 | # | |
621 | # cleanVera: | |
622 | # @rm -f $(VERA_LIBDIR)/*.vro $(VERA_LIBDIR)/*.vcon $(VERA_LIBDIR)/*.vshell $(VERA_LIBDIR)/*.proj* | |
623 | ||
624 | test: | |
625 | @echo "<<PWD>>" ${PWD} | |
626 | @echo "<<VERA_LIBDIR>>" $(VERA_LIBDIR) | |
627 | @echo "<<VERA_INCDIR>>" $(VERA_INCDIR) | |
628 | @echo "<<VERA_DEP>>" $(VERA_DEP) | |
629 | @echo "<<ORDERED_VRO>>" $(ORDERD_VRO) | |
630 | @echo "<<ORDERED_VRH>>" $(ORDERD_VRH) | |
631 | ||
632 | ||
633 | # this is here ONLY so users can do "gmake vrh" to get help. | |
634 | # do not add anything here! do not change this! | |
635 | # See ORDERD_VRH for making vrh files. | |
636 | vrh: | |
637 | @echo "To make a vrh for your class do --> " $(VERA_VRH) "path_to_class" | |
638 | ||
639 | ||
640 | ||
641 | ################################################################################ | |
642 | # generic rules | |
643 | ################################################################################ | |
644 | ||
645 | $(VERA_LIBDIR)/%.vro: %.vr $(VERA_DEP) | |
646 | @echo ">>>> Vera: compiling $(notdir $<)" | |
647 | @$(VERA_VRO) $< $@ | |
648 | ||
649 | ||
650 | $(VERA_LIBDIR)/libtb.so: $(VERA_DEP) | |
651 | @echo ">>>> Vera: compiling NTB testbench libtb.so" | |
652 | cd $(VERA_LIBDIR) ; $(VERA_NTB) ; cd $(THIS_DIR) ; mv -f *.vshell $(VERA_LIBDIR)/../fc_top_shell.v | |
653 | ||
654 | ifndef FC_NO_PEU_T2 | |
655 | ################################################################################ | |
656 | # Denali and Report stuff | |
657 | ################################################################################ | |
658 | ||
659 | denali_vera_dir = $(denali_dir)/ddvapi/vera | |
660 | ||
661 | #---------------------------------------------------------------------------- | |
662 | # Denali Environment Variables | |
663 | #---------------------------------------------------------------------------- | |
664 | ||
665 | # Use the .denalirc located in PEU TB home directory | |
666 | export DENALIRC = $(DV_ROOT)/verif/env/ilu_peu/.denalirc | |
667 | endif | |
668 | ||
669 | ifndef FC_NO_PEU_VERA | |
670 | #---------------------------------------------------------------- | |
671 | # make report.a | |
672 | #---------------------------------------------------------------- | |
673 | $(DV_ROOT)/verif/env/fnx/clib/report/report.a: | |
674 | $(SPEW_START) | |
675 | $(MAKE) -C $(@D) $(@F) | |
676 | $(SPEW_END) | |
677 | ||
678 | ifndef FC_NO_PEU_T2 | |
679 | #---------------------------------------------------------------- | |
680 | # make denali_pcie.o | |
681 | #---------------------------------------------------------------- | |
682 | $(DV_ROOT)/verif/env/fnx/clib/DenaliPCIE/denali_pcie.so: | |
683 | $(SPEW_START) | |
684 | $(MAKE) -C $(@D) all | |
685 | $(SPEW_END) | |
686 | endif | |
687 | endif | |
688 | ||
689 | ################################################################################ | |
690 | ||
691 | #---------------------------------------------------------------- | |
692 | # Get the common definitions if we haven't already | |
693 | #---------------------------------------------------------------- | |
694 | #include $(DV_ROOT)/verif/env/fnx/runsim/makefiles/Makefile.defs | |
695 | ||
696 | #---------------------------------------------------------------- | |
697 | # --- the end --- | |
698 | #---------------------------------------------------------------- | |
699 |