| # 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 |
| |
| MASKS=\ |
| bram \ |
| clbll \ |
| clblm \ |
| dsp \ |
| hclk \ |
| |
| PPIPS=\ |
| bram \ |
| bram_int_interface \ |
| clbll \ |
| clblm \ |
| dsp \ |
| hclk \ |
| int \ |
| |
| SEGBITS=\ |
| bram \ |
| clbll \ |
| clblm \ |
| dsp \ |
| hclk \ |
| int \ |
| |
| SEGBITS_R=\ |
| clk_bufg_top \ |
| clk_bufg_bot \ |
| $(SEGBITS) |
| |
| SEGBITS_L=\ |
| $(SEGBITS) |
| |
| DB_SIMPLE_LR=$(addprefix mask_,$(MASKS)) $(addprefix ppips_,$(PPIPS)) |
| DB_SIMPLE_L=$(addprefix segbits_,$(SEGBITS_L)) |
| DB_SIMPLE_R=$(addprefix segbits_,$(SEGBITS_R)) |
| DB_SIMPLE=\ |
| $(addsuffix _l, $(DB_SIMPLE_LR) $(DB_SIMPLE_L)) \ |
| $(addsuffix _r, $(DB_SIMPLE_LR) $(DB_SIMPLE_R)) \ |
| segbits_cmt_top_l_upper_t \ |
| segbits_cmt_top_r_upper_t \ |
| segbits_cmt_top_l_lower_b \ |
| segbits_cmt_top_r_lower_b \ |
| segbits_rioi3 \ |
| segbits_riob33 \ |
| segbits_riob18 \ |
| segbits_hclk_cmt \ |
| segbits_hclk_ioi3 \ |
| |
| DB_SIMPLE += segbits_lioi3 segbits_liob33 |
| |
| BLOCK_RAM_EXTRA_FOR=\ |
| mask_bram \ |
| segbits_bram |
| BLOCK_RAM_EXTRA_DB_FILES=\ |
| $(addsuffix .block_ram.db,$(addsuffix _l,$(BLOCK_RAM_EXTRA_FOR)) $(addsuffix _r,$(BLOCK_RAM_EXTRA_FOR))) |
| |
| |
| DB_FILES=$(sort $(addsuffix .origin_info.db,$(DB_SIMPLE)) $(addsuffix .db,$(DB_SIMPLE)) $(BLOCK_RAM_EXTRA_DB_FILES)) |
| DB_FILES_PATH=$(addprefix $(XRAY_DATABASE_DIR)/$(XRAY_DATABASE)/,$(DB_FILES)) |
| |
| BUILD_DIR = build_${XRAY_PART} |
| |
| check: |
| @mkdir -p $(BUILD_DIR) |
| @rm -f $(BUILD_DIR)/existing.txt |
| @for DB_FILE in $(sort $(notdir $(wildcard $(XRAY_DATABASE_DIR)/$(XRAY_DATABASE)/*.db))); do \ |
| echo $$DB_FILE >> $(BUILD_DIR)/existing.txt; \ |
| done |
| @rm -f $(BUILD_DIR)/tocreate.txt |
| @for DB_FILE in $(sort $(DB_FILES)); do \ |
| echo $$DB_FILE >> $(BUILD_DIR)/tocreate.txt; \ |
| done |
| diff -u $(BUILD_DIR)/existing.txt $(BUILD_DIR)/tocreate.txt |
| |
| status: |
| @echo $(DB_FILES_PATH) |
| @for DB_FILE in $(DB_FILES_PATH); do \ |
| echo -n "$$(basename $$DB_FILE) "; \ |
| if [ -e "$$DB_FILE" ]; then \ |
| echo -n "Exists! - "; \ |
| else \ |
| echo -n "Missing! - "; \ |
| fi; \ |
| echo "$$DB_FILE"; \ |
| done |
| |
| $(DB_FILES_PATH): |
| touch $@ |
| |
| ${XRAY_FAMILY_DIR}/${XRAY_PART}: |
| mkdir -p ${XRAY_FAMILY_DIR}/${XRAY_PART} |
| |
| ${XRAY_FAMILY_DIR}/${XRAY_FABRIC}: |
| mkdir -p ${XRAY_FAMILY_DIR}/${XRAY_FABRIC} |
| |
| pushdb: $(DB_FILES_PATH) ${XRAY_FAMILY_DIR}/${XRAY_PART} ${XRAY_FAMILY_DIR}/${XRAY_FABRIC} |
| @true |
| |
| run: |
| rm -rf $(BUILD_DIR) run.${XRAY_PART}.ok |
| $(MAKE) pushdb |
| touch run.${XRAY_PART}.ok |
| |
| clean: |
| rm -rf build_* run.*.ok |
| |
| .PHONY: pushdb clean run |