Repository navigation
Expand file tree
/
Copy pathfetchAndBuild.sh
More file actions
executable file
·125 lines (112 loc) · 3.88 KB
/
Copy pathfetchAndBuild.sh
File metadata and controls
executable file
·125 lines (112 loc) · 3.88 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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
#!/bin/sh
echo "This script attempts to fetch and build DGGAL, DGG and its bindings and examples for C, C++, Python and Rust."
echo "Please make sure you have git installed to fetch the source code from the eC and DGGAL repositories."
echo "Please make sure you have zlib (dev package) installed, as well as GCC or Clang, and GNU Make."
echo "Please make sure you have GCC or Clang C++ support installed."
echo "Please make sure you have the Rust compiler (rustc) edition 2021+ installed."
echo "Please make sure you have cffi installed for Python (pip3 install cffi)."
echo ""
echo "Building in 'dgbuild' directory..."
mkdir dgbuild
cd dgbuild
echo "Fetching eC core development environment..."
git clone -b main --single-branch https://github.com/ecere/eC.git
echo "Fetching DGGAL..."
git clone -b main --single-branch https://github.com/ecere/dggal.git
echo "Building eC development environment..."
cd eC
make -j4
echo "Building DGGAL..."
cd ../dggal/
make -j4
echo ""
echo "**************************************"
echo "************ DGGAL for eC ************"
echo "**************************************"
echo "Execution test for DGG tool:"
export LD_LIBRARY_PATH=$(pwd)/../eC/obj/linux/lib/:$(pwd)/obj/release.linux:$(pwd)/obj/linux/lib
obj/release.linux/dgg ISEA3H info A4-0-A
echo "Execution test for (static) DGG tool:"
obj/static.linux/dgg ISEA3H info A4-0-A
echo ""
echo "**************************************"
echo "************ DGGAL for C *************"
echo "**************************************"
echo "Building DGGAL for C..."
cd ../eC/bindings/c
make
cd ../../../dggal/bindings/c
make
echo "Building DGGAL sample C application..."
cd ../../bindings_examples/c
make
echo "Execution test for DGGAL sample C application:"
obj/release.linux/info ISEA3H A4-0-A
echo "Building DGGAL (static) sample C application..."
make -f Makefile.static
echo "Execution test for DGGAL (static) sample C application:"
obj/static.linux/info ISEA3H A4-0-A
cd ../..
echo ""
echo "**************************************"
echo "*** DGGAL for C (function wrappers) **"
echo "**************************************"
echo "Building DGGAL for C (function wrappers)..."
cd bindings/c_fn
make
echo "Building DGGAL sample C (function wrappers) application..."
cd ../../bindings_examples/c_fn
make
echo "Execution test for DGGAL sample C (function wrappers) application:"
obj/release.linux/info ISEA3H A4-0-A
cd ../..
echo ""
echo "**************************************"
echo "************ DGGAL for C++ ***********"
echo "**************************************"
echo "Building DGGAL for C++..."
cd ../eC/bindings/cpp
make
cd ../../../dggal/bindings/cpp
make
echo "Building DGGAL sample C++ application..."
cd ../../bindings_examples/cpp
make
echo "Execution test for DGGAL sample C++ application:"
obj/release.linux/info ISEA3H A4-0-A
echo "Building DGGAL (static) sample C++ application..."
make -f Makefile.static
echo "Execution test for DGGAL (static) sample C++ application:"
obj/static.linux/info ISEA3H A4-0-A
cd ../..
echo ""
echo "**************************************"
echo "*********** DGGAL for Rust ***********"
echo "**************************************"
echo "Building DGGAL for Rust..."
cd ../eC/bindings/rust
make
cd ../../../dggal/bindings/rust
make
echo "Building DGGAL sample Rust application..."
cd ../../bindings_examples/rust
make
echo "Execution test for DGGAL sample Rust application:"
obj/linux/info ISEA3H A4-0-A
cd ../..
echo ""
echo "**************************************"
echo "********** DGGAL for Python **********"
echo "**************************************"
echo "Building DGGAL for Python..."
cd ../eC/bindings/py
python3 build_ecrt.py
cd ../../../dggal/bindings/py
python3 build_dggal.py
echo "Execution test for DGGAL sample Python application:"
export PYTHONPATH=$(pwd):$(pwd)/../../../eC/bindings/py
cd ../../bindings_examples/py/
python3 info.py
cd ../..
echo ""
echo "All done! Thank you for trying out and using DGGAL."