siliconcompiler 0.33.0__py3-none-any.whl → 0.33.2__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 (177) hide show
  1. siliconcompiler/_common.py +5 -0
  2. siliconcompiler/_metadata.py +1 -1
  3. siliconcompiler/apps/sc_install.py +7 -0
  4. siliconcompiler/apps/sc_remote.py +7 -2
  5. siliconcompiler/apps/utils/replay.py +5 -5
  6. siliconcompiler/core.py +38 -12
  7. siliconcompiler/data/templates/replay/replay.sh.j2 +18 -1
  8. siliconcompiler/metric.py +78 -0
  9. siliconcompiler/package/git.py +1 -1
  10. siliconcompiler/record.py +63 -7
  11. siliconcompiler/remote/client.py +57 -14
  12. siliconcompiler/remote/server.py +110 -60
  13. siliconcompiler/report/dashboard/cli/__init__.py +2 -0
  14. siliconcompiler/report/dashboard/cli/board.py +34 -31
  15. siliconcompiler/report/report.py +10 -5
  16. siliconcompiler/report/utils.py +12 -6
  17. siliconcompiler/scheduler/__init__.py +146 -976
  18. siliconcompiler/scheduler/run_node.py +12 -5
  19. siliconcompiler/scheduler/send_messages.py +9 -3
  20. siliconcompiler/scheduler/slurm.py +10 -43
  21. siliconcompiler/scheduler/taskscheduler.py +320 -0
  22. siliconcompiler/schema/baseschema.py +25 -4
  23. siliconcompiler/schema/journalingschema.py +4 -0
  24. siliconcompiler/schema/schema_cfg.py +3 -3
  25. siliconcompiler/tool.py +201 -32
  26. siliconcompiler/tools/_common/__init__.py +14 -11
  27. siliconcompiler/tools/_common/asic.py +5 -5
  28. siliconcompiler/tools/bluespec/convert.py +2 -1
  29. siliconcompiler/tools/builtin/_common.py +9 -2
  30. siliconcompiler/tools/builtin/concatenate.py +6 -2
  31. siliconcompiler/tools/builtin/minimum.py +7 -2
  32. siliconcompiler/tools/builtin/mux.py +7 -2
  33. siliconcompiler/tools/builtin/nop.py +7 -2
  34. siliconcompiler/tools/builtin/verify.py +7 -3
  35. siliconcompiler/tools/chisel/convert.py +10 -10
  36. siliconcompiler/tools/klayout/drc.py +2 -2
  37. siliconcompiler/tools/klayout/klayout_show.py +6 -6
  38. siliconcompiler/tools/klayout/klayout_utils.py +12 -12
  39. siliconcompiler/tools/netgen/count_lvs.py +2 -2
  40. siliconcompiler/tools/netgen/lvs.py +1 -1
  41. siliconcompiler/tools/openroad/_apr.py +2 -2
  42. siliconcompiler/tools/openroad/scripts/apr/sc_init_floorplan.tcl +1 -7
  43. siliconcompiler/tools/openroad/scripts/common/procs.tcl +18 -0
  44. siliconcompiler/tools/openroad/scripts/common/read_input_files.tcl +1 -7
  45. siliconcompiler/tools/opensta/scripts/sc_timing.tcl +10 -0
  46. siliconcompiler/tools/opensta/timing.py +11 -0
  47. siliconcompiler/tools/slang/__init__.py +6 -5
  48. siliconcompiler/tools/slang/elaborate.py +6 -6
  49. siliconcompiler/tools/slang/lint.py +1 -3
  50. siliconcompiler/tools/vpr/_xml_constraint.py +8 -8
  51. siliconcompiler/tools/yosys/prepareLib.py +2 -2
  52. siliconcompiler/tools/yosys/sc_synth_asic.tcl +43 -5
  53. siliconcompiler/tools/yosys/screenshot.py +1 -1
  54. siliconcompiler/tools/yosys/syn_asic.py +5 -5
  55. siliconcompiler/toolscripts/_tools.json +17 -10
  56. siliconcompiler/toolscripts/rhel8/install-chisel.sh +9 -2
  57. siliconcompiler/toolscripts/rhel8/install-icarus.sh +10 -3
  58. siliconcompiler/toolscripts/rhel8/install-klayout.sh +8 -1
  59. siliconcompiler/toolscripts/rhel8/install-magic.sh +9 -2
  60. siliconcompiler/toolscripts/rhel8/install-montage.sh +1 -1
  61. siliconcompiler/toolscripts/rhel8/install-netgen.sh +9 -2
  62. siliconcompiler/toolscripts/rhel8/install-slang.sh +11 -4
  63. siliconcompiler/toolscripts/rhel8/install-surelog.sh +9 -2
  64. siliconcompiler/toolscripts/rhel8/install-sv2v.sh +11 -4
  65. siliconcompiler/toolscripts/rhel8/install-verible.sh +11 -3
  66. siliconcompiler/toolscripts/rhel8/install-verilator.sh +10 -3
  67. siliconcompiler/toolscripts/rhel8/install-xyce.sh +15 -10
  68. siliconcompiler/toolscripts/rhel9/install-chisel.sh +9 -2
  69. siliconcompiler/toolscripts/rhel9/install-ghdl.sh +9 -2
  70. siliconcompiler/toolscripts/rhel9/install-gtkwave.sh +10 -3
  71. siliconcompiler/toolscripts/rhel9/install-icarus.sh +10 -3
  72. siliconcompiler/toolscripts/rhel9/install-klayout.sh +8 -1
  73. siliconcompiler/toolscripts/rhel9/install-magic.sh +9 -2
  74. siliconcompiler/toolscripts/rhel9/install-montage.sh +1 -1
  75. siliconcompiler/toolscripts/rhel9/install-netgen.sh +9 -2
  76. siliconcompiler/toolscripts/rhel9/install-openroad.sh +16 -3
  77. siliconcompiler/toolscripts/rhel9/install-opensta.sh +17 -5
  78. siliconcompiler/toolscripts/rhel9/install-slang.sh +11 -4
  79. siliconcompiler/toolscripts/rhel9/install-surelog.sh +9 -2
  80. siliconcompiler/toolscripts/rhel9/install-sv2v.sh +11 -4
  81. siliconcompiler/toolscripts/rhel9/install-verible.sh +11 -3
  82. siliconcompiler/toolscripts/rhel9/install-verilator.sh +10 -3
  83. siliconcompiler/toolscripts/rhel9/install-vpr.sh +9 -2
  84. siliconcompiler/toolscripts/rhel9/install-xdm.sh +10 -2
  85. siliconcompiler/toolscripts/rhel9/install-xyce.sh +15 -10
  86. siliconcompiler/toolscripts/rhel9/install-yosys-moosic.sh +9 -2
  87. siliconcompiler/toolscripts/rhel9/install-yosys-parmys.sh +10 -3
  88. siliconcompiler/toolscripts/rhel9/install-yosys-slang.sh +10 -2
  89. siliconcompiler/toolscripts/rhel9/install-yosys.sh +9 -2
  90. siliconcompiler/toolscripts/ubuntu20/install-bambu.sh +10 -2
  91. siliconcompiler/toolscripts/ubuntu20/install-bluespec.sh +10 -3
  92. siliconcompiler/toolscripts/ubuntu20/install-chisel.sh +9 -2
  93. siliconcompiler/toolscripts/ubuntu20/install-ghdl.sh +9 -2
  94. siliconcompiler/toolscripts/ubuntu20/install-gtkwave.sh +9 -2
  95. siliconcompiler/toolscripts/ubuntu20/install-icarus.sh +9 -2
  96. siliconcompiler/toolscripts/ubuntu20/install-icepack.sh +9 -2
  97. siliconcompiler/toolscripts/ubuntu20/install-klayout.sh +8 -1
  98. siliconcompiler/toolscripts/ubuntu20/install-magic.sh +9 -2
  99. siliconcompiler/toolscripts/ubuntu20/install-montage.sh +1 -1
  100. siliconcompiler/toolscripts/ubuntu20/install-netgen.sh +9 -2
  101. siliconcompiler/toolscripts/ubuntu20/install-nextpnr.sh +9 -2
  102. siliconcompiler/toolscripts/ubuntu20/install-openroad.sh +16 -3
  103. siliconcompiler/toolscripts/ubuntu20/install-opensta.sh +16 -5
  104. siliconcompiler/toolscripts/ubuntu20/install-slang.sh +11 -4
  105. siliconcompiler/toolscripts/ubuntu20/install-slurm.sh +9 -2
  106. siliconcompiler/toolscripts/ubuntu20/install-surelog.sh +10 -2
  107. siliconcompiler/toolscripts/ubuntu20/install-sv2v.sh +11 -4
  108. siliconcompiler/toolscripts/ubuntu20/install-verible.sh +11 -3
  109. siliconcompiler/toolscripts/ubuntu20/install-verilator.sh +9 -2
  110. siliconcompiler/toolscripts/ubuntu20/install-xdm.sh +10 -2
  111. siliconcompiler/toolscripts/ubuntu20/install-xyce.sh +13 -8
  112. siliconcompiler/toolscripts/ubuntu20/install-yosys-moosic.sh +9 -2
  113. siliconcompiler/toolscripts/ubuntu20/install-yosys.sh +9 -2
  114. siliconcompiler/toolscripts/ubuntu22/install-bambu.sh +10 -2
  115. siliconcompiler/toolscripts/ubuntu22/install-bluespec.sh +10 -3
  116. siliconcompiler/toolscripts/ubuntu22/install-chisel.sh +9 -2
  117. siliconcompiler/toolscripts/ubuntu22/install-ghdl.sh +9 -2
  118. siliconcompiler/toolscripts/ubuntu22/install-gtkwave.sh +9 -2
  119. siliconcompiler/toolscripts/ubuntu22/install-icarus.sh +9 -2
  120. siliconcompiler/toolscripts/ubuntu22/install-icepack.sh +9 -2
  121. siliconcompiler/toolscripts/ubuntu22/install-klayout.sh +12 -1
  122. siliconcompiler/toolscripts/ubuntu22/install-magic.sh +9 -2
  123. siliconcompiler/toolscripts/ubuntu22/install-montage.sh +1 -1
  124. siliconcompiler/toolscripts/ubuntu22/install-netgen.sh +9 -2
  125. siliconcompiler/toolscripts/ubuntu22/install-nextpnr.sh +9 -2
  126. siliconcompiler/toolscripts/ubuntu22/install-openroad.sh +16 -3
  127. siliconcompiler/toolscripts/ubuntu22/install-opensta.sh +17 -5
  128. siliconcompiler/toolscripts/ubuntu22/install-slang.sh +11 -4
  129. siliconcompiler/toolscripts/ubuntu22/install-slurm.sh +9 -2
  130. siliconcompiler/toolscripts/ubuntu22/install-surelog.sh +10 -2
  131. siliconcompiler/toolscripts/ubuntu22/install-sv2v.sh +11 -4
  132. siliconcompiler/toolscripts/ubuntu22/install-verible.sh +11 -3
  133. siliconcompiler/toolscripts/ubuntu22/install-verilator.sh +9 -2
  134. siliconcompiler/toolscripts/ubuntu22/install-vpr.sh +9 -2
  135. siliconcompiler/toolscripts/ubuntu22/install-xdm.sh +10 -2
  136. siliconcompiler/toolscripts/ubuntu22/install-xyce.sh +13 -8
  137. siliconcompiler/toolscripts/ubuntu22/install-yosys-moosic.sh +9 -2
  138. siliconcompiler/toolscripts/ubuntu22/install-yosys-parmys.sh +10 -3
  139. siliconcompiler/toolscripts/ubuntu22/install-yosys-slang.sh +10 -2
  140. siliconcompiler/toolscripts/ubuntu22/install-yosys.sh +9 -2
  141. siliconcompiler/toolscripts/ubuntu24/install-bambu.sh +12 -4
  142. siliconcompiler/toolscripts/ubuntu24/install-bluespec.sh +10 -3
  143. siliconcompiler/toolscripts/ubuntu24/install-chisel.sh +9 -2
  144. siliconcompiler/toolscripts/ubuntu24/install-ghdl.sh +9 -2
  145. siliconcompiler/toolscripts/ubuntu24/install-gtkwave.sh +9 -2
  146. siliconcompiler/toolscripts/ubuntu24/install-icarus.sh +9 -2
  147. siliconcompiler/toolscripts/ubuntu24/install-icepack.sh +9 -2
  148. siliconcompiler/toolscripts/ubuntu24/install-klayout.sh +12 -1
  149. siliconcompiler/toolscripts/ubuntu24/install-magic.sh +9 -2
  150. siliconcompiler/toolscripts/ubuntu24/install-montage.sh +1 -1
  151. siliconcompiler/toolscripts/ubuntu24/install-netgen.sh +9 -2
  152. siliconcompiler/toolscripts/ubuntu24/install-nextpnr.sh +9 -2
  153. siliconcompiler/toolscripts/ubuntu24/install-openroad.sh +16 -3
  154. siliconcompiler/toolscripts/ubuntu24/install-opensta.sh +17 -5
  155. siliconcompiler/toolscripts/ubuntu24/install-slang.sh +11 -4
  156. siliconcompiler/toolscripts/ubuntu24/install-slurm.sh +9 -2
  157. siliconcompiler/toolscripts/ubuntu24/install-surelog.sh +10 -2
  158. siliconcompiler/toolscripts/ubuntu24/install-sv2v.sh +11 -4
  159. siliconcompiler/toolscripts/ubuntu24/install-verible.sh +11 -3
  160. siliconcompiler/toolscripts/ubuntu24/install-verilator.sh +9 -2
  161. siliconcompiler/toolscripts/ubuntu24/install-vpr.sh +9 -2
  162. siliconcompiler/toolscripts/ubuntu24/install-xdm.sh +10 -2
  163. siliconcompiler/toolscripts/ubuntu24/install-xyce.sh +13 -8
  164. siliconcompiler/toolscripts/ubuntu24/install-yosys-moosic.sh +9 -2
  165. siliconcompiler/toolscripts/ubuntu24/install-yosys-parmys.sh +10 -3
  166. siliconcompiler/toolscripts/ubuntu24/install-yosys-slang.sh +10 -2
  167. siliconcompiler/toolscripts/ubuntu24/install-yosys.sh +9 -2
  168. siliconcompiler/utils/__init__.py +11 -0
  169. siliconcompiler/utils/flowgraph.py +6 -101
  170. siliconcompiler/utils/issue.py +15 -23
  171. siliconcompiler/utils/logging.py +2 -2
  172. {siliconcompiler-0.33.0.dist-info → siliconcompiler-0.33.2.dist-info}/METADATA +6 -5
  173. {siliconcompiler-0.33.0.dist-info → siliconcompiler-0.33.2.dist-info}/RECORD +177 -176
  174. {siliconcompiler-0.33.0.dist-info → siliconcompiler-0.33.2.dist-info}/WHEEL +1 -1
  175. {siliconcompiler-0.33.0.dist-info → siliconcompiler-0.33.2.dist-info}/entry_points.txt +0 -0
  176. {siliconcompiler-0.33.0.dist-info → siliconcompiler-0.33.2.dist-info}/licenses/LICENSE +0 -0
  177. {siliconcompiler-0.33.0.dist-info → siliconcompiler-0.33.2.dist-info}/top_level.txt +0 -0
