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