From 5b7575bdd204369ba4b637840475dbf5f4fb1e83 Mon Sep 17 00:00:00 2001 From: Alessandro Comodi Date: Wed, 16 Jan 2019 12:07:00 +0100 Subject: [PATCH] fuzzers/Makefiles: pips_int_*.txt now directed to piplist folder All the fuzzers that made use of the pips_int_*.txt files now seek for those dependencies in the fuzzers/piplist/build folder so there is no need to regenerate them if already present Signed-off-by: Alessandro Comodi --- fuzzers/050-pip-seed/Makefile | 17 +++++++++++------ fuzzers/int_loop.mk | 15 +++++++++------ 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/fuzzers/050-pip-seed/Makefile b/fuzzers/050-pip-seed/Makefile index 72de3993..d45fef45 100644 --- a/fuzzers/050-pip-seed/Makefile +++ b/fuzzers/050-pip-seed/Makefile @@ -10,6 +10,7 @@ endif # Driven by int_loop.sh ITER := 1 MAKETODO_FLAGS=--re ".*" --not-endswith ".VCC_WIRE" +PIPLIST_TCL=$(XRAY_FUZZERS_DIR)/piplist/piplist.tcl # See int_loop_check.py # Original did 200 specimins open loop CHECK_ARGS := --max-iters 12 --stable-iters 2 @@ -63,12 +64,13 @@ $(SPECIMENS_OK): build/todo.txt bash generate.sh $(subst /OK,,$@) touch $@ -build/pips_int_l.txt: $(XRAY_DIR)/fuzzers/piplist.tcl - mkdir -p build/$(ITER) - cd build && ${XRAY_VIVADO} -mode batch -source $(XRAY_DIR)/fuzzers/piplist.tcl +$(XRAY_FUZZERS_DIR)/piplist/build/pips_int_l.txt: $(XRAY_FUZZERS_DIR)/piplist/piplist.tcl + mkdir -p $(XRAY_FUZZERS_DIR)/piplist/build + cd $(XRAY_FUZZERS_DIR)/piplist/build && ${XRAY_VIVADO} -mode batch -source $(PIPLIST_TCL) -build/todo.txt: build/pips_int_l.txt $(XRAY_DIR)/fuzzers/int_maketodo.py -# Doesn't pushdb until very end. Compare against db so far +build/todo.txt: $(XRAY_FUZZERS_DIR)/piplist/build/pips_int_l.txt $(XRAY_DIR)/fuzzers/int_maketodo.py + # Doesn't pushdb until very end. Compare against db so far + mkdir -p build/$(ITER) python3 $(XRAY_DIR)/fuzzers/int_maketodo.py --db-dir build $(MAKETODO_FLAGS) |sort >build/todo_all.txt cat build/todo_all.txt | sort -R > build/todo.txt.tmp mv build/todo.txt.tmp build/todo.txt @@ -92,5 +94,8 @@ clean: cleaniter: rm -rf build/$(ITER) build/todo.txt -.PHONY: database pushdb run clean cleaniter +# Remove piplist build files in piplist directory +cleanpiplist: + rm -rf $(XRAY_FUZZERS_DIR)/piplist/build +.PHONY: database pushdb run clean cleaniter cleanpiplist diff --git a/fuzzers/int_loop.mk b/fuzzers/int_loop.mk index 26b18863..2762b79a 100644 --- a/fuzzers/int_loop.mk +++ b/fuzzers/int_loop.mk @@ -14,7 +14,7 @@ endif ITER ?= 1 MAKETODO_FLAGS ?= PIP_TYPE?=pips_int -PIPLIST_TCL?=$(XRAY_DIR)/fuzzers/piplist.tcl +PIPLIST_TCL?=$(XRAY_FUZZERS_DIR)/piplist/piplist.tcl # See int_loop_check.py # rempips took 35 iters once, so set 50 as a good start point @@ -61,12 +61,12 @@ $(SPECIMENS_OK): build/todo.txt bash ${XRAY_DIR}/utils/top_generate.sh $(subst /OK,,$@) touch $@ -build/$(PIP_TYPE)_l.txt: $(XRAY_DIR)/fuzzers/piplist.tcl - mkdir -p build/$(ITER) - cd build && ${XRAY_VIVADO} -mode batch -source $(PIPLIST_TCL) +$(XRAY_FUZZERS_DIR)/piplist/build/$(PIP_TYPE)_l.txt: $(XRAY_FUZZERS_DIR)/piplist/piplist.tcl + mkdir -p $(XRAY_FUZZERS_DIR)/piplist/build + cd $(XRAY_FUZZERS_DIR)/piplist/build && ${XRAY_VIVADO} -mode batch -source $(PIPLIST_TCL) # Used 1) to see if we are done 2) pips to try in generate.tcl -build/todo.txt: build/$(PIP_TYPE)_l.txt $(XRAY_DIR)/fuzzers/int_maketodo.py build/database/seeded +build/todo.txt: $(XRAY_FUZZERS_DIR)/piplist/build/$(PIP_TYPE)_l.txt $(XRAY_DIR)/fuzzers/int_maketodo.py build/database/seeded XRAY_DATABASE_DIR=${FUZDIR}/build/database python3 $(XRAY_DIR)/fuzzers/int_maketodo.py --pip-type $(PIP_TYPE) $(MAKETODO_FLAGS) |sort >build/todo_all.txt cat build/todo_all.txt | sort -R | head -n$(TODO_N) > build/todo.txt.tmp mv build/todo.txt.tmp build/todo.txt @@ -97,5 +97,8 @@ clean: cleaniter: rm -rf build/$(ITER) build/todo.txt -.PHONY: database pushdb run clean cleaniter +cleanpiplist: + rm -rf $(XRAY_FUZZERS_DIR)/piplist/build + +.PHONY: database pushdb run clean cleaniter cleanpiplist