@@ -1,10 +1,17 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y build-essential bison flex gperf libreadline-dev libncurses-dev \
9
16
  autotools-dev automake
10
17
 
@@ -25,4 +32,4 @@ fi
25
32
  sh autoconf.sh
26
33
  ./configure $args
27
34
  make -j$(nproc)
28
- sudo make install
35
+ $SUDO_INSTALL make install
@@ -1,10 +1,17 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y build-essential clang bison flex libreadline-dev \
9
16
  gawk tcl-dev libffi-dev git mercurial graphviz \
10
17
  xdot pkg-config python3 libftdi-dev \
@@ -20,5 +27,5 @@ cd icepack
20
27
  git checkout $(python3 ${src_path}/_tools.py --tool icepack --field git-commit)
21
28
 
22
29
  make -j$(nproc)
23
- sudo make install PREFIX="$PREFIX"
30
+ $SUDO_INSTALL make install PREFIX="$PREFIX"
24
31
  cd -
@@ -1,10 +1,17 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y wget software-properties-common
9
16
 
10
17
  mkdir -p deps
@@ -30,4 +37,8 @@ wget -O klayout.deb $url
30
37
  # Install package
31
38
  sudo apt-get install -y ./klayout.deb
32
39
 
40
+ if [ ! -z ${SC_PREFIX+x} ]; then
41
+ sudo cp ./klayout.deb "${SC_PREFIX}/"
42
+ fi
43
+
33
44
  cd -
