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 environment. | |
8 | ## | |
9 | ## $Id: Makefile,v 1.2.4.1 2008/06/19 08:32:10 ib135226 Exp $ | |
10 | ################################################################################ | |
11 | ||
12 | ################################################################################ | |
13 | # variable declarations | |
14 | ################################################################################ | |
15 | ||
16 | .SUFFIXES: | |
17 | ||
18 | NEPTUNE_MODE ?= NEPTUNE | |
19 | HT_MODE ?= NO_HT | |
20 | RXC_SAT ?= RXC_MOD | |
21 | NEP_SAT ?= NEP_NOT_SAT | |
22 | NEP_PCIE ?= NEP_NOT_PCIE | |
23 | NEPTUNE_P2P ?= NOT_NEPTUNE_P2P | |
24 | N2_FC_NIU ?= N2_FC | |
25 | NEP_DEBUG ?= NEP_NO_DEBUG | |
26 | NEP_32_BIT ?= NEP_64_BIT | |
27 | NEP_DO_NOT_SUPPRESS_DENALI_ERRORS ?= SUPPRESS_DENALI_ERRORS | |
28 | N2_IOS_NIU ?= N2_IOS | |
29 | AXIS_VERA_ARG ?= AXIS | |
30 | COSIM ?= | |
31 | N2_AXIS ?= | |
32 | SIMS_64BIT ?= | |
33 | ||
34 | VERA_LIBDIR ?= ./lib | |
35 | MAC_LIBDIR ?= ${DV_ROOT}/verif/env/niu/mac_sat/vera/lib | |
36 | ||
37 | VERA_VRH ?= vera -cmp ${MAKE_STRING} -I . -max_error 5 -q -H | |
38 | VERA_VRO ?= vera -cmp ${MAKE_STRING} -I ${MODEL_DIR}/neptune_rxc/rel-0.1/vera -max_error 5 -q | |
39 | ||
40 | COMMON_DIR := ${DV_ROOT}/verif/env/common/vera/ | |
41 | MAC_DIR := ${DV_ROOT}/verif/env/niu/mac_sat/vera/ | |
42 | ||
43 | VERA_INCLUDE := $(wildcard include/*port*) | |
44 | VERA_INCLUDE += $(wildcard include/*if.vrh*) $(wildcard include/*.vrh*) | |
45 | VERA_INCLUDE += $(wildcard include/*.vri) | |
46 | VERA_INCLUDE += $(wildcard include/*bind*) | |
47 | VERA_INCLUDE := $(subst include,$(VERA_LIBDIR),$(VERA_INCLUDE)) | |
48 | ||
49 | MISC := | |
50 | ||
51 | COMMON := | |
52 | ||
53 | MAC := | |
54 | ||
55 | COMMON_INCLUDE := $(wildcard $(COMMON_DIR)include/*.vri) | |
56 | COMMON_INCLUDE := $(subst $(COMMON_DIR)include,$(VERA_LIBDIR),$(COMMON_INCLUDE)) | |
57 | ||
58 | COMMON_VRH := $(patsubst %.vr,$(VERA_LIBDIR)/%.vrh,$(COMMON)) | |
59 | COMMON_VRO := $(patsubst %.vr,$(VERA_LIBDIR)/%.vro,$(COMMON)) | |
60 | ||
61 | MAC_INCLUDE := $(wildcard $(MAC_DIR)include/*.vri) | |
62 | MAC_INCLUDE := $(subst $(MAC_DIR)include,$(VERA_LIBDIR),$(MAC_INCLUDE)) | |
63 | ||
64 | MAC_VRH := $(patsubst %.vr,$(MAC_DIR)/%.vrh,$(MAC)) | |
65 | MAC_VRO := $(patsubst %.vr,$(MAC_DIR)/%.vro,$(MAC)) | |
66 | ||
67 | MISC_VRH := $(patsubst %.vr,$(VERA_LIBDIR)/%.vrh,$(MISC)) | |
68 | MISC_VRO := $(patsubst %.vr,$(VERA_LIBDIR)/%.vro,$(MISC)) | |
69 | ||
70 | ################################################################################ | |
71 | # generic rule to make a .vro file | |
72 | ################################################################################ | |
73 | ||
74 | $(VERA_LIBDIR)/%.vrh: $(VERA_LIBDIR)/%.vr | |
75 | cd $(VERA_LIBDIR); $(VERA_VRH) $(notdir $<) $(notdir $(@:%.vrh=%)) | |
76 | ||
77 | $(MAC_DIR)/%.vrh: $(MAC_DIR)/%.vr | |
78 | cd $(MAC_DIR); $(VERA_VRH) $(notdir $<) $(notdir $(@:%.vrh=%)) | |
79 | ||
80 | $(VERA_LIBDIR)/%.vro: $(VERA_LIBDIR)/%.vr | |
81 | cd $(VERA_LIBDIR); $(VERA_VRO) $(notdir $<) $(notdir $@) | |
82 | ||
83 | $(MAC_DIR)/%.vro: $(MAC_DIR)/%.vr | |
84 | cd $(MAC_DIR); $(VERA_VRO) $(notdir $<) $(notdir $@) | |
85 | ||
86 | $(VERA_LIBDIR)/%: $(COMMON_DIR)/% | |
87 | cp -f $< $@ | |
88 | ||
89 | $(VERA_LIBDIR)/%: $(MAC_DIR)/% | |
90 | cp -f $< $@ | |
91 | ||
92 | $(VERA_LIBDIR)/%.vri: $(MAC_DIR)/lib/%.vri | |
93 | cp -f $< $@ | |
94 | ||
95 | $(VERA_LIBDIR)/%: $(COMMON_DIR)/include/% | |
96 | cp -f $< $@ | |
97 | ||
98 | $(VERA_LIBDIR)/%: $(MAC_DIR)/include/% | |
99 | cp -f $< $@ | |
100 | ||
101 | $(VERA_LIBDIR)/%: include/% | |
102 | cp -f $< $@ | |
103 | ||
104 | $(VERA_LIBDIR)/%: % | |
105 | cp -f $< $@ | |
106 | ||
107 | ||
108 | ################################################################################ | |
109 | # Decide what to set to the variable MAKE_STRING | |
110 | ################################################################################ | |
111 | ||
112 | ||
113 | ifdef N2_AXIS | |
114 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE} -D${N2_AXIS}" | |
115 | else | |
116 | ||
117 | ifdef N2_FC | |
118 | ##### if NIU_GATE in Full Chip ####### | |
119 | ifdef NIU_GATE | |
120 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${N2_FC_NIU} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE} -DNIU_GATE -DPOST_LAYOUT" | |
121 | else | |
122 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${N2_FC_NIU} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE}" | |
123 | endif | |
124 | else | |
125 | ||
126 | #### if NIU_GATE in SAT ######### | |
127 | ifdef NIU_GATE | |
128 | ifdef POST_LAYOUT | |
129 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NIU_GATE} -D${NEP_PCIE} -DPOST_LAYOUT" | |
130 | else | |
131 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NIU_GATE} -D${NEP_PCIE}" | |
132 | endif | |
133 | else | |
134 | ||
135 | ifdef N2_IOS | |
136 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${N2_IOS_NIU} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE}" | |
137 | else | |
138 | ifdef COSIM | |
139 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE} -D${COSIM}" | |
140 | else | |
141 | ifdef AXIS | |
142 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE} -D${AXIS_VERA_ARG}" | |
143 | else | |
144 | ifdef NEPTUNE_P2P | |
145 | ifdef SIMS_64BIT | |
146 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE} -D${NEPTUNE_P2P} -D${SIMS_64BIT}" | |
147 | else | |
148 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE} -D${NEPTUNE_P2P}" | |
149 | endif | |
150 | else | |
151 | ifdef SIMS_64BIT | |
152 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE} -D${SIMS_64BIT}" | |
153 | else | |
154 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NEP_PCIE} " | |
155 | endif | |
156 | endif | |
157 | endif | |
158 | endif | |
159 | endif | |
160 | endif | |
161 | endif | |
162 | endif | |
163 | ||
164 | ifeq ($(NEP_SAT),NEP_SAT) | |
165 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT} -D${NEP_SAT}" | |
166 | endif | |
167 | ||
168 | ifeq ($(NEP_PCIE),NEP_PCIE) | |
169 | ifdef COSIM | |
170 | ||
171 | ifdef NEPTUNE_P2P | |
172 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${NEP_PCIE} -D${RXC_SAT} -D${NEP_DEBUG} -D${NEP_32_BIT} -D${NEPTUNE_P2P} -D${NEP_DO_NOT_SUPPRESS_DENALI_ERRORS} -D${COSIM}" | |
173 | else | |
174 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${NEP_PCIE} -D${RXC_SAT} -D${NEP_DEBUG} -D${COSIM}" | |
175 | endif | |
176 | ||
177 | else | |
178 | ifdef AXIS | |
179 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${NEP_PCIE} -D${RXC_SAT} -D${NEP_DEBUG} -D${NEP_32_BIT} -D${NEP_DO_NOT_SUPPRESS_DENALI_ERRORS} -D${AXIS_VERA_ARG}" | |
180 | else | |
181 | ifdef NEPTUNE_P2P | |
182 | ifdef SIMS_64BIT | |
183 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${NEP_PCIE} -D${RXC_SAT} -D${NEP_DEBUG} -D${NEP_32_BIT} -D${NEPTUNE_P2P} -D${NEP_DO_NOT_SUPPRESS_DENALI_ERRORS} -D${SIMS_64BIT}" | |
184 | else | |
185 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${NEP_PCIE} -D${RXC_SAT} -D${NEP_DEBUG} -D${NEP_32_BIT} -D${NEPTUNE_P2P} -D${NEP_DO_NOT_SUPPRESS_DENALI_ERRORS} " | |
186 | endif | |
187 | else | |
188 | ifdef SIMS_64BIT | |
189 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${NEP_PCIE} -D${RXC_SAT} -D${NEP_DEBUG} -D${NEP_32_BIT} -D${NEP_DO_NOT_SUPPRESS_DENALI_ERRORS} -D${SIMS_64BIT}" | |
190 | else | |
191 | MAKE_STRING := "-D${NEPTUNE_MODE} -D${HT_MODE} -D${NEP_PCIE} -D${RXC_SAT} -D${NEP_DEBUG} -D${NEP_32_BIT} -D${NEP_DO_NOT_SUPPRESS_DENALI_ERRORS}" | |
192 | endif | |
193 | endif | |
194 | endif | |
195 | endif | |
196 | endif | |
197 | ||
198 | ################################################################################ | |
199 | # all | |
200 | ################################################################################ | |
201 | ||
202 | ifdef NIU_SYSTEMC_T2 | |
203 | ||
204 | all: dir $(VERA_INCLUDE) \ | |
205 | FILE_LIST \ | |
206 | MAC_MONITOR \ | |
207 | SPECWEB \ | |
208 | NIU_PLI \ | |
209 | NIU_UTIL \ | |
210 | NIU_ERRORS \ | |
211 | NCU_STUB \ | |
212 | GEN_PIO \ | |
213 | NIU_PIO \ | |
214 | NIU_INTR \ | |
215 | NIU_IPPKTGEN \ | |
216 | NIU_MAC_ \ | |
217 | NIU_MAC_CHECKER \ | |
218 | NIU_TOKENS \ | |
219 | NIU_DMC_UTILS \ | |
220 | NIU_TXC_ \ | |
221 | NIU_RXC_ \ | |
222 | NIU_RXC_CHECKER \ | |
223 | NIU_RANDOMS \ | |
224 | NIU_TEST_UTILS \ | |
225 | $(COMMON_INCLUDE) \ | |
226 | $(MAC_INCLUDE) \ | |
227 | $(COMMON_VRH) $(COMMON_VRO) \ | |
228 | $(MISC_VRH) $(MISC_VRO) \ | |
229 | $(MAC_VRO) \ | |
230 | $(VERA_LIBDIR)/vera_top.vro | |
231 | ||
232 | else | |
233 | ||
234 | all: dir $(VERA_INCLUDE) \ | |
235 | FILE_LIST \ | |
236 | MAC_MONITOR \ | |
237 | SPECWEB \ | |
238 | NIU_PLI \ | |
239 | NIU_UTIL \ | |
240 | NIU_ERRORS \ | |
241 | NCU_STUB \ | |
242 | GEN_PIO \ | |
243 | NIU_PIO \ | |
244 | NIU_INTR \ | |
245 | NIU_IPPKTGEN \ | |
246 | NIU_MAC_ \ | |
247 | NIU_MAC_CHECKER \ | |
248 | NIU_TOKENS \ | |
249 | NIU_DMC_UTILS \ | |
250 | NIU_TXC_ \ | |
251 | NIU_RXC_ \ | |
252 | NIU_RXC_CHECKER \ | |
253 | NIU_RXC_MONITOR \ | |
254 | NIU_RANDOMS \ | |
255 | NIU_TEST_UTILS \ | |
256 | NIU_COVERAGE \ | |
257 | $(COMMON_INCLUDE) \ | |
258 | $(MAC_INCLUDE) \ | |
259 | $(COMMON_VRH) $(COMMON_VRO) \ | |
260 | $(MISC_VRH) $(MISC_VRO) \ | |
261 | $(MAC_VRO) \ | |
262 | $(VERA_LIBDIR)/vera_top.vro | |
263 | ||
264 | endif | |
265 | ||
266 | dir: | |
267 | if (test ! -d $(VERA_LIBDIR)) then mkdir $(VERA_LIBDIR) ; fi | |
268 | ifeq ($(NEPTUNE_ENV),CDMSPP) | |
269 | FILE_LIST: | |
270 | else | |
271 | FILE_LIST: | |
272 | cd ${DV_ROOT}/verif/env/niu; gmake clean; gmake | |
273 | endif | |
274 | ## This will be replaced with a common utility | |
275 | NIU_DISPMON: | |
276 | cd ${DV_ROOT}/verif/env/common/vera/dispmon; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
277 | MAC_MONITOR: | |
278 | cd ${DV_ROOT}/verif/env/common/vera/mac_monitor; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
279 | SPECWEB: | |
280 | cd ${DV_ROOT}/verif/env/common/vera/specweb; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
281 | ifdef SIMS_64BIT | |
282 | NIU_PLI: | |
283 | cd ${DV_ROOT}/verif/env/common/pli/niu_pli; gmake CFLAGS=-m64 | |
284 | else | |
285 | NIU_PLI: | |
286 | cd ${DV_ROOT}/verif/env/common/pli/niu_pli; gmake | |
287 | endif | |
288 | NIU_UTIL: | |
289 | cd ${DV_ROOT}/verif/env/niu/vera/niu_utils; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
290 | ifdef N2_IOS | |
291 | NCU_STUB: | |
292 | else | |
293 | NCU_STUB: | |
294 | cd ${DV_ROOT}/verif/env/niu/vera/ncu_drv; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
295 | endif | |
296 | NIU_ERRORS: | |
297 | cd ${DV_ROOT}/verif/env/common/vera/niu_gen_error; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
298 | NIU_INTR: | |
299 | cd ${DV_ROOT}/verif/env/common/vera/niu_intr; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
300 | GEN_PIO: | |
301 | cd ${DV_ROOT}/verif/env/common/vera/niu_gen_pio; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
302 | NIU_PIO: | |
303 | cd ${DV_ROOT}/verif/env/niu/vera/niu_pio; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
304 | ifdef SIMS_64BIT | |
305 | NIU_IPPKTGEN: | |
306 | cd ${DV_ROOT}/verif/env/common/vera/niu_ippktgen; gmake CFLAGS=-m64 VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
307 | else | |
308 | NIU_IPPKTGEN: | |
309 | cd ${DV_ROOT}/verif/env/common/vera/niu_ippktgen; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
310 | endif | |
311 | NIU_TXC_: | |
312 | cd ${DV_ROOT}/verif/env/niu/txc_sat/vera; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
313 | NIU_RANDOMS: | |
314 | cd ${DV_ROOT}/verif/env/common/vera/niu_randoms; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
315 | NIU_COVERAGE: | |
316 | cd ${DV_ROOT}/verif/env/common/vera/niu_coverage; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
317 | NIU_TOKENS: | |
318 | cd ${DV_ROOT}/verif/env/niu/vera/niu_tokens; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
319 | NIU_DMC_UTILS: | |
320 | cd ${DV_ROOT}/verif/env/niu/vera/dmc_utils; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
321 | NIU_RXC_: | |
322 | cd ${DV_ROOT}/verif/env/niu/rxc_sat/vera; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
323 | NIU_TEST_UTILS: | |
324 | cd ${DV_ROOT}/verif/env/niu/test_utils/vera; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
325 | ifeq ($(NEPTUNE_ENV),CDMSPP) | |
326 | NIU_MAC_: | |
327 | NIU_MAC_CHECKER: | |
328 | else | |
329 | NIU_MAC_: | |
330 | cd ${DV_ROOT}/verif/env/niu/mac_sat/vera; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
331 | NIU_MAC_CHECKER: | |
332 | cd ${DV_ROOT}/verif/env/niu/mac_sat/vera/lib/niu_mac_checker; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
333 | endif | |
334 | ||
335 | NIU_RXC_CHECKER: | |
336 | cd ${DV_ROOT}/verif/env/niu/rxc_sat/vera/checkers; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
337 | ||
338 | NIU_RXC_MONITOR: | |
339 | cd ${DV_ROOT}/verif/env/niu/rxc_sat/vera/monitor; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
340 | ||
341 | ifeq ($(NEPTUNE_ENV),CDMSPP) | |
342 | $(VERA_LIBDIR)/vera_top.vro: | |
343 | ifdef N2_FC | |
344 | else | |
345 | ifdef N2_IOS | |
346 | else | |
347 | cd ${DV_ROOT}/verif/env/niu/vera/top; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
348 | endif | |
349 | endif | |
350 | else | |
351 | $(VERA_LIBDIR)/vera_top.vro: | |
352 | cd ${DV_ROOT}/verif/env/vera/top; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
353 | endif | |
354 | ||
355 | ||
356 | ################################################################################ | |
357 | # clean | |
358 | ################################################################################ | |
359 | debug: | |
360 | echo "Vera top Makefile tmp_mode = $(TMP_MODE) tmp_mode1 = $(TMP_MODE1) make_string = $(MAKE_STRING) nep_pcie=$(NEP_PCIE) nep_sat = $(NEP_SAT) neptune_mode = $(NEPTUNE_MODE)" | |
361 | ||
362 | ||
363 | clean: | |
364 | rm -rf $(VERA_LIBDIR)/*; cd ${DV_ROOT}/verif/model/verilog/niu/sparse_mem_model/pli/src; gmake clean | |
365 |