enabling temporary build directory for blackbox multiple instances
This commit is contained in:
159
ci/blackbox.sh
159
ci/blackbox.sh
@@ -16,7 +16,17 @@
|
|||||||
show_usage()
|
show_usage()
|
||||||
{
|
{
|
||||||
echo "Vortex BlackBox Test Driver v1.0"
|
echo "Vortex BlackBox Test Driver v1.0"
|
||||||
echo "Usage: $0 [[--clusters=#n] [--cores=#n] [--warps=#n] [--threads=#n] [--l2cache] [--l3cache] [[--driver=#name] [--app=#app] [--args=#args] [--debug=#level] [--scope] [--perf=#class] [--rebuild=0|1] [--log=logfile] [--help]]"
|
echo "Usage: $0 [[--clusters=#n] [--cores=#n] [--warps=#n] [--threads=#n] [--l2cache] [--l3cache] [[--driver=#name] [--app=#app] [--args=#args] [--debug=#level] [--scope] [--perf=#class] [--rebuild=#n] [--log=logfile] [--help]]"
|
||||||
|
}
|
||||||
|
|
||||||
|
show_help()
|
||||||
|
{
|
||||||
|
show_usage
|
||||||
|
echo " where"
|
||||||
|
echo "--driver: simx, rtlsim, oape, xrt"
|
||||||
|
echo "--app: any subfolder test under regression or opencl"
|
||||||
|
echo "--class: 0=disable, 1=pipeline, 2=memsys"
|
||||||
|
echo "--rebuild: 0=disable, 1=force, 2=auto, 3=temp"
|
||||||
}
|
}
|
||||||
|
|
||||||
SCRIPT_DIR=$(dirname "$0")
|
SCRIPT_DIR=$(dirname "$0")
|
||||||
@@ -36,6 +46,7 @@ SCOPE=0
|
|||||||
HAS_ARGS=0
|
HAS_ARGS=0
|
||||||
PERF_CLASS=0
|
PERF_CLASS=0
|
||||||
REBUILD=2
|
REBUILD=2
|
||||||
|
TEMPBUILD=0
|
||||||
LOGFILE=run.log
|
LOGFILE=run.log
|
||||||
|
|
||||||
for i in "$@"
|
for i in "$@"
|
||||||
@@ -102,7 +113,7 @@ case $i in
|
|||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
--help)
|
--help)
|
||||||
show_usage
|
show_help
|
||||||
exit 0
|
exit 0
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
@@ -112,6 +123,12 @@ case $i in
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
|
if [ $REBUILD -eq 3 ];
|
||||||
|
then
|
||||||
|
REBUILD=1
|
||||||
|
TEMPBUILD=1
|
||||||
|
fi
|
||||||
|
|
||||||
case $DRIVER in
|
case $DRIVER in
|
||||||
simx)
|
simx)
|
||||||
DRIVER_PATH=$VORTEX_HOME/runtime/simx
|
DRIVER_PATH=$VORTEX_HOME/runtime/simx
|
||||||
@@ -174,53 +191,119 @@ make -C $VORTEX_HOME/runtime/stub > /dev/null
|
|||||||
|
|
||||||
if [ $DEBUG -ne 0 ]
|
if [ $DEBUG -ne 0 ]
|
||||||
then
|
then
|
||||||
# driver initialization
|
|
||||||
if [ $SCOPE -eq 1 ]
|
|
||||||
then
|
|
||||||
echo "running: DEBUG=$DEBUG_LEVEL SCOPE=1 CONFIGS="$CONFIGS" make -C $DRIVER_PATH"
|
|
||||||
DEBUG=$DEBUG_LEVEL SCOPE=1 CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
|
||||||
else
|
|
||||||
echo "running: DEBUG=$DEBUG_LEVEL CONFIGS="$CONFIGS" make -C $DRIVER_PATH"
|
|
||||||
DEBUG=$DEBUG_LEVEL CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
|
||||||
fi
|
|
||||||
|
|
||||||
# running application
|
# running application
|
||||||
if [ $HAS_ARGS -eq 1 ]
|
if [ $TEMPBUILD -eq 1 ]
|
||||||
then
|
then
|
||||||
echo "running: OPTS=$ARGS make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1"
|
# setup temp directory
|
||||||
OPTS=$ARGS make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1
|
TEMPDIR=$(mktemp -d)
|
||||||
status=$?
|
mkdir -p "$TEMPDIR/$DRIVER"
|
||||||
|
|
||||||
|
# driver initialization
|
||||||
|
if [ $SCOPE -eq 1 ]
|
||||||
|
then
|
||||||
|
echo "running: DESTDIR=$TEMPDIR/$DRIVER DEBUG=$DEBUG_LEVEL SCOPE=1 CONFIGS=$CONFIGS make -C $DRIVER_PATH"
|
||||||
|
DESTDIR="$TEMPDIR/$DRIVER" DEBUG=$DEBUG_LEVEL SCOPE=1 CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
||||||
|
else
|
||||||
|
echo "running: DESTDIR=$TEMPDIR/$DRIVER DEBUG=$DEBUG_LEVEL CONFIGS=$CONFIGS make -C $DRIVER_PATH"
|
||||||
|
DESTDIR="$TEMPDIR/$DRIVER" DEBUG=$DEBUG_LEVEL CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
||||||
|
fi
|
||||||
|
|
||||||
|
# running application
|
||||||
|
if [ $HAS_ARGS -eq 1 ]
|
||||||
|
then
|
||||||
|
echo "running: VORTEX_RT_PATH=$TEMPDIR OPTS=$ARGS make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1"
|
||||||
|
VORTEX_RT_PATH=$TEMPDIR OPTS=$ARGS make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1
|
||||||
|
status=$?
|
||||||
|
else
|
||||||
|
echo "running: VORTEX_RT_PATH=$TEMPDIR make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1"
|
||||||
|
VORTEX_RT_PATH=$TEMPDIR make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1
|
||||||
|
status=$?
|
||||||
|
fi
|
||||||
|
|
||||||
|
# cleanup temp directory
|
||||||
|
trap "rm -rf $TEMPDIR" EXIT
|
||||||
else
|
else
|
||||||
echo "running: make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1"
|
# driver initialization
|
||||||
make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1
|
if [ $SCOPE -eq 1 ]
|
||||||
status=$?
|
then
|
||||||
|
echo "running: DEBUG=$DEBUG_LEVEL SCOPE=1 CONFIGS=$CONFIGS make -C $DRIVER_PATH"
|
||||||
|
DEBUG=$DEBUG_LEVEL SCOPE=1 CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
||||||
|
else
|
||||||
|
echo "running: DEBUG=$DEBUG_LEVEL CONFIGS=$CONFIGS make -C $DRIVER_PATH"
|
||||||
|
DEBUG=$DEBUG_LEVEL CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
||||||
|
fi
|
||||||
|
|
||||||
|
# running application
|
||||||
|
if [ $HAS_ARGS -eq 1 ]
|
||||||
|
then
|
||||||
|
echo "running: OPTS=$ARGS make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1"
|
||||||
|
OPTS=$ARGS make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1
|
||||||
|
status=$?
|
||||||
|
else
|
||||||
|
echo "running: make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1"
|
||||||
|
make -C $APP_PATH run-$DRIVER > $LOGFILE 2>&1
|
||||||
|
status=$?
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -f "$APP_PATH/trace.vcd" ]
|
if [ -f "$APP_PATH/trace.vcd" ]
|
||||||
then
|
then
|
||||||
mv -f $APP_PATH/trace.vcd .
|
mv -f $APP_PATH/trace.vcd .
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
# driver initialization
|
if [ $TEMPBUILD -eq 1 ]
|
||||||
if [ $SCOPE -eq 1 ]
|
|
||||||
then
|
then
|
||||||
echo "running: SCOPE=1 CONFIGS="$CONFIGS" make -C $DRIVER_PATH"
|
# setup temp directory
|
||||||
SCOPE=1 CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
TEMPDIR=$(mktemp -d)
|
||||||
|
mkdir -p "$TEMPDIR/$DRIVER"
|
||||||
|
|
||||||
|
# driver initialization
|
||||||
|
if [ $SCOPE -eq 1 ]
|
||||||
|
then
|
||||||
|
echo "running: DESTDIR=$TEMPDIR/$DRIVER SCOPE=1 CONFIGS=$CONFIGS make -C $DRIVER_PATH"
|
||||||
|
DESTDIR="$TEMPDIR/$DRIVER" SCOPE=1 CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
||||||
|
else
|
||||||
|
echo "running: DESTDIR=$TEMPDIR/$DRIVER CONFIGS=$CONFIGS make -C $DRIVER_PATH"
|
||||||
|
DESTDIR="$TEMPDIR/$DRIVER" CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
||||||
|
fi
|
||||||
|
|
||||||
|
# running application
|
||||||
|
if [ $HAS_ARGS -eq 1 ]
|
||||||
|
then
|
||||||
|
echo "running: VORTEX_RT_PATH=$TEMPDIR OPTS=$ARGS make -C $APP_PATH run-$DRIVER"
|
||||||
|
VORTEX_RT_PATH=$TEMPDIR OPTS=$ARGS make -C $APP_PATH run-$DRIVER
|
||||||
|
status=$?
|
||||||
|
else
|
||||||
|
echo "running: VORTEX_RT_PATH=$TEMPDIR make -C $APP_PATH run-$DRIVER"
|
||||||
|
VORTEX_RT_PATH=$TEMPDIR make -C $APP_PATH run-$DRIVER
|
||||||
|
status=$?
|
||||||
|
fi
|
||||||
|
|
||||||
|
# cleanup temp directory
|
||||||
|
trap "rm -rf $TEMPDIR" EXIT
|
||||||
else
|
else
|
||||||
echo "running: CONFIGS="$CONFIGS" make -C $DRIVER_PATH"
|
|
||||||
CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
# driver initialization
|
||||||
fi
|
if [ $SCOPE -eq 1 ]
|
||||||
|
then
|
||||||
# running application
|
echo "running: SCOPE=1 CONFIGS=$CONFIGS make -C $DRIVER_PATH"
|
||||||
if [ $HAS_ARGS -eq 1 ]
|
SCOPE=1 CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
||||||
then
|
else
|
||||||
echo "running: OPTS=$ARGS make -C $APP_PATH run-$DRIVER"
|
echo "running: CONFIGS=$CONFIGS make -C $DRIVER_PATH"
|
||||||
OPTS=$ARGS make -C $APP_PATH run-$DRIVER
|
CONFIGS="$CONFIGS" make -C $DRIVER_PATH > /dev/null
|
||||||
status=$?
|
fi
|
||||||
else
|
|
||||||
echo "running: make -C $APP_PATH run-$DRIVER"
|
# running application
|
||||||
make -C $APP_PATH run-$DRIVER
|
if [ $HAS_ARGS -eq 1 ]
|
||||||
status=$?
|
then
|
||||||
|
echo "running: OPTS=$ARGS make -C $APP_PATH run-$DRIVER"
|
||||||
|
OPTS=$ARGS make -C $APP_PATH run-$DRIVER
|
||||||
|
status=$?
|
||||||
|
else
|
||||||
|
echo "running: make -C $APP_PATH run-$DRIVER"
|
||||||
|
make -C $APP_PATH run-$DRIVER
|
||||||
|
status=$?
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -1,25 +1,15 @@
|
|||||||
XLEN ?= 32
|
XLEN ?= 32
|
||||||
|
|
||||||
TARGET ?= opaesim
|
TARGET ?= opaesim
|
||||||
|
DESTDIR ?= $(CURDIR)
|
||||||
OPAESIM_DIR = ../../sim/opaesim
|
OPAESIM_DIR = ../../sim/opaesim
|
||||||
|
|
||||||
RTL_DIR=../../hw/rtl
|
RTL_DIR=../../hw/rtl
|
||||||
|
|
||||||
SYN_DIR=../../hw/syn/altera/opae
|
SYN_DIR=../../hw/syn/altera/opae
|
||||||
|
|
||||||
SCRIPT_DIR=../../hw/scripts
|
SCRIPT_DIR=../../hw/scripts
|
||||||
|
|
||||||
CXXFLAGS += -std=c++11 -Wall -Wextra -pedantic -Wfatal-errors
|
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)
|
CXXFLAGS += -DXLEN_$(XLEN)
|
||||||
|
|
||||||
ifeq ($(TARGET), opaesim)
|
|
||||||
CXXFLAGS += -I$(OPAESIM_DIR)
|
|
||||||
else
|
|
||||||
CXXFLAGS += -I$(SYN_DIR)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Position independent code
|
# Position independent code
|
||||||
CXXFLAGS += -fPIC
|
CXXFLAGS += -fPIC
|
||||||
|
|
||||||
@@ -35,9 +25,11 @@ SRCS = vortex.cpp driver.cpp ../common/utils.cpp
|
|||||||
|
|
||||||
# set up target types
|
# set up target types
|
||||||
ifeq ($(TARGET), opaesim)
|
ifeq ($(TARGET), opaesim)
|
||||||
CXXFLAGS += -DOPAESIM
|
OPAESIM = $(DESTDIR)/libopae-c-sim.so
|
||||||
OPAESIM = libopae-c-sim.so
|
CXXFLAGS += -DOPAESIM -I$(OPAESIM_DIR)
|
||||||
|
LDFLAGS += -L$(DESTDIR) -lopae-c-sim
|
||||||
else
|
else
|
||||||
|
CXXFLAGS += -I$(SYN_DIR)
|
||||||
ifeq ($(TARGET), asesim)
|
ifeq ($(TARGET), asesim)
|
||||||
CXXFLAGS += -DASESIM
|
CXXFLAGS += -DASESIM
|
||||||
else
|
else
|
||||||
@@ -65,14 +57,14 @@ endif
|
|||||||
|
|
||||||
PROJECT = libvortex.so
|
PROJECT = libvortex.so
|
||||||
|
|
||||||
all: $(PROJECT)
|
all: $(DESTDIR)/$(PROJECT)
|
||||||
|
|
||||||
libopae-c-sim.so:
|
$(DESTDIR)/libopae-c-sim.so:
|
||||||
DESTDIR=../../runtime/opae $(MAKE) -C $(OPAESIM_DIR) ../../runtime/opae/libopae-c-sim.so
|
DESTDIR=$(DESTDIR) $(MAKE) -C $(OPAESIM_DIR) $(DESTDIR)/libopae-c-sim.so
|
||||||
|
|
||||||
$(PROJECT): $(SRCS) $(OPAESIM)
|
$(DESTDIR)/$(PROJECT): $(SRCS) $(OPAESIM)
|
||||||
$(CXX) $(CXXFLAGS) $(SRCS) $(LDFLAGS) -o $(PROJECT)
|
$(CXX) $(CXXFLAGS) $(SRCS) $(LDFLAGS) -o $@
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
DESTDIR=../../runtime/opae $(MAKE) -C $(OPAESIM_DIR) clean
|
DESTDIR=$(DESTDIR) $(MAKE) -C $(OPAESIM_DIR) clean
|
||||||
rm -rf $(PROJECT)
|
rm -rf $(DESTDIR)/$(PROJECT)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
XLEN ?= 32
|
XLEN ?= 32
|
||||||
|
DESTDIR ?= $(CURDIR)
|
||||||
RTLSIM_DIR = ../../sim/rtlsim
|
RTLSIM_DIR = ../../sim/rtlsim
|
||||||
|
|
||||||
CXXFLAGS += -std=c++11 -Wall -Wextra -pedantic -Wfatal-errors
|
CXXFLAGS += -std=c++11 -Wall -Wextra -pedantic -Wfatal-errors
|
||||||
@@ -16,7 +16,7 @@ CXXFLAGS += $(CONFIGS)
|
|||||||
CXXFLAGS += -DDUMP_PERF_STATS
|
CXXFLAGS += -DDUMP_PERF_STATS
|
||||||
|
|
||||||
LDFLAGS += -shared -pthread
|
LDFLAGS += -shared -pthread
|
||||||
LDFLAGS += -L. -lrtlsim
|
LDFLAGS += -L$(DESTDIR) -lrtlsim
|
||||||
|
|
||||||
SRCS = vortex.cpp ../common/utils.cpp
|
SRCS = vortex.cpp ../common/utils.cpp
|
||||||
|
|
||||||
@@ -34,12 +34,12 @@ endif
|
|||||||
|
|
||||||
PROJECT = libvortex.so
|
PROJECT = libvortex.so
|
||||||
|
|
||||||
all: $(PROJECT)
|
all: $(DESTDIR)/$(PROJECT)
|
||||||
|
|
||||||
$(PROJECT): $(SRCS)
|
$(DESTDIR)/$(PROJECT): $(SRCS)
|
||||||
DESTDIR=../../runtime/rtlsim $(MAKE) -C $(RTLSIM_DIR) ../../runtime/rtlsim/librtlsim.so
|
DESTDIR=$(DESTDIR) $(MAKE) -C $(RTLSIM_DIR) $(DESTDIR)/librtlsim.so
|
||||||
$(CXX) $(CXXFLAGS) $(SRCS) $(LDFLAGS) -o $(PROJECT)
|
$(CXX) $(CXXFLAGS) $(SRCS) $(LDFLAGS) -o $@
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
DESTDIR=../../runtime/rtlsim $(MAKE) -C $(RTLSIM_DIR) clean
|
DESTDIR=$(DESTDIR) $(MAKE) -C $(RTLSIM_DIR) clean
|
||||||
rm -rf $(PROJECT) *.o
|
rm -rf $(DESTDIR)/$(PROJECT) *.o
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
XLEN ?= 32
|
XLEN ?= 32
|
||||||
|
DESTDIR ?= $(CURDIR)
|
||||||
SIMX_DIR = ../../sim/simx
|
SIMX_DIR = ../../sim/simx
|
||||||
|
|
||||||
CXXFLAGS += -std=c++11 -Wall -Wextra -Wfatal-errors
|
CXXFLAGS += -std=c++11 -Wall -Wextra -Wfatal-errors
|
||||||
@@ -10,7 +10,7 @@ CXXFLAGS += -DDUMP_PERF_STATS
|
|||||||
CXXFLAGS += -DXLEN_$(XLEN)
|
CXXFLAGS += -DXLEN_$(XLEN)
|
||||||
|
|
||||||
LDFLAGS += -shared -pthread
|
LDFLAGS += -shared -pthread
|
||||||
LDFLAGS += -L. -lsimx
|
LDFLAGS += -L$(DESTDIR) -lsimx
|
||||||
|
|
||||||
SRCS = vortex.cpp ../common/utils.cpp
|
SRCS = vortex.cpp ../common/utils.cpp
|
||||||
|
|
||||||
@@ -23,12 +23,12 @@ endif
|
|||||||
|
|
||||||
PROJECT = libvortex.so
|
PROJECT = libvortex.so
|
||||||
|
|
||||||
all: $(PROJECT)
|
all: $(DESTDIR)/$(PROJECT)
|
||||||
|
|
||||||
$(PROJECT): $(SRCS)
|
$(DESTDIR)/$(PROJECT): $(SRCS)
|
||||||
DESTDIR=../../runtime/simx $(MAKE) -C $(SIMX_DIR) ../../runtime/simx/libsimx.so
|
DESTDIR=$(DESTDIR) $(MAKE) -C $(SIMX_DIR) $(DESTDIR)/libsimx.so
|
||||||
$(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -o $@
|
$(CXX) $(CXXFLAGS) $^ $(LDFLAGS) -o $@
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
DESTDIR=../../runtime/simx $(MAKE) -C $(SIMX_DIR) clean
|
DESTDIR=$(DESTDIR) $(MAKE) -C $(SIMX_DIR) clean
|
||||||
rm -rf libsimx.so $(PROJECT) *.o
|
rm -rf $(DESTDIR)/$(PROJECT) *.o
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
XLEN ?= 32
|
XLEN ?= 32
|
||||||
DESTDIR ?= .
|
DESTDIR ?= $(CURDIR)
|
||||||
RTL_DIR = ../../hw/rtl
|
RTL_DIR = ../../hw/rtl
|
||||||
DPI_DIR = ../../hw/dpi
|
DPI_DIR = ../../hw/dpi
|
||||||
AFU_DIR = $(RTL_DIR)/afu/opae
|
AFU_DIR = $(RTL_DIR)/afu/opae
|
||||||
@@ -119,16 +119,16 @@ PROJECT = libopae-c-sim.so
|
|||||||
all: $(DESTDIR)/$(PROJECT)
|
all: $(DESTDIR)/$(PROJECT)
|
||||||
|
|
||||||
$(DESTDIR)/vortex.xml:
|
$(DESTDIR)/vortex.xml:
|
||||||
verilator --xml-only -O0 $(VL_FLAGS) $(TOP) --xml-output $(DESTDIR)/vortex.xml
|
verilator --xml-only -O0 $(VL_FLAGS) $(TOP) --xml-output $@
|
||||||
|
|
||||||
$(DESTDIR)/scope.json: $(DESTDIR)/vortex.xml
|
$(DESTDIR)/scope.json: $(DESTDIR)/vortex.xml
|
||||||
$(SCRIPT_DIR)/scope.py $(DESTDIR)/vortex.xml -o $(DESTDIR)/scope.json
|
$(SCRIPT_DIR)/scope.py $^ -o $@
|
||||||
|
|
||||||
$(DESTDIR)/vortex_afu.h : $(AFU_DIR)/vortex_afu.vh
|
$(DESTDIR)/vortex_afu.h : $(AFU_DIR)/vortex_afu.vh
|
||||||
$(SCRIPT_DIR)/gen_config.py -i $(AFU_DIR)/vortex_afu.vh -o $(DESTDIR)/vortex_afu.h
|
$(SCRIPT_DIR)/gen_config.py -i $^ -o $@
|
||||||
|
|
||||||
$(DESTDIR)/$(PROJECT): $(SRCS) $(DESTDIR)/vortex_afu.h $(SCOPE_JSON)
|
$(DESTDIR)/$(PROJECT): $(SRCS) $(DESTDIR)/vortex_afu.h $(SCOPE_JSON)
|
||||||
verilator --build --exe -O3 $(VL_FLAGS) --cc $(TOP) --top-module $(TOP) $(SRCS) -CFLAGS '$(CXXFLAGS)' -LDFLAGS '$(LDFLAGS)' -o ../$(DESTDIR)/$(PROJECT)
|
verilator --build --exe -O3 $(VL_FLAGS) --cc $(TOP) --top-module $(TOP) $(SRCS) -CFLAGS '$(CXXFLAGS)' -LDFLAGS '$(LDFLAGS)' -o $@
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf obj_dir $(DESTDIR)/vortex.xml $(DESTDIR)/scope.json $(DESTDIR)/vortex_afu.h $(DESTDIR)/$(PROJECT)
|
rm -rf obj_dir $(DESTDIR)/vortex.xml $(DESTDIR)/scope.json $(DESTDIR)/vortex_afu.h $(DESTDIR)/$(PROJECT)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
XLEN ?= 32
|
XLEN ?= 32
|
||||||
DESTDIR ?= .
|
DESTDIR ?= $(CURDIR)
|
||||||
RTL_DIR = ../../hw/rtl
|
RTL_DIR = ../../hw/rtl
|
||||||
DPI_DIR = ../../hw/dpi
|
DPI_DIR = ../../hw/dpi
|
||||||
THIRD_PARTY_DIR = ../../third_party
|
THIRD_PARTY_DIR = ../../third_party
|
||||||
@@ -88,10 +88,10 @@ PROJECT = rtlsim
|
|||||||
all: $(DESTDIR)/$(PROJECT)
|
all: $(DESTDIR)/$(PROJECT)
|
||||||
|
|
||||||
$(DESTDIR)/$(PROJECT): $(SRCS) main.cpp
|
$(DESTDIR)/$(PROJECT): $(SRCS) main.cpp
|
||||||
verilator --build $(VL_FLAGS) $^ -CFLAGS '$(CXXFLAGS) -DSTARTUP_ADDR=0x80000000' -LDFLAGS '$(LDFLAGS)' -o ../$@
|
verilator --build $(VL_FLAGS) $^ -CFLAGS '$(CXXFLAGS) -DSTARTUP_ADDR=0x80000000' -LDFLAGS '$(LDFLAGS)' -o $@
|
||||||
|
|
||||||
$(DESTDIR)/lib$(PROJECT).so: $(SRCS)
|
$(DESTDIR)/lib$(PROJECT).so: $(SRCS)
|
||||||
verilator --build $(VL_FLAGS) $^ -CFLAGS '$(CXXFLAGS)' -LDFLAGS '-shared $(LDFLAGS)' -o ../$@
|
verilator --build $(VL_FLAGS) $^ -CFLAGS '$(CXXFLAGS)' -LDFLAGS '-shared $(LDFLAGS)' -o $@
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -rf obj_dir $(DESTDIR)/$(PROJECT) $(DESTDIR)/lib$(PROJECT).so
|
rm -rf obj_dir $(DESTDIR)/$(PROJECT) $(DESTDIR)/lib$(PROJECT).so
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
XLEN ?= 32
|
XLEN ?= 32
|
||||||
DESTDIR ?= .
|
DESTDIR ?= $(CURDIR)
|
||||||
RTL_DIR = ../hw/rtl
|
RTL_DIR = ../hw/rtl
|
||||||
THIRD_PARTY_DIR = ../../third_party
|
THIRD_PARTY_DIR = ../../third_party
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user