bb09627e33fe004da13a98e80ad2940d9ea4d22b
[platform/kernel/u-boot.git] / MAKEALL
1 #!/bin/bash
2
3 # Print statistics when we exit
4 trap exit 1 2 3 15
5 trap print_stats 0
6
7 # Determine number of CPU cores if no default was set
8 : ${BUILD_NCPUS:="`getconf _NPROCESSORS_ONLN`"}
9
10 if [ "$BUILD_NCPUS" -gt 1 ]
11 then
12         JOBS="-j $((BUILD_NCPUS + 1))"
13 else
14         JOBS=""
15 fi
16
17
18 if [ "${CROSS_COMPILE}" ] ; then
19         MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
20 else
21         MAKE=make
22 fi
23
24 if [ "${MAKEALL_LOGDIR}" ] ; then
25         LOG_DIR=${MAKEALL_LOGDIR}
26 else
27         LOG_DIR="LOG"
28 fi
29
30 if [ ! "${BUILD_DIR}" ] ; then
31         BUILD_DIR="."
32 fi
33
34 [ -d ${LOG_DIR} ] || mkdir ${LOG_DIR} || exit 1
35
36 LIST=""
37
38 # Keep track of the number of builds and errors
39 ERR_CNT=0
40 ERR_LIST=""
41 TOTAL_CNT=0
42 RC=0
43
44 #########################################################################
45 ## MPC5xx Systems
46 #########################################################################
47
48 LIST_5xx="              \
49         cmi_mpc5xx      \
50 "
51
52 #########################################################################
53 ## MPC5xxx Systems
54 #########################################################################
55
56 LIST_5xxx="             \
57         BC3450          \
58         cm5200          \
59         cpci5200        \
60         digsy_mtc       \
61         EVAL5200        \
62         fo300           \
63         galaxy5200      \
64         icecube_5200    \
65         inka4x0         \
66         ipek01          \
67         lite5200b       \
68         mcc200          \
69         mecp5200        \
70         motionpro       \
71         munices         \
72         MVBC_P          \
73         MVSMR           \
74         o2dnt           \
75         pcm030          \
76         pf5200          \
77         PM520           \
78         TB5200          \
79         Total5200       \
80         Total5200_Rev2  \
81         TQM5200         \
82         TQM5200_B       \
83         TQM5200S        \
84         v38b            \
85 "
86
87 #########################################################################
88 ## MPC512x Systems
89 #########################################################################
90
91 LIST_512x="             \
92         aria            \
93         mecp5123        \
94         mpc5121ads      \
95         pdm360ng        \
96 "
97
98 #########################################################################
99 ## MPC8xx Systems
100 #########################################################################
101 LIST_8xx="              \
102         Adder87x        \
103         AdderII         \
104         ADS860          \
105         AMX860          \
106         c2mon           \
107         CCM             \
108         cogent_mpc8xx   \
109         ELPT860         \
110         EP88x           \
111         ESTEEM192E      \
112         ETX094          \
113         FADS823         \
114         FADS850SAR      \
115         FADS860T        \
116         FLAGADM         \
117         FPS850L         \
118         GEN860T         \
119         GEN860T_SC      \
120         GENIETV         \
121         GTH             \
122         hermes          \
123         IAD210          \
124         ICU862_100MHz   \
125         IP860           \
126         IVML24          \
127         IVML24_128      \
128         IVML24_256      \
129         IVMS8           \
130         IVMS8_128       \
131         IVMS8_256       \
132         KUP4K           \
133         KUP4X           \
134         LANTEC          \
135         lwmon           \
136         kmsupx4         \
137         MBX             \
138         MBX860T         \
139         mgsuvd          \
140         MHPC            \
141         MPC86xADS       \
142         MPC885ADS       \
143         NETPHONE        \
144         NETTA           \
145         NETTA2          \
146         NETTA_ISDN      \
147         NETVIA          \
148         NETVIA_V2       \
149         NX823           \
150         pcu_e           \
151         QS823           \
152         QS850           \
153         QS860T          \
154         quantum         \
155         R360MPI         \
156         RBC823          \
157         rmu             \
158         RPXClassic      \
159         RPXlite         \
160         RPXlite_DW      \
161         RRvision        \
162         SM850           \
163         spc1920         \
164         SPD823TS        \
165         svm_sc8xx       \
166         SXNI855T        \
167         TK885D          \
168         TOP860          \
169         TQM823L         \
170         TQM823L_LCD     \
171         TQM850L         \
172         TQM855L         \
173         TQM860L         \
174         TQM885D         \
175         uc100           \
176         v37             \
177 "
178
179 #########################################################################
180 ## PPC4xx Systems
181 #########################################################################
182
183 LIST_4xx="              \
184         acadia          \
185         acadia_nand     \
186         ADCIOP          \
187         alpr            \
188         AP1000          \
189         APC405          \
190         AR405           \
191         arches          \
192         ASH405          \
193         bamboo          \
194         bamboo_nand     \
195         bubinga         \
196         CANBT           \
197         canyonlands     \
198         canyonlands_nand \
199         CMS700          \
200         CPCI2DP         \
201         CPCI405         \
202         CPCI4052        \
203         CPCI405AB       \
204         CPCI405DT       \
205         CPCIISER4       \
206         CRAYL1          \
207         csb272          \
208         csb472          \
209         DASA_SIM        \
210         devconcenter    \
211         dlvision        \
212         DP405           \
213         DU405           \
214         DU440           \
215         ebony           \
216         ERIC            \
217         fx12mm          \
218         G2000           \
219         gdppc440etx     \
220         glacier         \
221         haleakala       \
222         haleakala_nand  \
223         hcu4            \
224         hcu5            \
225         HH405           \
226         HUB405          \
227         icon            \
228         intip           \
229         JSE             \
230         KAREF           \
231         katmai          \
232         kilauea         \
233         kilauea_nand    \
234         korat           \
235         luan            \
236         lwmon5          \
237         makalu          \
238         mcu25           \
239         METROBOX        \
240         MIP405          \
241         MIP405T         \
242         ML2             \
243         ml507           \
244         ml507_flash     \
245         neo             \
246         ocotea          \
247         OCRTC           \
248         ORSG            \
249         p3p440          \
250         PCI405          \
251         pcs440ep        \
252         PIP405          \
253         PLU405          \
254         PMC405          \
255         PMC405DE        \
256         PMC440          \
257         PPChameleonEVB  \
258         quad100hd       \
259         rainier         \
260         redwood         \
261         sbc405          \
262         sc3             \
263         sequoia         \
264         sequoia_nand    \
265         taihu           \
266         taishan         \
267         v5fx30teval     \
268         v5fx30teval_flash \
269         VOH405          \
270         VOM405          \
271         W7OLMC          \
272         W7OLMG          \
273         walnut          \
274         WUH405          \
275         xilinx-ppc440-generic \
276         xilinx-ppc440-generic_flash \
277         XPEDITE1000     \
278         yellowstone     \
279         yosemite        \
280         yucca           \
281         zeus            \
282 "
283
284 #########################################################################
285 ## MPC8220 Systems
286 #########################################################################
287
288 LIST_8220="             \
289         Alaska8220      \
290         Yukon8220       \
291 "
292
293 #########################################################################
294 ## MPC824x Systems
295 #########################################################################
296
297 LIST_824x="             \
298         A3000           \
299         barco           \
300         BMW             \
301         CPC45           \
302         CU824           \
303         debris          \
304         eXalion         \
305         HIDDEN_DRAGON   \
306         IDS8247         \
307         linkstation_HGLAN       \
308         MOUSSE          \
309         MUSENKI         \
310         MVBLUE          \
311         OXC             \
312         PN62            \
313         Sandpoint8240   \
314         Sandpoint8245   \
315         sbc8240         \
316         utx8245         \
317 "
318
319 #########################################################################
320 ## MPC8260 Systems (includes 8250, 8255 etc.)
321 #########################################################################
322
323 LIST_8260="             \
324         atc             \
325         cogent_mpc8260  \
326         CPU86           \
327         CPU87           \
328         ep8248          \
329         ep8260          \
330         ep82xxm         \
331         gw8260          \
332         hymod           \
333         IPHASE4539      \
334         ISPAN           \
335         mgcoge          \
336         MPC8260ADS      \
337         MPC8266ADS      \
338         MPC8272ADS      \
339         PM826           \
340         PM828           \
341         ppmc8260        \
342         Rattler8248     \
343         RPXsuper        \
344         rsdproto        \
345         sacsng          \
346         sbc8260         \
347         SCM             \
348         TQM8260_AC      \
349         TQM8260_AD      \
350         TQM8260_AE      \
351         TQM8272         \
352         ZPC1900         \
353 "
354
355 #########################################################################
356 ## MPC83xx Systems (includes 8349, etc.)
357 #########################################################################
358
359 LIST_83xx="             \
360         caddy2          \
361         kmeter1         \
362         MPC8313ERDB_33  \
363         MPC8313ERDB_NAND_66     \
364         MPC8315ERDB     \
365         MPC8315ERDB_NAND        \
366         MPC8323ERDB     \
367         MPC832XEMDS     \
368         MPC832XEMDS_ATM \
369         MPC8349EMDS     \
370         MPC8349ITX      \
371         MPC8349ITXGP    \
372         MPC8360EMDS     \
373         MPC8360EMDS_ATM \
374         MPC8360ERDK_33  \
375         MPC8360ERDK_66  \
376         MPC837XEMDS     \
377         MPC837XERDB     \
378         MVBLM7          \
379         sbc8349         \
380         SIMPC8313_LP    \
381         TQM834x         \
382         vme8349         \
383 "
384
385
386 #########################################################################
387 ## MPC85xx Systems (includes 8540, 8560 etc.)
388 #########################################################################
389
390 LIST_85xx="             \
391         ATUM8548        \
392         MPC8536DS       \
393         MPC8536DS_NAND  \
394         MPC8536DS_SDCARD        \
395         MPC8536DS_SPIFLASH      \
396         MPC8540ADS      \
397         MPC8540EVAL     \
398         MPC8541CDS      \
399         MPC8544DS       \
400         MPC8548CDS      \
401         MPC8555CDS      \
402         MPC8560ADS      \
403         MPC8568MDS      \
404         MPC8569MDS      \
405         MPC8569MDS_ATM  \
406         MPC8569MDS_NAND \
407         MPC8572DS       \
408         MPC8572DS_36BIT \
409         P2020DS         \
410         P2020DS_36BIT   \
411         P1011RDB        \
412         P1011RDB_NAND   \
413         P1011RDB_SDCARD \
414         P1011RDB_SPIFLASH       \
415         P1020RDB        \
416         P1020RDB_NAND   \
417         P1020RDB_SDCARD \
418         P1020RDB_SPIFLASH       \
419         P2010RDB        \
420         P2010RDB_NAND   \
421         P2010RDB_SDCARD \
422         P2010RDB_SPIFLASH       \
423         P2020RDB        \
424         P2020RDB_NAND   \
425         P2020RDB_SDCARD \
426         P2020RDB_SPIFLASH       \
427         PM854           \
428         PM856           \
429         sbc8540         \
430         sbc8548         \
431         sbc8548_PCI_33  \
432         sbc8548_PCI_66  \
433         sbc8548_PCI_33_PCIE \
434         sbc8548_PCI_66_PCIE \
435         sbc8560         \
436         socrates        \
437         stxgp3          \
438         stxssa          \
439         TQM8540         \
440         TQM8541         \
441         TQM8548         \
442         TQM8548_AG      \
443         TQM8548_BE      \
444         TQM8555         \
445         TQM8560         \
446         XPEDITE5200     \
447         XPEDITE5370     \
448 "
449
450 #########################################################################
451 ## MPC86xx Systems
452 #########################################################################
453
454 LIST_86xx="             \
455         MPC8610HPCD     \
456         MPC8641HPCN     \
457         sbc8641d        \
458         XPEDITE5170     \
459 "
460
461 #########################################################################
462 ## 74xx/7xx Systems
463 #########################################################################
464
465 LIST_74xx="             \
466         DB64360         \
467         DB64460         \
468         EVB64260        \
469         mpc7448hpc2     \
470         P3G4            \
471         p3m7448         \
472         PCIPPC2         \
473         PCIPPC6         \
474         ZUMA            \
475 "
476
477 LIST_7xx="              \
478         BAB7xx          \
479         CPCI750         \
480         ELPPC           \
481         p3m750          \
482         ppmc7xx         \
483 "
484
485 #########################################################################
486 ## PowerPC groups
487 #########################################################################
488
489 LIST_TSEC="             \
490         ${LIST_83xx}    \
491         ${LIST_85xx}    \
492         ${LIST_86xx}    \
493 "
494
495 LIST_powerpc="          \
496         ${LIST_5xx}     \
497         ${LIST_512x}    \
498         ${LIST_5xxx}    \
499         ${LIST_8xx}     \
500         ${LIST_8220}    \
501         ${LIST_824x}    \
502         ${LIST_8260}    \
503         ${LIST_83xx}    \
504         ${LIST_85xx}    \
505         ${LIST_86xx}    \
506         ${LIST_4xx}     \
507         ${LIST_74xx}    \
508         ${LIST_7xx}     \
509 "
510
511 # Alias "ppc" -> "powerpc" to not break compatibility with older scripts
512 # still using "ppc" instead of "powerpc"
513 LIST_ppc="              \
514         ${LIST_powerpc} \
515 "
516
517 #########################################################################
518 ## StrongARM Systems
519 #########################################################################
520
521 LIST_SA="               \
522         assabet         \
523         dnp1110         \
524         gcplus          \
525         lart            \
526         shannon         \
527 "
528
529 #########################################################################
530 ## ARM7 Systems
531 #########################################################################
532
533 LIST_ARM7="             \
534         ap7             \
535         ap720t          \
536         armadillo       \
537         B2              \
538         ep7312          \
539         evb4510         \
540         impa7           \
541         integratorap    \
542         lpc2292sodimm   \
543         modnet50        \
544         SMN42           \
545 "
546
547 #########################################################################
548 ## ARM9 Systems
549 #########################################################################
550
551 LIST_ARM9="                     \
552         a320evb                 \
553         ap920t                  \
554         ap922_XA10              \
555         ap926ejs                \
556         ap946es                 \
557         ap966                   \
558         cp920t                  \
559         cp922_XA10              \
560         cp926ejs                \
561         cp946es                 \
562         cp966                   \
563         da830evm                \
564         edb9301                 \
565         edb9302                 \
566         edb9302a                \
567         edb9307                 \
568         edb9307a                \
569         edb9312                 \
570         edb9315                 \
571         edb9315a                \
572         guruplug                \
573         imx27lite               \
574         lpd7a400                \
575         magnesium               \
576         mv88f6281gtw_ge         \
577         mx1ads                  \
578         mx1fs2                  \
579         netstar                 \
580         nhk8815                 \
581         nhk8815_onenand         \
582         omap1510inn             \
583         omap1610h2              \
584         omap1610inn             \
585         omap5912osk             \
586         omap730p2               \
587         openrd_base             \
588         rd6281a                 \
589         sbc2410x                \
590         scb9328                 \
591         sheevaplug              \
592         smdk2400                \
593         smdk2410                \
594         spear300                \
595         spear310                \
596         spear320                \
597         spear600                \
598         suen3                   \
599         trab                    \
600         VCMA9                   \
601         versatile               \
602         versatileab             \
603         versatilepb             \
604         voiceblue               \
605         davinci_dvevm           \
606         davinci_schmoogie       \
607         davinci_sffsdr          \
608         davinci_sonata          \
609         davinci_dm355evm        \
610         davinci_dm355leopard    \
611         davinci_dm365evm        \
612         davinci_dm6467evm       \
613 "
614
615 #########################################################################
616 ## ARM10 Systems
617 #########################################################################
618 LIST_ARM10="            \
619         integratorcp    \
620         cp1026          \
621 "
622
623 #########################################################################
624 ## ARM11 Systems
625 #########################################################################
626 LIST_ARM11="                    \
627         cp1136                  \
628         omap2420h4              \
629         apollon                 \
630         imx31_litekit           \
631         imx31_phycore           \
632         imx31_phycore_eet       \
633         mx31ads                 \
634         mx31pdk                 \
635         mx31pdk_nand            \
636         qong                    \
637         smdk6400                \
638 "
639
640 #########################################################################
641 ## ARM Cortex-A8 Systems
642 #########################################################################
643 LIST_ARM_CORTEX_A8="            \
644         devkit8000              \
645         mx51evk                 \
646         omap3_beagle            \
647         omap3_overo             \
648         omap3_evm               \
649         omap3_pandora           \
650         omap3_sdp3430           \
651         omap3_zoom1             \
652         omap3_zoom2             \
653         smdkc100                \
654 "
655
656 #########################################################################
657 ## AT91 Systems
658 #########################################################################
659
660 LIST_at91="                     \
661         afeb9260                \
662         at91cap9adk             \
663         at91rm9200dk            \
664         at91rm9200ek            \
665         at91sam9260ek           \
666         at91sam9261ek           \
667         at91sam9263ek           \
668         at91sam9g10ek           \
669         at91sam9g20ek           \
670         at91sam9m10g45ek        \
671         at91sam9rlek            \
672         cmc_pu2                 \
673         CPUAT91                 \
674         CPU9260                 \
675         CPU9G20                 \
676         csb637                  \
677         eb_cpux9k2              \
678         kb9202                  \
679         meesc                   \
680         mp2usb                  \
681         m501sk                  \
682         otc570                  \
683         pm9261                  \
684         pm9263                  \
685         SBC35_A9G20             \
686         TNY_A9260               \
687         TNY_A9G20               \
688 "
689
690 #########################################################################
691 ## Xscale Systems
692 #########################################################################
693
694 LIST_pxa="              \
695         cerf250         \
696         cradle          \
697         csb226          \
698         delta           \
699         innokom         \
700         lubbock         \
701         pleb2           \
702         polaris         \
703         pxa255_idp      \
704         trizepsiv       \
705         wepep250        \
706         xaeniax         \
707         xm250           \
708         xsengine        \
709         zylonite        \
710 "
711
712 LIST_ixp="              \
713         actux1          \
714         actux2          \
715         actux3          \
716         actux4          \
717         ixdp425         \
718         ixdpg425        \
719         pdnb3           \
720         scpu            \
721 "
722
723 #########################################################################
724 ## ARM groups
725 #########################################################################
726
727 LIST_arm="                      \
728         ${LIST_SA}              \
729         ${LIST_ARM7}            \
730         ${LIST_ARM9}            \
731         ${LIST_ARM10}           \
732         ${LIST_ARM11}           \
733         ${LIST_ARM_CORTEX_A8}   \
734         ${LIST_at91}            \
735         ${LIST_pxa}             \
736         ${LIST_ixp}             \
737 "
738
739 #########################################################################
740 ## MIPS Systems         (default = big endian)
741 #########################################################################
742
743 LIST_mips4kc="          \
744         incaip          \
745         qemu_mips       \
746         vct_platinum    \
747         vct_platinum_small      \
748         vct_platinum_onenand    \
749         vct_platinum_onenand_small      \
750         vct_platinumavc \
751         vct_platinumavc_small   \
752         vct_platinumavc_onenand \
753         vct_platinumavc_onenand_small   \
754         vct_premium     \
755         vct_premium_small       \
756         vct_premium_onenand     \
757         vct_premium_onenand_small       \
758 "
759
760 LIST_mips5kc="          \
761         purple          \
762 "
763
764 LIST_au1xx0="           \
765         dbau1000        \
766         dbau1100        \
767         dbau1500        \
768         dbau1550        \
769         dbau1550_el     \
770         gth2            \
771 "
772
773 LIST_mips="             \
774         ${LIST_mips4kc} \
775         ${LIST_mips5kc} \
776         ${LIST_au1xx0}  \
777 "
778
779 #########################################################################
780 ## MIPS Systems         (little endian)
781 #########################################################################
782
783 LIST_mips4kc_el=""
784
785 LIST_mips5kc_el=""
786
787 LIST_au1xx0_el="        \
788         dbau1550_el     \
789         pb1000          \
790 "
791
792 LIST_mips_el="                  \
793         ${LIST_mips4kc_el}      \
794         ${LIST_mips5kc_el}      \
795         ${LIST_au1xx0_el}       \
796 "
797
798 #########################################################################
799 ## i386 Systems
800 #########################################################################
801
802 LIST_I486="             \
803         sc520_cdp       \
804         sc520_eNET      \
805         sc520_spunk     \
806         sc520_spunk_rel \
807 "
808
809 LIST_x86="              \
810         ${LIST_I486}    \
811 "
812
813 #########################################################################
814 ## NIOS Systems
815 #########################################################################
816
817 LIST_nios="                     \
818         ADNPESC1                \
819         ADNPESC1_base_32        \
820         ADNPESC1_DNPEVA2_base_32\
821         DK1C20                  \
822         DK1C20_standard_32      \
823         DK1S10                  \
824         DK1S10_standard_32      \
825         DK1S10_mtx_ldk_20       \
826 "
827
828 #########################################################################
829 ## Nios-II Systems
830 #########################################################################
831
832 LIST_nios2="            \
833         EP1C20          \
834         EP1S10          \
835         EP1S40          \
836         PCI5441         \
837         PK1C20          \
838         nios2-generic   \
839 "
840
841 #########################################################################
842 ## MicroBlaze Systems
843 #########################################################################
844
845 LIST_microblaze="                       \
846         microblaze-generic              \
847 "
848
849 #########################################################################
850 ## ColdFire Systems
851 #########################################################################
852
853 LIST_coldfire="                 \
854         astro_mcf5373l          \
855         cobra5272               \
856         EB+MCF-EV123            \
857         EB+MCF-EV123_internal   \
858         idmr                    \
859         M5208EVBE               \
860         M52277EVB               \
861         M5235EVB                \
862         M5249EVB                \
863         M5253DEMO               \
864         M5253EVBE               \
865         M5271EVB                \
866         M5272C3                 \
867         M5275EVB                \
868         M5282EVB                \
869         M53017EVB               \
870         M5329AFEE               \
871         M5373EVB                \
872         M54451EVB               \
873         M54455EVB               \
874         M5475AFE                \
875         M5485AFE                \
876         TASREG                  \
877 "
878
879 #########################################################################
880 ## AVR32 Systems
881 #########################################################################
882
883 LIST_avr32="            \
884         atstk1002       \
885         atstk1003       \
886         atstk1004       \
887         atstk1006       \
888         atngw100        \
889         favr-32-ezkit   \
890         hammerhead      \
891         mimc200         \
892 "
893
894 #########################################################################
895 ## Blackfin Systems
896 #########################################################################
897
898 LIST_blackfin="         \
899         bf518f-ezbrd    \
900         bf526-ezbrd     \
901         bf527-ezkit     \
902         bf527-ezkit-v2  \
903         bf533-ezkit     \
904         bf533-stamp     \
905         bf537-minotaur  \
906         bf537-pnav      \
907         bf537-srv1      \
908         bf537-stamp     \
909         bf538f-ezkit    \
910         bf548-ezkit     \
911         bf561-acvilon   \
912         bf561-ezkit     \
913         blackstamp      \
914         cm-bf527        \
915         cm-bf533        \
916         cm-bf537e       \
917         cm-bf537u       \
918         cm-bf548        \
919         cm-bf561        \
920         ibf-dsp561      \
921         ip04            \
922         tcm-bf518       \
923         tcm-bf537       \
924 "
925
926 #########################################################################
927 ## SH Systems
928 #########################################################################
929
930 LIST_sh2="              \
931         rsk7203         \
932 "
933 LIST_sh3="              \
934         mpr2            \
935         ms7720se        \
936 "
937
938 LIST_sh4="              \
939         ms7750se        \
940         ms7722se        \
941         MigoR           \
942         r7780mp         \
943         r2dplus         \
944         sh7763rdp       \
945         sh7785lcr       \
946         ap325rxa        \
947         espt            \
948 "
949
950 LIST_sh="               \
951         ${LIST_sh2}     \
952         ${LIST_sh3}     \
953         ${LIST_sh4}     \
954 "
955
956 #########################################################################
957 ## SPARC Systems
958 #########################################################################
959
960 LIST_sparc="gr_xc3s_1500        gr_cpci_ax2000  gr_ep2s60       grsim   grsim_leon2"
961
962 #-----------------------------------------------------------------------
963
964 #----- for now, just run PowerPC by default -----
965 [ $# = 0 ] && set $LIST_powerpc
966
967 #-----------------------------------------------------------------------
968
969 build_target() {
970         target=$1
971
972         ${MAKE} distclean >/dev/null
973         ${MAKE} ${target}_config
974
975         ${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
976                                 | tee ${LOG_DIR}/$target.ERR
977
978         # Check for 'make' errors
979         if [ ${PIPESTATUS[0]} -ne 0 ] ; then
980                 RC=1
981         fi
982
983         if [ -s ${LOG_DIR}/$target.ERR ] ; then
984                 ERR_CNT=$((ERR_CNT + 1))
985                 ERR_LIST="${ERR_LIST} $target"
986         else
987                 rm ${LOG_DIR}/$target.ERR
988         fi
989
990         TOTAL_CNT=$((TOTAL_CNT + 1))
991
992         ${CROSS_COMPILE}size ${BUILD_DIR}/u-boot \
993                                 | tee -a ${LOG_DIR}/$target.MAKELOG
994 }
995
996 #-----------------------------------------------------------------------
997
998 print_stats() {
999         echo ""
1000         echo "--------------------- SUMMARY ----------------------------"
1001         echo "Boards compiled: ${TOTAL_CNT}"
1002         if [ ${ERR_CNT} -gt 0 ] ; then
1003                 echo "Boards with warnings or errors: ${ERR_CNT} (${ERR_LIST} )"
1004         fi
1005         echo "----------------------------------------------------------"
1006
1007         exit $RC
1008 }
1009
1010 #-----------------------------------------------------------------------
1011 for arg in $@
1012 do
1013         case "$arg" in
1014         arm|SA|ARM7|ARM9|ARM10|ARM11|ARM_CORTEX_A8|at91|ixp|pxa \
1015         |avr32 \
1016         |blackfin \
1017         |coldfire \
1018         |microblaze \
1019         |mips|mips_el \
1020         |nios|nios2 \
1021         |ppc|powerpc|5xx|5xxx|512x|8xx|8220|824x|8260|83xx|85xx|86xx|4xx|7xx|74xx|TSEC \
1022         |sh|sh2|sh3|sh4 \
1023         |sparc \
1024         |x86|I486 \
1025         )
1026                         for target in `eval echo '$LIST_'${arg}`
1027                         do
1028                                 build_target ${target}
1029                         done
1030                         ;;
1031         *)              build_target ${arg}
1032                         ;;
1033         esac
1034 done