@@ -1,10 +1,17 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y build-essential m4 tcsh csh libx11-dev tcl-dev tk-dev
9
16
 
10
17
  sudo apt-get install -y git
@@ -23,4 +30,4 @@ fi
23
30
 
24
31
  LD_FLAGS=-shared ./configure $args
25
32
  make -j$(nproc)
26
- sudo make install
33
+ $SUDO_INSTALL make install
@@ -1,5 +1,5 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  sudo apt-get install -y imagemagick
@@ -1,10 +1,17 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y build-essential tcl-dev tk-dev m4
9
16
 
10
17
  sudo apt-get install -y git autotools-dev automake
@@ -23,4 +30,4 @@ fi
23
30
 
24
31
  ./configure $args
25
32
  make -j$(nproc)
26
- sudo make install
33
+ $SUDO_INSTALL make install
@@ -1,6 +1,6 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  sudo apt-get install -y build-essential clang bison flex libreadline-dev \
6
6
  gawk tcl-dev libffi-dev git mercurial graphviz \
@@ -12,6 +12,13 @@ sudo apt-get install -y git
12
12
  # Get directory of script
13
13
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
14
14
 
15
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
16
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
17
+ SUDO_INSTALL=sudo
18
+ else
19
+ SUDO_INSTALL=""
20
+ fi
21
+
15
22
  mkdir -p deps
