-
Notifications
You must be signed in to change notification settings - Fork 38
/
install_icsc.sh
executable file
·59 lines (47 loc) · 2.26 KB
/
install_icsc.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
#!/bin/bash -e
#********************************************************************************
# Copyright (c) 2020-2024, Intel Corporation. All rights reserved. #
# #
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception. #
# #
#********************************************************************************
#################################################################################
# This bash builds and installs ICSC in Release and Debug configuration #
# It indendent to be used after pull new version of ICSC #
#################################################################################
test -z $ICSC_HOME && { echo "ICSC_HOME is not configured"; exit 1; }
echo "Using ICSC_HOME = $ICSC_HOME"
export CWD_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
echo $CWD_DIR
export CMAKE_PREFIX_PATH=$ICSC_HOME:$CMAKE_PREFIX_PATH
export GCC_INSTALL_PREFIX="$(realpath "$(dirname $(which g++))"/..)"
# ################################################################################
# Build and install ISCC
echo "*** ISCC Build and Installation ... ***"
cd $CWD_DIR
(
mkdir build_icsc_rel -p && cd build_icsc_rel
cmake ../ -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$ICSC_HOME \
-DCMAKE_CXX_STANDARD=17
make -j12
make install
cd ..
mkdir build_icsc_dbg -p && cd build_icsc_dbg
cmake ../ -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=$ICSC_HOME \
-DCMAKE_CXX_STANDARD=17 -DCMAKE_DEBUG_POSTFIX=d
make -j12
make install
)
echo "*** ISCC Build and Installation Complete! ***"
# ################################################################################
# Build and run examples
echo "*** Building Examples ***"
cd $ICSC_HOME
(
source setenv.sh
mkdir build -p && cd build
cmake ../ # prepare Makefiles
cd designs/examples # run examples only
ctest -j12 # compile and run Verilog generation
# use "-jN" key to run in "N" processes
)