refactor(make): reorganize targets and improve locking mechanism
1. Introduce a “project lock” mechanism alongside the existing “build lock”; the lock file is now generated within the platform-specific Makefile. 2. Set `project` as the default Makefile goal for consistency. 3. Remove the `standalone` target to improve compatibility, especially when invoked via `make -f`. 4. Simplify target dependencies for better maintainability and clarity.
This commit is contained in:
@@ -7,6 +7,8 @@ define tcl_util
|
||||
$(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 \
|
||||
@@ -21,19 +23,22 @@ xilinx_sdkopen:
|
||||
echo "No IDE found!" && exit 1; \
|
||||
fi
|
||||
|
||||
PHONY += xilinx_sdkbuild
|
||||
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:
|
||||
@$(call print,Creating and configuring the IDE project)
|
||||
$(call mk_dir,$(BUILD_DIR))
|
||||
$(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)
|
||||
Reference in New Issue
Block a user