From a0658d2d6a059d875a67522bc1aed46b6a544557 Mon Sep 17 00:00:00 2001 From: Alessandro Comodi Date: Wed, 1 Apr 2020 13:26:45 +0200 Subject: [PATCH 1/6] htmlgen: use XRAY_ROI_TILEGRID instead of XRAY_ROI Signed-off-by: Alessandro Comodi --- htmlgen/htmlgen.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/htmlgen/htmlgen.py b/htmlgen/htmlgen.py index e422fd1a..b9c268ef 100755 --- a/htmlgen/htmlgen.py +++ b/htmlgen/htmlgen.py @@ -383,8 +383,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) From 27a8e27381423053140a3ecc20ebb72b1c904388 Mon Sep 17 00:00:00 2001 From: Alessandro Comodi Date: Wed, 1 Apr 2020 19:35:55 +0200 Subject: [PATCH 2/6] run htmlgen in Travis CI Signed-off-by: Alessandro Comodi --- .travis.yml | 3 +++ Makefile | 8 ++++++++ htmlgen/htmlgen.sh | 14 ++++++++++++++ 3 files changed, 25 insertions(+) create mode 100755 htmlgen/htmlgen.sh diff --git a/.travis.yml b/.travis.yml index 75ba367a..60eac812 100644 --- a/.travis.yml +++ b/.travis.yml @@ -32,3 +32,6 @@ jobs: script: - make format - test $(git status --porcelain | wc -l) -eq 0 || { git diff; false; } + + - name: "HTML generation" + script: make test-htmlgen diff --git a/Makefile b/Makefile index 99655453..0bb82679 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 diff --git a/htmlgen/htmlgen.sh b/htmlgen/htmlgen.sh new file mode 100755 index 00000000..ad4a9cc8 --- /dev/null +++ b/htmlgen/htmlgen.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +SETTINGS=../settings/* + +for setting in $SETTINGS +do + echo "" + echo "=============================================" + echo "Generating HTML for ${setting%.sh}" + echo "=============================================" + echo "" + source ../settings/$setting + ./htmlgen.py +done From 8bed17b40ed80d461223720e0fec65bf6dc6fdf4 Mon Sep 17 00:00:00 2001 From: Alessandro Comodi Date: Wed, 1 Apr 2020 20:22:58 +0200 Subject: [PATCH 3/6] htmlgen: add html generation as last step of kokoro Signed-off-by: Alessandro Comodi --- .github/kokoro/db-full.sh | 9 +++++++++ .travis.yml | 3 --- Makefile | 2 +- htmlgen/htmlgen.py | 7 +++---- htmlgen/htmlgen.sh | 11 ++++++++--- settings/{artix200t.sh => artix7_200t.sh} | 0 6 files changed, 21 insertions(+), 11 deletions(-) rename settings/{artix200t.sh => artix7_200t.sh} (100%) diff --git a/.github/kokoro/db-full.sh b/.github/kokoro/db-full.sh index 271dc4dc..4edb4ece 100755 --- a/.github/kokoro/db-full.sh +++ b/.github/kokoro/db-full.sh @@ -167,6 +167,15 @@ if [[ $EXTRAS_PARTS_RET != 0 ]] ; then 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 # they are quite large). Thus do a clean to get rid of them. diff --git a/.travis.yml b/.travis.yml index 60eac812..75ba367a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -32,6 +32,3 @@ jobs: script: - make format - test $(git status --porcelain | wc -l) -eq 0 || { git diff; false; } - - - name: "HTML generation" - script: make test-htmlgen diff --git a/Makefile b/Makefile index 0bb82679..e1b8fb71 100644 --- a/Makefile +++ b/Makefile @@ -156,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 diff --git a/htmlgen/htmlgen.py b/htmlgen/htmlgen.py index b9c268ef..c97f4b30 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") @@ -990,7 +989,7 @@ 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 index ad4a9cc8..8f59e849 100755 --- a/htmlgen/htmlgen.sh +++ b/htmlgen/htmlgen.sh @@ -1,14 +1,19 @@ #!/bin/bash -SETTINGS=../settings/* +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 ${setting%.sh}" + echo "Generating HTML for ${clean_setting}" echo "=============================================" echo "" source ../settings/$setting - ./htmlgen.py + ./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 From 14600d771a49c6638b63954fd43bf46eff8ad1c1 Mon Sep 17 00:00:00 2001 From: Alessandro Comodi Date: Thu, 2 Apr 2020 11:22:21 +0200 Subject: [PATCH 4/6] fix artix7_200t settings source Signed-off-by: Alessandro Comodi --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index e1b8fb71..2cfd605f 100644 --- a/Makefile +++ b/Makefile @@ -179,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 From bf87e49e5356b800b4e186a447c81b5a34811c09 Mon Sep 17 00:00:00 2001 From: Alessandro Comodi Date: Thu, 2 Apr 2020 11:29:35 +0200 Subject: [PATCH 5/6] kokoro: remove check on failing db gen for extra parts and harness Now that the extra parts and harness files do happen during the full db generation, the two failing tests are not required anymore Signed-off-by: Alessandro Comodi --- .github/kokoro/db-full.sh | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/.github/kokoro/db-full.sh b/.github/kokoro/db-full.sh index 4edb4ece..ebd33cd0 100755 --- a/.github/kokoro/db-full.sh +++ b/.github/kokoro/db-full.sh @@ -157,16 +157,6 @@ 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" From b1a710d7bff695067bcc01f55ee667642fcd2848 Mon Sep 17 00:00:00 2001 From: Alessandro Comodi Date: Thu, 2 Apr 2020 17:43:55 +0200 Subject: [PATCH 6/6] run make format Signed-off-by: Alessandro Comodi --- htmlgen/htmlgen.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/htmlgen/htmlgen.py b/htmlgen/htmlgen.py index c97f4b30..6cb3e7c5 100755 --- a/htmlgen/htmlgen.py +++ b/htmlgen/htmlgen.py @@ -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', get_setting('XRAY_DATABASE')), + 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(