siliconcompiler 0.32.2__py3-none-any.whl → 0.32.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. siliconcompiler/_metadata.py +3 -2
  2. siliconcompiler/core.py +52 -56
  3. siliconcompiler/issue.py +3 -1
  4. siliconcompiler/remote/client.py +55 -16
  5. siliconcompiler/report/__init__.py +3 -2
  6. siliconcompiler/report/dashboard/__init__.py +61 -170
  7. siliconcompiler/report/dashboard/cli/__init__.py +788 -0
  8. siliconcompiler/report/dashboard/web/__init__.py +196 -0
  9. siliconcompiler/report/dashboard/{components → web/components}/__init__.py +4 -4
  10. siliconcompiler/report/dashboard/{components → web/components}/graph.py +1 -1
  11. siliconcompiler/report/dashboard/{layouts → web/layouts}/__init__.py +3 -3
  12. siliconcompiler/report/dashboard/{layouts → web/layouts}/_common.py +1 -1
  13. siliconcompiler/report/dashboard/{layouts → web/layouts}/vertical_flowgraph.py +5 -5
  14. siliconcompiler/report/dashboard/{layouts → web/layouts}/vertical_flowgraph_node_tab.py +6 -6
  15. siliconcompiler/report/dashboard/{layouts → web/layouts}/vertical_flowgraph_sac_tabs.py +6 -6
  16. siliconcompiler/report/dashboard/{viewer.py → web/viewer.py} +4 -4
  17. siliconcompiler/scheduler/__init__.py +8 -6
  18. siliconcompiler/templates/replay/replay.sh.j2 +2 -2
  19. siliconcompiler/tools/_common/__init__.py +2 -0
  20. siliconcompiler/tools/openroad/_apr.py +4 -0
  21. siliconcompiler/tools/openroad/fillmetal_insertion.py +14 -14
  22. siliconcompiler/tools/openroad/scripts/apr/sc_antenna_repair.tcl +1 -1
  23. siliconcompiler/tools/openroad/scripts/apr/sc_clock_tree_synthesis.tcl +1 -1
  24. siliconcompiler/tools/openroad/scripts/apr/sc_detailed_placement.tcl +1 -1
  25. siliconcompiler/tools/openroad/scripts/apr/sc_detailed_route.tcl +1 -1
  26. siliconcompiler/tools/openroad/scripts/apr/sc_endcap_tapcell_insertion.tcl +1 -1
  27. siliconcompiler/tools/openroad/scripts/apr/sc_fillercell_insertion.tcl +1 -1
  28. siliconcompiler/tools/openroad/scripts/apr/sc_fillmetal_insertion.tcl +2 -2
  29. siliconcompiler/tools/openroad/scripts/apr/sc_global_placement.tcl +1 -1
  30. siliconcompiler/tools/openroad/scripts/apr/sc_global_route.tcl +1 -1
  31. siliconcompiler/tools/openroad/scripts/apr/sc_init_floorplan.tcl +1 -1
  32. siliconcompiler/tools/openroad/scripts/apr/sc_macro_placement.tcl +1 -1
  33. siliconcompiler/tools/openroad/scripts/apr/sc_metrics.tcl +1 -1
  34. siliconcompiler/tools/openroad/scripts/apr/sc_pin_placement.tcl +1 -1
  35. siliconcompiler/tools/openroad/scripts/apr/sc_power_grid.tcl +1 -1
  36. siliconcompiler/tools/openroad/scripts/apr/sc_repair_design.tcl +1 -1
  37. siliconcompiler/tools/openroad/scripts/apr/sc_repair_timing.tcl +2 -2
  38. siliconcompiler/tools/openroad/scripts/apr/sc_write_data.tcl +1 -1
  39. siliconcompiler/tools/openroad/scripts/common/procs.tcl +1 -1
  40. siliconcompiler/tools/openroad/scripts/common/reports.tcl +2 -2
  41. siliconcompiler/tools/openroad/scripts/sc_rcx.tcl +1 -1
  42. siliconcompiler/tools/openroad/scripts/sc_rdlroute.tcl +1 -1
  43. siliconcompiler/tools/openroad/scripts/sc_show.tcl +1 -1
  44. siliconcompiler/tools/opensta/__init__.py +1 -1
  45. siliconcompiler/tools/opensta/scripts/sc_check_library.tcl +1 -1
  46. siliconcompiler/tools/opensta/scripts/sc_procs.tcl +16 -0
  47. siliconcompiler/tools/opensta/scripts/sc_report_libraries.tcl +1 -1
  48. siliconcompiler/tools/opensta/scripts/sc_timing.tcl +35 -7
  49. siliconcompiler/tools/opensta/timing.py +6 -2
  50. siliconcompiler/tools/yosys/sc_synth_asic.tcl +36 -28
  51. siliconcompiler/tools/yosys/syn_asic.py +11 -2
  52. siliconcompiler/toolscripts/_tools.json +9 -4
  53. siliconcompiler/toolscripts/rhel8/install-chisel.sh +2 -0
  54. siliconcompiler/toolscripts/rhel8/install-icarus.sh +1 -0
  55. siliconcompiler/toolscripts/rhel8/install-klayout.sh +2 -0
  56. siliconcompiler/toolscripts/rhel8/install-magic.sh +1 -2
  57. siliconcompiler/toolscripts/rhel8/install-netgen.sh +1 -1
  58. siliconcompiler/toolscripts/rhel8/install-slang.sh +2 -0
  59. siliconcompiler/toolscripts/rhel8/install-surelog.sh +3 -1
  60. siliconcompiler/toolscripts/rhel8/install-sv2v.sh +1 -0
  61. siliconcompiler/toolscripts/rhel8/install-verible.sh +2 -0
  62. siliconcompiler/toolscripts/rhel8/install-verilator.sh +1 -0
  63. siliconcompiler/toolscripts/rhel8/install-xyce.sh +2 -0
  64. siliconcompiler/toolscripts/rhel9/install-chisel.sh +2 -0
  65. siliconcompiler/toolscripts/rhel9/install-ghdl.sh +1 -0
  66. siliconcompiler/toolscripts/rhel9/install-gtkwave.sh +1 -0
  67. siliconcompiler/toolscripts/rhel9/install-icarus.sh +1 -0
  68. siliconcompiler/toolscripts/rhel9/install-klayout.sh +2 -0
  69. siliconcompiler/toolscripts/rhel9/install-magic.sh +1 -2
  70. siliconcompiler/toolscripts/rhel9/install-netgen.sh +1 -1
  71. siliconcompiler/toolscripts/rhel9/install-openroad.sh +2 -0
  72. siliconcompiler/toolscripts/rhel9/install-opensta.sh +76 -0
  73. siliconcompiler/toolscripts/rhel9/install-slang.sh +3 -1
  74. siliconcompiler/toolscripts/rhel9/install-surelog.sh +2 -1
  75. siliconcompiler/toolscripts/rhel9/install-sv2v.sh +1 -0
  76. siliconcompiler/toolscripts/rhel9/install-verible.sh +2 -0
  77. siliconcompiler/toolscripts/rhel9/install-verilator.sh +1 -0
  78. siliconcompiler/toolscripts/rhel9/install-vpr.sh +2 -0
  79. siliconcompiler/toolscripts/rhel9/install-xdm.sh +2 -0
  80. siliconcompiler/toolscripts/rhel9/install-xyce.sh +2 -0
  81. siliconcompiler/toolscripts/rhel9/install-yosys-moosic.sh +2 -0
  82. siliconcompiler/toolscripts/rhel9/install-yosys-parmys.sh +2 -0
  83. siliconcompiler/toolscripts/rhel9/install-yosys-slang.sh +3 -1
  84. siliconcompiler/toolscripts/rhel9/install-yosys.sh +2 -0
  85. siliconcompiler/toolscripts/ubuntu20/install-bambu.sh +2 -0
  86. siliconcompiler/toolscripts/ubuntu20/install-bluespec.sh +2 -0
  87. siliconcompiler/toolscripts/ubuntu20/install-chisel.sh +2 -0
  88. siliconcompiler/toolscripts/ubuntu20/install-ghdl.sh +2 -0
  89. siliconcompiler/toolscripts/ubuntu20/install-gtkwave.sh +2 -0
  90. siliconcompiler/toolscripts/ubuntu20/install-icarus.sh +2 -0
  91. siliconcompiler/toolscripts/ubuntu20/install-icepack.sh +2 -0
  92. siliconcompiler/toolscripts/ubuntu20/install-klayout.sh +2 -0
  93. siliconcompiler/toolscripts/ubuntu20/install-magic.sh +2 -0
  94. siliconcompiler/toolscripts/ubuntu20/install-netgen.sh +2 -0
  95. siliconcompiler/toolscripts/ubuntu20/install-nextpnr.sh +1 -3
  96. siliconcompiler/toolscripts/ubuntu20/install-openroad.sh +2 -0
  97. siliconcompiler/toolscripts/ubuntu20/install-opensta.sh +72 -0
  98. siliconcompiler/toolscripts/ubuntu20/install-slang.sh +3 -1
  99. siliconcompiler/toolscripts/ubuntu20/install-slurm.sh +2 -0
  100. siliconcompiler/toolscripts/ubuntu20/install-surelog.sh +3 -1
  101. siliconcompiler/toolscripts/ubuntu20/install-sv2v.sh +1 -1
  102. siliconcompiler/toolscripts/ubuntu20/install-verible.sh +2 -0
  103. siliconcompiler/toolscripts/ubuntu20/install-verilator.sh +2 -0
  104. siliconcompiler/toolscripts/ubuntu20/install-vpr.sh +2 -0
  105. siliconcompiler/toolscripts/ubuntu20/install-xdm.sh +2 -0
  106. siliconcompiler/toolscripts/ubuntu20/install-xyce.sh +2 -0
  107. siliconcompiler/toolscripts/ubuntu20/install-yosys-moosic.sh +2 -0
  108. siliconcompiler/toolscripts/ubuntu20/install-yosys-parmys.sh +2 -0
  109. siliconcompiler/toolscripts/ubuntu20/install-yosys.sh +2 -0
  110. siliconcompiler/toolscripts/ubuntu22/install-bambu.sh +2 -0
  111. siliconcompiler/toolscripts/ubuntu22/install-bluespec.sh +2 -0
  112. siliconcompiler/toolscripts/ubuntu22/install-chisel.sh +2 -0
  113. siliconcompiler/toolscripts/ubuntu22/install-ghdl.sh +2 -0
  114. siliconcompiler/toolscripts/ubuntu22/install-gtkwave.sh +2 -0
  115. siliconcompiler/toolscripts/ubuntu22/install-icarus.sh +2 -0
  116. siliconcompiler/toolscripts/ubuntu22/install-icepack.sh +2 -0
  117. siliconcompiler/toolscripts/ubuntu22/install-klayout.sh +2 -0
  118. siliconcompiler/toolscripts/ubuntu22/install-magic.sh +2 -0
  119. siliconcompiler/toolscripts/ubuntu22/install-netgen.sh +2 -0
  120. siliconcompiler/toolscripts/ubuntu22/install-nextpnr.sh +1 -2
  121. siliconcompiler/toolscripts/ubuntu22/install-openroad.sh +2 -0
  122. siliconcompiler/toolscripts/ubuntu22/install-opensta.sh +72 -0
  123. siliconcompiler/toolscripts/ubuntu22/install-slang.sh +3 -1
  124. siliconcompiler/toolscripts/ubuntu22/install-slurm.sh +2 -0
  125. siliconcompiler/toolscripts/ubuntu22/install-surelog.sh +3 -1
  126. siliconcompiler/toolscripts/ubuntu22/install-sv2v.sh +1 -1
  127. siliconcompiler/toolscripts/ubuntu22/install-verible.sh +2 -0
  128. siliconcompiler/toolscripts/ubuntu22/install-verilator.sh +2 -0
  129. siliconcompiler/toolscripts/ubuntu22/install-vpr.sh +2 -0
  130. siliconcompiler/toolscripts/ubuntu22/install-xdm.sh +2 -0
  131. siliconcompiler/toolscripts/ubuntu22/install-xyce.sh +2 -0
  132. siliconcompiler/toolscripts/ubuntu22/install-yosys-moosic.sh +2 -0
  133. siliconcompiler/toolscripts/ubuntu22/install-yosys-parmys.sh +2 -0
  134. siliconcompiler/toolscripts/ubuntu22/install-yosys-slang.sh +3 -1
  135. siliconcompiler/toolscripts/ubuntu22/install-yosys.sh +2 -0
  136. siliconcompiler/toolscripts/ubuntu24/install-bambu.sh +2 -0
  137. siliconcompiler/toolscripts/ubuntu24/install-bluespec.sh +2 -0
  138. siliconcompiler/toolscripts/ubuntu24/install-chisel.sh +2 -0
  139. siliconcompiler/toolscripts/ubuntu24/install-ghdl.sh +2 -0
  140. siliconcompiler/toolscripts/ubuntu24/install-gtkwave.sh +2 -0
  141. siliconcompiler/toolscripts/ubuntu24/install-icarus.sh +2 -0
  142. siliconcompiler/toolscripts/ubuntu24/install-icepack.sh +2 -0
  143. siliconcompiler/toolscripts/ubuntu24/install-klayout.sh +2 -0
  144. siliconcompiler/toolscripts/ubuntu24/install-magic.sh +2 -0
  145. siliconcompiler/toolscripts/ubuntu24/install-netgen.sh +2 -0
  146. siliconcompiler/toolscripts/ubuntu24/install-nextpnr.sh +1 -3
  147. siliconcompiler/toolscripts/ubuntu24/install-openroad.sh +2 -0
  148. siliconcompiler/toolscripts/ubuntu24/install-opensta.sh +72 -0
  149. siliconcompiler/toolscripts/ubuntu24/install-slang.sh +3 -1
  150. siliconcompiler/toolscripts/ubuntu24/install-slurm.sh +2 -0
  151. siliconcompiler/toolscripts/ubuntu24/install-surelog.sh +3 -1
  152. siliconcompiler/toolscripts/ubuntu24/install-sv2v.sh +1 -1
  153. siliconcompiler/toolscripts/ubuntu24/install-verible.sh +2 -0
  154. siliconcompiler/toolscripts/ubuntu24/install-verilator.sh +2 -0
  155. siliconcompiler/toolscripts/ubuntu24/install-vpr.sh +2 -0
  156. siliconcompiler/toolscripts/ubuntu24/install-xdm.sh +2 -0
  157. siliconcompiler/toolscripts/ubuntu24/install-xyce.sh +2 -0
  158. siliconcompiler/toolscripts/ubuntu24/install-yosys-moosic.sh +2 -0
  159. siliconcompiler/toolscripts/ubuntu24/install-yosys-parmys.sh +2 -0
  160. siliconcompiler/toolscripts/ubuntu24/install-yosys-slang.sh +3 -1
  161. siliconcompiler/toolscripts/ubuntu24/install-yosys.sh +2 -0
  162. siliconcompiler/utils/logging.py +87 -33
  163. {siliconcompiler-0.32.2.dist-info → siliconcompiler-0.32.3.dist-info}/METADATA +5 -4
  164. {siliconcompiler-0.32.2.dist-info → siliconcompiler-0.32.3.dist-info}/RECORD +172 -166
  165. /siliconcompiler/report/dashboard/{components → web/components}/flowgraph.py +0 -0
  166. /siliconcompiler/report/dashboard/{state.py → web/state.py} +0 -0
  167. /siliconcompiler/report/dashboard/{utils → web/utils}/__init__.py +0 -0
  168. /siliconcompiler/report/dashboard/{utils → web/utils}/file_utils.py +0 -0
  169. {siliconcompiler-0.32.2.dist-info → siliconcompiler-0.32.3.dist-info}/WHEEL +0 -0
  170. {siliconcompiler-0.32.2.dist-info → siliconcompiler-0.32.3.dist-info}/entry_points.txt +0 -0
  171. {siliconcompiler-0.32.2.dist-info → siliconcompiler-0.32.3.dist-info}/licenses/LICENSE +0 -0
  172. {siliconcompiler-0.32.2.dist-info → siliconcompiler-0.32.3.dist-info}/top_level.txt +0 -0
