-
Notifications
You must be signed in to change notification settings - Fork 5
/
install_yosys.sh
executable file
·65 lines (52 loc) · 3.04 KB
/
install_yosys.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#!/bin/bash
#"***************************************************************************************************"
# common initialization
#"***************************************************************************************************"
THIS_CHECKOUT=master
THIS_CLEAN=true
# 93ef516d919
# af7b7b6dc18919 interesting error
# perform some version control checks on this file
./gitcheck.sh $0
# initialize some environment variables and perform some sanity checks
. ./init.sh
# we don't want tee to capture exit codes
set -o pipefail
#"***************************************************************************************************"
# fetch and install yoysys
#"***************************************************************************************************"
if [ "$APTGET" == 1 ]; then
sudo apt-get install build-essential clang bison flex \
libreadline-dev gawk tcl-dev libffi-dev git \
graphviz xdot pkg-config python3 libboost-system-dev \
libboost-python-dev libboost-filesystem-dev zlib1g-dev --assume-yes 2>&1 | tee -a "$THIS_LOG"
fi
pushd .
cd $WORKSPACE
echo "***************************************************************************************************"
echo " yosys. Saving log to $THIS_LOG"
echo "***************************************************************************************************"
$SAVED_CURRENT_PATH/fetch_github.sh https://github.com/cliffordwolf/yosys.git yosys $THIS_CHECKOUT 2>&1 | tee -a "$THIS_LOG"
$SAVED_CURRENT_PATH/check_for_error.sh $? "$THIS_LOG"
cd "$WORKSPACE"/yosys
# optional clean
if [ "$THIS_CLEAN" == "true" ]; then
echo "" 2>&1 | tee -a "$THIS_LOG"
echo "make clean" 2>&1 | tee -a "$THIS_LOG"
make clean 2>&1 | tee -a "$THIS_LOG"
$SAVED_CURRENT_PATH/check_for_error.sh $? "$THIS_LOG"
fi
echo "" 2>&1 | tee -a "$THIS_LOG"
echo "make" 2>&1 | tee -a "$THIS_LOG"
make -j$(nproc) 2>&1 | tee -a "$THIS_LOG"
$SAVED_CURRENT_PATH/check_for_error.sh $? "$THIS_LOG"
echo "" 2>&1 | tee -a "$THIS_LOG"
echo "sudo make install" 2>&1 | tee -a "$THIS_LOG"
sudo make install 2>&1 | tee -a "$THIS_LOG"
$SAVED_CURRENT_PATH/check_for_error.sh $? "$THIS_LOG"
echo "" | tee -a "$THIS_LOG"
yosys --version | tee -a "$THIS_LOG"
echo "" | tee -a "$THIS_LOG"
popd
echo "Completed $0 " | tee -a "$THIS_LOG"
echo "----------------------------------"