enabling temporary build directory for blackbox multiple instances

This commit is contained in:
Blaise Tine
2023-12-28 20:06:10 -08:00
parent 51e621cdf1
commit e62d122c9b
7 changed files with 158 additions and 83 deletions

View File

@@ -1,25 +1,15 @@
XLEN ?= 32
TARGET ?= opaesim
DESTDIR ?= $(CURDIR)
OPAESIM_DIR = ../../sim/opaesim
RTL_DIR=../../hw/rtl
SYN_DIR=../../hw/syn/altera/opae
SCRIPT_DIR=../../hw/scripts
CXXFLAGS += -std=c++11 -Wall -Wextra -pedantic -Wfatal-errors
CXXFLAGS += -I. -I../include -I../common/ -I../../hw
CXXFLAGS += -I$(DESTDIR) -I../include -I../common/ -I../../hw
CXXFLAGS += -DXLEN_$(XLEN)
ifeq ($(TARGET), opaesim)
CXXFLAGS += -I$(OPAESIM_DIR)
else
CXXFLAGS += -I$(SYN_DIR)
endif
# Position independent code
CXXFLAGS += -fPIC
@@ -35,9 +25,11 @@ SRCS = vortex.cpp driver.cpp ../common/utils.cpp
# set up target types
ifeq ($(TARGET), opaesim)
CXXFLAGS += -DOPAESIM
OPAESIM = libopae-c-sim.so
OPAESIM = $(DESTDIR)/libopae-c-sim.so
CXXFLAGS += -DOPAESIM -I$(OPAESIM_DIR)
LDFLAGS += -L$(DESTDIR) -lopae-c-sim
else
CXXFLAGS += -I$(SYN_DIR)
ifeq ($(TARGET), asesim)
CXXFLAGS += -DASESIM
else
@@ -65,14 +57,14 @@ endif
PROJECT = libvortex.so
all: $(PROJECT)
all: $(DESTDIR)/$(PROJECT)
libopae-c-sim.so:
DESTDIR=../../runtime/opae $(MAKE) -C $(OPAESIM_DIR) ../../runtime/opae/libopae-c-sim.so
$(DESTDIR)/libopae-c-sim.so:
DESTDIR=$(DESTDIR) $(MAKE) -C $(OPAESIM_DIR) $(DESTDIR)/libopae-c-sim.so
$(PROJECT): $(SRCS) $(OPAESIM)
$(CXX) $(CXXFLAGS) $(SRCS) $(LDFLAGS) -o $(PROJECT)
$(DESTDIR)/$(PROJECT): $(SRCS) $(OPAESIM)
$(CXX) $(CXXFLAGS) $(SRCS) $(LDFLAGS) -o $@
clean:
DESTDIR=../../runtime/opae $(MAKE) -C $(OPAESIM_DIR) clean
rm -rf $(PROJECT)
DESTDIR=$(DESTDIR) $(MAKE) -C $(OPAESIM_DIR) clean
rm -rf $(DESTDIR)/$(PROJECT)

View File

@@ -1,5 +1,5 @@
XLEN ?= 32
DESTDIR ?= $(CURDIR)
RTLSIM_DIR = ../../sim/rtlsim
CXXFLAGS += -std=c++11 -Wall -Wextra -pedantic -Wfatal-errors
@@ -16,7 +16,7 @@ CXXFLAGS += $(CONFIGS)
CXXFLAGS += -DDUMP_PERF_STATS
LDFLAGS += -shared -pthread
LDFLAGS += -L. -lrtlsim
LDFLAGS += -L$(DESTDIR) -lrtlsim
SRCS = vortex.cpp ../common/utils.cpp
@@ -34,12 +34,12 @@ endif
PROJECT = libvortex.so
all: $(PROJECT)
all: $(DESTDIR)/$(PROJECT)
$(PROJECT): $(SRCS)
DESTDIR=../../runtime/rtlsim $(MAKE) -C $(RTLSIM_DIR) ../../runtime/rtlsim/librtlsim.so
$(CXX) $(CXXFLAGS) $(SRCS) $(LDFLAGS) -o $(PROJECT)
$(DESTDIR)/$(PROJECT): $(SRCS)
DESTDIR=$(DESTDIR) $(MAKE) -C $(RTLSIM_DIR) $(DESTDIR)/librtlsim.so
$(CXX) $(CXXFLAGS) $(SRCS) $(LDFLAGS) -o $@
clean:
DESTDIR=../../runtime/rtlsim $(MAKE) -C $(RTLSIM_DIR) clean
rm -rf $(PROJECT) *.o
DESTDIR=$(DESTDIR) $(MAKE) -C $(RTLSIM_DIR) clean
rm -rf $(DESTDIR)/$(PROJECT) *.o

View File

@@ -1,5 +1,5 @@
XLEN ?= 32
DESTDIR ?= $(CURDIR)
SIMX_DIR = ../../sim/simx
CXXFLAGS += -std=c++11 -Wall -Wextra -Wfatal-errors
@@ -10,7 +10,7 @@ CXXFLAGS += -DDUMP_PERF_STATS
CXXFLAGS += -DXLEN_$(XLEN)
LDFLAGS += -shared -pthread
LDFLAGS += -L. -lsimx
LDFLAGS += -L$(DESTDIR) -lsimx
SRCS = vortex.cpp ../common/utils.cpp
@@ -23,12 +23,12 @@ endif
PROJECT = libvortex.so
all: $(PROJECT)
all: $(DESTDIR)/$(PROJECT)
$(PROJECT): $(SRCS)
DESTDIR=../../runtime/simx $(MAKE) -C $(SIMX_DIR) ../../runtime/simx/libsimx.so
$(DESTDIR)/$(PROJECT): $(SRCS)
DESTDIR=$(DESTDIR) $(MAKE) -C $(SIMX_DIR) $(DESTDIR)/libsimx.so
$(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -o $@
clean:
DESTDIR=../../runtime/simx $(MAKE) -C $(SIMX_DIR) clean
rm -rf libsimx.so $(PROJECT) *.o
DESTDIR=$(DESTDIR) $(MAKE) -C $(SIMX_DIR) clean
rm -rf $(DESTDIR)/$(PROJECT) *.o