|  | # 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 | 
|  |  |