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