@@ -11,13 +11,15 @@ sudo apt-get install -y build-essential cmake git pkg-config \
11
11
  python3-orderedmultidict python3-psutil python3-dev \
12
12
  default-jre lcov zlib1g-dev
13
13
 
14
+ sudo apt-get install -y git
15
+
14
16
  mkdir -p deps
15
17
  cd deps
16
18
 
17
19
  python3 -m venv .surelog --clear
18
20
  . .surelog/bin/activate
19
21
  python3 -m pip install --upgrade pip
20
- python3 -m pip install cmake
22
+ python3 -m pip install cmake==3.31.6
21
23
  python3 -m pip install orderedmultidict
22
24
 
23
25
  git clone $(python3 ${src_path}/_tools.py --tool surelog --field git-url) surelog
@@ -8,7 +8,7 @@ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
8
8
  mkdir -p deps
9
9
  cd deps
10
10
 
11
- sudo apt-get install -y curl
11
+ sudo apt-get install -y curl git
12
12
 
13
13
  haskell_args=""
14
14
  if [ ! -z ${PREFIX} ]; then
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y wget
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -11,6 +11,8 @@ sudo apt-get install -y libfl2
11
11
  sudo apt-get install -y libfl-dev
12
12
  sudo apt-get install -y zlib1g zlib1g-dev
