8738fe3c565664cd2629ed8e044ce7dc826e3cab
2 # This scripts performs all steps necessary to build Nucleus master apps
4 # Check if the user wants to clean everything
5 if [ "$1" == "-c" ]; then
6 make clean
8 make -f libs/system/zc702evk/linux/make clean
10 cd apps
12 make OS=nucleus PLAT=zc702evk ROLE=remote clean
14 make OS=baremetal PLAT=zc702evk ROLE=remote clean
16 make OS=nucleus PLAT=zc702evk ROLE=master clean
18 make OS=baremetal PLAT=zc702evk ROLE=master clean
20 make cleanbenchmark OS=nucleus PLAT=zc702evk ROLE=master
22 make clean_linux_remote OS=nucleus PLAT=zc702evk ROLE=master
24 make clean_linux_remote OS=baremetal PLAT=zc702evk ROLE=master
26 make clean_linux_remote_benchmark OS=nucleus PLAT=zc702evk ROLE=master
28 cd firmware
30 find . -name "firmware" -delete
32 cd ../..
34 elif [ "$1" == "-p" ]; then
36 # Build OPENAMP library for Nucleus master with benchmarking enabled
38 make clean
40 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41 echo Building open AMP components..
42 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
44 make OS=nucleus PLAT=zc702evk ROLE=remote
46 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
47 echo Build remote Nucleus applications
48 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
50 cd apps
52 echo ~~~~~~~~~~~~~~~~~~~~~~~
53 echo Cleaning applications..
54 echo ~~~~~~~~~~~~~~~~~~~~~~~
56 make OS=nucleus PLAT=zc702evk ROLE=remote clean
58 echo ~~~~~~~~~~~~~~~~~~~~~~~
59 echo Building applications..
60 echo ~~~~~~~~~~~~~~~~~~~~~~~
62 make OS=nucleus PLAT=zc702evk ROLE=remote
64 cd ..
66 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
67 echo Build OPENAMP library for remote baremetal
68 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
70 make clean
72 make OS=baremetal PLAT=zc702evk ROLE=remote
74 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
75 echo Build remote baremetal applications
76 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
78 cd apps
80 make OS=baremetal PLAT=zc702evk ROLE=remote clean
82 make OS=baremetal PLAT=zc702evk ROLE=remote
84 cd ..
86 make clean
88 make OS=nucleus PLAT=zc702evk ROLE=master BENCHMARK=1
90 # Build nucleus master benchmark
91 cd apps
93 make cleanbenchmark OS=nucleus PLAT=zc702evk ROLE=master
95 make benchmark OS=nucleus PLAT=zc702evk ROLE=master
97 cd ..
99 make -f libs/system/zc702evk/linux/make clean
101 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
102 echo Building Linux Bootstrap
103 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
105 make -f libs/system/zc702evk/linux/make
107 make clean
109 make OS=nucleus PLAT=zc702evk ROLE=master BENCHMARK=1 LINUXREMOTE=1
111 # Build nucleus master benchmark
112 cd apps
114 make clean_linux_remote_benchmark OS=nucleus PLAT=zc702evk ROLE=master
116 make linux_remote_benchmark OS=nucleus PLAT=zc702evk ROLE=master
118 cd ..
120 else
121 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
122 echo Build OPENAMP library for remote Nucleus
123 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
125 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
126 echo Cleaning open AMP components..
127 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
129 make clean
131 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
132 echo Building open AMP components..
133 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
135 make OS=nucleus PLAT=zc702evk ROLE=remote
137 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
138 echo Build remote Nucleus applications
139 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
141 cd apps
143 echo ~~~~~~~~~~~~~~~~~~~~~~~
144 echo Cleaning applications..
145 echo ~~~~~~~~~~~~~~~~~~~~~~~
147 make OS=nucleus PLAT=zc702evk ROLE=remote clean
149 echo ~~~~~~~~~~~~~~~~~~~~~~~
150 echo Building applications..
151 echo ~~~~~~~~~~~~~~~~~~~~~~~
153 make OS=nucleus PLAT=zc702evk ROLE=remote
155 cd ..
157 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
158 echo Build OPENAMP library for remote baremetal
159 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
161 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
162 echo Cleaning open AMP components..
163 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
165 make clean
167 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
168 echo Building open AMP components..
169 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
171 make OS=baremetal PLAT=zc702evk ROLE=remote
173 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
174 echo Build remote baremetal applications
175 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
177 cd apps
179 echo ~~~~~~~~~~~~~~~~~~~~~~~
180 echo Cleaning applications..
181 echo ~~~~~~~~~~~~~~~~~~~~~~~
183 make OS=baremetal PLAT=zc702evk ROLE=remote clean
185 echo ~~~~~~~~~~~~~~~~~~~~~~~
186 echo Building applications..
187 echo ~~~~~~~~~~~~~~~~~~~~~~~
189 make OS=baremetal PLAT=zc702evk ROLE=remote
191 cd ..
193 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
194 echo Cleaning Linux Bootstrap
195 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
197 make -f libs/system/zc702evk/linux/make clean
199 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
200 echo Building Linux Bootstrap
201 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
203 make -f libs/system/zc702evk/linux/make
205 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
206 echo Build OPENAMP library for master Nucleus
207 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
209 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
210 echo Cleaning open AMP components..
211 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
213 make clean
215 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
216 echo Building open AMP components..
217 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
219 make OS=nucleus PLAT=zc702evk ROLE=master
221 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
222 echo Build master nucleus applications
223 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
225 cd apps
227 echo ~~~~~~~~~~~~~~~~~~~~~~~
228 echo Cleaning applications..
229 echo ~~~~~~~~~~~~~~~~~~~~~~~
231 make OS=nucleus PLAT=zc702evk ROLE=master clean
233 echo ~~~~~~~~~~~~~~~~~~~~~~~
234 echo Building applications..
235 echo ~~~~~~~~~~~~~~~~~~~~~~~
237 make OS=nucleus PLAT=zc702evk ROLE=master
239 cd ..
242 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
243 echo Build OPENAMP library for master Nucleus and remote Linux
244 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
245 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
246 echo Cleaning open AMP components..
247 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
248 make clean
250 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
251 echo Building open AMP components..
252 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
253 make OS=nucleus PLAT=zc702evk ROLE=master LINUXREMOTE=1
255 # Build nucleus master with linux remote
256 cd apps
258 echo ~~~~~~~~~~~~~~~~~~~~~~~
259 echo Cleaning applications..
260 echo ~~~~~~~~~~~~~~~~~~~~~~~
262 make clean_linux_remote OS=nucleus PLAT=zc702evk ROLE=master
265 echo ~~~~~~~~~~~~~~~~~~~~~~~
266 echo Building applications..
267 echo ~~~~~~~~~~~~~~~~~~~~~~~
268 make linux_remote OS=nucleus PLAT=zc702evk ROLE=master
270 cd ..
273 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
274 echo Build OPENAMP library for master baremetal and remote Linux
275 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
276 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
277 echo Cleaning open AMP components..
278 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
279 make clean
281 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
282 echo Building open AMP components..
283 echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
284 make OS=baremetal PLAT=zc702evk ROLE=master LINUXREMOTE=1
286 # Build nucleus master with linux remote
287 cd apps
289 echo ~~~~~~~~~~~~~~~~~~~~~~~
290 echo Cleaning applications..
291 echo ~~~~~~~~~~~~~~~~~~~~~~~
293 make clean_linux_remote OS=baremetal PLAT=zc702evk ROLE=master
296 echo ~~~~~~~~~~~~~~~~~~~~~~~
297 echo Building applications..
298 echo ~~~~~~~~~~~~~~~~~~~~~~~
299 make linux_remote OS=baremetal PLAT=zc702evk ROLE=master
301 cd ..
303 fi