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,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,6 +19,13 @@ 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"
@@ -29,7 +40,7 @@ mkdir build
29
40
  cd build
30
41
  cmake $cmake_args ..
31
42
  make -j$(nproc)
32
- sudo make install
43
+ $SUDO_INSTALL make install
33
44
 
34
45
  cd ../../..
35
46
  # cudd
@@ -40,7 +51,7 @@ cd cudd
40
51
  autoreconf
41
52
  ./configure $config_prefix
42
53
  make -j$(nproc)
43
- sudo make install
54
+ $SUDO_INSTALL make install
44
55
 
45
56
  cd ../..
46
57
  #swig
@@ -54,7 +65,7 @@ wget https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.42/pcre2-1
54
65
  ./autogen.sh
55
66
  ./configure $config_prefix
56
67
  make -j$(nproc)
57
- sudo make -j$(nproc) install
68
+ $SUDO_INSTALL make -j$(nproc) install
58
69
 
59
70
  cd ../..
60
71
  # opensta
@@ -67,6 +78,6 @@ mkdir -p build
67
78
  cd build
68
79
  cmake .. $cmake_args
69
80
  make -j$(nproc)
70
- sudo make install
81
+ $SUDO_INSTALL make install
71
82
 
72
83
  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,6 +14,13 @@ 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
  if [ ! -z ${SC_BUILD} ]; then
18
25
  # Limit this to CI builds
19
26
  sudo add-apt-repository ppa:ubuntu-toolchain-r/test
@@ -30,11 +37,11 @@ git checkout $(python3 ${src_path}/_tools.py --tool slang --field git-commit)
30
37
 
31
38
  cfg_args=""
32
39
  if [ ! -z ${PREFIX} ]; then
33
- cfg_args="--prefix=$PREFIX"
40
+ cfg_args="-D CMAKE_INSTALL_PREFIX=$PREFIX"
34
41
  fi
35
42
 
36
- cmake -B build
43
+ cmake -B build $cfg_args
37
44
  cmake --build build -j$(nproc)
38
- cmake --install build --strip $cfg_args
45
+ $SUDO_INSTALL make -C build install
39
46
 
40
47
  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
@@ -10,6 +10,13 @@ sudo apt-get install -y wget
10
10
  # Get directory of script
11
11
  src_path=$(cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P)/..
12
12
 
13
+ USE_SUDO_INSTALL="${USE_SUDO_INSTALL:-yes}"
14
+ if [ "${USE_SUDO_INSTALL:-yes}" = "yes" ]; then
15
+ SUDO_INSTALL=sudo
16
+ else
17
+ SUDO_INSTALL=""
18
+ fi
19
+
13
20
  mkdir -p deps
14
21
  cd deps
15
22
 
@@ -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,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
  mkdir -p deps
9
16
  cd deps
10
17
 
@@ -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
  # 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 -
@@ -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 autoconf autoconf-archive automake libtool \
9
16
  libbdd-dev libboost-all-dev libmpc-dev libmpfr-dev \
10
17
  libxml2-dev liblzma-dev libmpfi-dev zlib1g-dev libicu-dev bison doxygen flex \
@@ -30,6 +37,7 @@ if [ ! -z ${PREFIX} ]; then
30
37
  args=--prefix="$PREFIX"
31
38
  else
32
39
  args=--prefix=/opt/panda
40
+ SUDO_INSTALL=sudo
33
41
 
34
42
  sudo mkdir -p /opt/panda
35
43
  sudo chown $USER:$USER /opt/panda
@@ -42,7 +50,7 @@ cd obj
42
50
 
43
51
  ../configure --enable-release --disable-flopoco --with-opt-level=2 $args
44
52
  make -j$(nproc)
45
- make install
53
+ $SUDO_INSTALL make install
46
54
 
47
55
  cd -
48
56
 
@@ -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 tcl-dev build-essential pkg-config \
9
16
  autoconf gperf flex bison
10
17
 
@@ -46,8 +53,8 @@ make -j$(nproc) install-src
46
53
 
47
54
  if [ -z ${PREFIX} ]; then
48
55
  # install
49
- sudo mkdir -p /opt/tools/bsc
50
- sudo chown $USER:$USER /opt/tools/bsc
56
+ $SUDO_INSTALL mkdir -p /opt/tools/bsc
57
+ $SUDO_INSTALL chown $USER:$USER /opt/tools/bsc
51
58
 
52
59
  BSC_VERSION=$(echo 'puts [lindex [Bluetcl::version] 0]' | inst/bin/bluetcl)
53
60
  mv inst /opt/tools/bsc/bsc-${BSC_VERSION}
@@ -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,7 +26,7 @@ if [ ! -z ${PREFIX} ]; then
19
26
  args="-C $PREFIX --strip-components 1"
20
27
  fi
21
28
 
22
- tar xvf sbt.tgz $args
29
+ $SUDO_INSTALL tar xvf sbt.tgz $args
23
30
 
24
31
  cd -
25
32
 
@@ -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 llvm-dev clang gnat libgnat-9 libz-dev
9
16
 
10
17
  sudo apt-get install -y git build-essential
@@ -23,5 +30,5 @@ fi
23
30
 
24
31
  ./configure --with-llvm-config $args
25
32
  make -j$(nproc)
26
- sudo make install
33
+ $SUDO_INSTALL make install
27
34
  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 gperf libgtk-3-dev \
9
16
  libbz2-dev libjudy-dev liblzma-dev tcl-dev tk-dev
10
17
 
@@ -27,4 +34,4 @@ cd gtkwave3-gtk3
27
34
  ./autogen.sh
28
35
  ./configure --enable-gtk3 $args
29
36
  make -j$(nproc)
30
- sudo make install
37
+ $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 bison flex gperf libreadline-dev libncurses-dev
9
16
 
10
17
  sudo apt-get install -y git automake autoconf
@@ -24,4 +31,4 @@ fi
24
31
  sh autoconf.sh
25
32
  ./configure $args
26
33
  make -j$(nproc)
27
- sudo make install
34
+ $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 lsb-core
9
16
 
10
17
  mkdir -p deps
@@ -28,4 +35,8 @@ wget -O klayout.deb $url
28
35
  # Install package
29
36
  sudo apt-get install -y ./klayout.deb
30
37
 
38
+ if [ ! -z ${SC_PREFIX+x} ]; then
39
+ sudo cp ./klayout.deb "${SC_PREFIX}/"
40
+ fi
41
+
31
42
  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
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