13
13
 
14
+ sudo apt-get install -y git
15
+
14
16
  mkdir -p deps
15
17
  cd deps
16
18
 
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y git wget
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -7,6 +7,8 @@ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
8
  sudo apt-get install -y build-essential libboost-all-dev cmake
9
9
 
10
+ sudo apt-get install -y git
11
+
10
12
  mkdir -p deps
11
13
  cd deps
12
14
 
@@ -10,6 +10,8 @@ sudo apt-get install -y build-essential gcc g++ make cmake automake autoconf bis
10
10
  liblapack-dev liblapack64-dev libfftw3-dev libsuitesparse-dev libopenmpi-dev libboost-all-dev \
11
11
  libnetcdf-dev libmatio-dev gfortran libfl-dev libtool python3-venv
12
12
 
13
+ sudo apt-get install -y wget
14
+
13
15
  mkdir -p deps
14
16
  cd deps
15
17
 
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y git
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y git
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -5,12 +5,14 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y git
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
11
13
  python3 -m venv .yosys-slang --clear
12
14
  . .yosys-slang/bin/activate
13
- python3 -m pip install cmake
15
+ python3 -m pip install cmake==3.31.6
14
16
 
15
17
  git clone $(python3 ${src_path}/_tools.py --tool yosys-slang --field git-url) yosys-slang
