Files
embedded-autobuild/platform/xilinx/xilinx.mk
T

49 lines
1.3 KiB
Makefile

$(call check-var,XILINX_VITIS_CLASSIC)
$(call check-var,PLATFORM_TOOLS)
$(call check-var,CONFIG_FILE)
$(call check-var,BUILD_DIR)
$(call check-var,PROJECT_LOCK)
$(call check-var,BUILD_LOCK)
$(call check-var,LINK_SRCS)
define tcl_util
xsct -nodisp $(PLATFORM_TOOLS)/util.tcl \
$(1) \
$(CONFIG_FILE) $(BUILD_DIR)
endef
PHONY += xilinx_reset xilinx_project xilinx_sdkclean xilinx_sdkbuild
xilinx_sdkopen:
@$(call log,Launching IDE...)
@if [ "$(call check_command,vitis)" = "y" ]; then \
if [ "$(XILINX_VITIS_CLASSIC)" = "y" ]; then \
vitis -classic -workspace=$(BUILD_DIR); \
else \
vitis -workspace=$(BUILD_DIR); \
fi; \
elif [ "$(call check_command,xsdk)" = "y" ]; then \
xsdk -workspace=$(BUILD_DIR); \
else \
echo "No IDE found!" && exit 1; \
fi
xilinx_sdkbuild:
@$(call log,[Build] SDK projects in $(BUILD_DIR))
$(call tcl_util, build) $(HIDE)
@echo "$(TIMESTAMP): Build lock." > $(BUILD_LOCK)
xilinx_sdkclean:
@$(call log,[Delete] SDK artefacts from $(BUILD_DIR))
$(call tcl_util, clean_project) $(HIDE)
$(XILINX_PROJECT_LOCK):
@$(call log,Creating and configuring the IDE project)
@$(call cmd_mkdir,$(BUILD_DIR))
$(call tcl_util, create_project) $(HIDE)
@echo "$(TIMESTAMP): Project lock." > $@
xilinx_project: $(PROJECT_LOCK)
xilinx_reset:
$(call cmd_remove,.Xil) $(HIDE)