]> git.ipfire.org Git - people/ms/u-boot.git/blob - MAKEALL
Add ppc440epx USB ehci support.
[people/ms/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_5100 \
65 icecube_5200 \
66 inka4x0 \
67 ipek01 \
68 lite5200b \
69 mcc200 \
70 mecp5200 \
71 motionpro \
72 munices \
73 MVBC_P \
74 o2dnt \
75 pcm030 \
76 pf5200 \
77 PM520 \
78 TB5200 \
79 Total5100 \
80 Total5200 \
81 Total5200_Rev2 \
82 TQM5200 \
83 TQM5200_B \
84 TQM5200S \
85 v38b \
86 "
87
88 #########################################################################
89 ## MPC512x Systems
90 #########################################################################
91
92 LIST_512x=" \
93 aria \
94 mecp5123 \
95 mpc5121ads \
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 AR405 \
190 arches \
191 ASH405 \
192 bamboo \
193 bamboo_nand \
194 bubinga \
195 CANBT \
196 canyonlands \
197 canyonlands_nand \
198 CMS700 \
199 CPCI2DP \
200 CPCI405 \
201 CPCI4052 \
202 CPCI405AB \
203 CPCI405DT \
204 CPCIISER4 \
205 CRAYL1 \
206 csb272 \
207 csb472 \
208 DASA_SIM \
209 devconcenter \
210 dlvision \
211 DP405 \
212 DU405 \
213 DU440 \
214 ebony \
215 ERIC \
216 EXBITGEN \
217 fx12mm \
218 G2000 \
219 gdppc440etx \
220 glacier \
221 haleakala \
222 haleakala_nand \
223 hcu4 \
224 hcu5 \
225 HH405 \
226 HUB405 \
227 intip \
228 JSE \
229 KAREF \
230 katmai \
231 kilauea \
232 kilauea_nand \
233 korat \
234 luan \
235 lwmon5 \
236 makalu \
237 mcu25 \
238 METROBOX \
239 MIP405 \
240 MIP405T \
241 ML2 \
242 ml300 \
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 SL8245 \
317 utx8245 \
318 "
319
320 #########################################################################
321 ## MPC8260 Systems (includes 8250, 8255 etc.)
322 #########################################################################
323
324 LIST_8260=" \
325 atc \
326 cogent_mpc8260 \
327 CPU86 \
328 CPU87 \
329 ep8248 \
330 ep8260 \
331 ep82xxm \
332 gw8260 \
333 hymod \
334 IPHASE4539 \
335 ISPAN \
336 mgcoge \
337 MPC8260ADS \
338 MPC8266ADS \
339 MPC8272ADS \
340 PM826 \
341 PM828 \
342 ppmc8260 \
343 Rattler8248 \
344 RPXsuper \
345 rsdproto \
346 sacsng \
347 sbc8260 \
348 SCM \
349 TQM8260_AC \
350 TQM8260_AD \
351 TQM8260_AE \
352 TQM8272 \
353 ZPC1900 \
354 "
355
356 #########################################################################
357 ## MPC83xx Systems (includes 8349, etc.)
358 #########################################################################
359
360 LIST_83xx=" \
361 kmeter1 \
362 MPC8313ERDB_33 \
363 MPC8313ERDB_NAND_66 \
364 MPC8315ERDB \
365 MPC8323ERDB \
366 MPC832XEMDS \
367 MPC832XEMDS_ATM \
368 MPC8349EMDS \
369 MPC8349ITX \
370 MPC8349ITXGP \
371 MPC8360EMDS \
372 MPC8360EMDS_ATM \
373 MPC8360ERDK_33 \
374 MPC8360ERDK_66 \
375 MPC837XEMDS \
376 MPC837XERDB \
377 MVBLM7 \
378 sbc8349 \
379 SIMPC8313_LP \
380 TQM834x \
381 vme8349 \
382 "
383
384
385 #########################################################################
386 ## MPC85xx Systems (includes 8540, 8560 etc.)
387 #########################################################################
388
389 LIST_85xx=" \
390 ATUM8548 \
391 MPC8536DS \
392 MPC8536DS_NAND \
393 MPC8536DS_SDCARD \
394 MPC8536DS_SPIFLASH \
395 MPC8540ADS \
396 MPC8540EVAL \
397 MPC8541CDS \
398 MPC8544DS \
399 MPC8548CDS \
400 MPC8555CDS \
401 MPC8560ADS \
402 MPC8568MDS \
403 MPC8569MDS \
404 MPC8572DS \
405 MPC8572DS_36BIT \
406 P2020DS \
407 P2020DS_36BIT \
408 P1011RDB \
409 P1011RDB_NAND \
410 P1011RDB_SDCARD \
411 P1011RDB_SPIFLASH \
412 P1020RDB \
413 P1020RDB_NAND \
414 P1020RDB_SDCARD \
415 P1020RDB_SPIFLASH \
416 P2010RDB \
417 P2010RDB_NAND \
418 P2010RDB_SDCARD \
419 P2010RDB_SPIFLASH \
420 P2020RDB \
421 P2020RDB_NAND \
422 P2020RDB_SDCARD \
423 P2020RDB_SPIFLASH \
424 PM854 \
425 PM856 \
426 sbc8540 \
427 sbc8548 \
428 sbc8548_PCI_33 \
429 sbc8548_PCI_66 \
430 sbc8548_PCI_33_PCIE \
431 sbc8548_PCI_66_PCIE \
432 sbc8560 \
433 socrates \
434 stxgp3 \
435 stxssa \
436 TQM8540 \
437 TQM8541 \
438 TQM8548 \
439 TQM8548_AG \
440 TQM8548_BE \
441 TQM8555 \
442 TQM8560 \
443 XPEDITE5200 \
444 XPEDITE5370 \
445 "
446
447 #########################################################################
448 ## MPC86xx Systems
449 #########################################################################
450
451 LIST_86xx=" \
452 MPC8610HPCD \
453 MPC8641HPCN \
454 sbc8641d \
455 XPEDITE5170 \
456 "
457
458 #########################################################################
459 ## 74xx/7xx Systems
460 #########################################################################
461
462 LIST_74xx=" \
463 DB64360 \
464 DB64460 \
465 EVB64260 \
466 mpc7448hpc2 \
467 P3G4 \
468 p3m7448 \
469 PCIPPC2 \
470 PCIPPC6 \
471 ZUMA \
472 "
473
474 LIST_7xx=" \
475 BAB7xx \
476 CPCI750 \
477 ELPPC \
478 p3m750 \
479 ppmc7xx \
480 "
481
482 #########################################################################
483 ## PowerPC groups
484 #########################################################################
485
486 LIST_TSEC=" \
487 ${LIST_83xx} \
488 ${LIST_85xx} \
489 ${LIST_86xx} \
490 "
491
492 LIST_ppc=" \
493 ${LIST_5xx} \
494 ${LIST_512x} \
495 ${LIST_5xxx} \
496 ${LIST_8xx} \
497 ${LIST_8220} \
498 ${LIST_824x} \
499 ${LIST_8260} \
500 ${LIST_83xx} \
501 ${LIST_85xx} \
502 ${LIST_86xx} \
503 ${LIST_4xx} \
504 ${LIST_74xx} \
505 ${LIST_7xx} \
506 "
507
508 #########################################################################
509 ## StrongARM Systems
510 #########################################################################
511
512 LIST_SA=" \
513 assabet \
514 dnp1110 \
515 gcplus \
516 lart \
517 shannon \
518 "
519
520 #########################################################################
521 ## ARM7 Systems
522 #########################################################################
523
524 LIST_ARM7=" \
525 ap7 \
526 ap720t \
527 armadillo \
528 B2 \
529 ep7312 \
530 evb4510 \
531 impa7 \
532 integratorap \
533 lpc2292sodimm \
534 modnet50 \
535 SMN42 \
536 "
537
538 #########################################################################
539 ## ARM9 Systems
540 #########################################################################
541
542 LIST_ARM9=" \
543 a320evb \
544 ap920t \
545 ap922_XA10 \
546 ap926ejs \
547 ap946es \
548 ap966 \
549 cp920t \
550 cp922_XA10 \
551 cp926ejs \
552 cp946es \
553 cp966 \
554 da830evm \
555 imx27lite \
556 lpd7a400 \
557 mv88f6281gtw_ge \
558 mx1ads \
559 mx1fs2 \
560 netstar \
561 nhk8815 \
562 nhk8815_onenand \
563 omap1510inn \
564 omap1610h2 \
565 omap1610inn \
566 omap5912osk \
567 omap730p2 \
568 openrd_base \
569 rd6281a \
570 sbc2410x \
571 scb9328 \
572 sheevaplug \
573 smdk2400 \
574 smdk2410 \
575 trab \
576 VCMA9 \
577 versatile \
578 versatileab \
579 versatilepb \
580 voiceblue \
581 davinci_dvevm \
582 davinci_schmoogie \
583 davinci_sffsdr \
584 davinci_sonata \
585 davinci_dm355evm \
586 davinci_dm355leopard \
587 davinci_dm6467evm \
588 "
589
590 #########################################################################
591 ## ARM10 Systems
592 #########################################################################
593 LIST_ARM10=" \
594 integratorcp \
595 cp1026 \
596 "
597
598 #########################################################################
599 ## ARM11 Systems
600 #########################################################################
601 LIST_ARM11=" \
602 cp1136 \
603 omap2420h4 \
604 apollon \
605 imx31_litekit \
606 imx31_phycore \
607 imx31_phycore_eet \
608 mx31ads \
609 mx31pdk \
610 mx31pdk_nand \
611 qong \
612 smdk6400 \
613 "
614
615 #########################################################################
616 ## ARM Cortex-A8 Systems
617 #########################################################################
618 LIST_ARM_CORTEX_A8=" \
619 devkit8000 \
620 omap3_beagle \
621 omap3_overo \
622 omap3_evm \
623 omap3_pandora \
624 omap3_sdp3430 \
625 omap3_zoom1 \
626 omap3_zoom2 \
627 smdkc100 \
628 "
629
630 #########################################################################
631 ## AT91 Systems
632 #########################################################################
633
634 LIST_at91=" \
635 afeb9260 \
636 at91cap9adk \
637 at91rm9200dk \
638 at91rm9200ek \
639 at91sam9260ek \
640 at91sam9261ek \
641 at91sam9263ek \
642 at91sam9g10ek \
643 at91sam9g20ek \
644 at91sam9m10g45ek \
645 at91sam9rlek \
646 cmc_pu2 \
647 CPUAT91 \
648 CPU9260 \
649 CPU9G20 \
650 csb637 \
651 kb9202 \
652 meesc \
653 mp2usb \
654 m501sk \
655 pm9261 \
656 pm9263 \
657 SBC35_A9G20 \
658 TNY_A9260 \
659 TNY_A9G20 \
660 "
661
662 #########################################################################
663 ## Xscale Systems
664 #########################################################################
665
666 LIST_pxa=" \
667 cerf250 \
668 cradle \
669 csb226 \
670 delta \
671 innokom \
672 lubbock \
673 pleb2 \
674 polaris \
675 pxa255_idp \
676 trizepsiv \
677 wepep250 \
678 xaeniax \
679 xm250 \
680 xsengine \
681 zylonite \
682 "
683
684 LIST_ixp=" \
685 actux1 \
686 actux2 \
687 actux3 \
688 actux4 \
689 ixdp425 \
690 ixdpg425 \
691 pdnb3 \
692 scpu \
693 "
694
695 #########################################################################
696 ## ARM groups
697 #########################################################################
698
699 LIST_arm=" \
700 ${LIST_SA} \
701 ${LIST_ARM7} \
702 ${LIST_ARM9} \
703 ${LIST_ARM10} \
704 ${LIST_ARM11} \
705 ${LIST_ARM_CORTEX_A8} \
706 ${LIST_at91} \
707 ${LIST_pxa} \
708 ${LIST_ixp} \
709 "
710
711 #########################################################################
712 ## MIPS Systems (default = big endian)
713 #########################################################################
714
715 LIST_mips4kc=" \
716 incaip \
717 qemu_mips \
718 vct_platinum \
719 vct_platinum_small \
720 vct_platinum_onenand \
721 vct_platinum_onenand_small \
722 vct_platinumavc \
723 vct_platinumavc_small \
724 vct_platinumavc_onenand \
725 vct_platinumavc_onenand_small \
726 vct_premium \
727 vct_premium_small \
728 vct_premium_onenand \
729 vct_premium_onenand_small \
730 "
731
732 LIST_mips5kc=" \
733 purple \
734 "
735
736 LIST_au1xx0=" \
737 dbau1000 \
738 dbau1100 \
739 dbau1500 \
740 dbau1550 \
741 dbau1550_el \
742 gth2 \
743 "
744
745 LIST_mips=" \
746 ${LIST_mips4kc} \
747 ${LIST_mips5kc} \
748 ${LIST_au1xx0} \
749 "
750
751 #########################################################################
752 ## MIPS Systems (little endian)
753 #########################################################################
754
755 LIST_mips4kc_el=""
756
757 LIST_mips5kc_el=""
758
759 LIST_au1xx0_el=" \
760 dbau1550_el \
761 pb1000 \
762 "
763
764 LIST_mips_el=" \
765 ${LIST_mips4kc_el} \
766 ${LIST_mips5kc_el} \
767 ${LIST_au1xx0_el} \
768 "
769
770 #########################################################################
771 ## i386 Systems
772 #########################################################################
773
774 LIST_I486=" \
775 sc520_cdp \
776 sc520_eNET \
777 sc520_spunk \
778 sc520_spunk_rel \
779 "
780
781 LIST_x86=" \
782 ${LIST_I486} \
783 "
784
785 #########################################################################
786 ## NIOS Systems
787 #########################################################################
788
789 LIST_nios=" \
790 ADNPESC1 \
791 ADNPESC1_base_32 \
792 ADNPESC1_DNPEVA2_base_32\
793 DK1C20 \
794 DK1C20_standard_32 \
795 DK1S10 \
796 DK1S10_standard_32 \
797 DK1S10_mtx_ldk_20 \
798 "
799
800 #########################################################################
801 ## Nios-II Systems
802 #########################################################################
803
804 LIST_nios2=" \
805 EP1C20 \
806 EP1S10 \
807 EP1S40 \
808 PCI5441 \
809 PK1C20 \
810 "
811
812 #########################################################################
813 ## MicroBlaze Systems
814 #########################################################################
815
816 LIST_microblaze=" \
817 microblaze-generic \
818 "
819
820 #########################################################################
821 ## ColdFire Systems
822 #########################################################################
823
824 LIST_coldfire=" \
825 cobra5272 \
826 EB+MCF-EV123 \
827 EB+MCF-EV123_internal \
828 idmr \
829 M5208EVBE \
830 M52277EVB \
831 M5235EVB \
832 M5249EVB \
833 M5253DEMO \
834 M5253EVBE \
835 M5271EVB \
836 M5272C3 \
837 M5275EVB \
838 M5282EVB \
839 M53017EVB \
840 M5329AFEE \
841 M5373EVB \
842 M54451EVB \
843 M54455EVB \
844 M5475AFE \
845 M5485AFE \
846 TASREG \
847 "
848
849 #########################################################################
850 ## AVR32 Systems
851 #########################################################################
852
853 LIST_avr32=" \
854 atstk1002 \
855 atstk1003 \
856 atstk1004 \
857 atstk1006 \
858 atngw100 \
859 favr-32-ezkit \
860 hammerhead \
861 mimc200 \
862 "
863
864 #########################################################################
865 ## Blackfin Systems
866 #########################################################################
867
868 LIST_blackfin=" \
869 bf518f-ezbrd \
870 bf526-ezbrd \
871 bf527-ezkit \
872 bf533-ezkit \
873 bf533-stamp \
874 bf537-minotaur \
875 bf537-pnav \
876 bf537-srv1 \
877 bf537-stamp \
878 bf538f-ezkit \
879 bf548-ezkit \
880 bf561-ezkit \
881 blackstamp \
882 cm-bf527 \
883 cm-bf533 \
884 cm-bf537e \
885 cm-bf537u \
886 cm-bf548 \
887 cm-bf561 \
888 ibf-dsp561 \
889 tcm-bf537 \
890 "
891
892 #########################################################################
893 ## SH Systems
894 #########################################################################
895
896 LIST_sh2=" \
897 rsk7203 \
898 "
899 LIST_sh3=" \
900 mpr2 \
901 ms7720se \
902 "
903
904 LIST_sh4=" \
905 ms7750se \
906 ms7722se \
907 MigoR \
908 r7780mp \
909 r2dplus \
910 sh7763rdp \
911 sh7785lcr \
912 ap325rxa \
913 espt \
914 "
915
916 LIST_sh=" \
917 ${LIST_sh2} \
918 ${LIST_sh3} \
919 ${LIST_sh4} \
920 "
921
922 #########################################################################
923 ## SPARC Systems
924 #########################################################################
925
926 LIST_sparc="gr_xc3s_1500 gr_cpci_ax2000 gr_ep2s60 grsim grsim_leon2"
927
928 #-----------------------------------------------------------------------
929
930 #----- for now, just run PPC by default -----
931 [ $# = 0 ] && set $LIST_ppc
932
933 #-----------------------------------------------------------------------
934
935 build_target() {
936 target=$1
937
938 ${MAKE} distclean >/dev/null
939 ${MAKE} ${target}_config
940
941 ${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
942 | tee ${LOG_DIR}/$target.ERR
943
944 # Check for 'make' errors
945 if [ ${PIPESTATUS[0]} -ne 0 ] ; then
946 RC=1
947 fi
948
949 if [ -s ${LOG_DIR}/$target.ERR ] ; then
950 ERR_CNT=$((ERR_CNT + 1))
951 ERR_LIST="${ERR_LIST} $target"
952 else
953 rm ${LOG_DIR}/$target.ERR
954 fi
955
956 TOTAL_CNT=$((TOTAL_CNT + 1))
957
958 ${CROSS_COMPILE}size ${BUILD_DIR}/u-boot \
959 | tee -a ${LOG_DIR}/$target.MAKELOG
960 }
961
962 #-----------------------------------------------------------------------
963
964 print_stats() {
965 echo ""
966 echo "--------------------- SUMMARY ----------------------------"
967 echo "Boards compiled: ${TOTAL_CNT}"
968 if [ ${ERR_CNT} -gt 0 ] ; then
969 echo "Boards with warnings or errors: ${ERR_CNT} (${ERR_LIST} )"
970 fi
971 echo "----------------------------------------------------------"
972
973 exit $RC
974 }
975
976 #-----------------------------------------------------------------------
977 for arg in $@
978 do
979 case "$arg" in
980 arm|SA|ARM7|ARM9|ARM10|ARM11|ARM_CORTEX_A8|at91|ixp|pxa \
981 |avr32 \
982 |blackfin \
983 |coldfire \
984 |microblaze \
985 |mips|mips_el \
986 |nios|nios2 \
987 |ppc|5xx|5xxx|512x|8xx|8220|824x|8260|83xx|85xx|86xx|4xx|7xx|74xx|TSEC \
988 |sh|sh2|sh3|sh4 \
989 |sparc \
990 |x86|I486 \
991 )
992 for target in `eval echo '$LIST_'${arg}`
993 do
994 build_target ${target}
995 done
996 ;;
997 *) build_target ${arg}
998 ;;
999 esac
1000 done