16
23
  cd deps
17
24
 
@@ -26,5 +33,5 @@ fi
26
33
 
27
34
  cmake -DARCH=ice40 $args .
28
35
  make -j$(nproc)
29
- sudo make install
36
+ $SUDO_INSTALL make install
30
37
  cd -
@@ -1,9 +1,20 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
6
6
 
7
+ if [ ! -z ${PREFIX} ]; then
8
+ export PATH="$PREFIX/bin:$PATH"
9
+ fi
10
+
11
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
12
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
13
+ SUDO_INSTALL="sudo -E PATH=$PATH"
14
+ else
15
+ SUDO_INSTALL=""
16
+ fi
17
+
7
18
  sudo apt-get install -y git
8
19
 
9
20
  mkdir -p deps
@@ -18,7 +29,9 @@ deps_args=""
18
29
  if [ ! -z ${PREFIX} ]; then
19
30
  deps_args="-prefix=$PREFIX"
20
31
  fi
21
- sudo ./etc/DependencyInstaller.sh -all $deps_args
32
+ sudo ./etc/DependencyInstaller.sh -base
33
+ sudo rm -f etc/openroad_deps_prefixes.txt
34
+ $SUDO_INSTALL ./etc/DependencyInstaller.sh -common $deps_args
22
35
 