16
18
  cd yosys-slang
@@ -11,6 +11,8 @@ sudo apt-get install -y build-essential clang bison flex \
11
11
  graphviz xdot pkg-config python3 libboost-system-dev \
12
12
  libboost-python-dev libboost-filesystem-dev zlib1g-dev
13
13
 
14
+ sudo apt-get install -y git
15
+
14
16
  mkdir -p deps
15
17
  cd deps
16
18
 
@@ -15,6 +15,8 @@ sudo apt-get install -y \
15
15
  llvm-16 llvm-16-dev libllvm16 \
16
16
  clang-16 libclang-16-dev
17
17
 
18
+ sudo apt-get install -y git build-essential
19
+
18
20
  mkdir -p deps
19
21
  cd deps
20
22
 
@@ -9,6 +9,8 @@ sudo apt-get install -y ghc libghc-regex-compat-dev libghc-syb-dev \
9
9
  libghc-old-time-dev libghc-split-dev tcl-dev build-essential pkg-config \
10
10
  autoconf gperf flex bison
11
11
 
12
+ sudo apt-get install -y git
13
+
12
14
  mkdir -p deps
13
15
  cd deps
14
16
 
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y wget
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -7,6 +7,8 @@ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
8
  sudo apt-get install -y llvm-dev clang gnat libgnat-9 libz-dev
