]> git.ipfire.org Git - people/ms/u-boot.git/blame - MAKEALL
arm: Make jadecpu board use relocation
[people/ms/u-boot.git] / MAKEALL
CommitLineData
f2352877 1#!/bin/bash
7ebf7443 2
40a28f08
PT
3# Print statistics when we exit
4trap exit 1 2 3 15
5trap print_stats 0
6
7fa6a2f3
WD
7# Determine number of CPU cores if no default was set
8: ${BUILD_NCPUS:="`getconf _NPROCESSORS_ONLN`"}
9
10if [ "$BUILD_NCPUS" -gt 1 ]
11then
55f786d8 12 JOBS="-j $((BUILD_NCPUS + 1))"
7fa6a2f3
WD
13else
14 JOBS=""
15fi
16
a8c7c708 17
7ebf7443
WD
18if [ "${CROSS_COMPILE}" ] ; then
19 MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
20else
21 MAKE=make
22fi
23
f9328639
MB
24if [ "${MAKEALL_LOGDIR}" ] ; then
25 LOG_DIR=${MAKEALL_LOGDIR}
26else
27 LOG_DIR="LOG"
28fi
887e2ec9 29
f9328639
MB
30if [ ! "${BUILD_DIR}" ] ; then
31 BUILD_DIR="."
32fi
33
4f0645eb 34[ -d ${LOG_DIR} ] || mkdir ${LOG_DIR} || exit 1
7ebf7443
WD
35
36LIST=""
37
40a28f08
PT
38# Keep track of the number of builds and errors
39ERR_CNT=0
40ERR_LIST=""
41TOTAL_CNT=0
f2352877 42RC=0
40a28f08 43
9ec49f8f
MF
44# Helper funcs for parsing boards.cfg
45boards_by_field()
46{
47 awk \
48 -v field="$1" \
49 -v select="$2" \
50 '($1 !~ /^#/ && $field == select) { print $1 }' \
51 boards.cfg
52}
53boards_by_arch() { boards_by_field 2 "$@" ; }
54boards_by_cpu() { boards_by_field 3 "$@" ; }
55
0db5bca8
WD
56#########################################################################
57## MPC5xx Systems
58#########################################################################
59
9ec49f8f 60LIST_5xx="$(boards_by_cpu mpc5xx)"
0db5bca8 61
945af8d7
WD
62#########################################################################
63## MPC5xxx Systems
64#########################################################################
65
9ec49f8f 66LIST_5xxx="$(boards_by_cpu mpc5xxx)
5c4fa9b4 67 digsy_mtc \
fb56579f
KP
68 EVAL5200 \
69 fo300 \
5b53b29b 70 galaxy5200 \
fb56579f
KP
71 icecube_5200 \
72 lite5200b \
73 mcc200 \
5e0de0e2 74 MVBC_P \
1f2463d7 75 MVSMR \
c9969947 76 pcm030 \
fb56579f
KP
77 PM520 \
78 TB5200 \
fb56579f
KP
79 Total5200 \
80 Total5200_Rev2 \
81 TQM5200 \
82 TQM5200_B \
83 TQM5200S \
945af8d7
WD
84"
85
8993e54b
RJ
86#########################################################################
87## MPC512x Systems
88#########################################################################
89
9ec49f8f 90LIST_512x="$(boards_by_cpu mpc512x)
72601d04 91 mpc5121ads \
945af8d7
WD
92"
93
7ebf7443
WD
94#########################################################################
95## MPC8xx Systems
96#########################################################################
9ec49f8f
MF
97
98LIST_8xx="$(boards_by_cpu mpc8xx)
fb56579f
KP
99 Adder87x \
100 AdderII \
101 ADS860 \
fb56579f
KP
102 FADS823 \
103 FADS850SAR \
104 FADS860T \
fb56579f
KP
105 FPS850L \
106 GEN860T \
107 GEN860T_SC \
fb56579f 108 ICU862_100MHz \
fb56579f
KP
109 IVML24 \
110 IVML24_128 \
111 IVML24_256 \
112 IVMS8 \
113 IVMS8_128 \
114 IVMS8_256 \
fb56579f
KP
115 MBX \
116 MBX860T \
fb56579f
KP
117 MPC86xADS \
118 MPC885ADS \
fb56579f
KP
119 NETPHONE \
120 NETTA \
121 NETTA2 \
122 NETTA_ISDN \
123 NETVIA \
124 NETVIA_V2 \
fb56579f 125 RPXlite_DW \
fb56579f 126 SPD823TS \
fb56579f 127 SXNI855T \
efc6f447 128 TK885D \
fb56579f
KP
129 TQM823L \
130 TQM823L_LCD \
131 TQM850L \
132 TQM855L \
133 TQM860L \
134 TQM885D \
fb56579f 135 v37 \
7ebf7443
WD
136"
137
138#########################################################################
139## PPC4xx Systems
140#########################################################################
141
9ec49f8f 142LIST_4xx="$(boards_by_cpu ppc4xx)
fb56579f 143 acadia_nand \
f09f09d3 144 arches \
fb56579f 145 bamboo_nand \
c813f1f8 146 canyonlands \
71665ebf 147 canyonlands_nand \
fb56579f
KP
148 CPCI405 \
149 CPCI4052 \
150 CPCI405AB \
151 CPCI405DT \
ab4c62c1 152 devconcenter \
5deb8022 153 fx12mm \
4c9e8557 154 glacier \
353f2688 155 haleakala \
3d6cb3b2 156 haleakala_nand \
3b3bff4c
SR
157 hcu4 \
158 hcu5 \
4c188367 159 intip \
566806ca 160 kilauea \
3d6cb3b2 161 kilauea_nand \
b05f3543 162 mcu25 \
fb56579f 163 MIP405T \
086511fc 164 ml507 \
01a00431 165 ml507_flash \
fb56579f
KP
166 OCRTC \
167 ORSG \
fb56579f 168 PPChameleonEVB \
6da0c5bd 169 rainier \
fb56579f
KP
170 sequoia \
171 sequoia_nand \
e07f4a80
RR
172 v5fx30teval \
173 v5fx30teval_flash \
fb56579f
KP
174 W7OLMC \
175 W7OLMG \
176 walnut \
e07f4a80
RR
177 xilinx-ppc440-generic \
178 xilinx-ppc440-generic_flash \
fb56579f
KP
179 yellowstone \
180 yosemite \
7ebf7443
WD
181"
182
983fda83
WD
183#########################################################################
184## MPC8220 Systems
185#########################################################################
186
9ec49f8f 187LIST_8220="$(boards_by_cpu mpc8220)"
983fda83 188
7ebf7443
WD
189#########################################################################
190## MPC824x Systems
191#########################################################################
192
9ec49f8f 193LIST_824x="$(boards_by_cpu mpc824x)
fb56579f 194 CPC45 \
fb56579f 195 eXalion \
3c1d8954 196 IDS8247 \
61525f2f 197 linkstation_HGLAN \
fb56579f
KP
198 Sandpoint8240 \
199 Sandpoint8245 \
7ebf7443 200"
592c5cab 201
7ebf7443 202#########################################################################
7aa78614 203## MPC8260 Systems (includes 8250, 8255 etc.)
7ebf7443
WD
204#########################################################################
205
9ec49f8f 206LIST_8260="$(boards_by_cpu mpc8260)
fb56579f
KP
207 cogent_mpc8260 \
208 CPU86 \
209 CPU87 \
210 ep8248 \
fb56579f
KP
211 ISPAN \
212 MPC8260ADS \
fb56579f
KP
213 MPC8272ADS \
214 PM826 \
215 PM828 \
fb56579f 216 Rattler8248 \
fb56579f
KP
217 TQM8260_AC \
218 TQM8260_AD \
219 TQM8260_AE \
7ebf7443
WD
220"
221
f046ccd1
EL
222#########################################################################
223## MPC83xx Systems (includes 8349, etc.)
224#########################################################################
225
9ec49f8f 226LIST_83xx="$(boards_by_cpu mpc83xx)
1dee9be6 227 caddy2 \
fb56579f 228 MPC8313ERDB_33 \
64ac1eb5 229 MPC8313ERDB_NAND_66 \
8bd522ce 230 MPC8315ERDB \
2e95004d 231 MPC8315ERDB_NAND \
fb56579f 232 MPC832XEMDS \
281df457 233 MPC832XEMDS_ATM \
fb56579f
KP
234 MPC8349ITX \
235 MPC8349ITXGP \
236 MPC8360EMDS \
281df457 237 MPC8360EMDS_ATM \
fab6f556
AV
238 MPC8360ERDK_33 \
239 MPC8360ERDK_66 \
b21add4b 240 MPC837XEMDS \
fb56579f 241 sbc8349 \
5bb907a4 242 SIMPC8313_LP \
c2e49f70 243 vme8349 \
f046ccd1
EL
244"
245
246
42d1f039
WD
247#########################################################################
248## MPC85xx Systems (includes 8540, 8560 etc.)
249#########################################################################
250
9ec49f8f 251LIST_85xx="$(boards_by_cpu mpc85xx)
9490a7f1 252 MPC8536DS \
9a1a0aed 253 MPC8536DS_NAND \
e40ac487
MH
254 MPC8536DS_SDCARD \
255 MPC8536DS_SPIFLASH \
7030d56b 256 MPC8536DS_36BIT \
fb56579f
KP
257 MPC8540EVAL \
258 MPC8541CDS \
fb56579f
KP
259 MPC8548CDS \
260 MPC8555CDS \
765547dc 261 MPC8569MDS \
c95d541e 262 MPC8569MDS_ATM \
674ef7bd 263 MPC8569MDS_NAND \
129ba616 264 MPC8572DS \
18af1c5f 265 MPC8572DS_36BIT \
feb7838f
SS
266 P2020DS \
267 P2020DS_36BIT \
c17b79fb 268 P1011RDB \
f7780ec9 269 P1011RDB_NAND \
fad15096
DD
270 P1011RDB_SDCARD \
271 P1011RDB_SPIFLASH \
bf488bc0 272 P1020RDB \
f7780ec9 273 P1020RDB_NAND \
fad15096
DD
274 P1020RDB_SDCARD \
275 P1020RDB_SPIFLASH \
c17b79fb 276 P2010RDB \
f7780ec9 277 P2010RDB_NAND \
fad15096
DD
278 P2010RDB_SDCARD \
279 P2010RDB_SPIFLASH \
728ece34 280 P2020RDB \
f7780ec9 281 P2020RDB_NAND \
fad15096
DD
282 P2020RDB_SDCARD \
283 P2020RDB_SPIFLASH \
fb56579f 284 sbc8540 \
11c45ebd 285 sbc8548 \
2738bc8d
PG
286 sbc8548_PCI_33 \
287 sbc8548_PCI_66 \
288 sbc8548_PCI_33_PCIE \
289 sbc8548_PCI_66_PCIE \
fb56579f 290 sbc8560 \
fb56579f
KP
291 stxssa \
292 TQM8540 \
293 TQM8541 \
1287e0c5 294 TQM8548 \
a865bcda 295 TQM8548_AG \
ad7ee5d4 296 TQM8548_BE \
fb56579f
KP
297 TQM8555 \
298 TQM8560 \
42d1f039
WD
299"
300
822d5536
JL
301#########################################################################
302## MPC86xx Systems
303#########################################################################
304
9ec49f8f 305LIST_86xx="$(boards_by_cpu mpc86xx)
7030d56b 306 MPC8641HPCN_36BIT \
fb56579f 307 MPC8641HPCN \
822d5536
JL
308"
309
7ebf7443
WD
310#########################################################################
311## 74xx/7xx Systems
312#########################################################################
313
fb56579f
KP
314LIST_74xx=" \
315 DB64360 \
316 DB64460 \
317 EVB64260 \
318 mpc7448hpc2 \
319 P3G4 \
320 p3m7448 \
321 PCIPPC2 \
322 PCIPPC6 \
323 ZUMA \
7ebf7443
WD
324"
325
fb56579f
KP
326LIST_7xx=" \
327 BAB7xx \
328 CPCI750 \
329 ELPPC \
330 p3m750 \
331 ppmc7xx \
7ebf7443
WD
332"
333
d9a42c0a
WD
334#########################################################################
335## PowerPC groups
336#########################################################################
337
338LIST_TSEC=" \
339 ${LIST_83xx} \
340 ${LIST_85xx} \
341 ${LIST_86xx} \
342"
343
a47a12be 344LIST_powerpc=" \
fb56579f 345 ${LIST_5xx} \
3deca9d4 346 ${LIST_512x} \
fb56579f
KP
347 ${LIST_5xxx} \
348 ${LIST_8xx} \
349 ${LIST_8220} \
350 ${LIST_824x} \
351 ${LIST_8260} \
352 ${LIST_83xx} \
353 ${LIST_85xx} \
354 ${LIST_86xx} \
355 ${LIST_4xx} \
356 ${LIST_74xx} \
357 ${LIST_7xx} \
358"
7ebf7443 359
a47a12be
SR
360# Alias "ppc" -> "powerpc" to not break compatibility with older scripts
361# still using "ppc" instead of "powerpc"
362LIST_ppc=" \
363 ${LIST_powerpc} \
364"
365
7ebf7443
WD
366#########################################################################
367## StrongARM Systems
368#########################################################################
369
9ec49f8f 370LIST_SA="$(boards_by_cpu sa1100)"
7ebf7443
WD
371
372#########################################################################
373## ARM7 Systems
374#########################################################################
375
fb56579f
KP
376LIST_ARM7=" \
377 ap7 \
378 ap720t \
379 armadillo \
380 B2 \
381 ep7312 \
382 evb4510 \
383 impa7 \
384 integratorap \
385 lpc2292sodimm \
386 modnet50 \
387 SMN42 \
74f4304e 388"
7ebf7443
WD
389
390#########################################################################
391## ARM9 Systems
392#########################################################################
393
fb56579f 394LIST_ARM9=" \
43a5f0df 395 a320evb \
fb56579f
KP
396 ap920t \
397 ap922_XA10 \
398 ap926ejs \
399 ap946es \
400 ap966 \
401 cp920t \
402 cp922_XA10 \
403 cp926ejs \
404 cp946es \
405 cp966 \
2819e136 406 da830evm \
89b765c7 407 da850evm \
cf3c142e
MK
408 edb9301 \
409 edb9302 \
410 edb9302a \
411 edb9307 \
412 edb9307a \
413 edb9312 \
414 edb9315 \
415 edb9315a \
ce9c227c 416 edminiv2 \
16b76705 417 guruplug \
10bc241d 418 imx27lite \
18a056a1 419 jadecpu \
fb56579f 420 lpd7a400 \
bbe31092 421 magnesium \
4abc5bff 422 mv88f6281gtw_ge \
fb56579f
KP
423 mx1ads \
424 mx1fs2 \
425 netstar \
ceb70b46
JCPV
426 nhk8815 \
427 nhk8815_onenand \
fb56579f
KP
428 omap1510inn \
429 omap1610h2 \
430 omap1610inn \
a3543d6d 431 omap5912osk \
fb56579f 432 omap730p2 \
e92daeb5 433 openrd_base \
fbc8365a 434 rd6281a \
fb56579f
KP
435 sbc2410x \
436 scb9328 \
55dd4ba5 437 sheevaplug \
fb56579f
KP
438 smdk2400 \
439 smdk2410 \
7e074158 440 spear300 \
080cfee7 441 spear310 \
7da69236 442 spear320 \
566c9c16 443 spear600 \
67fa8c25 444 suen3 \
fb56579f
KP
445 trab \
446 VCMA9 \
447 versatile \
448 versatileab \
449 versatilepb \
450 voiceblue \
451 davinci_dvevm \
452 davinci_schmoogie \
c7f879ec 453 davinci_sffsdr \
fb56579f 454 davinci_sonata \
28b00324 455 davinci_dm355evm \
5df65cf5 456 davinci_dm355leopard \
3fca2929 457 davinci_dm365evm \
6ab176d7 458 davinci_dm6467evm \
6f21347d 459"
7ebf7443 460
74f4304e
WD
461#########################################################################
462## ARM10 Systems
463#########################################################################
fb56579f
KP
464LIST_ARM10=" \
465 integratorcp \
466 cp1026 \
74f4304e
WD
467"
468
8ed96046
WD
469#########################################################################
470## ARM11 Systems
471#########################################################################
0c692673
GL
472LIST_ARM11=" \
473 cp1136 \
474 omap2420h4 \
475 apollon \
476 imx31_litekit \
477 imx31_phycore \
478 imx31_phycore_eet \
479 mx31ads \
8449f287 480 mx31pdk \
d08e5ca3 481 mx31pdk_nand \
0c692673
GL
482 qong \
483 smdk6400 \
5cc48f7e 484 tnetv107x_evm \
74f4304e 485"
8ed96046 486
f904cdbb 487#########################################################################
f56348af 488## ARMV7 Systems
f904cdbb 489#########################################################################
f56348af 490LIST_ARMV7=" \
ed01e45c 491 am3517_evm \
c35d7cf0 492 devkit8000 \
c5fb70c9 493 mx51evk \
f904cdbb 494 omap3_beagle \
9d0fc811 495 omap3_overo \
ad9bc8e5 496 omap3_evm \
2be2c6cc 497 omap3_pandora \
e63e5904 498 omap3_sdp3430 \
7379f45a 499 omap3_zoom1 \
376aee78 500 omap3_zoom2 \
c57cca25 501 omap4_panda \
3e76d62a 502 omap4_sdp4430 \
c474a8eb 503 s5p_goni \
8bc4ee9e 504 smdkc100 \
f904cdbb
DB
505"
506
602cac13
JCPV
507#########################################################################
508## AT91 Systems
509#########################################################################
510
22ee6473
SG
511LIST_at91=" \
512 afeb9260 \
513 at91cap9adk \
514 at91rm9200dk \
515 at91rm9200ek \
516 at91sam9260ek \
517 at91sam9261ek \
518 at91sam9263ek \
d8380c9d 519 at91sam9g10ek \
22ee6473 520 at91sam9g20ek \
5ccc2d99 521 at91sam9m10g45ek \
22ee6473
SG
522 at91sam9rlek \
523 cmc_pu2 \
d8380c9d 524 CPUAT91 \
23b80982
TR
525 CPU9260 \
526 CPU9G20 \
22ee6473 527 csb637 \
77e7273c 528 eb_cpux9k2 \
22ee6473
SG
529 kb9202 \
530 meesc \
531 mp2usb \
532 m501sk \
44d80256 533 otc570 \
22ee6473
SG
534 pm9261 \
535 pm9263 \
b5d289fc 536 pm9g45 \
2dc851e3
AT
537 SBC35_A9G20 \
538 TNY_A9260 \
539 TNY_A9G20 \
602cac13
JCPV
540"
541
7ebf7443
WD
542#########################################################################
543## Xscale Systems
544#########################################################################
545
9ec49f8f 546LIST_pxa="$(boards_by_cpu pxa)
040f8f63 547 polaris \
040f8f63 548 trizepsiv \
18a00dfd
MV
549 vpac270_nor \
550 vpac270_onenand \
4ec3a7f0 551"
7ebf7443 552
9ec49f8f 553LIST_ixp="$(boards_by_cpu ixp)
fb56579f
KP
554 pdnb3 \
555 scpu \
556"
7ebf7443 557
d9a42c0a
WD
558#########################################################################
559## ARM groups
560#########################################################################
2d5b561e 561
f904cdbb
DB
562LIST_arm=" \
563 ${LIST_SA} \
564 ${LIST_ARM7} \
565 ${LIST_ARM9} \
566 ${LIST_ARM10} \
567 ${LIST_ARM11} \
f56348af 568 ${LIST_ARMV7} \
f904cdbb
DB
569 ${LIST_at91} \
570 ${LIST_pxa} \
571 ${LIST_ixp} \
8ed96046 572"
7ebf7443 573
c021880a 574#########################################################################
b62bdffb 575## MIPS Systems (default = big endian)
c021880a
WD
576#########################################################################
577
fb56579f
KP
578LIST_mips4kc=" \
579 incaip \
0764c164 580 qemu_mips \
2a61eff6
SR
581 vct_platinum \
582 vct_platinum_small \
583 vct_platinum_onenand \
584 vct_platinum_onenand_small \
585 vct_platinumavc \
586 vct_platinumavc_small \
587 vct_platinumavc_onenand \
588 vct_platinumavc_onenand_small \
589 vct_premium \
590 vct_premium_small \
591 vct_premium_onenand \
592 vct_premium_onenand_small \
fb56579f 593"
c021880a 594
fb56579f
KP
595LIST_mips5kc=" \
596 purple \
597"
3e38691e 598
fb56579f
KP
599LIST_au1xx0=" \
600 dbau1000 \
601 dbau1100 \
602 dbau1500 \
603 dbau1550 \
604 dbau1550_el \
605 gth2 \
606"
5da627a4 607
fb56579f
KP
608LIST_mips=" \
609 ${LIST_mips4kc} \
610 ${LIST_mips5kc} \
611 ${LIST_au1xx0} \
612"
c021880a 613
b62bdffb
WD
614#########################################################################
615## MIPS Systems (little endian)
616#########################################################################
617
618LIST_mips4kc_el=""
619
620LIST_mips5kc_el=""
621
fb56579f
KP
622LIST_au1xx0_el=" \
623 dbau1550_el \
b09258c5 624 pb1000 \
fb56579f 625"
b62bdffb 626
fb56579f
KP
627LIST_mips_el=" \
628 ${LIST_mips4kc_el} \
629 ${LIST_mips5kc_el} \
630 ${LIST_au1xx0_el} \
631"
b62bdffb 632
7a8e9bed
WD
633#########################################################################
634## i386 Systems
635#########################################################################
636
9ec49f8f 637LIST_x86="$(boards_by_arch i386)
c620c01e 638 sc520_eNET \
fb56579f 639"
7a8e9bed 640
5c952cf0
WD
641#########################################################################
642## Nios-II Systems
643#########################################################################
644
9ec49f8f 645LIST_nios2="$(boards_by_arch nios2)
8cbb0ddd 646 nios2-generic \
4176c799 647"
5c952cf0 648
857cad37
WD
649#########################################################################
650## MicroBlaze Systems
651#########################################################################
652
9ec49f8f 653LIST_microblaze="$(boards_by_arch microblaze)"
857cad37 654
f8c3b4f3
ZL
655#########################################################################
656## ColdFire Systems
657#########################################################################
658
9ec49f8f 659LIST_coldfire="$(boards_by_arch m68k)
9d79e575 660 astro_mcf5373l \
fb56579f
KP
661 cobra5272 \
662 EB+MCF-EV123 \
663 EB+MCF-EV123_internal \
1552af70 664 M52277EVB \
4a442d31 665 M5235EVB \
aa5f1f9d
TL
666 M5329AFEE \
667 M5373EVB \
05316f8e 668 M54451EVB \
8ae158cd 669 M54455EVB \
57a12720
TL
670 M5475AFE \
671 M5485AFE \
9acb626f 672"
f8c3b4f3 673
6ccec449
WD
674#########################################################################
675## AVR32 Systems
676#########################################################################
677
9ec49f8f 678LIST_avr32="$(boards_by_arch avr32)"
6ccec449 679
ef26a08f
AL
680#########################################################################
681## Blackfin Systems
682#########################################################################
683
9ec49f8f
MF
684LIST_blackfin="$(boards_by_arch blackfin)
685 bf527-ezkit-v2
ef26a08f
AL
686"
687
c7144373
JCPV
688#########################################################################
689## SH Systems
690#########################################################################
691
c655fad0
NI
692LIST_sh2=" \
693 rsk7203 \
694"
d9a42c0a
WD
695LIST_sh3=" \
696 mpr2 \
697 ms7720se \
698"
699
c7144373 700LIST_sh4=" \
aa9c4f1d 701 ms7750se \
c7144373 702 ms7722se \
9e23fe05 703 MigoR \
c133c1fb 704 r7780mp \
f5e2466f 705 r2dplus \
7faddaec 706 sh7763rdp \
0d53a47d 707 sh7785lcr \
6f0da497 708 ap325rxa \
74d9c16a 709 espt \
c7144373
JCPV
710"
711
c7144373 712LIST_sh=" \
6f0da497 713 ${LIST_sh2} \
c7144373
JCPV
714 ${LIST_sh3} \
715 ${LIST_sh4} \
716"
717
c2f02da2
DH
718#########################################################################
719## SPARC Systems
720#########################################################################
721
9ec49f8f 722LIST_sparc="$(boards_by_arch sparc)"
7ebf7443
WD
723
724#-----------------------------------------------------------------------
725
726build_target() {
727 target=$1
728
729 ${MAKE} distclean >/dev/null
730 ${MAKE} ${target}_config
f9328639
MB
731
732 ${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
733 | tee ${LOG_DIR}/$target.ERR
f2352877
PT
734
735 # Check for 'make' errors
736 if [ ${PIPESTATUS[0]} -ne 0 ] ; then
737 RC=1
738 fi
739
40a28f08
PT
740 if [ -s ${LOG_DIR}/$target.ERR ] ; then
741 ERR_CNT=$((ERR_CNT + 1))
742 ERR_LIST="${ERR_LIST} $target"
743 else
744 rm ${LOG_DIR}/$target.ERR
745 fi
746
747 TOTAL_CNT=$((TOTAL_CNT + 1))
f9328639 748
208447f8 749 ${CROSS_COMPILE}size ${BUILD_DIR}/u-boot \
f9328639 750 | tee -a ${LOG_DIR}/$target.MAKELOG
7ebf7443 751}
9ec49f8f
MF
752build_targets() {
753 for t in "$@" ; do
754 # If a LIST_xxx var exists, use it. But avoid variable
755 # expansion in the eval when a board name contains certain
756 # characters that the shell interprets.
757 case ${t} in
758 *[-+=]*) list= ;;
759 *) list=$(eval echo '${LIST_'$t'}') ;;
760 esac
761 if [ -n "${list}" ] ; then
762 build_targets ${list}
763 else
764 build_target ${t}
765 fi
766 done
767}
7ebf7443
WD
768
769#-----------------------------------------------------------------------
770
40a28f08
PT
771print_stats() {
772 echo ""
773 echo "--------------------- SUMMARY ----------------------------"
774 echo "Boards compiled: ${TOTAL_CNT}"
775 if [ ${ERR_CNT} -gt 0 ] ; then
776 echo "Boards with warnings or errors: ${ERR_CNT} (${ERR_LIST} )"
777 fi
778 echo "----------------------------------------------------------"
f2352877
PT
779
780 exit $RC
40a28f08 781}
7ebf7443 782
40a28f08 783#-----------------------------------------------------------------------
9ec49f8f
MF
784
785#----- for now, just run PowerPC by default -----
786[ $# = 0 ] && set -- powerpc
787
788build_targets "$@"