#!/bin/sh

: ${JOBS:=}

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		cpci5200	EVAL5200	fo300		\
	icecube_5100	icecube_5200	lite5200b	mcc200		\
	mecp5200	motionpro	o2dnt		pf5200		\
	PM520		TB5200		Total5100	Total5200	\
	Total5200_Rev2	TQM5200		TQM5200_B	TQM5200S	\
	v38b								\
"

#########################################################################
## MPC8xx Systems
#########################################################################
LIST_8xx="	\
	Adder87x	GENIETV		MBX860T		R360MPI		\
	AdderII		GTH		MHPC		RBC823		\
	ADS860		hermes		MPC86xADS	rmu		\
	AMX860		IAD210		MPC885ADS	RPXClassic	\
	c2mon		ICU862_100MHz	MVS1		RPXlite		\
	CCM		IP860		NETPHONE	RPXlite_DW	\
	cogent_mpc8xx	IVML24		NETTA		RRvision	\
	ELPT860		IVML24_128	NETTA2		SM850		\
	EP88x		IVML24_256	NETTA_ISDN	spc1920		\
	ESTEEM192E	IVMS8		NETVIA		SPD823TS	\
	ETX094		IVMS8_128	NETVIA_V2	svm_sc8xx	\
	FADS823		IVMS8_256	NX823		SXNI855T	\
	FADS850SAR	KUP4K		pcu_e		TOP860		\
	FADS860T	KUP4X		QS823		TQM823L		\
	FLAGADM		LANTEC		QS850		TQM823L_LCD	\
	FPS850L		lwmon		QS860T		TQM850L		\
	GEN860T		MBX		quantum		TQM855L		\
	GEN860T_SC					TQM860L		\
							TQM885D		\
							uc100		\
							v37		\
"

#########################################################################
## PPC4xx Systems
#########################################################################

LIST_4xx="	\
	ADCIOP		alpr		AP1000		AR405		\
	ASH405		bamboo		bubinga		CANBT		\
	CMS700		CPCI2DP		CPCI405		CPCI4052	\
	CPCI405AB	CPCI405DT	CPCI440		CPCIISER4	\
	CRAYL1		csb272		csb472		DASA_SIM	\
	DP405		DU405		ebony		ERIC		\
	EXBITGEN	G2000		HH405		HUB405		\
	JSE		KAREF		katmai		luan		\
	METROBOX	MIP405		MIP405T		ML2		\
	ml300		ocotea		OCRTC		ORSG		\
	p3p440		PCI405		pcs440ep	PIP405		\
	PLU405		PMC405		PPChameleonEVB	sbc405		\
	sc3		sequoia		sequoia_nand	taishan		\
	VOH405		VOM405		W7OLMC		W7OLMG		\
	walnut		WUH405		XPEDITE1K	yellowstone	\
	yosemite	yucca						\
"

#########################################################################
## MPC8220 Systems
#########################################################################

LIST_8220="	\
	Alaska8220	Yukon8220					\
"

#########################################################################
## MPC824x Systems
#########################################################################

LIST_824x="	\
	A3000		barco		BMW		CPC45		\
	CU824		debris		eXalion		HIDDEN_DRAGON	\
			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		MPC8260ADS	\
	MPC8266ADS	MPC8272ADS	PM826		PM828		\
	ppmc8260	Rattler8248	RPXsuper	rsdproto	\
	sacsng		sbc8260		SCM		TQM8260_AC	\
	TQM8260_AD	TQM8260_AE	ZPC1900				\
"

#########################################################################
## MPC83xx Systems (includes 8349, etc.)
#########################################################################

LIST_83xx="	\
	MPC832XEMDS	MPC8349EMDS	MPC8349ITX	MPC8349ITXGP	\
	MPC8360EMDS	sbc8349		TQM834x				\
"


#########################################################################
## MPC85xx Systems (includes 8540, 8560 etc.)
#########################################################################

LIST_85xx="	\
	MPC8540ADS	MPC8540EVAL	MPC8541CDS	MPC8548CDS	\
	MPC8555CDS	MPC8560ADS	PM854		PM856		\
	sbc8540		sbc8560		stxgp3		TQM8540		\
	TQM8541		TQM8555		TQM8560				\
"

