#!/bin/sh

: ${JOBS:=}

if [ "${CROSS_COMPILE}" ] ; then
	MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
else
	MAKE=make
fi

[ -d LOG ] || mkdir LOG || exit 1

LIST=""

#########################################################################
## MPC5xx Systems
#########################################################################

LIST_5xx="	\
	cmi_mpc5xx							\
"

#########################################################################
## MPC5xxx Systems
#########################################################################

LIST_5xxx="	\
	BC3450		cpci5200	EVAL5200	icecube_5100	\
	icecube_5200	lite5200b	mcc200		o2dnt		\
	pf5200		PM520		Total5100	Total5200	\
	Total5200_Rev2	TQM5200_auto					\
"

#########################################################################
## 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	SPD823TS	\
	ESTEEM192E	IVMS8		NETVIA		svm_sc8xx	\
	ETX094		IVMS8_128	NETVIA_V2	SXNI855T	\
	FADS823		IVMS8_256	NX823		TOP860		\
	FADS850SAR	KUP4K		pcu_e		TQM823L		\
	FADS860T	KUP4X		QS823		TQM823L_LCD	\
	FLAGADM		LANTEC		QS850		TQM850L		\
	FPS850L		lwmon		QS860T		TQM855L		\
	GEN860T		MBX		quantum		TQM860L		\
	GEN860T_SC					uc100		\
							v37		\
"

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

LIST_4xx="	\
	ADCIOP		AP1000		AR405		ASH405		\
	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		\
	luan		METROBOX	MIP405		MIP405T		\
	ML2		ml300		ocotea		OCRTC		\
	ORSG		p3p440		PCI405		PIP405		\
	PLU405		PMC405	        PPChameleonEVB	sbc405		\
	VOH405		VOM405          W7OLMC		W7OLMG		\
	walnut		WUH405		XPEDITE1K	yellowstone	\
	yosemite							\
"

#########################################################################
## 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		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="	\
	MPC8349ADS	TQM834x		MPC8349EMDS			\
"


#########################################################################
## 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		\
	PCIPPC2		PCIPPC6		ZUMA				\
"

LIST_7xx="	\
	BAB7xx		CPCI750		ELPPC				\
"

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


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"

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="PCI5441 PK1C20"

#########################################################################
## MicroBlaze Systems
#########################################################################

LIST_microblaze="suzaku"

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

#----- 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/$target.MAKELOG | tee LOG/$target.ERR
	${CROSS_COMPILE:-ppc_8xx-}size u-boot | tee -a LOG/$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)
			for target in `eval echo '$LIST_'${arg}`
			do
				build_target ${target}
			done
			;;
	*)		build_target ${arg}
			;;
	esac
done