9
9
 
10
+ sudo apt-get install -y git build-essential
11
+
10
12
  mkdir -p deps
11
13
  cd deps
12
14
 
@@ -9,6 +9,8 @@ sudo apt-get install -y build-essential gperf libgtk-3-dev \
9
9
  libbz2-dev libjudy-dev liblzma-dev tcl-dev tk-dev autotools-dev \
10
10
  automake
11
11
 
12
+ sudo apt-get install -y git
13
+
12
14
  mkdir -p deps
13
15
  cd deps
14
16
 
@@ -8,6 +8,8 @@ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
8
8
  sudo apt-get install -y build-essential bison flex gperf libreadline-dev libncurses-dev \
9
9
  autotools-dev automake
10
10
 
11
+ sudo apt-get install -y git
12
+
11
13
  mkdir -p deps
12
14
  cd deps
13
15
 
@@ -10,6 +10,8 @@ sudo apt-get install -y build-essential clang bison flex libreadline-dev \
10
10
  xdot pkg-config python3 libftdi-dev \
11
11
  qtbase5-dev python3-dev libboost-all-dev cmake libeigen3-dev
12
12
 
13
+ sudo apt-get install -y git
14
+
13
15
  mkdir -p deps
14
16
  cd deps
15
17
 
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y wget software-properties-common
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -7,6 +7,8 @@ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
8
  sudo apt-get install -y build-essential m4 tcsh csh libx11-dev tcl-dev tk-dev
9
9
 
10
+ sudo apt-get install -y git
11
+
10
12
  mkdir -p deps
11
13
  cd deps
12
14
 
@@ -7,6 +7,8 @@ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
8
  sudo apt-get install -y build-essential tcl-dev tk-dev m4
9
9
 
10
+ sudo apt-get install -y git autotools-dev automake
11
+
10
12
  mkdir -p deps
11
13
  cd deps
12
14
 
@@ -7,9 +7,7 @@ sudo apt-get install -y build-essential clang bison flex libreadline-dev \
7
7
  xdot pkg-config python3 libftdi-dev \
8
8
  qtbase5-dev python3-dev libboost-all-dev cmake libeigen3-dev
9
9
 
10
- #!/bin/sh
11
-
12
- set -e
10
+ sudo apt-get install -y git
13
11
 
14
12
  # Get directory of script
15
13
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
@@ -4,6 +4,8 @@ set -e
4
4
 
5
5
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
6
6
 
7
+ sudo apt-get install -y git
8
+
7
9
  mkdir -p deps
8
10
  cd deps
9
11
 