23
36
  cmake_args="-DENABLE_TESTS=OFF"
24
37
  if [ ! -z ${PREFIX} ]; then
@@ -28,6 +41,6 @@ fi
28
41
  ./etc/Build.sh -cmake="$cmake_args"
29
42
 
30
43
  cd build
31
- sudo make install
44
+ $SUDO_INSTALL make install
32
45
 
33
46
  cd -
@@ -1,9 +1,13 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
6
6
 
7
+ if [ ! -z ${PREFIX} ]; then
8
+ export PATH="$PREFIX/bin:$PATH"
9
+ fi
10
+
7
11
  sudo apt-get install -y git build-essential wget
8
12
  sudo apt-get install -y tcl-dev tcl-tclreadline \
9
13
  bison flex libfl-dev zlib1g-dev automake autotools-dev
@@ -15,9 +19,17 @@ python3 -m venv .opensta --clear
15
19
  . .opensta/bin/activate
16
20
  python3 -m pip install cmake==3.31.6
17
21
 
22
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
23
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
24
+ SUDO_INSTALL="sudo -E PATH=$PATH"
25
+ else
26
+ SUDO_INSTALL=""
27
+ fi
28
+
18
29
  if [ ! -z ${PREFIX} ]; then
19
30
  cmake_args="-DCMAKE_INSTALL_PREFIX=$PREFIX"
20
31
  config_prefix="--prefix=$PREFIX"
32
+ export PATH="$PREFIX/bin:$PATH"
21
33
  fi
22
34
 
23
35
  # eigen
@@ -29,7 +41,7 @@ mkdir build
29
41
  cd build
30
42
  cmake $cmake_args ..
31
43
  make -j$(nproc)
