diff --git a/npc/Makefile b/npc/Makefile index bf3d39e..1ee5b38 100644 --- a/npc/Makefile +++ b/npc/Makefile @@ -4,9 +4,7 @@ OBJDIR := $(PREFIX)/obj TARGET := $(OBJDIR)/Vexample VSRC := $(wildcard vsrc/*.v) -SRC_AUTO_BIND := $(abspath $(PREFIX)/auto_bind.cpp) CPPSRCS := $(addprefix $(PWD)/,$(wildcard csrc/*.cpp)) -NXDC_FILES = $(abspath constr/top.nxdc) SUBMAKE := $(OBJDIR)/Vexample.mk VERILATOR_FLAGS := --cc --exe @@ -23,9 +21,6 @@ sim: $(VSRC) $(CPPSRCS) $(OBJDIR)/Vexample git_trace $(OBJDIR)/Vexample: $(SUBMAKE) $(MAKE) -C $(OBJDIR) -f $(notdir $(SUBMAKE)) Vexample -$(PREFIX)/nvobj/Vexample: $(SUBMAKE) - $(MAKE) -C $(OBJDIR) -f $(notdir $(SUBMAKE)) Vexample - $(SUBMAKE): $(VSRC) $(CPPSRCS) mkdir -p $(OBJDIR) verilator $(VERILATOR_FLAGS) $(addprefix -CFLAGS , $(CXXFLAGS)) $(addprefix -LDFLAGS , $(LDFLAGS)) --Mdir $(abspath $(OBJDIR)) $(VSRC) $(CPPSRCS) @@ -43,14 +38,19 @@ endif git_trace: $(call git_commit, "sim RTL") - .PHONY: clean nvboard -# TODO: fix this awkward way to find nvboard.a nvboard: OBJDIR := $(PREFIX)/nvobj +nvboard: SUBMAKE := $(OBJDIR)/Vexample.mk + +nvboard: NXDC_FILES = $(abspath constr/top.nxdc) +nvboard: SRC_AUTO_BIND := $(abspath $(PREFIX)/auto_bind.cpp) + +# TODO: fix this awkward way to find nvboard.a nvboard: CPPSRCS := $(addprefix $(PWD)/,$(wildcard csrc_nvboard/*.cpp)) $(SRC_AUTO_BIND) $(NVBOARD_HOME)/build/nvboard.a nvboard: CXXFLAGS += -I$(NVBOARD_HOME)/include $(shell sdl2-config --cflags) -g -nvboard: $(VSRC) $(CPPSRCS) $(PREFIX)/nvobj/Vexample $(SUBMAKE) $(SRC_AUTO_BIND) + +nvboard: $(VSRC) $(CPPSRCS) $(SUBMAKE) $(SRC_AUTO_BIND) $(OBJDIR)/Vexample @NVBOARD_HOME=$(NVBOARD_HOME) $(OBJDIR)/Vexample clean: