|
|
- SIM_SRC := ../sim
- SYN_SRC := ../syn
- CMN_SRC := ../common
- OSVVM_SRC := ../lib/OSVVM
- VHD08_SRC := vhdl_2008
- VHD_STD := 08
-
-
- .PHONY: all
- all: queue dict stack sim wishbone
-
-
- OsvvmContext.o: $(OSVVM_SRC)/*.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/NamePkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/OsvvmGlobalPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/VendorCovApiPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/TranscriptPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/TextUtilPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/AlertLogPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/MessagePkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/SortListPkg_int.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/RandomBasePkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/RandomPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/CoveragePkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/MemoryPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/ScoreboardGenericPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/ScoreboardPkg_slv.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/ScoreboardPkg_int.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/ResolutionPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/TbUtilPkg.vhd
- ghdl -a --std=$(VHD_STD) --work=osvvm $(OSVVM_SRC)/OsvvmContext.vhd
-
-
- UtilsP.o: $(CMN_SRC)/UtilsP.vhd
- ghdl -a --std=$(VHD_STD) --work=libvhdl $<
-
-
- # Default rule for compiling packages
- %P.o: $(SIM_SRC)/%P.vhd
- ghdl -a --std=$(VHD_STD) --work=libvhdl $<
-
-
- queuet: OsvvmContext.o AssertP.o QueueP.o QueueT.vhd
- ghdl -a --std=$(VHD_STD) QueueT.vhd
- ghdl -e --std=$(VHD_STD) $@
-
-
- dictt: OsvvmContext.o DictP.o DictT.vhd
- ghdl -a --std=$(VHD_STD) DictT.vhd
- ghdl -e --std=$(VHD_STD) $@
-
- stackt: OsvvmContext.o AssertP.o StackP.o StackT.vhd
- ghdl -a --std=$(VHD_STD) StackT.vhd
- ghdl -e --std=$(VHD_STD) $@
-
- simt: OsvvmContext.o UtilsP.o AssertP.o QueueP.o SimP.o SimT.vhd
- ghdl -a --std=$(VHD_STD) SimT.vhd
- ghdl -e --std=$(VHD_STD) $@
-
-
- spit: OsvvmContext.o UtilsP.o $(SYN_SRC)/SpiSlaveE.vhd $(SYN_SRC)/SpiMasterE.vhd SpiT.vhd
- ghdl -a --std=$(VHD_STD) -fpsl $(SYN_SRC)/SpiSlaveE.vhd $(SYN_SRC)/SpiMasterE.vhd
- ghdl -a --std=$(VHD_STD) -fpsl SpiT.vhd
- ghdl -e --std=$(VHD_STD) $@
-
- .PHONY: spi
- spi: spit
- ghdl -r --std=$(VHD_STD) $@t --wave=$@t.ghw
-
-
- wishbonet: OsvvmContext.o AssertP.o SimP.o QueueP.o DictP.o UtilsP.o \
- $(SYN_SRC)/WishBoneP.vhd $(SYN_SRC)/WishBoneMasterE.vhd $(SYN_SRC)/WishBoneSlaveE.vhd WishBoneT.vhd
- ghdl -a --std=$(VHD_STD) -fpsl $(SYN_SRC)/WishBoneP.vhd
- ghdl -a --std=$(VHD_STD) -fpsl $(SYN_SRC)/WishBoneCheckerE.vhd $(SYN_SRC)/WishBoneMasterE.vhd $(SYN_SRC)/WishBoneSlaveE.vhd
- ghdl -a --std=$(VHD_STD) -fpsl WishBoneT.vhd
- ghdl -e --std=$(VHD_STD) $@
-
- .PHONY: wishbone
- wishbone: wishbonet
- ghdl -r --std=$(VHD_STD) $@t --wave=$@t.ghw --psl-report=$@_psl_coverage.json
-
-
- # Default rule for running simulation
- %: %t
- ghdl -r --std=$(VHD_STD) $@t
-
-
- .PHONY: clean
- clean:
- rm -f *.o
- rm -f *.cf
- rm -f *.ghw
- rm -f queuet
- rm -f dictt
- rm -f stackt
- rm -f stringt
- rm -f simt
- rm -f spit
- rm -f wishbonet
- rm -f *.json
-
- .PHONY: distclean
- distclean: clean
|