32
- sudo make install
44
+ $SUDO_INSTALL make install
33
45
 
34
46
  cd ../../..
35
47
  # cudd
@@ -40,7 +52,7 @@ cd cudd
40
52
  autoreconf
41
53
  ./configure $config_prefix
42
54
  make -j$(nproc)
43
- sudo make install
55
+ $SUDO_INSTALL make install
44
56
 
45
57
  cd ../..
46
58
  #swig
@@ -54,7 +66,7 @@ wget https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.42/pcre2-1
54
66
  ./autogen.sh
55
67
  ./configure $config_prefix
56
68
  make -j$(nproc)
57
- sudo make -j$(nproc) install
69
+ $SUDO_INSTALL make -j$(nproc) install
58
70
 
59
71
  cd ../..
60
72
  # opensta
@@ -67,6 +79,6 @@ mkdir -p build
67
79
  cd build
68
80
  cmake .. $cmake_args
69
81
  make -j$(nproc)
70
- sudo make install
82
+ $SUDO_INSTALL make install
71
83
 
72
84
  cd -
@@ -1,6 +1,6 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
@@ -14,17 +14,24 @@ python3 -m venv .slang --clear
14
14
  . .slang/bin/activate
15
15
  python3 -m pip install cmake==3.31.6
16
16
 
17
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
18
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
19
+ SUDO_INSTALL="sudo -E PATH=$PATH"
20
+ else
21
+ SUDO_INSTALL=""
22
+ fi
23
+
17
24
  git clone $(python3 ${src_path}/_tools.py --tool slang --field git-url) slang
18
25
  cd slang
19
26
  git checkout $(python3 ${src_path}/_tools.py --tool slang --field git-commit)
20
27
 
21
28
  cfg_args=""
22
29
  if [ ! -z ${PREFIX} ]; then
23
- cfg_args="--prefix=$PREFIX"
30
+ cfg_args="-D CMAKE_INSTALL_PREFIX=$PREFIX"
24
31
  fi
25
32
 
26
- cmake -B build
33
+ cmake -B build $cfg_args
27
34
  cmake --build build -j$(nproc)
28
- cmake --install build --strip $cfg_args
35
+ $SUDO_INSTALL make -C build install
29
36
 
30
37
  cd -
@@ -1,6 +1,6 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  sudo apt-get install -y munge libmunge-dev build-essential libmariadb-dev lbzip2 libjson-c-dev
6
6
  sudo apt-get install -y libdbus-1-dev
@@ -8,6 +8,13 @@ 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
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
12
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
13
+ SUDO_INSTALL=sudo
14
+ else
15
+ SUDO_INSTALL=""
16
+ fi
17
+
11
18
  sudo apt-get install -y wget
12
19
 
13
20
  mkdir -p deps
@@ -31,4 +38,4 @@ fi
31
38
 
32
39
  make -j$(nproc)
33
40
 
34
- sudo make install
41
+ $SUDO_INSTALL make install
@@ -1,6 +1,6 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
@@ -28,6 +28,14 @@ git checkout $(python3 ${src_path}/_tools.py --tool surelog --field git-commit)
28
28
  git submodule update --init --recursive
29
29
 
30
30
  make -j$(nproc)
31
- sudo -E PATH="$PATH" make install
31
+
32
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
33
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
34
+ SUDO_INSTALL="sudo -E PATH=$PATH"
35
+ else
36
+ SUDO_INSTALL=""
37
+ fi
38
+
39
+ $SUDO_INSTALL make install
32
40
 
33
41
  cd -
@@ -1,6 +1,6 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
@@ -16,7 +16,14 @@ if [ ! -z ${PREFIX} ]; then
16
16
  export PATH="$PREFIX:$PATH"
17
17
  fi
18
18
 
19
- curl -sSL https://get.haskellstack.org/ | sh -s - -f $haskell_args
19
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
20
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
21
+ SUDO_INSTALL="sudo -E PATH=$PATH"
22
+ else
23
+ SUDO_INSTALL=""
24
+ fi
25
+
26
+ curl -sSL https://get.haskellstack.org/ | $SUDO_INSTALL sh -s - -f $haskell_args
20
27
 
21
28
  git clone $(python3 ${src_path}/_tools.py --tool sv2v --field git-url) sv2v
22
29
  cd sv2v
