#!/bin/sh # Determine number of CPU cores if no default was set : ${BUILD_NCPUS:="`getconf _NPROCESSORS_ONLN`"} if [ "$BUILD_NCPUS" -gt 1 ] then JOBS=-j`expr "$BUILD_NCPUS" + 1` else JOBS="" fi if [ "${CROSS_COMPILE}" ] ; then MAKE="make CROSS_COMPILE=${CROSS_COMPILE}" else MAKE=make fi if [ "${MAKEALL_LOGDIR}" ] ; then LOG_DIR=${MAKEALL_LOGDIR} else LOG_DIR="LOG" fi if [ ! "${BUILD_DIR}" ] ; then BUILD_DIR="." fi [ -d ${LOG_DIR} ] || mkdir ${LOG_DIR} || exit 1 LIST="" ######################################################################### ## MPC5xx Systems ######################################################################### LIST_5xx=" \ cmi_mpc5xx \ " ######################################################################### ## MPC5xxx Systems ######################################################################### LIST_5xxx=" \ BC3450 \ cm5200 \ cpci5200 \ EVAL5200 \ fo300 \ icecube_5100 \ icecube_5200 \ inka4x0 \ lite5200b \ mcc200 \ mecp5200 \ motionpro \ munices \ MVBC_P \ o2dnt \ pf5200 \ PM520 \ TB5200 \ Total5100 \ Total5200 \ Total5200_Rev2 \ TQM5200 \ TQM5200_B \ TQM5200S \ v38b \ " ######################################################################### ## MPC512x Systems ######################################################################### LIST_512x=" \ ads5121 \ " ######################################################################### ## MPC8xx Systems ######################################################################### LIST_8xx=" \ Adder87x \ AdderII \ ADS860 \ AMX860 \ c2mon \ CCM \ cogent_mpc8xx \ ELPT860 \ EP88x \ ESTEEM192E \ ETX094 \ FADS823 \ FADS850SAR \ FADS860T \ FLAGADM \ FPS850L \ GEN860T \ GEN860T_SC \ GENIETV \ GTH \ hermes \ IAD210 \ ICU862_100MHz \ IP860 \ IVML24 \ IVML24_128 \ IVML24_256 \ IVMS8 \ IVMS8_128 \ IVMS8_256 \ KUP4K \ KUP4X \ LANTEC \ lwmon \ MBX \ MBX860T \ mgsuvd \ MHPC \ MPC86xADS \ MPC885ADS \ NETPHONE \ NETTA \ NETTA2 \ NETTA_ISDN \ NETVIA \ NETVIA_V2 \ NX823 \ pcu_e \ QS823 \ QS850 \ QS860T \ quantum \ R360MPI \ RBC823 \ rmu \ RPXClassic \ RPXlite \ RPXlite_DW \ RRvision \ SM850 \ spc1920 \ SPD823TS \ svm_sc8xx \ SXNI855T \ TK885D \ TOP860 \ TQM823L \ TQM823L_LCD \ TQM850L \ TQM855L \ TQM860L \ TQM885D \ uc100 \ v37 \ " ######################################################################### ## PPC4xx Systems ######################################################################### LIST_4xx=" \ acadia \ acadia_nand \ ADCIOP \ alpr \ AP1000 \ AR405 \ arches \ ASH405 \ bamboo \ bamboo_nand \ bubinga \ CANBT \ canyonlands \ canyonlands_nand \ CMS700 \ CPCI2DP \ CPCI405 \ CPCI4052 \ CPCI405AB \ CPCI405DT \ CPCIISER4 \ CRAYL1 \ csb272 \ csb472 \ DASA_SIM \ DP405 \ DU405 \ DU440 \ ebony \ ERIC \ EXBITGEN \ fx12mm \ G2000 \ glacier \ haleakala \ haleakala_nand \ hcu4 \ hcu5 \ HH405 \ HUB405 \ JSE \ KAREF \ katmai \ kilauea \ kilauea_nand \ korat \ luan \ lwmon5 \ makalu \ mcu25 \ METROBOX \ MIP405 \ MIP405T \ ML2 \ ml300 \ ml507 \ ml507_flash \ neo \ ocotea \ OCRTC \ ORSG \ p3p440 \ PCI405 \ pcs440ep \ PIP405 \ PLU405 \ PMC405 \ PMC440 \ PPChameleonEVB \ quad100hd \ rainier \ redwood \ sbc405 \ sc3 \ sequoia \ sequoia_nand \ taihu \ taishan \ v5fx30teval \ v5fx30teval_flash \ VOH405 \ VOM405 \ W7OLMC \ W7OLMG \ walnut \ WUH405 \ xilinx-ppc440-generic \ xilinx-ppc440-generic_flash \ XPEDITE1K \ yellowstone \ yosemite \ yucca \ zeus \ " ######################################################################### ## MPC8220 Systems ######################################################################### LIST_8220=" \ Alaska8220 \ Yukon8220 \ " ######################################################################### ## MPC824x Systems ######################################################################### LIST_824x=" \ A3000 \ barco \ BMW \ CPC45 \ CU824 \ debris \ eXalion \ HIDDEN_DRAGON \ linkstation_HGLAN \ MOUSSE \ MUSENKI \ MVBLUE \ OXC \ PN62 \ Sandpoint8240 \ Sandpoint8245 \ sbc8240 \ SL8245 \ utx8245 \ " ######################################################################### ## MPC8260 Systems (includes 8250, 8255 etc.) ######################################################################### LIST_8260=" \ atc \ cogent_mpc8260 \ CPU86 \ CPU87 \ ep8248 \ ep8260 \ ep82xxm \ gw8260 \ hymod \ IPHASE4539 \ ISPAN \ mgcoge \ MPC8260ADS \ MPC8266ADS \ MPC8272ADS \ PM826 \ PM828 \ ppmc8260 \ Rattler8248 \ RPXsuper \ rsdproto \ sacsng \ sbc8260 \ SCM \ TQM8260_AC \ TQM8260_AD \ TQM8260_AE \ TQM8272 \ ZPC1900 \ " ######################################################################### ## MPC83xx Systems (includes 8349, etc.) ######################################################################### LIST_83xx=" \ MPC8313ERDB_33 \ MPC8313ERDB_NAND_66 \ MPC8315ERDB \ MPC8323ERDB \ MPC832XEMDS \ MPC832XEMDS_ATM \ MPC8349EMDS \ MPC8349ITX \ MPC8349ITXGP \ MPC8360EMDS \ MPC8360EMDS_ATM \ MPC8360ERDK_33 \ MPC8360ERDK_66 \ MPC837XEMDS \ MPC837XERDB \ MVBLM7 \ sbc8349 \ TQM834x \ " ######################################################################### ## MPC85xx Systems (includes 8540, 8560 etc.) ######################################################################### LIST_85xx=" \ ATUM8548 \ MPC8536DS \ MPC8540ADS \ MPC8540EVAL \ MPC8541CDS \ MPC8544DS \ MPC8548CDS \ MPC8555CDS \ MPC8560ADS \ MPC8568MDS \ MPC8572DS \ MPC8572DS_36BIT \ PM854 \ PM856 \ sbc8540 \ sbc8548 \ sbc8560 \ socrates \ stxgp3 \ stxssa \ TQM8540 \ TQM8541 \ TQM8548 \ TQM8555 \ TQM8560 \ XPEDITE5200 \ XPEDITE5370 \ " ######################################################################### ## MPC86xx Systems ######################################################################### LIST_86xx=" \ MPC8610HPCD \ MPC8641HPCN \ sbc8641d \ " ######################################################################### ## 74xx/7xx Systems ######################################################################### LIST_74xx=" \ DB64360 \ DB64460 \ EVB64260 \ mpc7448hpc2 \ P3G4 \ p3m7448 \ PCIPPC2 \ PCIPPC6 \ ZUMA \ " LIST_7xx=" \ BAB7xx \ CPCI750 \ ELPPC \ p3m750 \ ppmc7xx \ " ######################################################################### ## PowerPC groups ######################################################################### LIST_TSEC=" \ ${LIST_83xx} \ ${LIST_85xx} \ ${LIST_86xx} \ " LIST_ppc=" \ ${LIST_5xx} \ ${LIST_512x} \ ${LIST_5xxx} \ ${LIST_8xx} \ ${LIST_8220} \ ${LIST_824x} \ ${LIST_8260} \ ${LIST_83xx} \ ${LIST_85xx} \ ${LIST_86xx} \ ${LIST_4xx} \ ${LIST_74xx} \ ${LIST_7xx} \ " ######################################################################### ## StrongARM Systems ######################################################################### LIST_SA=" \ assabet \ dnp1110 \ gcplus \ lart \ shannon \ " ######################################################################### ## ARM7 Systems ######################################################################### LIST_ARM7=" \ ap7 \ ap720t \ armadillo \ B2 \ ep7312 \ evb4510 \ impa7 \ integratorap \ lpc2292sodimm \ modnet50 \ SMN42 \ " ######################################################################### ## ARM9 Systems ######################################################################### LIST_ARM9=" \ ap920t \ ap922_XA10 \ ap926ejs \ ap946es \ ap966 \ cp920t \ cp922_XA10 \ cp926ejs \ cp946es \ cp966 \ lpd7a400 \ mx1ads \ mx1fs2 \ netstar \ omap1510inn \ omap1610h2 \ omap1610inn \ omap5912osk \ omap730p2 \ sbc2410x \ scb9328 \ smdk2400 \ smdk2410 \ trab \ VCMA9 \ versatile \ versatileab \ versatilepb \ voiceblue \ davinci_dvevm \ davinci_schmoogie \ davinci_sffsdr \ davinci_sonata \ " ######################################################################### ## ARM10 Systems ######################################################################### LIST_ARM10=" \ integratorcp \ cp1026 \ " ######################################################################### ## ARM11 Systems ######################################################################### LIST_ARM11=" \ cp1136 \ omap2420h4 \ apollon \ imx31_litekit \ imx31_phycore \ mx31ads \ smdk6400 \ " ######################################################################### ## AT91 Systems ######################################################################### LIST_at91=" \ afeb9260 \ at91cap9adk \ at91rm9200dk \ at91sam9260ek \ at91sam9261ek \ at91sam9263ek \ at91sam9rlek \ cmc_pu2 \ csb637 \ kb9202 \ mp2usb \ m501sk \ " ######################################################################### ## Xscale Systems ######################################################################### LIST_pxa=" \ cerf250 \ cradle \ csb226 \ delta \ innokom \ lubbock \ pleb2 \ pxa255_idp \ wepep250 \ xaeniax \ xm250 \ xsengine \ zylonite \ " LIST_ixp=" \ actux1 \ actux2 \ actux3 \ actux4 \ ixdp425 \ ixdpg425 \ pdnb3 \ scpu \ " ######################################################################### ## ARM groups ######################################################################### LIST_arm=" \ ${LIST_SA} \ ${LIST_ARM7} \ ${LIST_ARM9} \ ${LIST_ARM10} \ ${LIST_ARM11} \ ${LIST_at91} \ ${LIST_pxa} \ ${LIST_ixp} \ " ######################################################################### ## MIPS Systems (default = big endian) ######################################################################### LIST_mips4kc=" \ incaip \ qemu_mips \ " LIST_mips5kc=" \ purple \ " LIST_au1xx0=" \ dbau1000 \ dbau1100 \ dbau1500 \ dbau1550 \ dbau1550_el \ gth2 \ " LIST_mips=" \ ${LIST_mips4kc} \ ${LIST_mips5kc} \ ${LIST_au1xx0} \ " ######################################################################### ## MIPS Systems (little endian) ######################################################################### LIST_mips4kc_el="" LIST_mips5kc_el="" LIST_au1xx0_el=" \ dbau1550_el \ pb1000 \ " LIST_mips_el=" \ ${LIST_mips4kc_el} \ ${LIST_mips5kc_el} \ ${LIST_au1xx0_el} \ " ######################################################################### ## i386 Systems ######################################################################### LIST_I486=" \ sc520_cdp \ sc520_spunk \ sc520_spunk_rel \ " LIST_x86=" \ ${LIST_I486} \ " ######################################################################### ## NIOS Systems ######################################################################### LIST_nios=" \ ADNPESC1 \ ADNPESC1_base_32 \ ADNPESC1_DNPEVA2_base_32\ DK1C20 \ DK1C20_standard_32 \ DK1S10 \ DK1S10_standard_32 \ DK1S10_mtx_ldk_20 \ " ######################################################################### ## Nios-II Systems ######################################################################### LIST_nios2=" \ EP1C20 \ EP1S10 \ EP1S40 \ PCI5441 \ PK1C20 \ " ######################################################################### ## MicroBlaze Systems ######################################################################### LIST_microblaze=" \ microblaze-generic \ suzaku \ " ######################################################################### ## ColdFire Systems ######################################################################### LIST_coldfire=" \ cobra5272 \ EB+MCF-EV123 \ EB+MCF-EV123_internal \ idmr \ M52277EVB \ M5235EVB \ M5249EVB \ M5253DEMO \ M5253EVBE \ M5271EVB \ M5272C3 \ M5275EVB \ M5282EVB \ M53017EVB \ M5329AFEE \ M5373EVB \ M54451EVB \ M54455EVB \ M5475AFE \ M5485AFE \ TASREG \ " ######################################################################### ## AVR32 Systems ######################################################################### LIST_avr32=" \ atstk1002 \ atstk1003 \ atstk1004 \ atstk1006 \ atngw100 \ favr-32-ezkit \ hammerhead \ mimc200 \ " ######################################################################### ## Blackfin Systems ######################################################################### LIST_blackfin=" \ bf533-ezkit \ bf533-stamp \ bf537-stamp \ bf561-ezkit \ " ######################################################################### ## SH Systems ######################################################################### LIST_sh2=" \ rsk7203 \ " LIST_sh3=" \ mpr2 \ ms7720se \ " LIST_sh4=" \ ms7750se \ ms7722se \ MigoR \ r7780mp \ r2dplus \ sh7763rdp \ sh7785lcr \ ap325rxa \ " LIST_sh=" \ ${LIST_sh2} \ ${LIST_sh3} \ ${LIST_sh4} \ " ######################################################################### ## SPARC Systems ######################################################################### LIST_sparc="gr_xc3s_1500 gr_cpci_ax2000 gr_ep2s60 grsim grsim_leon2" #----------------------------------------------------------------------- #----- for now, just run PPC by default ----- [ $# = 0 ] && set $LIST_ppc #----------------------------------------------------------------------- build_target() { target=$1 ${MAKE} distclean >/dev/null ${MAKE} ${target}_config ${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \ | tee ${LOG_DIR}/$target.ERR ${CROSS_COMPILE}size ${BUILD_DIR}/u-boot \ | tee -a ${LOG_DIR}/$target.MAKELOG } #----------------------------------------------------------------------- for arg in $@ do case "$arg" in arm|SA|ARM7|ARM9|ARM10|ARM11|at91|ixp|pxa \ |avr32 \ |blackfin \ |coldfire \ |microblaze \ |mips|mips_el \ |nios|nios2 \ |ppc|5xx|5xxx|512x|8xx|8220|824x|8260|83xx|85xx|86xx|4xx|7xx|74xx|TSEC \ |sh|sh2|sh3|sh4 \ |sparc \ |x86|I486 \ ) for target in `eval echo '$LIST_'${arg}` do build_target ${target} done ;; *) build_target ${arg} ;; esac done