@@ -0,0 +1,72 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
6
+
7
+ sudo apt-get install -y git build-essential wget
8
+ sudo apt-get install -y tcl-dev tcl-tclreadline \
9
+ bison flex libfl-dev zlib1g-dev automake autotools-dev
10
+
11
+ mkdir -p deps
12
+ cd deps
13
+
14
+ python3 -m venv .opensta --clear
15
+ . .opensta/bin/activate
16
+ python3 -m pip install cmake==3.31.6
17
+
18
+ if [ ! -z ${PREFIX} ]; then
19
+ cmake_args="-DCMAKE_INSTALL_PREFIX=$PREFIX"
20
+ config_prefix="--prefix=$PREFIX"
21
+ fi
22
+
23
+ # eigen
24
+ mkdir -p eigen3
25
+ cd eigen3
26
+ git clone --depth=1 -b 3.4 https://gitlab.com/libeigen/eigen.git
27
+ cd eigen
28
+ mkdir build
29
+ cd build
30
+ cmake $cmake_args ..
31
+ make -j$(nproc)
32
+ sudo make install
33
+
34
+ cd ../../..
35
+ # cudd
36
+ mkdir -p cudd
37
+ cd cudd
38
+ git clone --depth=1 -b 3.0.0 https://github.com/The-OpenROAD-Project/cudd.git
39
+ cd cudd
40
+ autoreconf
41
+ ./configure $config_prefix
42
+ make -j$(nproc)
43
+ sudo make install
44
+
45
+ cd ../..
46
+ #swig
47
+ wget -O swig.tar.gz https://github.com/swig/swig/archive/v4.1.0.tar.gz
48
+ tar xfz swig.tar.gz
49
+ cd swig-4.1.0
50
+
51
+ wget https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.42/pcre2-10.42.tar.gz
52
+ ./Tools/pcre-build.sh
53
+
54
+ ./autogen.sh
55
+ ./configure $config_prefix
56
+ make -j$(nproc)
57
+ sudo make -j$(nproc) install
58
+
59
+ cd ../..
60
+ # opensta
61
+ git clone $(python3 ${src_path}/_tools.py --tool opensta --field git-url) opensta
62
+ cd opensta
63
+ git checkout $(python3 ${src_path}/_tools.py --tool opensta --field git-commit)
64
+ git submodule update --init --recursive
65
+
66
+ mkdir -p build
67
+ cd build
68
+ cmake .. $cmake_args
69
+ make -j$(nproc)
70
+ sudo make install
71
+
72
+ cd -
@@ -5,12 +5,14 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y git build-essential
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
11
13
  python3 -m venv .slang --clear
12
14
  . .slang/bin/activate
13
- python3 -m pip install cmake
15
+ python3 -m pip install cmake==3.31.6
14
16
 
15
17
  git clone $(python3 ${src_path}/_tools.py --tool slang --field git-url) slang
16
18
  cd slang
@@ -8,6 +8,8 @@ sudo apt-get install -y libdbus-1-dev
8
8
  # Get directory of script
9
9
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
10
10
 
11
+ sudo apt-get install -y wget
12
+
11
13
  mkdir -p deps
12
14
  cd deps
13
15
 
@@ -11,13 +11,15 @@ sudo apt-get install -y build-essential cmake git pkg-config \
11
11
  python3-orderedmultidict python3-psutil python3-dev \
12
12
  default-jre lcov zlib1g-dev
13
13
 
14
+ sudo apt-get install -y git
15
+
14
16
  mkdir -p deps
15
17
  cd deps
16
18
 
17
19
  python3 -m venv .surelog --clear
18
20
  . .surelog/bin/activate
19
21
  python3 -m pip install --upgrade pip
20
- python3 -m pip install cmake
22
+ python3 -m pip install cmake==3.31.6
21
23
  python3 -m pip install orderedmultidict
22
24
 
23
25
  git clone $(python3 ${src_path}/_tools.py --tool surelog --field git-url) surelog
@@ -8,7 +8,7 @@ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
8
8
  mkdir -p deps
9
9
  cd deps
10
10
 
11
- sudo apt-get install -y curl
11
+ sudo apt-get install -y curl git
12
12
 
13
13
  haskell_args=""
14
14
  if [ ! -z ${PREFIX} ]; then
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y wget
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -11,6 +11,8 @@ sudo apt-get install -y libfl2
11
11
  sudo apt-get install -y libfl-dev
12
12
  sudo apt-get install -y zlib1g zlib1g-dev
13
13
 
14
+ sudo apt-get install -y git
15
+
14
16
  mkdir -p deps
15
17
  cd deps
16
18
 
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y git wget
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -7,6 +7,8 @@ src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
8
  sudo apt-get install -y build-essential libboost1.74-all-dev cmake
9
9
 
10
+ sudo apt-get install -y git
11
+
10
12
  mkdir -p deps
11
13
  cd deps
12
14
 
@@ -10,6 +10,8 @@ sudo apt-get install -y build-essential gcc g++ make cmake automake autoconf bis
10
10
  liblapack-dev liblapack64-dev libfftw3-dev libsuitesparse-dev libopenmpi-dev libboost-all-dev \
11
11
  libnetcdf-dev libmatio-dev gfortran libfl-dev libtool python3-venv
12
12
 
13
+ sudo apt-get install -y wget
14
+
13
15
  mkdir -p deps
14
16
  cd deps
15
17
 
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y git
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -5,6 +5,8 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y git
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
@@ -5,12 +5,14 @@ set -e
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ sudo apt-get install -y git
9
+
8
10
  mkdir -p deps
9
11
  cd deps
10
12
 
11
13
  python3 -m venv .yosys-slang --clear
12
14
  . .yosys-slang/bin/activate
13
- python3 -m pip install cmake
15
+ python3 -m pip install cmake==3.31.6
14
16
 
15
17
  git clone $(python3 ${src_path}/_tools.py --tool yosys-slang --field git-url) yosys-slang
16
18
  cd yosys-slang
@@ -11,6 +11,8 @@ sudo apt-get install -y build-essential clang bison flex \
11
11
  graphviz xdot pkg-config python3 libboost-system-dev \
