@@ -43,17 +43,38 @@ jobs:
4343 # Artifacts are stored in a GitHub Release named 'circt-wasm'.
4444 # To publish them locally, run:
4545 # gh release create circt-wasm --title "CIRCT WASM artifacts" \
46- # static/circt/circt-{bmc,sim,sim-vpi,verilog,lec}.{js,wasm}
46+ # static/circt/circt-{bmc,sim,sim-vpi,verilog,lec}.{js,wasm} \
47+ # /tmp/uvm-core.tar.gz
48+ # where /tmp/uvm-core.tar.gz is created by:
49+ # tar -czf /tmp/uvm-core.tar.gz -C static/circt uvm-core
4750 # The build proceeds without them; simulation features will be
4851 # unavailable but the rest of the tutorial still works.
4952 run : |
5053 mkdir -p static/circt
54+
55+ unpack_uvm_bundle_if_present() {
56+ if [ -f static/circt/uvm-core.tar.gz ]; then
57+ rm -rf static/circt/uvm-core
58+ tar -xzf static/circt/uvm-core.tar.gz -C static/circt
59+ fi
60+ }
61+
62+ have_uvm_bundle() {
63+ [ -f static/circt/uvm-core/uvm-manifest.json ]
64+ }
65+
5166 if gh release download circt-wasm \
5267 --repo "$GITHUB_REPOSITORY" \
5368 -D static/circt \
5469 --clobber 2>/dev/null; then
70+ unpack_uvm_bundle_if_present
5571 echo "CIRCT artifacts downloaded from release 'circt-wasm'"
5672 ls -lh static/circt/
73+ if have_uvm_bundle; then
74+ echo "UVM runtime bundle found"
75+ else
76+ echo "::notice::UVM runtime bundle missing (uvm-manifest.json not found); UVM lessons may fail."
77+ fi
5778 else
5879 echo "::notice::No 'circt-wasm' release found; simulation features will be unavailable."
5980 fi
0 commit comments