| |
| N := 1 |
| BUILD_DIR = build_${URAY_PART} |
| SPECIMENS := $(addprefix $(BUILD_DIR)/specimen_,$(shell seq -f '%03.0f' $(N))) |
| SPECIMENS_OK := $(addsuffix /OK,$(SPECIMENS)) |
| MAX_VIVADO_PROCESS ?= 4 |
| MAX_TILES_INSTANCE ?= 300 |
| MAX_NODES_INSTANCE ?= 30000 |
| |
| database: $(SPECIMENS_OK) |
| true |
| |
| pushdb: |
| cp $(BUILD_DIR)/output/tile_type_*.json ${URAY_FAMILY_DIR}/ |
| rm ${URAY_FAMILY_DIR}/tile_type_*_site_type_*.json |
| cp $(BUILD_DIR)/output/site_type_*.json ${URAY_FAMILY_DIR}/ |
| cp $(BUILD_DIR)/output/tileconn.json ${URAY_FAMILY_DIR}/$(URAY_PART)/ |
| |
| $(SPECIMENS_OK): |
| bash generate.sh $(subst /OK,,$@) -p=$(MAX_VIVADO_PROCESS) -t=$(MAX_TILES_INSTANCE) -n=$(MAX_NODES_INSTANCE) |
| touch $@ |
| |
| run: |
| rm -rf $(BUILD_DIR) run.${URAY_PART}.ok |
| $(MAKE) database |
| $(MAKE) pushdb |
| # Clean up intermediate files after successful pushdb. |
| find $(BUILD_DIR) -name "*.json5" -delete |
| touch run.${URAY_PART}.ok |
| |
| clean: |
| rm -rf build_* run.*.ok |
| |
| update_ignored_wires: |
| mkdir -p ignored_wires/${URAY_DATABASE} |
| python3 analyze_errors.py \ |
| --error_nodes ${BUILD_DIR}/output/error_nodes.json \ |
| --output_ignore_list | sort \ |
| > ignored_wires/${URAY_DATABASE}/${URAY_PART}_ignored_wires.txt |
| |
| .PHONY: database pushdb run clean |
| |