#!/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		\
	cm5200		\
	cpci5200	\
	EVAL5200	\
	fo300		\
	icecube_5100	\
	icecube_5200	\
	inka4x0		\
	lite5200b	\
	mcc200		\
	mecp5200	\
	motionpro	\
	munices		\
	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	\
	MVS1		\
	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		\
	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	\
	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		\
	ocotea		\
	OCRTC		\
	ORSG		\
	p3p440		\
	PCI405		\
	pcs440ep	\
	PIP405		\
	PLU405		\
	PMC405		\
	PMC440		\
	PPChameleonEVB	\
	rainier		\
	sbc405		\
	sc3		\
	sequoia		\
	sequoia_nand	\
	taihu		\
	taishan		\
	VOH405		\
	VOM405		\
	W7OLMC		\
	W7OLMG		\
	walnut		\
	WUH405		\
	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_66	\
	MPC8315ERDB	\
	MPC8323ERDB	\
	MPC832XEMDS	\
	MPC832XEMDS_ATM	\
	MPC8349EMDS	\
	MPC8349ITX	\
	MPC8349ITXGP	\
	MPC8360EMDS	\
	MPC8360EMDS_ATM	\
	MPC8360ERDK_33	\
	MPC8360ERDK_66	\
	MPC837XEMDS	\
	MPC837XERDB	\
	sbc8349		\
	TQM834x		\
"


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

LIST_85xx="		\
	ATUM8548	\
	MPC8540ADS	\
	MPC8540EVAL	\
	MPC8541CDS	\
	MPC8544DS	\
	MPC8548CDS	\
	MPC8555CDS	\
	MPC8560ADS	\
	MPC8568MDS	\
	PM854		\
	PM856		\
	sbc8540		\
	sbc8548		\
	sbc8560		\
	socrates	\
	stxgp3		\
	stxssa		\
	TQM8540		\
	TQM8541		\
	TQM8555		\
	TQM8560		\
"

#########################################################################
## 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="			\
	at91cap9adk		\
	at91rm9200dk		\
	at91sam9260ek		\
	cmc_pu2			\
	ap920t			\
	ap922_XA10		\
	ap926ejs		\
	ap946es			\
	ap966			\
	cp920t			\
	cp922_XA10		\
	cp926ejs		\
	cp946es			\
	cp966			\
	csb637			\
	kb9202			\
	lpd7a400		\
	m501sk			\
	mp2usb			\
	mx1ads			\
	mx1fs2			\
	netstar			\
	omap1510inn		\
	omap1610h2		\
	omap1610inn		\
	omap5912osk		\
	omap730p2		\
	sbc2410x		\
	scb9328			\
	smdk2400		\
	smdk2410		\
	trab			\
	VCMA9			\
	versatile		\
	versatileab		\
	versatilepb		\
	voiceblue		\
	davinci_dvevm		\
	davinci_schmoogie	\
	davinci_sonata		\
"

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

#########################################################################
## ARM11 Systems
#########################################################################
LIST_ARM11="		\
	cp1136		\
	omap2420h4	\
	apollon		\
	imx31_litekit	\
	imx31_phycore	\
	mx31ads		\
"

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

LIST_pxa="		\
	adsvix		\
	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_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="	\
	ml401		\
	suzaku		\
	xupv2p		\
"

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

LIST_coldfire="			\
	cobra5272		\
	EB+MCF-EV123		\
	EB+MCF-EV123_internal	\
	idmr			\
	M52277EVB		\
	M5235EVB		\
	M5249EVB		\
	M5253EVB		\
	M5271EVB		\
	M5272C3			\
	M5275EVB		\
	M5282EVB		\
	M5329AFEE		\
	M5373EVB		\
	M54455EVB		\
	M5475AFE		\
	M5485AFE		\
	TASREG			\
"

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

LIST_avr32="		\
	atstk1002	\
	atstk1003	\
	atstk1004	\
	atstk1006	\
	atngw100	\
"

#########################################################################
## Blackfin Systems
#########################################################################

LIST_blackfin="		\
	bf533-ezkit	\
	bf533-stamp	\
	bf537-stamp	\
	bf561-ezkit	\
"

#########################################################################
## SH Systems
#########################################################################

LIST_sh3="		\
	mpr2		\
	ms7720se	\
"

LIST_sh4="		\
	ms7750se	\
	ms7722se	\
	Migo-R		\
	r7780mp		\
	r2dplus		\
"

LIST_sh="		\
	${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|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|sh3|sh4 \
	|sparc \
	|x86|I486 \
	)
			for target in `eval echo '$LIST_'${arg}`
			do
				build_target ${target}
			done
			;;
	*)		build_target ${arg}
			;;
	esac
done