12
12
  libboost-python-dev libboost-filesystem-dev zlib1g-dev
13
13
 
14
+ sudo apt-get install -y git
15
+
14
16
  mkdir -p deps
15
17
  cd deps
16
18
 
@@ -1,34 +1,78 @@
1
1
  import logging
2
2
  import sys
3
+ from siliconcompiler.flowgraph import _get_flowgraph_nodes
4
+ from siliconcompiler.remote import client
5
+ from siliconcompiler import utils
3
6
 
4
7
 
5
- class LoggerFormatter(logging.Formatter):
6
- def __init__(self, log_formatprefix, level_fmt, message_fmt):
7
- self.__formats = {}
8
+ class SCBlankLoggerFormatter(logging.Formatter):
9
+ def __init__(self):
10
+ super().__init__("%(message)s")
8
11
 
9
- self.add_format(None, log_formatprefix + level_fmt, message_fmt)
10
- for level in [logging.DEBUG,
11
- logging.INFO,
12
- logging.WARNING,
13
- logging.ERROR,
14
- logging.CRITICAL]:
15
- self.add_format(level, log_formatprefix + level_fmt, message_fmt)
16
12
 
17
- def format(self, record):
18
- log_fmt = self.__formats.get(record.levelno)
19
- if not log_fmt:
20
- log_fmt = self.__formats.get(None)
21
- formatter = logging.Formatter(log_fmt)
22
- return formatter.format(record)
13
+ class SCDebugLoggerFormatter(logging.Formatter):
14
+ def __init__(self):
15
+ super().__init__(
16
+ "| %(levelname)-8s | %(filename)-20s : %(funcName)-10s | %(lineno)-4s | %(message)s")
17
+
18
+
19
+ class SCDebugInRunLoggerFormatter(logging.Formatter):
20
+ def __init__(self, chip, jobname, step, index):
21
+ super().__init__(
22
+ SCInRunLoggerFormatter.configureFormat(
23
+ "| %(levelname)-8s | %(filename)-20s : %(funcName)-10s | %(lineno)-4s |"
24
+ " {} | {} | {} | %(message)s",
25
+ chip, step, index))
26
+
27
+
28
+ class SCLoggerFormatter(logging.Formatter):
29
+ def __init__(self):
30
+ super().__init__("| %(levelname)-8s | %(message)s")
31
+
32
+
33
+ class SCInRunLoggerFormatter(logging.Formatter):
34
+ def __init__(self, chip, jobname, step, index):
35
+ super().__init__(
36
+ SCInRunLoggerFormatter.configureFormat(
37
+ "| %(levelname)-8s | {} | {} | {} | %(message)s",
38
+ chip, step, index))
39
+
40
+ @staticmethod
41
+ def configureFormat(fmt, chip, step, index):
42
+ max_width = 20
23
43
 
24
- def add_format(self, level, level_format, message_format):
25
- if level == logging.CRITICAL:
26
- self.__formats[level] = level_format + message_format
44
+ flow = chip.get('option', 'flow')
45
+ if flow:
46
+ nodes_to_run = _get_flowgraph_nodes(chip, flow=flow)
27
47
  else:
28
- self.__formats[level] = level_format + " " + message_format
48
+ nodes_to_run = []
29
49
 
50
+ # Figure out how wide to make step and index fields
51
+ max_step_len = 1
52
+ max_index_len = 1
30
53
 
