3cb1d246e3f417a178860b77adf1aa2b08129986
[platform/kernel/u-boot.git] / MAKEALL
1 #!/bin/sh
2
3 : ${JOBS:=}
4
5 if [ "${CROSS_COMPILE}" ] ; then
6         MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
7 else
8         MAKE=make
9 fi
10
11 if [ "${MAKEALL_LOGDIR}" ] ; then
12         LOG_DIR=${MAKEALL_LOGDIR}
13 else
14         LOG_DIR="LOG"
15 fi
16
17 if [ ! "${BUILD_DIR}" ] ; then
18         BUILD_DIR="."
19 fi
20
21 [ -d ${LOG_DIR} ] || mkdir ${LOG_DIR} || exit 1
22
23 LIST=""
24
25 #########################################################################
26 ## MPC5xx Systems
27 #########################################################################
28
29 LIST_5xx="              \
30         cmi_mpc5xx      \
31 "
32
33 #########################################################################
34 ## MPC5xxx Systems
35 #########################################################################
36
37 LIST_5xxx="             \
38         BC3450          \
39         cm5200          \
40         cpci5200        \
41         EVAL5200        \
42         fo300           \
43         icecube_5100    \
44         icecube_5200    \
45         inka4x0         \
46         lite5200b       \
47         mcc200          \
48         mecp5200        \
49         motionpro       \
50         munices         \
51         o2dnt           \
52         pf5200          \
53         PM520           \
54         TB5200          \
55         Total5100       \
56         Total5200       \
57         Total5200_Rev2  \
58         TQM5200         \
59         TQM5200_B       \
60         TQM5200S        \
61         v38b            \
62 "
63
64 #########################################################################
65 ## MPC512x Systems
66 #########################################################################
67
68 LIST_512x="             \
69         ads5121         \
70 "
71
72 #########################################################################
73 ## MPC8xx Systems
74 #########################################################################
75 LIST_8xx="              \
76         Adder87x        \
77         AdderII         \
78         ADS860          \
79         AMX860          \
80         c2mon           \
81         CCM             \
82         cogent_mpc8xx   \
83         ELPT860         \
84         EP88x           \
85         ESTEEM192E      \
86         ETX094          \
87         FADS823         \
88         FADS850SAR      \
89         FADS860T        \
90         FLAGADM         \
91         FPS850L         \
92         GEN860T         \
93         GEN860T_SC      \
94         GENIETV         \
95         GTH             \
96         hermes          \
97         IAD210          \
98         ICU862_100MHz   \
99         IP860           \
100         IVML24          \
101         IVML24_128      \
102         IVML24_256      \
103         IVMS8           \
104         IVMS8_128       \
105         IVMS8_256       \
106         KUP4K           \
107         KUP4X           \
108         LANTEC          \
109         lwmon           \
110         MBX             \
111         MBX860T         \
112         mgsuvd          \
113         MHPC            \
114         MPC86xADS       \
115         MPC885ADS       \
116         MVS1            \
117         NETPHONE        \
118         NETTA           \
119         NETTA2          \
120         NETTA_ISDN      \
121         NETVIA          \
122         NETVIA_V2       \
123         NX823           \
124         pcu_e           \
125         QS823           \
126         QS850           \
127         QS860T          \
128         quantum         \
129         R360MPI         \
130         RBC823          \
131         rmu             \
132         RPXClassic      \
133         RPXlite         \
134         RPXlite_DW      \
135         RRvision        \
136         SM850           \
137         spc1920         \
138         SPD823TS        \
139         svm_sc8xx       \
140         SXNI855T        \
141         TK885D          \
142         TOP860          \
143         TQM823L         \
144         TQM823L_LCD     \
145         TQM850L         \
146         TQM855L         \
147         TQM860L         \
148         TQM885D         \
149         uc100           \
150         v37             \
151 "
152
153 #########################################################################
154 ## PPC4xx Systems
155 #########################################################################
156
157 LIST_4xx="              \
158         acadia          \
159         acadia_nand     \
160         ADCIOP          \
161         alpr            \
162         AP1000          \
163         AR405           \
164         ASH405          \
165         bamboo          \
166         bamboo_nand     \
167         bubinga         \
168         CANBT           \
169         canyonlands     \
170         canyonlands_nand \
171         CMS700          \
172         CPCI2DP         \
173         CPCI405         \
174         CPCI4052        \
175         CPCI405AB       \
176         CPCI405DT       \
177         CPCIISER4       \
178         CRAYL1          \
179         csb272          \
180         csb472          \
181         DASA_SIM        \
182         DP405           \
183         DU405           \
184         DU440           \
185         ebony           \
186         ERIC            \
187         EXBITGEN        \
188         G2000           \
189         glacier         \
190         haleakala       \
191         haleakala_nand  \
192         hcu4            \
193         hcu5            \
194         HH405           \
195         HUB405          \
196         JSE             \
197         KAREF           \
198         katmai          \
199         kilauea         \
200         kilauea_nand    \
201         korat           \
202         luan            \
203         lwmon5          \
204         makalu          \
205         mcu25           \
206         METROBOX        \
207         MIP405          \
208         MIP405T         \
209         ML2             \
210         ml300           \
211         ocotea          \
212         OCRTC           \
213         ORSG            \
214         p3p440          \
215         PCI405          \
216         pcs440ep        \
217         PIP405          \
218         PLU405          \
219         PMC405          \
220         PMC440          \
221         PPChameleonEVB  \
222         quad100hd       \
223         rainier         \
224         sbc405          \
225         sc3             \
226         sequoia         \
227         sequoia_nand    \
228         taihu           \
229         taishan         \
230         VOH405          \
231         VOM405          \
232         W7OLMC          \
233         W7OLMG          \
234         walnut          \
235         WUH405          \
236         XPEDITE1K       \
237         yellowstone     \
238         yosemite        \
239         yucca           \
240         zeus            \
241 "
242
243 #########################################################################
244 ## MPC8220 Systems
245 #########################################################################
246
247 LIST_8220="             \
248         Alaska8220      \
249         Yukon8220       \
250 "
251
252 #########################################################################
253 ## MPC824x Systems
254 #########################################################################
255
256 LIST_824x="             \
257         A3000           \
258         barco           \
259         BMW             \
260         CPC45           \
261         CU824           \
262         debris          \
263         eXalion         \
264         HIDDEN_DRAGON   \
265         linkstation_HGLAN       \
266         MOUSSE          \
267         MUSENKI         \
268         MVBLUE          \
269         OXC             \
270         PN62            \
271         Sandpoint8240   \
272         Sandpoint8245   \
273         sbc8240         \
274         SL8245          \
275         utx8245         \
276 "
277
278 #########################################################################
279 ## MPC8260 Systems (includes 8250, 8255 etc.)
280 #########################################################################
281
282 LIST_8260="             \
283         atc             \
284         cogent_mpc8260  \
285         CPU86           \
286         CPU87           \
287         ep8248          \
288         ep8260          \
289         ep82xxm         \
290         gw8260          \
291         hymod           \
292         IPHASE4539      \
293         ISPAN           \
294         mgcoge          \
295         MPC8260ADS      \
296         MPC8266ADS      \
297         MPC8272ADS      \
298         PM826           \
299         PM828           \
300         ppmc8260        \
301         Rattler8248     \
302         RPXsuper        \
303         rsdproto        \
304         sacsng          \
305         sbc8260         \
306         SCM             \
307         TQM8260_AC      \
308         TQM8260_AD      \
309         TQM8260_AE      \
310         TQM8272         \
311         ZPC1900         \
312 "
313
314 #########################################################################
315 ## MPC83xx Systems (includes 8349, etc.)
316 #########################################################################
317
318 LIST_83xx="             \
319         MPC8313ERDB_33  \
320         MPC8313ERDB_66  \
321         MPC8315ERDB     \
322         MPC8323ERDB     \
323         MPC832XEMDS     \
324         MPC832XEMDS_ATM \
325         MPC8349EMDS     \
326         MPC8349ITX      \
327         MPC8349ITXGP    \
328         MPC8360EMDS     \
329         MPC8360EMDS_ATM \
330         MPC8360ERDK_33  \
331         MPC8360ERDK_66  \
332         MPC837XEMDS     \
333         MPC837XERDB     \
334         sbc8349         \
335         TQM834x         \
336 "
337
338
339 #########################################################################
340 ## MPC85xx Systems (includes 8540, 8560 etc.)
341 #########################################################################
342
343 LIST_85xx="             \
344         ATUM8548        \
345         MPC8540ADS      \
346         MPC8540EVAL     \
347         MPC8541CDS      \
348         MPC8544DS       \
349         MPC8548CDS      \
350         MPC8555CDS      \
351         MPC8560ADS      \
352         MPC8568MDS      \
353         PM854           \
354         PM856           \
355         sbc8540         \
356         sbc8548         \
357         sbc8560         \
358         socrates        \
359         stxgp3          \
360         stxssa          \
361         TQM8540         \
362         TQM8541         \
363         TQM8555         \
364         TQM8560         \
365 "
366
367 #########################################################################
368 ## MPC86xx Systems
369 #########################################################################
370
371 LIST_86xx="             \
372         MPC8610HPCD     \
373         MPC8641HPCN     \
374         sbc8641d        \
375 "
376
377 #########################################################################
378 ## 74xx/7xx Systems
379 #########################################################################
380
381 LIST_74xx="             \
382         DB64360         \
383         DB64460         \
384         EVB64260        \
385         mpc7448hpc2     \
386         P3G4            \
387         p3m7448         \
388         PCIPPC2         \
389         PCIPPC6         \
390         ZUMA            \
391 "
392
393 LIST_7xx="              \
394         BAB7xx          \
395         CPCI750         \
396         ELPPC           \
397         p3m750          \
398         ppmc7xx         \
399 "
400
401 #########################################################################
402 ## PowerPC groups
403 #########################################################################
404
405 LIST_TSEC="             \
406         ${LIST_83xx}    \
407         ${LIST_85xx}    \
408         ${LIST_86xx}    \
409 "
410
411 LIST_ppc="              \
412         ${LIST_5xx}     \
413         ${LIST_512x}    \
414         ${LIST_5xxx}    \
415         ${LIST_8xx}     \
416         ${LIST_8220}    \
417         ${LIST_824x}    \
418         ${LIST_8260}    \
419         ${LIST_83xx}    \
420         ${LIST_85xx}    \
421         ${LIST_86xx}    \
422         ${LIST_4xx}     \
423         ${LIST_74xx}    \
424         ${LIST_7xx}     \
425 "
426
427 #########################################################################
428 ## StrongARM Systems
429 #########################################################################
430
431 LIST_SA="               \
432         assabet         \
433         dnp1110         \
434         gcplus          \
435         lart            \
436         shannon         \
437 "
438
439 #########################################################################
440 ## ARM7 Systems
441 #########################################################################
442
443 LIST_ARM7="             \
444         ap7             \
445         ap720t          \
446         armadillo       \
447         B2              \
448         ep7312          \
449         evb4510         \
450         impa7           \
451         integratorap    \
452         lpc2292sodimm   \
453         modnet50        \
454         SMN42           \
455 "
456
457 #########################################################################
458 ## ARM9 Systems
459 #########################################################################
460
461 LIST_ARM9="                     \
462         at91cap9adk             \
463         at91rm9200dk            \
464         at91sam9260ek           \
465         at91sam9261ek           \
466         at91sam9263ek           \
467         at91sam9rlek            \
468         cmc_pu2                 \
469         ap920t                  \
470         ap922_XA10              \
471         ap926ejs                \
472         ap946es                 \
473         ap966                   \
474         cp920t                  \
475         cp922_XA10              \
476         cp926ejs                \
477         cp946es                 \
478         cp966                   \
479         csb637                  \
480         kb9202                  \
481         lpd7a400                \
482         m501sk                  \
483         mp2usb                  \
484         mx1ads                  \
485         mx1fs2                  \
486         netstar                 \
487         omap1510inn             \
488         omap1610h2              \
489         omap1610inn             \
490         omap5912osk             \
491         omap730p2               \
492         sbc2410x                \
493         scb9328                 \
494         smdk2400                \
495         smdk2410                \
496         trab                    \
497         VCMA9                   \
498         versatile               \
499         versatileab             \
500         versatilepb             \
501         voiceblue               \
502         davinci_dvevm           \
503         davinci_schmoogie       \
504         davinci_sonata          \
505 "
506
507 #########################################################################
508 ## ARM10 Systems
509 #########################################################################
510 LIST_ARM10="            \
511         integratorcp    \
512         cp1026          \
513 "
514
515 #########################################################################
516 ## ARM11 Systems
517 #########################################################################
518 LIST_ARM11="            \
519         cp1136          \
520         omap2420h4      \
521         apollon         \
522         imx31_litekit   \
523         imx31_phycore   \
524         mx31ads         \
525 "
526
527 #########################################################################
528 ## AT91 Systems
529 #########################################################################
530
531 LIST_at91="             \
532         at91cap9adk     \
533         at91rm9200dk    \
534         at91sam9260ek   \
535         at91sam9261ek   \
536         at91sam9263ek   \
537         at91sam9rlek    \
538         cmc_pu2         \
539         csb637          \
540         kb9202          \
541         mp2usb          \
542         m501sk          \
543 "
544
545 #########################################################################
546 ## Xscale Systems
547 #########################################################################
548
549 LIST_pxa="              \
550         adsvix          \
551         cerf250         \
552         cradle          \
553         csb226          \
554         delta           \
555         innokom         \
556         lubbock         \
557         pleb2           \
558         pxa255_idp      \
559         wepep250        \
560         xaeniax         \
561         xm250           \
562         xsengine        \
563         zylonite        \
564 "
565
566 LIST_ixp="              \
567         actux1          \
568         actux2          \
569         actux3          \
570         actux4          \
571         ixdp425         \
572         ixdpg425        \
573         pdnb3           \
574         scpu            \
575 "
576
577 #########################################################################
578 ## ARM groups
579 #########################################################################
580
581 LIST_arm="              \
582         ${LIST_SA}      \
583         ${LIST_ARM7}    \
584         ${LIST_ARM9}    \
585         ${LIST_ARM10}   \
586         ${LIST_ARM11}   \
587         ${LIST_pxa}     \
588         ${LIST_ixp}     \
589 "
590
591 #########################################################################
592 ## MIPS Systems         (default = big endian)
593 #########################################################################
594
595 LIST_mips4kc="          \
596         incaip          \
597         qemu_mips       \
598 "
599
600 LIST_mips5kc="          \
601         purple          \
602 "
603
604 LIST_au1xx0="           \
605         dbau1000        \
606         dbau1100        \
607         dbau1500        \
608         dbau1550        \
609         dbau1550_el     \
610         gth2            \
611 "
612
613 LIST_mips="             \
614         ${LIST_mips4kc} \
615         ${LIST_mips5kc} \
616         ${LIST_au1xx0}  \
617 "
618
619 #########################################################################
620 ## MIPS Systems         (little endian)
621 #########################################################################
622
623 LIST_mips4kc_el=""
624
625 LIST_mips5kc_el=""
626
627 LIST_au1xx0_el="        \
628         dbau1550_el     \
629         pb1000          \
630 "
631
632 LIST_mips_el="                  \
633         ${LIST_mips4kc_el}      \
634         ${LIST_mips5kc_el}      \
635         ${LIST_au1xx0_el}       \
636 "
637
638 #########################################################################
639 ## i386 Systems
640 #########################################################################
641
642 LIST_I486="             \
643         sc520_cdp       \
644         sc520_spunk     \
645         sc520_spunk_rel \
646 "
647
648 LIST_x86="              \
649         ${LIST_I486}    \
650 "
651
652 #########################################################################
653 ## NIOS Systems
654 #########################################################################
655
656 LIST_nios="                     \
657         ADNPESC1                \
658         ADNPESC1_base_32        \
659         ADNPESC1_DNPEVA2_base_32\
660         DK1C20                  \
661         DK1C20_standard_32      \
662         DK1S10                  \
663         DK1S10_standard_32      \
664         DK1S10_mtx_ldk_20       \
665 "
666
667 #########################################################################
668 ## Nios-II Systems
669 #########################################################################
670
671 LIST_nios2="            \
672         EP1C20          \
673         EP1S10          \
674         EP1S40          \
675         PCI5441         \
676         PK1C20          \
677 "
678
679 #########################################################################
680 ## MicroBlaze Systems
681 #########################################################################
682
683 LIST_microblaze="       \
684         ml401           \
685         suzaku          \
686         xupv2p          \
687 "
688
689 #########################################################################
690 ## ColdFire Systems
691 #########################################################################
692
693 LIST_coldfire="                 \
694         cobra5272               \
695         EB+MCF-EV123            \
696         EB+MCF-EV123_internal   \
697         idmr                    \
698         M52277EVB               \
699         M5235EVB                \
700         M5249EVB                \
701         M5253EVB                \
702         M5271EVB                \
703         M5272C3                 \
704         M5275EVB                \
705         M5282EVB                \
706         M5329AFEE               \
707         M5373EVB                \
708         M54455EVB               \
709         M5475AFE                \
710         M5485AFE                \
711         TASREG                  \
712 "
713
714 #########################################################################
715 ## AVR32 Systems
716 #########################################################################
717
718 LIST_avr32="            \
719         atstk1002       \
720         atstk1003       \
721         atstk1004       \
722         atstk1006       \
723         atngw100        \
724 "
725
726 #########################################################################
727 ## Blackfin Systems
728 #########################################################################
729
730 LIST_blackfin="         \
731         bf533-ezkit     \
732         bf533-stamp     \
733         bf537-stamp     \
734         bf561-ezkit     \
735 "
736
737 #########################################################################
738 ## SH Systems
739 #########################################################################
740
741 LIST_sh3="              \
742         mpr2            \
743         ms7720se        \
744 "
745
746 LIST_sh4="              \
747         ms7750se        \
748         ms7722se        \
749         Migo-R          \
750         r7780mp         \
751         r2dplus         \
752 "
753
754 LIST_sh="               \
755         ${LIST_sh3}     \
756         ${LIST_sh4}     \
757 "
758
759 #########################################################################
760 ## SPARC Systems
761 #########################################################################
762
763 LIST_sparc="gr_xc3s_1500        gr_cpci_ax2000  gr_ep2s60       grsim   grsim_leon2"
764
765 #-----------------------------------------------------------------------
766
767 #----- for now, just run PPC by default -----
768 [ $# = 0 ] && set $LIST_ppc
769
770 #-----------------------------------------------------------------------
771
772 build_target() {
773         target=$1
774
775         ${MAKE} distclean >/dev/null
776         ${MAKE} ${target}_config
777
778         ${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
779                                 | tee ${LOG_DIR}/$target.ERR
780
781         ${CROSS_COMPILE}size ${BUILD_DIR}/u-boot \
782                                 | tee -a ${LOG_DIR}/$target.MAKELOG
783 }
784
785 #-----------------------------------------------------------------------
786
787
788 for arg in $@
789 do
790         case "$arg" in
791         arm|SA|ARM7|ARM9|ARM10|ARM11|at91|ixp|pxa \
792         |avr32 \
793         |blackfin \
794         |coldfire \
795         |microblaze \
796         |mips|mips_el \
797         |nios|nios2 \
798         |ppc|5xx|5xxx|512x|8xx|8220|824x|8260|83xx|85xx|86xx|4xx|7xx|74xx|TSEC \
799         |sh|sh3|sh4 \
800         |sparc \
801         |x86|I486 \
802         )
803                         for target in `eval echo '$LIST_'${arg}`
804                         do
805                                 build_target ${target}
806                         done
807                         ;;
808         *)              build_target ${arg}
809                         ;;
810         esac
811 done