#########################################################################
## 74xx/7xx Systems
#########################################################################

LIST_74xx="	\
	DB64360		DB64460		EVB64260	P3G4		\
	p3m7448		PCIPPC2		PCIPPC6		ZUMA		\
"

LIST_7xx="	\
	BAB7xx		CPCI750		ELPPC		p3m750		\
	ppmc7xx								\
"

LIST_ppc="${LIST_5xx}  ${LIST_5xxx}		\
	  ${LIST_8xx}				\
	  ${LIST_8220} ${LIST_824x} ${LIST_8260} \
	  ${LIST_83xx}				\
	  ${LIST_85xx}				\
	  ${LIST_4xx}				\
	  ${LIST_74xx} ${LIST_7xx}"

#########################################################################
## StrongARM Systems
#########################################################################

LIST_SA="assabet dnp1110 gcplus lart shannon"

#########################################################################
## ARM7 Systems
#########################################################################

LIST_ARM7="	\
	armadillo	B2		ep7312		evb4510		\
	impa7		integratorap	ap7		ap720t		\
	lpc2292sodimm	modnet50					\
"

#########################################################################
## ARM9 Systems
#########################################################################

LIST_ARM9="	\
	at91rm9200dk	cmc_pu2						\
	ap920t		ap922_XA10	ap926ejs	ap946es		\
	ap966		cp920t		cp922_XA10	cp926ejs	\
	cp946es		cp966		lpd7a400	mp2usb		\
	mx1ads		mx1fs2		netstar		omap1510inn	\
	omap1610h2	omap1610inn	omap730p2	sbc2410x	\
	scb9328		smdk2400	smdk2410	trab		\
	VCMA9		versatile	versatileab	versatilepb	\
	voiceblue							\
"

#########################################################################
## ARM10 Systems
#########################################################################
LIST_ARM10="	\
	integratorcp	cp1026						\
"

#########################################################################
## ARM11 Systems
#########################################################################
LIST_ARM11="	\
	cp1136		omap2420h4					\
"

#########################################################################
## Xscale Systems
#########################################################################

LIST_pxa="	\
	adsvix		cerf250		cradle		csb226		\
	delta		innokom		lubbock		pleb2		\
	pxa255_idp	wepep250	xaeniax		xm250		\
	xsengine	zylonite					\
"

LIST_ixp="ixdp425	ixdpg425	pdnb3		scpu"


LIST_arm="	\
	${LIST_SA}							\
	${LIST_ARM7} ${LIST_ARM9} ${LIST_ARM10} ${LIST_ARM11}		\
	${LIST_pxa} ${LIST_ixp}						\
"

#########################################################################
## MIPS Systems		(default = big endian)
#########################################################################

LIST_mips4kc="incaip"

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"

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="	\
	suzaku
"

#########################################################################
## ColdFire Systems
#########################################################################

LIST_coldfire="	\
	cobra5272	EB+MCF-EV123	EB+MCF-EV123_internal		\
	idmr		M5271EVB	M5272C3		M5282EVB	\
	TASREG		r5200		M5271EVB			\
"

#########################################################################
## AVR32 Systems
#########################################################################

LIST_avr32="atstk1002"

#-----------------------------------------------------------------------

#----- 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:-ppc_8xx-}size ${BUILD_DIR}/u-boot \
				| tee -a ${LOG_DIR}/$target.MAKELOG
}

#-----------------------------------------------------------------------


for arg in $@
do
	case "$arg" in
	ppc|5xx|5xxx|8xx|8220|824x|8260|83xx|85xx|4xx|7xx|74xx| \
	arm|SA|ARM7|ARM9|ARM10|ARM11|pxa|ixp| \
	microblaze| \
	mips|mips_el| \
	nios|nios2| \
	x86|I486| \
	coldfire| \
	avr32)
			for target in `eval echo '$LIST_'${arg}`
			do
				build_target ${target}
			done
			;;
	*)		build_target ${arg}
			;;
	esac
done
