Merge branch 'master' of git://git.denx.de/u-boot-microblaze
[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         MPC8313ERDB_33  \
339         MPC8313ERDB_NAND_66     \
340         MPC8315ERDB     \
341         MPC8323ERDB     \
342         MPC832XEMDS     \
343         MPC832XEMDS_ATM \
344         MPC8349EMDS     \
345         MPC8349ITX      \
346         MPC8349ITXGP    \
347         MPC8360EMDS     \
348         MPC8360EMDS_ATM \
349         MPC8360ERDK_33  \
350         MPC8360ERDK_66  \
351         MPC837XEMDS     \
352         MPC837XERDB     \
353         MVBLM7          \
354         sbc8349         \
355         TQM834x         \
356 "
357
358
359 #########################################################################
360 ## MPC85xx Systems (includes 8540, 8560 etc.)
361 #########################################################################
362
363 LIST_85xx="             \
364         ATUM8548        \
365         MPC8536DS       \
366         MPC8540ADS      \
367         MPC8540EVAL     \
368         MPC8541CDS      \
369         MPC8544DS       \
370         MPC8548CDS      \
371         MPC8555CDS      \
372         MPC8560ADS      \
373         MPC8568MDS      \
374         MPC8572DS       \
375         PM854           \
376         PM856           \
377         sbc8540         \
378         sbc8548         \
379         sbc8560         \
380         socrates        \
381         stxgp3          \
382         stxssa          \
383         TQM8540         \
384         TQM8541         \
385         TQM8548         \
386         TQM8555         \
387         TQM8560         \
388         XPEDITE5200     \
389         XPEDITE5370     \
390 "
391
392 #########################################################################
393 ## MPC86xx Systems
394 #########################################################################
395
396 LIST_86xx="             \
397         MPC8610HPCD     \
398         MPC8641HPCN     \
399         sbc8641d        \
400 "
401
402 #########################################################################
403 ## 74xx/7xx Systems
404 #########################################################################
405
406 LIST_74xx="             \
407         DB64360         \
408         DB64460         \
409         EVB64260        \
410         mpc7448hpc2     \
411         P3G4            \
412         p3m7448         \
413         PCIPPC2         \
414         PCIPPC6         \
415         ZUMA            \
416 "
417
418 LIST_7xx="              \
419         BAB7xx          \
420         CPCI750         \
421         ELPPC           \
422         p3m750          \
423         ppmc7xx         \
424 "
425
426 #########################################################################
427 ## PowerPC groups
428 #########################################################################
429
430 LIST_TSEC="             \
431         ${LIST_83xx}    \
432         ${LIST_85xx}    \
433         ${LIST_86xx}    \
434 "
435
436 LIST_ppc="              \
437         ${LIST_5xx}     \
438         ${LIST_512x}    \
439         ${LIST_5xxx}    \
440         ${LIST_8xx}     \
441         ${LIST_8220}    \
442         ${LIST_824x}    \
443         ${LIST_8260}    \
444         ${LIST_83xx}    \
445         ${LIST_85xx}    \
446         ${LIST_86xx}    \
447         ${LIST_4xx}     \
448         ${LIST_74xx}    \
449         ${LIST_7xx}     \
450 "
451
452 #########################################################################
453 ## StrongARM Systems
454 #########################################################################
455
456 LIST_SA="               \
457         assabet         \
458         dnp1110         \
459         gcplus          \
460         lart            \
461         shannon         \
462 "
463
464 #########################################################################
465 ## ARM7 Systems
466 #########################################################################
467
468 LIST_ARM7="             \
469         ap7             \
470         ap720t          \
471         armadillo       \
472         B2              \
473         ep7312          \
474         evb4510         \
475         impa7           \
476         integratorap    \
477         lpc2292sodimm   \
478         modnet50        \
479         SMN42           \
480 "
481
482 #########################################################################
483 ## ARM9 Systems
484 #########################################################################
485
486 LIST_ARM9="                     \
487         ap920t                  \
488         ap922_XA10              \
489         ap926ejs                \
490         ap946es                 \
491         ap966                   \
492         cp920t                  \
493         cp922_XA10              \
494         cp926ejs                \
495         cp946es                 \
496         cp966                   \
497         lpd7a400                \
498         mx1ads                  \
499         mx1fs2                  \
500         netstar                 \
501         omap1510inn             \
502         omap1610h2              \
503         omap1610inn             \
504         omap5912osk             \
505         omap730p2               \
506         sbc2410x                \
507         scb9328                 \
508         smdk2400                \
509         smdk2410                \
510         trab                    \
511         VCMA9                   \
512         versatile               \
513         versatileab             \
514         versatilepb             \
515         voiceblue               \
516         davinci_dvevm           \
517         davinci_schmoogie       \
518         davinci_sffsdr          \
519         davinci_sonata          \
520 "
521
522 #########################################################################
523 ## ARM10 Systems
524 #########################################################################
525 LIST_ARM10="            \
526         integratorcp    \
527         cp1026          \
528 "
529
530 #########################################################################
531 ## ARM11 Systems
532 #########################################################################
533 LIST_ARM11="            \
534         cp1136          \
535         omap2420h4      \
536         apollon         \
537         imx31_litekit   \
538         imx31_phycore   \
539         mx31ads         \
540         smdk6400        \
541 "
542
543 #########################################################################
544 ## AT91 Systems
545 #########################################################################
546
547 LIST_at91="             \
548         afeb9260        \
549         at91cap9adk     \
550         at91rm9200dk    \
551         at91sam9260ek   \
552         at91sam9261ek   \
553         at91sam9263ek   \
554         at91sam9rlek    \
555         cmc_pu2         \
556         csb637          \
557         kb9202          \
558         mp2usb          \
559         m501sk          \
560 "
561
562 #########################################################################
563 ## Xscale Systems
564 #########################################################################
565
566 LIST_pxa="              \
567         cerf250         \
568         cradle          \
569         csb226          \
570         delta           \
571         innokom         \
572         lubbock         \
573         pleb2           \
574         pxa255_idp      \
575         wepep250        \
576         xaeniax         \
577         xm250           \
578         xsengine        \
579         zylonite        \
580 "
581
582 LIST_ixp="              \
583         actux1          \
584         actux2          \
585         actux3          \
586         actux4          \
587         ixdp425         \
588         ixdpg425        \
589         pdnb3           \
590         scpu            \
591 "
592
593 #########################################################################
594 ## ARM groups
595 #########################################################################
596
597 LIST_arm="              \
598         ${LIST_SA}      \
599         ${LIST_ARM7}    \
600         ${LIST_ARM9}    \
601         ${LIST_ARM10}   \
602         ${LIST_ARM11}   \
603         ${LIST_at91}    \
604         ${LIST_pxa}     \
605         ${LIST_ixp}     \
606 "
607
608 #########################################################################
609 ## MIPS Systems         (default = big endian)
610 #########################################################################
611
612 LIST_mips4kc="          \
613         incaip          \
614         qemu_mips       \
615 "
616
617 LIST_mips5kc="          \
618         purple          \
619 "
620
621 LIST_au1xx0="           \
622         dbau1000        \
623         dbau1100        \
624         dbau1500        \
625         dbau1550        \
626         dbau1550_el     \
627         gth2            \
628 "
629
630 LIST_mips="             \
631         ${LIST_mips4kc} \
632         ${LIST_mips5kc} \
633         ${LIST_au1xx0}  \
634 "
635
636 #########################################################################
637 ## MIPS Systems         (little endian)
638 #########################################################################
639
640 LIST_mips4kc_el=""
641
642 LIST_mips5kc_el=""
643
644 LIST_au1xx0_el="        \
645         dbau1550_el     \
646         pb1000          \
647 "
648
649 LIST_mips_el="                  \
650         ${LIST_mips4kc_el}      \
651         ${LIST_mips5kc_el}      \
652         ${LIST_au1xx0_el}       \
653 "
654
655 #########################################################################
656 ## i386 Systems
657 #########################################################################
658
659 LIST_I486="             \
660         sc520_cdp       \
661         sc520_spunk     \
662         sc520_spunk_rel \
663 "
664
665 LIST_x86="              \
666         ${LIST_I486}    \
667 "
668
669 #########################################################################
670 ## NIOS Systems
671 #########################################################################
672
673 LIST_nios="                     \
674         ADNPESC1                \
675         ADNPESC1_base_32        \
676         ADNPESC1_DNPEVA2_base_32\
677         DK1C20                  \
678         DK1C20_standard_32      \
679         DK1S10                  \
680         DK1S10_standard_32      \
681         DK1S10_mtx_ldk_20       \
682 "
683
684 #########################################################################
685 ## Nios-II Systems
686 #########################################################################
687
688 LIST_nios2="            \
689         EP1C20          \
690         EP1S10          \
691         EP1S40          \
692         PCI5441         \
693         PK1C20          \
694 "
695
696 #########################################################################
697 ## MicroBlaze Systems
698 #########################################################################
699
700 LIST_microblaze="                       \
701         microblaze-generic              \
702         suzaku                          \
703 "
704
705 #########################################################################
706 ## ColdFire Systems
707 #########################################################################
708
709 LIST_coldfire="                 \
710         cobra5272               \
711         EB+MCF-EV123            \
712         EB+MCF-EV123_internal   \
713         idmr                    \
714         M52277EVB               \
715         M5235EVB                \
716         M5249EVB                \
717         M5253DEMO               \
718         M5253EVBE               \
719         M5271EVB                \
720         M5272C3                 \
721         M5275EVB                \
722         M5282EVB                \
723         M53017EVB               \
724         M5329AFEE               \
725         M5373EVB                \
726         M54451EVB               \
727         M54455EVB               \
728         M5475AFE                \
729         M5485AFE                \
730         TASREG                  \
731 "
732
733 #########################################################################
734 ## AVR32 Systems
735 #########################################################################
736
737 LIST_avr32="            \
738         atstk1002       \
739         atstk1003       \
740         atstk1004       \
741         atstk1006       \
742         atngw100        \
743         favr-32-ezkit   \
744         hammerhead      \
745         mimc200         \
746 "
747
748 #########################################################################
749 ## Blackfin Systems
750 #########################################################################
751
752 LIST_blackfin="         \
753         bf533-ezkit     \
754         bf533-stamp     \
755         bf537-stamp     \
756         bf561-ezkit     \
757 "
758
759 #########################################################################
760 ## SH Systems
761 #########################################################################
762
763 LIST_sh2="              \
764         rsk7203         \
765 "
766 LIST_sh3="              \
767         mpr2            \
768         ms7720se        \
769 "
770
771 LIST_sh4="              \
772         ms7750se        \
773         ms7722se        \
774         MigoR           \
775         r7780mp         \
776         r2dplus         \
777         sh7763rdp       \
778         sh7785lcr       \
779         ap325rxa        \
780 "
781
782 LIST_sh="               \
783         ${LIST_sh2}     \
784         ${LIST_sh3}     \
785         ${LIST_sh4}     \
786 "
787
788 #########################################################################
789 ## SPARC Systems
790 #########################################################################
791
792 LIST_sparc="gr_xc3s_1500        gr_cpci_ax2000  gr_ep2s60       grsim   grsim_leon2"
793
794 #-----------------------------------------------------------------------
795
796 #----- for now, just run PPC by default -----
797 [ $# = 0 ] && set $LIST_ppc
798
799 #-----------------------------------------------------------------------
800
801 build_target() {
802         target=$1
803
804         ${MAKE} distclean >/dev/null
805         ${MAKE} ${target}_config
806
807         ${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
808                                 | tee ${LOG_DIR}/$target.ERR
809
810         ${CROSS_COMPILE}size ${BUILD_DIR}/u-boot \
811                                 | tee -a ${LOG_DIR}/$target.MAKELOG
812 }
813
814 #-----------------------------------------------------------------------
815
816
817 for arg in $@
818 do
819         case "$arg" in
820         arm|SA|ARM7|ARM9|ARM10|ARM11|at91|ixp|pxa \
821         |avr32 \
822         |blackfin \
823         |coldfire \
824         |microblaze \
825         |mips|mips_el \
826         |nios|nios2 \
827         |ppc|5xx|5xxx|512x|8xx|8220|824x|8260|83xx|85xx|86xx|4xx|7xx|74xx|TSEC \
828         |sh|sh2|sh3|sh4 \
829         |sparc \
830         |x86|I486 \
831         )
832                         for target in `eval echo '$LIST_'${arg}`
833                         do
834                                 build_target ${target}
835                         done
836                         ;;
837         *)              build_target ${arg}
838                         ;;
839         esac
840 done