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