diff --git a/cad/py-pymtl/Makefile b/cad/py-pymtl/Makefile index 64ecf42ff390..1f02321dfade 100644 --- a/cad/py-pymtl/Makefile +++ b/cad/py-pymtl/Makefile @@ -1,27 +1,32 @@ PORTNAME= pymtl -DISTVERSION= 3.1.14 -PORTREVISION= 1 +DISTVERSION= 3.1.15 CATEGORIES= cad python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} PKGNAMESUFFIX= ${PORTVERSION:R:R} DISTNAME= ${PORTNAME}${PORTVERSION:R:R}-${DISTVERSION} MAINTAINER= yuri@FreeBSD.org COMMENT= Python-based hardware generation, simulation, verification framework WWW= https://github.com/pymtl/pymtl3 LICENSE= BSD3CLAUSE RUN_DEPENDS= \ ${PYTHON_PKGNAMEPREFIX}cffi>0:devel/py-cffi@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}greenlet>0:devel/py-greenlet@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}hypothesis>=4.18.1:devel/py-hypothesis@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}py>0:devel/py-py@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}graphviz>0:graphics/py-graphviz@${PY_FLAVOR} \ + verilator:cad/verilator \ + yosys:cad/yosys USES= python:3.6+ -USE_PYTHON= autoplist distutils +USE_PYTHON= autoplist distutils pytest # 94 tests fail, see https://github.com/pymtl/pymtl3/issues/247 + +BINARY_ALIAS= g++=${CXX} NO_ARCH= yes .include diff --git a/cad/py-pymtl/distinfo b/cad/py-pymtl/distinfo index 21b32519c01b..7ae827557409 100644 --- a/cad/py-pymtl/distinfo +++ b/cad/py-pymtl/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1652630096 -SHA256 (pymtl3-3.1.14.tar.gz) = b2bdbba271a99c6cbdd0061db304a2239a26bbf28739a9005a0c22ab92538b5d -SIZE (pymtl3-3.1.14.tar.gz) = 349905 +TIMESTAMP = 1686520242 +SHA256 (pymtl3-3.1.15.tar.gz) = dfb1e7f625bfe280eb7bc7ca9bfa95a5f8b01b07eb4e8cd5d8f6af83d1faa885 +SIZE (pymtl3-3.1.15.tar.gz) = 349707 diff --git a/cad/py-pymtl/files/patch-pymtl3_passes_backends_verilog_import___VerilogVerilatorImportConfigs.py b/cad/py-pymtl/files/patch-pymtl3_passes_backends_verilog_import___VerilogVerilatorImportConfigs.py new file mode 100644 index 000000000000..d8aee4a4357f --- /dev/null +++ b/cad/py-pymtl/files/patch-pymtl3_passes_backends_verilog_import___VerilogVerilatorImportConfigs.py @@ -0,0 +1,18 @@ +- remove GCC compiler flags, because we use clang + +--- pymtl3/passes/backends/verilog/import_/VerilogVerilatorImportConfigs.py.orig 2023-06-11 22:18:55 UTC ++++ pymtl3/passes/backends/verilog/import_/VerilogVerilatorImportConfigs.py +@@ -317,9 +317,11 @@ class VerilogVerilatorImportConfigs( BasePassConfigs ) + # (7/9/2020): Use -O0 by default so that normally the tests are super fast and don't corrupt cffi, + # but when the user gives a "fast" flag, it uses -O1. + if s.fast: +- c_flags = "-O1 -fno-guess-branch-probability -fno-reorder-blocks -fno-if-conversion -fno-if-conversion2 -fno-dce -fno-delayed-branch -fno-dse -fno-auto-inc-dec -fno-branch-count-reg -fno-combine-stack-adjustments -fno-cprop-registers -fno-forward-propagate -fno-inline-functions-called-once -fno-ipa-profile -fno-ipa-pure-const -fno-ipa-reference -fno-move-loop-invariants -fno-omit-frame-pointer -fno-split-wide-types -fno-tree-bit-ccp -fno-tree-ccp -fno-tree-ch -fno-tree-coalesce-vars -fno-tree-copy-prop -fno-tree-dce -fno-tree-dominator-opts -fno-tree-dse -fno-tree-fre -fno-tree-phiprop -fno-tree-pta -fno-tree-scev-cprop -fno-tree-sink -fno-tree-slsr -fno-tree-sra -fno-tree-ter -fno-tree-reassoc -fPIC -fno-gnu-unique -shared" ++ #c_flags = "-O1 -fno-guess-branch-probability -fno-reorder-blocks -fno-if-conversion -fno-if-conversion2 -fno-dce -fno-delayed-branch -fno-dse -fno-auto-inc-dec -fno-branch-count-reg -fno-combine-stack-adjustments -fno-cprop-registers -fno-forward-propagate -fno-inline-functions-called-once -fno-ipa-profile -fno-ipa-pure-const -fno-ipa-reference -fno-move-loop-invariants -fno-omit-frame-pointer -fno-split-wide-types -fno-tree-bit-ccp -fno-tree-ccp -fno-tree-ch -fno-tree-coalesce-vars -fno-tree-copy-prop -fno-tree-dce -fno-tree-dominator-opts -fno-tree-dse -fno-tree-fre -fno-tree-phiprop -fno-tree-pta -fno-tree-scev-cprop -fno-tree-sink -fno-tree-slsr -fno-tree-sra -fno-tree-ter -fno-tree-reassoc -fPIC -fno-gnu-unique -shared" ++ c_flags = "-O1 -fPIC -shared" + else: +- c_flags = "-O0 -fno-guess-branch-probability -fno-reorder-blocks -fno-if-conversion -fno-if-conversion2 -fno-dce -fno-delayed-branch -fno-dse -fno-auto-inc-dec -fno-branch-count-reg -fno-combine-stack-adjustments -fno-cprop-registers -fno-forward-propagate -fno-inline-functions-called-once -fno-ipa-profile -fno-ipa-pure-const -fno-ipa-reference -fno-move-loop-invariants -fno-omit-frame-pointer -fno-split-wide-types -fno-tree-bit-ccp -fno-tree-ccp -fno-tree-ch -fno-tree-coalesce-vars -fno-tree-copy-prop -fno-tree-dce -fno-tree-dominator-opts -fno-tree-dse -fno-tree-fre -fno-tree-phiprop -fno-tree-pta -fno-tree-scev-cprop -fno-tree-sink -fno-tree-slsr -fno-tree-sra -fno-tree-ter -fno-tree-reassoc -fPIC -fno-gnu-unique -shared" ++ #c_flags = "-O0 -fno-guess-branch-probability -fno-reorder-blocks -fno-if-conversion -fno-if-conversion2 -fno-dce -fno-delayed-branch -fno-dse -fno-auto-inc-dec -fno-branch-count-reg -fno-combine-stack-adjustments -fno-cprop-registers -fno-forward-propagate -fno-inline-functions-called-once -fno-ipa-profile -fno-ipa-pure-const -fno-ipa-reference -fno-move-loop-invariants -fno-omit-frame-pointer -fno-split-wide-types -fno-tree-bit-ccp -fno-tree-ccp -fno-tree-ch -fno-tree-coalesce-vars -fno-tree-copy-prop -fno-tree-dce -fno-tree-dominator-opts -fno-tree-dse -fno-tree-fre -fno-tree-phiprop -fno-tree-pta -fno-tree-scev-cprop -fno-tree-sink -fno-tree-slsr -fno-tree-sra -fno-tree-ter -fno-tree-reassoc -fPIC -fno-gnu-unique -shared" ++ c_flags = "-O0 -fPIC -shared" + + if not s.is_default("c_flags"): + c_flags += f" {expand(s.c_flags)}"