Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / verif / env / niu / rxc_sat / vera / fflp / Makefile
CommitLineData
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################################################################################
10
11################################################################################
12# variable declarations
13################################################################################
14
15.SUFFIXES:
16
17NEPTUNE_MODE ?= NEPTUNE
18HT_MODE ?= NO_HT
19RXC_SAT ?= NO_RXC_SAT
20MAKE_STRING ?= "${NEPTUNE_MODE} -D${HT_MODE} -D${RXC_SAT}"
21VERA_LIBDIR ?= ./lib
22MAC_LIBDIR ?= ${DV_ROOT}/verif/env/niu_mac_sat/vera/lib
23
24VERA_VRH ?= vera -cmp ${NEPTUNE_MODE} -I . -max_error 5 -q -H
25VERA_VRO ?= vera -cmp ${NEPTUNE_MODE} -I . -max_error 5 -q
26
27COMMON_DIR := ${DV_ROOT}/verif/env/common/vera/
28MAC_DIR := ${DV_ROOT}/verif/env/niu/mac_sat/vera/
29
30VERA_INCLUDE := $(wildcard include/*port*)
31VERA_INCLUDE += $(wildcard include/*if.vrh*) $(wildcard include/*.vrh*)
32VERA_INCLUDE += $(wildcard include/*.vri)
33VERA_INCLUDE += $(wildcard include/*bind*)
34VERA_INCLUDE := $(subst include,$(VERA_LIBDIR),$(VERA_INCLUDE))
35
36MISC :=
37
38TMP_MODE = $(findstring MAC_SAT, ${NEPTUNE_MODE})
39ifeq ($(TMP_MODE),MAC_SAT)
40COMMON := ip_ingress_classes.vr ip_ingress_db.vr ip_util.vr rxc_class.vr
41else
42COMMON := ip_ingress_classes.vr ip_ingress_db.vr ip_util.vr rxc_class.vr fflp_model.vr pkt_configurator.vr
43endif
44
45MAC :=
46
47COMMON_INCLUDE := $(wildcard $(COMMON_DIR)include/*.vri)
48COMMON_INCLUDE := $(subst $(COMMON_DIR)include,$(VERA_LIBDIR),$(COMMON_INCLUDE))
49
50COMMON_VRH := $(patsubst %.vr,$(VERA_LIBDIR)/%.vrh,$(COMMON))
51COMMON_VRO := $(patsubst %.vr,$(VERA_LIBDIR)/%.vro,$(COMMON))
52
53MAC_INCLUDE := $(wildcard $(MAC_DIR)include/*.vri)
54MAC_INCLUDE := $(subst $(MAC_DIR)include,$(VERA_LIBDIR),$(MAC_INCLUDE))
55
56MAC_VRH := $(patsubst %.vr,$(MAC_DIR)/%.vrh,$(MAC))
57MAC_VRO := $(patsubst %.vr,$(MAC_DIR)/%.vro,$(MAC))
58
59MISC_VRH := $(patsubst %.vr,$(VERA_LIBDIR)/%.vrh,$(MISC))
60MISC_VRO := $(patsubst %.vr,$(VERA_LIBDIR)/%.vro,$(MISC))
61
62################################################################################
63# generic rule to make a .vro file
64################################################################################
65
66$(VERA_LIBDIR)/%.vrh: $(VERA_LIBDIR)/%.vr
67 cd $(VERA_LIBDIR); $(VERA_VRH) $(notdir $<) $(notdir $(@:%.vrh=%))
68
69$(MAC_DIR)/%.vrh: $(MAC_DIR)/%.vr
70 cd $(MAC_DIR); $(VERA_VRH) $(notdir $<) $(notdir $(@:%.vrh=%))
71
72$(VERA_LIBDIR)/%.vro: $(VERA_LIBDIR)/%.vr
73 cd $(VERA_LIBDIR); $(VERA_VRO) $(notdir $<) $(notdir $@)
74
75$(MAC_DIR)/%.vro: $(MAC_DIR)/%.vr
76 cd $(MAC_DIR); $(VERA_VRO) $(notdir $<) $(notdir $@)
77
78$(VERA_LIBDIR)/%: $(COMMON_DIR)/%
79 cp -f $< $@
80
81$(VERA_LIBDIR)/%: $(MAC_DIR)/%
82 cp -f $< $@
83
84$(VERA_LIBDIR)/%.vri: $(MAC_DIR)/lib/%.vri
85 cp -f $< $@
86
87$(VERA_LIBDIR)/%: $(COMMON_DIR)/include/%
88 cp -f $< $@
89
90$(VERA_LIBDIR)/%: $(MAC_DIR)/include/%
91 cp -f $< $@
92
93$(VERA_LIBDIR)/%: include/%
94 cp -f $< $@
95
96$(VERA_LIBDIR)/%: %
97 cp -f $< $@
98
99################################################################################
100# all
101################################################################################
102
103all: dir $(VERA_INCLUDE) \
104 $(COMMON_INCLUDE) \
105 $(COMMON_VRH) $(COMMON_VRO)
106
107dir:
108 if (test ! -d $(VERA_LIBDIR)) then mkdir $(VERA_LIBDIR) ; fi
109
110################################################################################
111# clean
112################################################################################
113
114clean:
115 rm -rf $(VERA_LIBDIR)/*