@@ -25,8 +32,8 @@ git checkout $(python3 ${src_path}/_tools.py --tool sv2v --field git-commit)
25
32
  make -j$(nproc)
26
33
 
27
34
  if [ ! -z ${PREFIX} ]; then
28
- sudo mkdir -p ${PREFIX}/bin/
29
- sudo cp bin/* ${PREFIX}/bin/
35
+ $SUDO_INSTALL mkdir -p ${PREFIX}/bin/
36
+ $SUDO_INSTALL cp bin/* ${PREFIX}/bin/
30
37
  fi
31
38
 
32
39
  cd -
@@ -1,10 +1,17 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y wget
9
16
 
10
17
  mkdir -p deps
@@ -19,8 +26,9 @@ tar xzf $filename
19
26
 
20
27
  if [ -z ${PREFIX} ]; then
21
28
  PREFIX=/opt/verible
22
- sudo mkdir -p $PREFIX
29
+ SUDO_INSTALL=sudo
30
+ $SUDO_INSTALL mkdir -p $PREFIX
23
31
  echo "Please add \"export PATH="/opt/verible/bin:\$PATH"\" to your .bashrc"
24
32
  fi
25
33
 
26
- sudo mv verible-$version/* $PREFIX
34
+ $SUDO_INSTALL mv verible-$version/* $PREFIX
@@ -1,10 +1,17 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y git perl python3 make autoconf g++ flex bison ccache
9
16
  sudo apt-get install -y libgoogle-perftools-dev numactl perl-doc help2man
10
17
  sudo apt-get install -y libfl2
@@ -31,6 +38,6 @@ fi
31
38
 
32
39
  ./configure $args
33
40
  make -j$(nproc)
34
- sudo make install
41
+ $SUDO_INSTALL make install
35
42
 
36
43
  cd -
@@ -1,10 +1,17 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y git wget
9
16
 
10
17
  mkdir -p deps
@@ -24,4 +31,4 @@ fi
24
31
 
25
32
  make CMAKE_PARAMS="$args -DWITH_PARMYS=OFF -DWITH_ABC=OFF -DYOSYS_F4PGA_PLUGINS=OFF" -j$(nproc)
26
33
  cd build
27
- sudo make install
34
+ $SUDO_INSTALL make install
@@ -1,6 +1,6 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
@@ -15,6 +15,7 @@ cd deps
15
15
  if [ -z ${PREFIX} ]; then
16
16
  PREFIX=~/.local
17
17
  fi
18
+ export PATH="$PREFIX/bin:$PATH"
18
19
 
19
20
  # Download XDM
20
21
  git clone $(python3 ${src_path}/_tools.py --tool xdm --field git-url) xdm
@@ -29,6 +30,13 @@ python3 -m venv venv
29
30
  python3 -m pip install --upgrade pip
30
31
  python3 -m pip install PyInstaller
31
32
 
33
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
34
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
35
+ SUDO_INSTALL="sudo -E PATH=$PATH"
36
+ else
37
+ SUDO_INSTALL=""
38
+ fi
39
+
32
40
  args=
33
41
  if [ ! -z ${PREFIX} ]; then
34
42
  args="-DCMAKE_INSTALL_PREFIX=$PREFIX"
@@ -37,6 +45,6 @@ fi
37
45
  cmake .. $args
38
46
  make -j$(nproc)
39
47
 
40
- sudo make install
48
+ $SUDO_INSTALL make install
41
49
 
42
50
  cd -
@@ -1,6 +1,6 @@
1
1
  #!/bin/sh
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
@@ -24,6 +24,13 @@ python3 -m venv .xyce --clear
24
24
  . .xyce/bin/activate
25
25
  python3 -m pip install cmake>=3.23.0
26
26
 
27
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
28
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
29
+ SUDO_INSTALL="sudo -E PATH=$PATH"
30
+ else
31
+ SUDO_INSTALL=""
32
+ fi
33
+
27
34
  # Download Trilinos.
28
35
  ## Version specified in: https://github.com/Xyce/Xyce/blob/master/INSTALL.md#building-trilinos
29
36
  trilinos_version=14-4-0
@@ -32,12 +39,9 @@ mkdir -p trilinos
32
39
  tar --strip-components=1 -xf trilinos.tar.gz -C trilinos
33
40
 
34
41
  # Download Xyce.
35
- xyce_version=$(python3 ${src_path}/_tools.py --tool xyce --field version)
36
- wget https://xyce.sandia.gov/files/xyce/Xyce-${xyce_version}.tar.gz --no-verbose -O xyce.tar.gz
37
- mkdir -p xyce
38
- tar --strip-components=1 -xf xyce.tar.gz -C xyce
39
-
42
+ git clone $(python3 ${src_path}/_tools.py --tool xyce --field git-url) xyce
40
43
  cd xyce
44
+ git checkout $(python3 ${src_path}/_tools.py --tool xyce --field git-commit)
41
45
 
42
46
  # Build Trilinos
43
47
  mkdir trilinos-build
@@ -48,7 +52,8 @@ cmake \
48
52
  -D TPL_AMD_INCLUDE_DIRS="/usr/include/suitesparse" \
49
53
  -C ../cmake/trilinos/trilinos-base.cmake \
50
54
  ../../trilinos
51
- cmake --build . -j$(nproc) -t install
55
+ cmake --build . -j$(nproc)
56
+ $SUDO_INSTALL make install
52
57
 
53
58
  cd ..
54
59
 
@@ -64,4 +69,4 @@ cmake \
64
69
 
65
70
  cmake --build . -j$(nproc)
66
71
  cmake --build . -j$(nproc) --target xycecinterface
67
- sudo -E PATH="$PATH" make install
72
+ $SUDO_INSTALL make install
@@ -1,10 +1,17 @@
1
1
  #!/bin/bash
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y git
9
16
 
10
17
  mkdir -p deps
@@ -15,5 +22,5 @@ cd yosys-moosic
15
22
  git checkout $(python3 ${src_path}/_tools.py --tool yosys-moosic --field git-commit)
16
23
 
17
24
  make -j$(nproc)
18
- sudo PATH="$PATH" make install
25
+ $SUDO_INSTALL make install
19
26
  cd -
@@ -1,10 +1,17 @@
1
1
  #!/bin/bash
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  sudo apt-get install -y git
9
16
 
10
17
  mkdir -p deps
@@ -56,6 +63,6 @@ YOSYS_PLUGIN=$(yosys-config --datdir)/plugins/
56
63
  cd parmys
57
64
 
58
65
  make -j$(nproc)
59
- sudo mkdir -p $YOSYS_PLUGIN
60
- sudo cp parmys-plugin/build/parmys.so $YOSYS_PLUGIN
66
+ $SUDO_INSTALL mkdir -p $YOSYS_PLUGIN
67
+ $SUDO_INSTALL cp parmys-plugin/build/parmys.so $YOSYS_PLUGIN
61
68
  cd -
@@ -1,6 +1,6 @@
1
1
  #!/bin/bash
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
@@ -20,5 +20,13 @@ git checkout $(python3 ${src_path}/_tools.py --tool yosys-slang --field git-comm
20
20
  git submodule update --init --recursive
21
21
 
22
22
  make -j$(nproc)
23
- sudo PATH="$PATH" make install
23
+
24
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
25
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
26
+ SUDO_INSTALL="sudo -E PATH=$PATH"
27
+ else
28
+ SUDO_INSTALL=""
29
+ fi
30
+
31
+ $SUDO_INSTALL make install
24
32
  cd -
@@ -1,10 +1,17 @@
1
1
  #!/bin/bash
2
2
 
3
- set -e
3
+ set -ex
4
4
 
5
5
  # Get directory of script
6
6
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
7
7
 
8
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
9
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
10
+ SUDO_INSTALL=sudo
11
+ else
12
+ SUDO_INSTALL=""
13
+ fi
14
+
8
15
  # From: https://github.com/YosysHQ/yosys/blob/f2c689403ace0637b7455bac8f1e8d4bc312e74f/README.md
9
16
  sudo apt-get install -y build-essential clang bison flex \
10
17
  libreadline-dev gawk tcl-dev libffi-dev git \
@@ -22,5 +29,5 @@ git checkout $(python3 ${src_path}/_tools.py --tool yosys --field git-commit)
22
29
  git submodule update --init --recursive
23
30
 
24
31
  make -j$(nproc) PREFIX="$PREFIX"
25
- sudo make install PREFIX="$PREFIX"
32
+ $SUDO_INSTALL make install PREFIX="$PREFIX"
26
33
  cd -