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