diff --git a/.github/kokoro/db-full.sh b/.github/kokoro/db-full.sh index 271dc4dc..ebd33cd0 100755 --- a/.github/kokoro/db-full.sh +++ b/.github/kokoro/db-full.sh @@ -157,15 +157,14 @@ echo "----------------------------------------" # Check the database and fail if it is broken. make db-check-${XRAY_SETTINGS} -if [[ $EXTRAS_HARNESS_RET != 0 ]] ; then - echo "A failure occurred during extra harnesses generation." - exit $EXTRAS_HARNESS_RET -fi - -if [[ $EXTRAS_PARTS_RET != 0 ]] ; then - echo "A failure occurred during extra parts generation." - exit $EXTRAS_PARTS_RET -fi +echo +echo "========================================" +echo " Testing HTML generation" +echo "----------------------------------------" +( + cd htmlgen + source htmlgen.sh $XRAY_SETTINGS +) # If we get here, then all the fuzzers completed fine. Hence we are # going to assume we don't want to keep all the build / logs / etc (as diff --git a/Makefile b/Makefile index 99655453..2cfd605f 100644 --- a/Makefile +++ b/Makefile @@ -56,6 +56,14 @@ test-cpp: .PHONY: test test-py test-cpp +# Run HTML test +# ------------------------ + +test-htmlgen: + cd htmlgen && source htmlgen.sh + +.PHONY: test-htmlgen + # Auto formatting of code. # ------------------------ FORMAT_EXCLUDE = $(foreach x,$(ALL_EXCLUDE),-and -not -path './$(x)/*') -and -not -name *.bit @@ -148,7 +156,7 @@ $(foreach DB,$(DATABASES),$(eval $(call database,$(DB)))) # Targets related to Project X-Ray parts # -------------------------------------- -ARTIX_PARTS=artix200t +ARTIX_PARTS=artix7_200t ZYNQ_PARTS=zynq7010 KINTEX_PARTS=kintex70t @@ -171,7 +179,7 @@ db-extras-artix7-parts: $(addprefix db-part-only-,$(ARTIX_PARTS)) db-extras-artix7-harness: +XRAY_PIN_00=J13 XRAY_PIN_01=J14 XRAY_PIN_02=K15 XRAY_PIN_03=K16 \ XRAY_PART=xc7a35tftg256-1 XRAY_EQUIV_PART=xc7a50tfgg484-1 $(MAKE) -C fuzzers roi_only - +source settings/artix200t.sh && \ + +source settings/artix7_200t.sh && \ XRAY_PIN_00=V10 XRAY_PIN_01=W10 XRAY_PIN_02=Y11 XRAY_PIN_03=Y12 \ XRAY_PART=xc7a200tsbg484-1 XRAY_EQUIV_PART=xc7a200tffg1156-1 \ $(MAKE) -C fuzzers roi_only diff --git a/htmlgen/htmlgen.py b/htmlgen/htmlgen.py index e422fd1a..6cb3e7c5 100755 --- a/htmlgen/htmlgen.py +++ b/htmlgen/htmlgen.py @@ -41,9 +41,8 @@ def db_open(fn, db_dir): def out_open(fn, output): - out_dir = os.path.join(output, get_setting("XRAY_DATABASE")) - os.makedirs(out_dir, exist_ok=True) - fp = os.path.join(out_dir, fn) + os.makedirs(output, exist_ok=True) + fp = os.path.join(output, fn) print("Writing %s" % fp) return open(fp, "w") @@ -383,8 +382,9 @@ def mk_tilegrid_page(dbstate, output, grid): file=f) print( - "

Part: %s
ROI: %s
ROI Frames: %s

" % ( - get_setting("XRAY_PART"), get_setting("XRAY_ROI"), + "

Part: %s
ROI TILEGRID: %s
ROI Frames: %s

" % + ( + get_setting("XRAY_PART"), get_setting("XRAY_ROI_TILEGRID"), get_setting("XRAY_ROI_FRAMES")), file=f) @@ -989,7 +989,8 @@ def main(): parser.add_argument('--verbose', action='store_true') parser.add_argument( '--output', - default=os.path.join(os.path.curdir, 'html'), + default=os.path.join( + os.path.curdir, 'html', get_setting('XRAY_DATABASE')), help='Put the generated files in this directory (default current dir).' ) parser.add_argument( diff --git a/htmlgen/htmlgen.sh b/htmlgen/htmlgen.sh new file mode 100755 index 00000000..8f59e849 --- /dev/null +++ b/htmlgen/htmlgen.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +DATABASE=$1 + +# If DATABASE is empty, checks htmlgen for all settings files +SETTINGS=../settings/$DATABASE*.sh + +for setting in $SETTINGS +do + no_prefix_setting=${setting#../settings/} + clean_setting=${no_prefix_setting%.sh} + echo "" + echo "=============================================" + echo "Generating HTML for ${clean_setting}" + echo "=============================================" + echo "" + source ../settings/$setting + ./htmlgen.py --output html/${clean_setting} +done diff --git a/settings/artix200t.sh b/settings/artix7_200t.sh similarity index 100% rename from settings/artix200t.sh rename to settings/artix7_200t.sh