mirror of
https://github.com/vortexgpgpu/vortex.git
synced 2025-04-21 04:17:53 -04:00
66 lines
No EOL
1.3 KiB
Makefile
66 lines
No EOL
1.3 KiB
Makefile
include ../common.mk
|
|
|
|
TARGET ?= xrtsim
|
|
|
|
DESTDIR ?= $(CURDIR)/..
|
|
|
|
SRC_DIR := $(VORTEX_HOME)/runtime/xrt
|
|
|
|
CXXFLAGS += -std=c++17 -Wall -Wextra -Wfatal-errors
|
|
CXXFLAGS += -I$(INC_DIR) -I$(COMMON_DIR) -I$(ROOT_DIR)/hw -I$(XILINX_XRT)/include -I$(SIM_DIR)/common
|
|
CXXFLAGS += -DXLEN_$(XLEN)
|
|
CXXFLAGS += -fPIC
|
|
|
|
LDFLAGS += -shared -pthread
|
|
LDFLAGS += -L$(XILINX_XRT)/lib
|
|
|
|
SRCS := $(SRC_DIR)/vortex.cpp $(SIM_DIR)/common/util.cpp
|
|
|
|
# set up target types
|
|
ifeq ($(TARGET), xrtsim)
|
|
XRTSIM = $(DESTDIR)/libxrtsim.so
|
|
CXXFLAGS += -DXRTSIM -I$(SIM_DIR)/xrtsim
|
|
LDFLAGS += -L$(DESTDIR) -lxrtsim
|
|
else
|
|
LDFLAGS += -luuid -lxrt_coreutil
|
|
endif
|
|
|
|
PROJECT := libvortex-xrt.so
|
|
|
|
# Debugging
|
|
ifdef DEBUG
|
|
CXXFLAGS += -g -O0
|
|
else
|
|
CXXFLAGS += -O2 -DNDEBUG
|
|
endif
|
|
|
|
# Enable scope logic analyzer
|
|
ifdef SCOPE
|
|
CXXFLAGS += -DSCOPE
|
|
SRCS += $(COMMON_DIR)/scope.cpp
|
|
endif
|
|
|
|
# Enable ILA logic analyzer
|
|
ifdef CHIPSCOPE
|
|
CXXFLAGS += -DCHIPSCOPE
|
|
endif
|
|
|
|
all: $(DESTDIR)/$(PROJECT)
|
|
|
|
driver: $(DESTDIR)/libxrtsim.so
|
|
|
|
$(DESTDIR)/libxrtsim.so:
|
|
DESTDIR=$(DESTDIR) $(MAKE) -C $(ROOT_DIR)/sim/xrtsim $(DESTDIR)/libxrtsim.so
|
|
|
|
$(DESTDIR)/$(PROJECT): $(SRCS) $(XRTSIM)
|
|
$(CXX) $(CXXFLAGS) $(SRCS) $(LDFLAGS) -o $@
|
|
|
|
clean-driver:
|
|
DESTDIR=$(DESTDIR) $(MAKE) -C $(ROOT_DIR)/sim/xrtsim clean
|
|
|
|
clean-runtime:
|
|
rm -f $(DESTDIR)/$(PROJECT)
|
|
|
|
clean: clean-driver clean-runtime
|
|
|
|
.PHONY: all driver clean-driver clean-runtime clean |