| # Copyright (C) 2017-2020  The Project X-Ray Authors. | 
 | # | 
 | # Use of this source code is governed by a ISC-style | 
 | # license that can be found in the LICENSE file or at | 
 | # https://opensource.org/licenses/ISC | 
 | # | 
 | # SPDX-License-Identifier: ISC | 
 |  | 
 | N := 1 | 
 |  | 
 | BUILD_DIR = build_${XRAY_PART} | 
 | RUN_OK = run.${XRAY_PART}.ok | 
 |  | 
 | 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 ${XRAY_FAMILY_DIR}/ | 
 | 	rm ${XRAY_FAMILY_DIR}/tile_type_*_site_type_*.json | 
 | 	cp $(BUILD_DIR)/output/site_type_*.json ${XRAY_FAMILY_DIR}/ | 
 | 	cp $(BUILD_DIR)/output/tileconn.json ${XRAY_FAMILY_DIR}/$(XRAY_FABRIC)/ | 
 | 	cp $(BUILD_DIR)/output/node_wires.json ${XRAY_FAMILY_DIR}/$(XRAY_FABRIC)/ | 
 |  | 
 | $(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.${XRAY_PART}.ok | 
 | 	$(MAKE) database | 
 | 	$(MAKE) pushdb | 
 | 	# Clean up intermediate files after successful pushdb. | 
 | 	find $(BUILD_DIR) -name "*.json5" -delete | 
 | 	touch ${RUN_OK} | 
 |  | 
 | clean: | 
 | 	rm -rf ${BUILD_DIR} ${RUN_OK} | 
 |  | 
 | .PHONY: database pushdb run clean | 
 |  |