-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathbuild_visualizer.sh
More file actions
54 lines (38 loc) · 1.6 KB
/
Copy pathbuild_visualizer.sh
File metadata and controls
54 lines (38 loc) · 1.6 KB
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
#!/usr/bin/env bash
#----------------------------------------------------------------------------
#- This script compiles the dynamatic visualizer
#----------------------------------------------------------------------------
# this script should be called from dynamatic's source directory
SCRIPT_CWD="$PWD"
[ -d "./polygeist" ] || { echo "this directory doesn\'t look like dynamatic!" && exit 1; }
# These paths are hardcoded! Sorry!
CMAKE=cmake
POLYGEIST_DIR_PREFIX="/opt/polygeist"
GODOT_PATH="/usr/local/bin/Godot_v4.2.1-stable_linux.x86_64"
GODOT_EXPORT_TEMPLATE_PATH="/usr/local/share/godot/export_templates"
LLVM_PREFIX="$POLYGEIST_DIR_PREFIX/llvm-project"
C_COMPILER="clang"
CXX_COMPILER="clang++"
CMAKE_FLAGS_SUPER="\
-DCMAKE_C_COMPILER=$C_COMPILER \
-DCMAKE_CXX_COMPILER=$CXX_COMPILER \
-DLLVM_ENABLE_LLD=ON \
"
cd "$SCRIPT_CWD/visual-dataflow"
[ -d "./godot-cpp" ] || { echo "this directory doesn\'t look like visual-dataflow!" && exit 1; }
cd "$SCRIPT_CWD/visual-dataflow" && mkdir -p build && cd build
$CMAKE -G Ninja .. \
-DMLIR_DIR=$LLVM_PREFIX/build/lib/cmake/mlir \
-DLLVM_DIR=$LLVM_PREFIX/build/lib/cmake/llvm \
-DCLANG_DIR=$LLVM_PREFIX/build/lib/cmake/clang \
-DLLVM_TARGETS_TO_BUILD="host" \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
$CMAKE_FLAGS_SUPER
ninja
cd "$SCRIPT_CWD/visual-dataflow"
mkdir -p "$HOME/.local/share/godot"
ln -sf $GODOT_EXPORT_TEMPLATE_PATH "$HOME/.local/share/godot"
"$GODOT_PATH" --headless --export-debug "Linux/X11" visual-dataflow
cd "$SCRIPT_CWD"
ln -f --symbolic $SCRIPT_CWD/visual-dataflow/visual-dataflow ./bin/visual-dataflow