mirror of https://github.com/openXC7/prjxray.git
fuzzers: Add 000-init-db fuzzer.
Creates the .db files via make rather than via sourcing settings.sh allowing pip fuzzers to interact correctly with `make clean`. Fixes #604. Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
This commit is contained in:
parent
68c2797f5b
commit
2eb1bf3bfe
|
|
@ -0,0 +1,74 @@
|
|||
|
||||
MASKS=\
|
||||
bram \
|
||||
clbll \
|
||||
clblm \
|
||||
dsp \
|
||||
hclk \
|
||||
|
||||
PPIPS=\
|
||||
bram \
|
||||
bram_int_interface \
|
||||
clbll \
|
||||
clblm \
|
||||
dsp \
|
||||
hclk \
|
||||
int \
|
||||
|
||||
SEGBITS=\
|
||||
bram \
|
||||
clbll \
|
||||
clblm \
|
||||
dsp \
|
||||
hclk \
|
||||
int \
|
||||
|
||||
DB_SIMPLE=$(addprefix mask_,$(MASKS)) $(addprefix ppips_,$(PPIPS)) $(addprefix segbits_,$(SEGBITS))
|
||||
|
||||
# Extra (segbits|mask)_bram_(l|r).block_ram.db files
|
||||
# FIXME: Are these things also needed for the DSP blocks?
|
||||
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 _l.db,$(DB_SIMPLE)) $(addsuffix _r.db,$(DB_SIMPLE)) $(BLOCK_RAM_EXTRA_DB_FILES))
|
||||
DB_FILES_PATH=$(addprefix $(XRAY_DATABASE_DIR)/$(XRAY_DATABASE)/,$(DB_FILES))
|
||||
|
||||
check:
|
||||
@mkdir -p build
|
||||
@rm -f build/existing.txt
|
||||
@for DB_FILE in $(sort $(notdir $(wildcard $(XRAY_DATABASE_DIR)/$(XRAY_DATABASE)/*.db))); do \
|
||||
echo $$DB_FILE >> build/existing.txt; \
|
||||
done
|
||||
@rm -f build/tocreate.txt
|
||||
@for DB_FILE in $(sort $(DB_FILES)); do \
|
||||
echo $$DB_FILE >> build/tocreate.txt; \
|
||||
done
|
||||
diff -u build/existing.txt build/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 $@
|
||||
|
||||
pushdb: $(DB_FILES_PATH)
|
||||
@true
|
||||
|
||||
run:
|
||||
$(MAKE) clean
|
||||
$(MAKE) pushdb
|
||||
touch run.ok
|
||||
|
||||
clean:
|
||||
rm -rf build run.ok
|
||||
|
||||
.PHONY: pushdb clean run
|
||||
|
|
@ -18,8 +18,10 @@ $(1)/run.ok: $(addsuffix /run.ok,$(2))
|
|||
$$(MAKE) -C $(1) run
|
||||
endef
|
||||
|
||||
$(eval $(call fuzzer,000-init-db,))
|
||||
|
||||
ifneq ($(FUZZONLY),Y)
|
||||
$(eval $(call fuzzer,001-part-yaml,))
|
||||
$(eval $(call fuzzer,001-part-yaml,000-init-db))
|
||||
$(eval $(call fuzzer,005-tilegrid,001-part-yaml))
|
||||
else
|
||||
all:: 005-tilegrid/run.ok
|
||||
|
|
|
|||
|
|
@ -24,4 +24,3 @@ export XRAY_PIN_05="G22"
|
|||
export XRAY_PIN_06="F21"
|
||||
|
||||
source $(dirname ${BASH_SOURCE[0]})/../utils/environment.sh
|
||||
init_db
|
||||
|
|
|
|||
|
|
@ -24,4 +24,3 @@ export XRAY_PIN_05="M20"
|
|||
export XRAY_PIN_06="M21"
|
||||
|
||||
source $(dirname ${BASH_SOURCE[0]})/../utils/environment.sh
|
||||
init_db
|
||||
|
|
|
|||
|
|
@ -24,4 +24,3 @@ export XRAY_PIN_05="J16"
|
|||
export XRAY_PIN_06="J15"
|
||||
|
||||
source $(dirname ${BASH_SOURCE[0]})/../utils/environment.sh
|
||||
init_db
|
||||
|
|
|
|||
|
|
@ -45,41 +45,3 @@ if [ $(${XRAY_VIVADO} -h |grep Vivado |cut -d\ -f 2) != "v2017.2" ] ; then
|
|||
export XRAY_DIR="/bad/vivado/version"
|
||||
return
|
||||
fi
|
||||
|
||||
function init_db
|
||||
{
|
||||
# Check if database files exist. If don't, create empty ones
|
||||
db_files="mask_clbll_l.db \
|
||||
mask_clbll_r.db \
|
||||
mask_clblm_l.db \
|
||||
mask_clblm_r.db \
|
||||
mask_hclk_l.db \
|
||||
mask_hclk_r.db \
|
||||
ppips_clbll_l.db \
|
||||
ppips_clbll_r.db \
|
||||
ppips_clblm_l.db \
|
||||
ppips_clblm_r.db \
|
||||
ppips_hclk_l.db \
|
||||
ppips_hclk_r.db \
|
||||
ppips_int_l.db \
|
||||
ppips_int_r.db \
|
||||
segbits_bram_l.block_ram.db \
|
||||
segbits_bram_l.db \
|
||||
segbits_bram_r.block_ram.db \
|
||||
segbits_bram_r.db \
|
||||
segbits_clbll_l.db \
|
||||
segbits_clbll_r.db \
|
||||
segbits_clblm_l.db \
|
||||
segbits_clblm_r.db \
|
||||
segbits_hclk_l.db \
|
||||
segbits_hclk_r.db \
|
||||
segbits_int_l.db \
|
||||
segbits_int_r.db"
|
||||
|
||||
for db in $db_files
|
||||
do
|
||||
if [ ! -f ${XRAY_DATABASE_DIR}/${XRAY_DATABASE}/$db ]; then
|
||||
touch ${XRAY_DATABASE_DIR}/${XRAY_DATABASE}/$db
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue