65 lines
1.3 KiB
Makefile
65 lines
1.3 KiB
Makefile
VLSIM_DIR = ../../sim/vlsim
|
|
|
|
CXXFLAGS += -std=c++11 -O2 -DNDEBUG -Wall -Wextra -pedantic -Wfatal-errors
|
|
#CXXFLAGS += -std=c++11 -O0 -g -Wall -Wextra -pedantic -Wfatal-errors
|
|
|
|
CXXFLAGS += -I../include -I../../hw -I$(VLSIM_DIR)
|
|
|
|
LDFLAGS += $(VLSIM_DIR)/libopae-c-vlsim.a
|
|
|
|
# Position independent code
|
|
CXXFLAGS += -fPIC
|
|
|
|
# Add external configuration
|
|
CXXFLAGS += $(CONFIGS)
|
|
|
|
# Dump perf stats
|
|
CXXFLAGS += -DDUMP_PERF_STATS
|
|
|
|
LDFLAGS += -shared
|
|
|
|
RTL_DIR=../../hw/rtl
|
|
|
|
SCRIPT_DIR=../../hw/scripts
|
|
|
|
AFU_JSON_INFO = vortex_afu.h
|
|
|
|
SRCS = ../common/opae.cpp ../common/vx_utils.cpp
|
|
|
|
# Enable scope analyzer
|
|
ifdef SCOPE
|
|
CXXFLAGS += -DSCOPE
|
|
SRCS += ../common/vx_scope.cpp
|
|
SCOPE_H = scope-defs.h
|
|
endif
|
|
|
|
# Enable perf counters
|
|
ifdef PERF
|
|
CXXFLAGS += -DPERF_ENABLE
|
|
endif
|
|
|
|
PROJECT = libvortex.so
|
|
|
|
all: $(PROJECT)
|
|
|
|
scope-defs.h: $(SCRIPT_DIR)/scope.json
|
|
$(SCRIPT_DIR)/scope.py $(CONFIGS) -cc scope-defs.h -vl $(RTL_DIR)/scope-defs.vh $(SCRIPT_DIR)/scope.json
|
|
|
|
# generate scope data
|
|
scope: scope-defs.h
|
|
|
|
$(PROJECT): $(SRCS) $(SCOPE_H)
|
|
$(SCOPE_ENABLE) $(PERF_ENABLE) $(MAKE) -C $(VLSIM_DIR) static
|
|
$(CXX) $(CXXFLAGS) -DUSE_VLSIM $(SRCS) $(LDFLAGS) -o $(PROJECT)
|
|
|
|
.depend: $(SRCS)
|
|
$(CXX) $(CXXFLAGS) -MM $(SRCS) > .depend;
|
|
|
|
clean:
|
|
$(MAKE) -C $(VLSIM_DIR) clean-objdir
|
|
rm -rf $(PROJECT) *.o .depend
|
|
|
|
ifneq ($(MAKECMDGOALS),clean)
|
|
-include .depend
|
|
endif
|