Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / niu / vera / smx_drv / Makefile
CommitLineData
86530b38
AT
1################################################################################
2## File: Makefile
3## Notes: runs with "gmake" only, not with "make"
4## Description:
5## -----------
6## Top level Makefile for compiling Vera DES environment.
7##
8################################################################################
9
10################################################################################
11# variable declarations
12################################################################################
13
14.SUFFIXES:
15NEPTUNE_MODE ?= NEPTUNE
16RXC_SAT ?= RXC_MOD
17
18VERA_LIBDIR ?= ./lib
19
20VERA_VRH ?= vera -cmp ${NEPTUNE_MODE} -I . -max_error 5 -q -H
21VERA_VRO ?= vera -cmp ${NEPTUNE_MODE} -I . -max_error 5 -q
22MAKE_STRING ?= "-D${NEPTUNE_MODE} -D${RXC_SAT}"
23
24
25COMMON_DIR := ${DV_ROOT}/verif/env/common/vera/
26
27PORT_SRC := include/siu_drv_ports.if.vrhpal
28IF_SRC :=
29PORT_DEST := $(VERA_LIBDIR)/siu_drv_ports.if.vrh
30IF_DEST :=
31
32VERA_INCLUDE := $(wildcard include/*vcon*)
33VERA_INCLUDE += $(wildcard include/*.vrh)
34VERA_INCLUDE += $(wildcard include/*.vri)
35VERA_INCLUDE += $(wildcard include/*.vrhpal)
36VERA_INCLUDE += $(wildcard include/*.vripal)
37VERA_INCLUDE := $(subst include,$(VERA_LIBDIR),$(VERA_INCLUDE))
38
39CFLAGS ?= NEPTUNE
40TMP_MODE = $(findstring -DN2, ${NEPTUNE_MODE})
41ifeq ($(TMP_MODE),-DN2)
42MODE = N2
43CFLAGS = N2
44endif
45
46TMP0_MODE = $(findstring MAC_SAT, ${NEPTUNE_MODE})
47ifeq (${TMP0_MODE},MAC_SAT)
48MODE0 = MAC_SAT
49endif
50
51ifdef N2_FC
52 ifdef NIU_GATE
53 SIU_STUB += niu_memcbmgr.vr niu_mem.vr niu_siu_packet.vr meta_monitor.vr hostRdCbMgr.vr
54 else
55 SIU_STUB += niu_mem.vr niu_siu_packet.vr hostRdCbMgr.vr
56 endif
57else
58 ifdef N2_IOS
59 SIU_STUB += niu_memcbmgr.vr niu_mem.vr niu_siu_packet.vr hostRdCbMgr.vr
60 else
61 ifeq ($(MODE),N2)
62 ifeq ($(MODE0),MAC_SAT)
63 SIU_STUB += niu_memcbmgr.vr niu_mem.vr niu_siu_packet.vr niu_siu_stub.vr meta_driver.vr niu_rxc_mon.vr meta_monitor.vr niu_siu_chk.vr hostRdCbMgr.vr
64 else
65 SIU_STUB += niu_memcbmgr.vr niu_mem.vr niu_siu_packet.vr niu_siu_stub.vr meta_driver.vr niu_rxc_mon.vr meta_monitor.vr niu_siu_chk.vr hostRdCbMgr.vr
66 endif
67 else
68 ifeq ($(MODE0),MAC_SAT)
69 SIU_STUB += niu_memcbmgr.vr niu_mem.vr hostRdCbMgr.vr
70 else
71 SIU_STUB += niu_memcbmgr.vr niu_mem.vr niu_rxc_mon.vr meta_monitor.vr hostRdCbMgr.vr
72 endif
73 endif
74 endif
75endif
76
77SIU_STUB_VRH := $(patsubst %.vr,%.vrh,$(SIU_STUB))
78SIU_STUB_VRO := $(patsubst %.vr,%.vro,$(SIU_STUB))
79
80MISC :=
81
82COMMON := $(SIU_STUB)
83
84COMMON_INCLUDE := $(subst $(COMMON_DIR)include,$(VERA_LIBDIR),$(COMMON_INCLUDE))
85COMMON_VRH := $(patsubst %.vr,$(VERA_LIBDIR)/%.vrh,$(COMMON))
86COMMON_VRO := $(patsubst %.vr,$(VERA_LIBDIR)/%.vro,$(COMMON))
87
88MISC_VRH := $(patsubst %.vr,$(VERA_LIBDIR)/%.vrh,$(MISC))
89MISC_VRO := $(patsubst %.vr,$(VERA_LIBDIR)/%.vro,$(MISC))
90
91################################################################################
92# generic rule to make a .vro file
93################################################################################
94
95$(VERA_LIBDIR)/%.vrh: $(VERA_LIBDIR)/%.vr
96 cd $(VERA_LIBDIR); $(VERA_VRH) $(notdir $<) $(notdir $(@:%.vrh=%))
97
98$(VERA_LIBDIR)/%.vro: $(VERA_LIBDIR)/%.vr
99 cd $(VERA_LIBDIR); $(VERA_VRO) $(notdir $<) $(notdir $@)
100
101$(VERA_LIBDIR)/%: $(COMMON_DIR)/%
102 cp -f $< $@
103
104$(VERA_LIBDIR)/%: $(COMMON_DIR)/include/%
105 cp -f $< $@
106
107$(VERA_LIBDIR)/%: include/%
108 cp -f $< $@
109
110$(VERA_LIBDIR)/%: %
111 cp -f $< $@
112
113
114################################################################################
115# all
116################################################################################
117
118all: dir $(VERA_INCLUDE) \
119 MEM_PLIS \
120 $(COMMON_INCLUDE) \
121 $(COMMON_VRH) $(COMMON_VRO) \
122 $(COMMON_VH) \
123 $(MISC_VRH) $(MISC_VRO)
124
125
126
127dir:
128 if (test ! -d $(VERA_LIBDIR)) then mkdir $(VERA_LIBDIR) ; fi
129
130
131ifdef N2_FC
132MEM_PLIS:
133 cd ${DV_ROOT}/verif/model/verilog/niu/sparse_mem_model/pli/src; gmake DFLAGS=N2_FC
134$(PORT_DEST): $(PORT_SRC)
135 pal -r $< > $@
136else
137MEM_PLIS:
138 cd ${DV_ROOT}/verif/model/verilog/niu/sparse_mem_model/pli/src; gmake DFLAGS=$(CFLAGS)
139$(PORT_DEST): $(PORT_SRC)
140 pal -r $< > $@
141endif
142
143################################################################################
144# clean
145################################################################################
146
147clean:
148 rm -rf $(VERA_LIBDIR)/*