31
- class ColorStreamFormatter(LoggerFormatter):
54
+ if chip.get('option', 'remote'):
55
+ nodes_to_run.append((client.remote_step_name, '0'))
56
+ for future_step, future_index in nodes_to_run:
57
+ max_step_len = max(len(future_step), max_step_len)
58
+ max_index_len = max(len(future_index), max_index_len)
59
+ max_step_len = min(max_step_len, max_width)
60
+ max_index_len = min(max_index_len, max_width)
61
+
62
+ jobname = chip.get('option', 'jobname')
63
+
64
+ if step is None:
65
+ step = '-' * max(max_step_len // 4, 1)
66
+ if index is None:
67
+ index = '-' * max(max_index_len // 4, 1)
68
+
69
+ return fmt.format(
70
+ utils.truncate_text(jobname, max_width),
71
+ f'{utils.truncate_text(step, max_step_len): <{max_step_len}}',
72
+ f'{utils.truncate_text(index, max_step_len): >{max_index_len}}')
73
+
74
+
75
+ class SCColorLoggerFormatter(logging.Formatter):
32
76
  '''
33
77
  Apply color to stream logger
34
78
  '''
@@ -38,20 +82,30 @@ class ColorStreamFormatter(LoggerFormatter):
38
82
  bold_red = u"\u001b[31;1m"
39
83
  reset = u"\u001b[0m"
40
84
 
41
- def __init__(self, log_formatprefix, level_fmt, message_fmt):
42
- super().__init__(log_formatprefix, level_fmt, message_fmt)
85
+ def __init__(self, root_formatter):
86
+ super().__init__()
43
87
 
44
- # Replace with colors
45
- for level, color in [(logging.DEBUG, ColorStreamFormatter.blue),
46
- (logging.WARNING, ColorStreamFormatter.yellow),
47
- (logging.ERROR, ColorStreamFormatter.red),
48
- (logging.CRITICAL, ColorStreamFormatter.bold_red)]:
49
- if color:
50
- fmt = log_formatprefix + color + level_fmt + ColorStreamFormatter.reset
51
- else:
52
- fmt = log_formatprefix + level_fmt
88
+ self.__create_color_format(root_formatter._style._fmt)
89
+
90
+ def __create_color_format(self, fmt):
91
+ self.__formatters = {
92
+ None: logging.Formatter(fmt)
93
+ }
94
+
95
+ for level, color in [(logging.DEBUG, SCColorLoggerFormatter.blue),
96
+ (logging.WARNING, SCColorLoggerFormatter.yellow),
97
+ (logging.ERROR, SCColorLoggerFormatter.red),
98
+ (logging.CRITICAL, SCColorLoggerFormatter.bold_red)]:
99
+ self.__formatters[level] = logging.Formatter(
100
+ fmt.replace('%(levelname)-8s',
101
+ color + '%(levelname)-8s' + SCColorLoggerFormatter.reset))
102
+
103
+ def format(self, record):
104
+ log_fmt = self.__formatters.get(record.levelno)
105
+ if not log_fmt:
106
+ log_fmt = self.__formatters.get(None)
53
107
 
54
- self.add_format(level, fmt, message_fmt)
108
+ return log_fmt.format(record)
55
109
 
56
110
  @staticmethod
57
111
  def supports_color(handler):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: siliconcompiler
3
- Version: 0.32.2
3
+ Version: 0.32.3
4
4
  Summary: A compiler framework that automates translation from source code to silicon.
5
5
  Author-email: Andreas Olofsson <andreas.d.olofsson@gmail.com>
6
6
  License: Apache License 2.0
@@ -26,7 +26,7 @@ Requires-Python: >=3.8
26
26
  Description-Content-Type: text/markdown
27
27
  License-File: LICENSE
28
28
  Requires-Dist: aiohttp==3.10.11; python_version <= "3.8"
29
- Requires-Dist: aiohttp==3.11.14; python_version >= "3.9"
29
+ Requires-Dist: aiohttp==3.11.16; python_version >= "3.9"
30
30
  Requires-Dist: requests==2.32.3
31
31
  Requires-Dist: PyYAML==6.0.2
32
32
  Requires-Dist: pandas>=1.1.5
@@ -49,11 +49,12 @@ Requires-Dist: orjson==3.10.15; python_version <= "3.8"
49
49
  Requires-Dist: orjson==3.10.16; python_version >= "3.9"
50
50
  Requires-Dist: pyslang==8.0.0
51
51
  Requires-Dist: streamlit==1.40.1; python_version <= "3.8"
52
- Requires-Dist: streamlit==1.44.0; python_version >= "3.9" and python_full_version != "3.9.7"
52
+ Requires-Dist: streamlit==1.44.1; python_version >= "3.9" and python_full_version != "3.9.7"
53
53
  Requires-Dist: streamlit_agraph==0.0.45; python_full_version != "3.9.7"
54
54
  Requires-Dist: streamlit-antd-components==0.3.2; python_full_version != "3.9.7"
55
55
  Requires-Dist: streamlit_javascript==0.1.5; python_full_version != "3.9.7"
56
56
  Requires-Dist: streamlit-autorefresh==1.0.1; python_full_version != "3.9.7"
57
+ Requires-Dist: rich==13.9.4
57
58
  Provides-Extra: test
58
59
  Requires-Dist: pytest==8.3.5; extra == "test"
59
60
  Requires-Dist: pytest-xdist==3.6.1; extra == "test"
@@ -61,7 +62,7 @@ Requires-Dist: pytest-timeout==2.3.1; extra == "test"
61
62
  Requires-Dist: pytest-asyncio==0.24.0; python_version <= "3.8" and extra == "test"
62
63
  Requires-Dist: pytest-asyncio==0.26.0; python_version >= "3.9" and extra == "test"
63
64
  Requires-Dist: pytest-cov==5.0.0; python_version <= "3.8" and extra == "test"
64
- Requires-Dist: pytest-cov==6.0.0; python_version >= "3.9" and extra == "test"
65
+ Requires-Dist: pytest-cov==6.1.1; python_version >= "3.9" and extra == "test"
65
66
  Requires-Dist: responses==0.25.7; extra == "test"
66
67
  Requires-Dist: PyVirtualDisplay==3.0; extra == "test"
67
68
  Requires-Dist: logiklib==0.1.0; extra == "test"