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