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 | ################################################################################ | |
10 | ||
11 | ################################################################################ | |
12 | # variable declarations | |
13 | ################################################################################ | |
14 | ||
15 | .SUFFIXES: | |
16 | ||
17 | VERA_LIBDIR ?= ./lib | |
18 | NEPTUNE_MODE ?= NEPTUNE | |
19 | MAKE_STRING ?= "${NEPTUNE_MODE}" | |
20 | ||
21 | ||
22 | VERA_VRH ?= vera -cmp ${NEPTUNE_MODE} -I . -max_error 5 -q -H | |
23 | VERA_VRO ?= vera -cmp ${NEPTUNE_MODE} -I . -max_error 5 -q | |
24 | ||
25 | COMMON_DIR := ${DV_ROOT}/verif/env/niu/vera/niu_pio | |
26 | ||
27 | VERA_INCLUDE := $(wildcard include/*port*) $(wildcard include/*vcon*) | |
28 | VERA_INCLUDE += $(wildcard include/*if.vrh*) $(wildcard include/*.vrh*) | |
29 | VERA_INCLUDE += $(wildcard include/*.vri) | |
30 | VERA_INCLUDE += $(wildcard include/*bind*) | |
31 | VERA_INCLUDE := $(subst include,$(VERA_LIBDIR),$(VERA_INCLUDE)) | |
32 | ||
33 | MISC := | |
34 | ||
35 | COMMON := pio_driver.vr mac_shadow_class.vr xmac_shadow_class.vr \ | |
36 | mac_pio_class.vr bmac_util.vr vega_shadow_class.vr pcs_util.vr \ | |
37 | xmac_util.vr xpcs_util.vr ipp_util.vr fflp_util.vr dmc_util.vr \ | |
38 | txc_util.vr esr_ti_init.vr get_macport_class.vr mac_init_class.vr | |
39 | ||
40 | ||
41 | COMMON_INCLUDE := $(wildcard $(COMMON_DIR)include/*.vri) | |
42 | COMMON_INCLUDE := $(subst $(COMMON_DIR)include,$(VERA_LIBDIR),$(COMMON_INCLUDE)) | |
43 | ||
44 | COMMON_VRH := $(patsubst %.vr,$(VERA_LIBDIR)/%.vrh,$(COMMON)) | |
45 | COMMON_VRO := $(patsubst %.vr,$(VERA_LIBDIR)/%.vro,$(COMMON)) | |
46 | ||
47 | MISC_VRH := $(patsubst %.vr,$(VERA_LIBDIR)/%.vrh,$(MISC)) | |
48 | MISC_VRO := $(patsubst %.vr,$(VERA_LIBDIR)/%.vro,$(MISC)) | |
49 | ||
50 | ################################################################################ | |
51 | # generic rule to make a .vro file | |
52 | ################################################################################ | |
53 | ||
54 | $(VERA_LIBDIR)/%.vrh: $(VERA_LIBDIR)/%.vr | |
55 | cd $(VERA_LIBDIR); $(VERA_VRH) $(notdir $<) $(notdir $(@:%.vrh=%)) | |
56 | ||
57 | $(VERA_LIBDIR)/%.vro: $(VERA_LIBDIR)/%.vr | |
58 | cd $(VERA_LIBDIR); $(VERA_VRO) $(notdir $<) $(notdir $@) | |
59 | ||
60 | $(VERA_LIBDIR)/%: $(COMMON_DIR)/% | |
61 | cp -f $< $@ | |
62 | ||
63 | $(VERA_LIBDIR)/%: $(COMMON_DIR)/include/% | |
64 | cp -f $< $@ | |
65 | ||
66 | $(VERA_LIBDIR)/%: include/% | |
67 | cp -f $< $@ | |
68 | ||
69 | $(VERA_LIBDIR)/%: % | |
70 | cp -f $< $@ | |
71 | ||
72 | ||
73 | ################################################################################ | |
74 | # all | |
75 | ################################################################################ | |
76 | ||
77 | all: dir $(VERA_INCLUDE) \ | |
78 | SMX_STUB \ | |
79 | $(COMMON_INCLUDE) \ | |
80 | $(COMMON_VRH) $(COMMON_VRO) \ | |
81 | $(MISC_VRH) $(MISC_VRO) | |
82 | ||
83 | dir: | |
84 | if (test ! -d $(VERA_LIBDIR)) then mkdir $(VERA_LIBDIR) ; fi | |
85 | NCU_STUB: | |
86 | cd ${DV_ROOT}/verif/env/niu/vera/ncu_drv; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
87 | SMX_STUB: | |
88 | cd ${DV_ROOT}/verif/env/niu/vera/smx_drv; gmake VERA_LIBDIR=$(VERA_LIBDIR) NEPTUNE_MODE=$(MAKE_STRING) | |
89 | ||
90 | ################################################################################ | |
91 | # clean | |
92 | ################################################################################ | |
93 | ||
94 | clean: | |
95 | rm -rf $(VERA_LIBDIR)/* |