2009-12-07 05:58:28 +00:00
|
|
|
#!/bin/bash
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2010-10-17 10:26:48 +00:00
|
|
|
# Tool mainly for U-Boot Quality Assurance: build one or more board
|
|
|
|
# configurations with minimal verbosity, showing only warnings and
|
|
|
|
# errors.
|
|
|
|
#
|
|
|
|
# There are several ways to select which boards to build.
|
|
|
|
#
|
|
|
|
# Traditionally, architecture names (like "powerpc"), CPU family names
|
|
|
|
# (like "mpc83xx") or board names can be specified on the command
|
|
|
|
# line; without any arguments, MAKEALL defaults to building all Power
|
|
|
|
# Architecture systems (i. e. same as for "MAKEALL powerpc").
|
|
|
|
#
|
2010-10-29 22:59:06 +00:00
|
|
|
# With the introduction of the board.cfg file, it has become possible
|
2010-10-17 10:26:48 +00:00
|
|
|
# to provide additional selections. We use standard command line
|
|
|
|
# options for this:
|
|
|
|
#
|
|
|
|
# -a or --arch : Select architecture
|
|
|
|
# -c or --cpu : Select CPU family
|
|
|
|
# -s or --soc : Select SoC type
|
|
|
|
# -v or --vendor: Select board vendor
|
|
|
|
#
|
|
|
|
# Selections by these options are logically ANDed; if the same option
|
|
|
|
# is used repeatedly, such selections are ORed. So "-v FOO -v BAR"
|
|
|
|
# will select all configurations where the vendor is either FOO or
|
|
|
|
# BAR. Any additional arguments specified on the command line are
|
|
|
|
# always build additionally.
|
|
|
|
#
|
|
|
|
# Examples:
|
|
|
|
#
|
|
|
|
# - build all Power Architecture boards:
|
|
|
|
#
|
|
|
|
# MAKEALL -a powerpc
|
|
|
|
# or
|
|
|
|
# MAKEALL --arch powerpc
|
|
|
|
# or
|
|
|
|
# MAKEALL powerpc
|
|
|
|
#
|
|
|
|
# - build all PowerPC boards manufactured by vendor "esd":
|
|
|
|
#
|
|
|
|
# MAKEALL -a powerpc -v esd
|
|
|
|
#
|
|
|
|
# - build all PowerPC boards manufactured either by "keymile" or
|
|
|
|
# "siemens":
|
|
|
|
#
|
|
|
|
# MAKEALL -a powerpc -v keymile -v siemens
|
|
|
|
#
|
|
|
|
# - build all Freescale boards with MPC83xx CPUs, plus all 4xx boards:
|
|
|
|
#
|
|
|
|
# MAKEALL -c mpc83xx -v freescale 4xx
|
|
|
|
#
|
|
|
|
#########################################################################
|
|
|
|
|
|
|
|
SHORT_OPTS="a:c:v:s:"
|
|
|
|
LONG_OPTS="arch:,cpu:,vendor:,soc:"
|
|
|
|
|
|
|
|
# Option processing based on util-linux-2.13/getopt-parse.bash
|
|
|
|
|
2010-10-27 20:48:30 +00:00
|
|
|
# Note that we use `"$@"' to let each command-line parameter expand to a
|
2010-10-17 10:26:48 +00:00
|
|
|
# separate word. The quotes around `$@' are essential!
|
|
|
|
# We need TEMP as the `eval set --' would nuke the return value of
|
|
|
|
# getopt.
|
|
|
|
TEMP=`getopt -o ${SHORT_OPTS} --long ${LONG_OPTS} \
|
|
|
|
-n 'MAKEALL' -- "$@"`
|
|
|
|
|
|
|
|
if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
|
|
|
|
|
|
|
|
# Note the quotes around `$TEMP': they are essential!
|
|
|
|
eval set -- "$TEMP"
|
|
|
|
|
|
|
|
SELECTED=''
|
|
|
|
|
|
|
|
while true ; do
|
|
|
|
case "$1" in
|
|
|
|
-a|--arch)
|
|
|
|
# echo "Option ARCH: argument \`$2'"
|
|
|
|
if [ "$opt_a" ] ; then
|
|
|
|
opt_a="${opt_a%)} || \$2 == \"$2\")"
|
|
|
|
else
|
|
|
|
opt_a="(\$2 == \"$2\")"
|
|
|
|
fi
|
|
|
|
SELECTED='y'
|
|
|
|
shift 2 ;;
|
|
|
|
-c|--cpu)
|
|
|
|
# echo "Option CPU: argument \`$2'"
|
|
|
|
if [ "$opt_c" ] ; then
|
|
|
|
opt_c="${opt_c%)} || \$3 == \"$2\")"
|
|
|
|
else
|
|
|
|
opt_c="(\$3 == \"$2\")"
|
|
|
|
fi
|
|
|
|
SELECTED='y'
|
|
|
|
shift 2 ;;
|
|
|
|
-s|--soc)
|
|
|
|
# echo "Option SoC: argument \`$2'"
|
|
|
|
if [ "$opt_s" ] ; then
|
|
|
|
opt_s="${opt_s%)} || \$6 == \"$2\")"
|
|
|
|
else
|
|
|
|
opt_s="(\$6 == \"$2\")"
|
|
|
|
fi
|
|
|
|
SELECTED='y'
|
|
|
|
shift 2 ;;
|
|
|
|
-v|--vendor)
|
|
|
|
# echo "Option VENDOR: argument \`$2'"
|
|
|
|
if [ "$opt_v" ] ; then
|
|
|
|
opt_v="${opt_v%)} || \$5 == \"$2\")"
|
|
|
|
else
|
|
|
|
opt_v="(\$5 == \"$2\")"
|
|
|
|
fi
|
|
|
|
SELECTED='y'
|
|
|
|
shift 2 ;;
|
|
|
|
--)
|
|
|
|
shift ; break ;;
|
|
|
|
*)
|
|
|
|
echo "Internal error!" >&2 ; exit 1 ;;
|
|
|
|
esac
|
|
|
|
done
|
|
|
|
# echo "Remaining arguments:"
|
|
|
|
# for arg do echo '--> '"\`$arg'" ; done
|
|
|
|
|
|
|
|
FILTER="\$1 !~ /^#/"
|
|
|
|
[ "$opt_a" ] && FILTER="${FILTER} && $opt_a"
|
|
|
|
[ "$opt_c" ] && FILTER="${FILTER} && $opt_c"
|
|
|
|
[ "$opt_s" ] && FILTER="${FILTER} && $opt_s"
|
|
|
|
[ "$opt_v" ] && FILTER="${FILTER} && $opt_v"
|
|
|
|
|
|
|
|
if [ "$SELECTED" ] ; then
|
|
|
|
SELECTED=$(awk '('"$FILTER"') { print $1 }' boards.cfg)
|
2010-10-29 22:59:06 +00:00
|
|
|
|
|
|
|
# Make sure some boards from boards.cfg are actually found
|
|
|
|
if [ -z "$SELECTED" ] ; then
|
|
|
|
echo "Error: No boards selected, invalid arguments"
|
|
|
|
exit 1
|
|
|
|
fi
|
2010-10-17 10:26:48 +00:00
|
|
|
fi
|
|
|
|
|
|
|
|
#########################################################################
|
|
|
|
|
2009-09-21 17:04:32 +00:00
|
|
|
# Print statistics when we exit
|
|
|
|
trap exit 1 2 3 15
|
|
|
|
trap print_stats 0
|
|
|
|
|
2008-12-08 23:39:08 +00:00
|
|
|
# Determine number of CPU cores if no default was set
|
|
|
|
: ${BUILD_NCPUS:="`getconf _NPROCESSORS_ONLN`"}
|
|
|
|
|
|
|
|
if [ "$BUILD_NCPUS" -gt 1 ]
|
|
|
|
then
|
2009-09-21 17:04:33 +00:00
|
|
|
JOBS="-j $((BUILD_NCPUS + 1))"
|
2008-12-08 23:39:08 +00:00
|
|
|
else
|
|
|
|
JOBS=""
|
|
|
|
fi
|
|
|
|
|
2003-12-06 19:49:23 +00:00
|
|
|
|
2002-11-02 23:17:16 +00:00
|
|
|
if [ "${CROSS_COMPILE}" ] ; then
|
|
|
|
MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
|
|
|
|
else
|
|
|
|
MAKE=make
|
|
|
|
fi
|
|
|
|
|
2006-09-01 17:49:50 +00:00
|
|
|
if [ "${MAKEALL_LOGDIR}" ] ; then
|
|
|
|
LOG_DIR=${MAKEALL_LOGDIR}
|
|
|
|
else
|
|
|
|
LOG_DIR="LOG"
|
|
|
|
fi
|
2006-09-07 09:51:23 +00:00
|
|
|
|
2006-09-01 17:49:50 +00:00
|
|
|
if [ ! "${BUILD_DIR}" ] ; then
|
|
|
|
BUILD_DIR="."
|
|
|
|
fi
|
|
|
|
|
2006-09-07 10:05:53 +00:00
|
|
|
[ -d ${LOG_DIR} ] || mkdir ${LOG_DIR} || exit 1
|
2002-11-02 23:17:16 +00:00
|
|
|
|
|
|
|
LIST=""
|
|
|
|
|
2009-09-21 17:04:32 +00:00
|
|
|
# Keep track of the number of builds and errors
|
|
|
|
ERR_CNT=0
|
|
|
|
ERR_LIST=""
|
|
|
|
TOTAL_CNT=0
|
2009-12-07 05:58:28 +00:00
|
|
|
RC=0
|
2009-09-21 17:04:32 +00:00
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
# Helper funcs for parsing boards.cfg
|
|
|
|
boards_by_field()
|
|
|
|
{
|
|
|
|
awk \
|
|
|
|
-v field="$1" \
|
|
|
|
-v select="$2" \
|
|
|
|
'($1 !~ /^#/ && $field == select) { print $1 }' \
|
|
|
|
boards.cfg
|
|
|
|
}
|
|
|
|
boards_by_arch() { boards_by_field 2 "$@" ; }
|
|
|
|
boards_by_cpu() { boards_by_field 3 "$@" ; }
|
|
|
|
|
2003-03-31 17:27:09 +00:00
|
|
|
#########################################################################
|
|
|
|
## MPC5xx Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
LIST_5xx="$(boards_by_cpu mpc5xx)"
|
2003-03-31 17:27:09 +00:00
|
|
|
|
2003-07-16 21:53:01 +00:00
|
|
|
#########################################################################
|
|
|
|
## MPC5xxx Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_5xxx="$(boards_by_cpu mpc5xxx)"
|
2003-07-16 21:53:01 +00:00
|
|
|
|
2007-07-27 12:43:59 +00:00
|
|
|
#########################################################################
|
|
|
|
## MPC512x Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_512x="$(boards_by_cpu mpc512x)"
|
2003-07-16 21:53:01 +00:00
|
|
|
|
2002-11-02 23:17:16 +00:00
|
|
|
#########################################################################
|
|
|
|
## MPC8xx Systems
|
|
|
|
#########################################################################
|
2010-08-19 17:05:06 +00:00
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_8xx="$(boards_by_cpu mpc8xx)"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
|
|
|
#########################################################################
|
|
|
|
## PPC4xx Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_4xx="$(boards_by_cpu ppc4xx)"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2004-10-28 00:09:35 +00:00
|
|
|
#########################################################################
|
|
|
|
## MPC8220 Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
LIST_8220="$(boards_by_cpu mpc8220)"
|
2004-10-28 00:09:35 +00:00
|
|
|
|
2002-11-02 23:17:16 +00:00
|
|
|
#########################################################################
|
|
|
|
## MPC824x Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_824x="$(boards_by_cpu mpc824x)"
|
2003-06-21 00:17:24 +00:00
|
|
|
|
2002-11-02 23:17:16 +00:00
|
|
|
#########################################################################
|
2003-05-03 15:50:43 +00:00
|
|
|
## MPC8260 Systems (includes 8250, 8255 etc.)
|
2002-11-02 23:17:16 +00:00
|
|
|
#########################################################################
|
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_8260="$(boards_by_cpu mpc8260)"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2005-07-28 15:08:46 +00:00
|
|
|
#########################################################################
|
|
|
|
## MPC83xx Systems (includes 8349, etc.)
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_83xx="$(boards_by_cpu mpc83xx)"
|
2005-07-28 15:08:46 +00:00
|
|
|
|
2003-10-15 23:53:47 +00:00
|
|
|
#########################################################################
|
|
|
|
## MPC85xx Systems (includes 8540, 8560 etc.)
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_85xx="$(boards_by_cpu mpc85xx)"
|
2003-10-15 23:53:47 +00:00
|
|
|
|
2007-05-23 19:09:46 +00:00
|
|
|
#########################################################################
|
|
|
|
## MPC86xx Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_86xx="$(boards_by_cpu mpc86xx)"
|
2007-05-23 19:09:46 +00:00
|
|
|
|
2002-11-02 23:17:16 +00:00
|
|
|
#########################################################################
|
|
|
|
## 74xx/7xx Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-06 07:05:45 +00:00
|
|
|
LIST_74xx_7xx="$(boards_by_cpu 74xx_7xx)"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2008-04-20 22:35:52 +00:00
|
|
|
#########################################################################
|
|
|
|
## PowerPC groups
|
|
|
|
#########################################################################
|
|
|
|
|
|
|
|
LIST_TSEC=" \
|
|
|
|
${LIST_83xx} \
|
|
|
|
${LIST_85xx} \
|
|
|
|
${LIST_86xx} \
|
|
|
|
"
|
|
|
|
|
2010-04-15 14:07:28 +00:00
|
|
|
LIST_powerpc=" \
|
2007-08-10 20:34:48 +00:00
|
|
|
${LIST_5xx} \
|
2007-11-25 21:39:25 +00:00
|
|
|
${LIST_512x} \
|
2007-08-10 20:34:48 +00:00
|
|
|
${LIST_5xxx} \
|
|
|
|
${LIST_8xx} \
|
|
|
|
${LIST_8220} \
|
|
|
|
${LIST_824x} \
|
|
|
|
${LIST_8260} \
|
|
|
|
${LIST_83xx} \
|
|
|
|
${LIST_85xx} \
|
|
|
|
${LIST_86xx} \
|
|
|
|
${LIST_4xx} \
|
2010-10-06 07:05:45 +00:00
|
|
|
${LIST_74xx_7xx}\
|
2007-08-10 20:34:48 +00:00
|
|
|
"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2010-04-15 14:07:28 +00:00
|
|
|
# Alias "ppc" -> "powerpc" to not break compatibility with older scripts
|
|
|
|
# still using "ppc" instead of "powerpc"
|
|
|
|
LIST_ppc=" \
|
|
|
|
${LIST_powerpc} \
|
|
|
|
"
|
|
|
|
|
2002-11-02 23:17:16 +00:00
|
|
|
#########################################################################
|
|
|
|
## StrongARM Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
LIST_SA="$(boards_by_cpu sa1100)"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
|
|
|
#########################################################################
|
|
|
|
## ARM7 Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2007-08-10 20:34:48 +00:00
|
|
|
LIST_ARM7=" \
|
|
|
|
ap7 \
|
|
|
|
ap720t \
|
|
|
|
armadillo \
|
|
|
|
B2 \
|
|
|
|
ep7312 \
|
|
|
|
evb4510 \
|
|
|
|
impa7 \
|
|
|
|
integratorap \
|
|
|
|
lpc2292sodimm \
|
|
|
|
modnet50 \
|
|
|
|
SMN42 \
|
2005-09-24 23:48:28 +00:00
|
|
|
"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
|
|
|
#########################################################################
|
|
|
|
## ARM9 Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2007-08-10 20:34:48 +00:00
|
|
|
LIST_ARM9=" \
|
2009-11-11 09:27:30 +00:00
|
|
|
a320evb \
|
2007-08-10 20:34:48 +00:00
|
|
|
ap920t \
|
|
|
|
ap922_XA10 \
|
|
|
|
ap926ejs \
|
|
|
|
ap946es \
|
|
|
|
ap966 \
|
|
|
|
cp920t \
|
|
|
|
cp922_XA10 \
|
|
|
|
cp926ejs \
|
|
|
|
cp946es \
|
|
|
|
cp966 \
|
2009-11-12 16:09:25 +00:00
|
|
|
da830evm \
|
2010-06-10 09:48:15 +00:00
|
|
|
da850evm \
|
2010-02-01 20:29:48 +00:00
|
|
|
edb9301 \
|
|
|
|
edb9302 \
|
|
|
|
edb9302a \
|
|
|
|
edb9307 \
|
|
|
|
edb9307a \
|
|
|
|
edb9312 \
|
|
|
|
edb9315 \
|
|
|
|
edb9315a \
|
2010-06-17 14:08:21 +00:00
|
|
|
edminiv2 \
|
2010-03-18 14:55:40 +00:00
|
|
|
guruplug \
|
2009-08-10 22:32:09 +00:00
|
|
|
imx27lite \
|
2010-08-09 11:31:51 +00:00
|
|
|
jadecpu \
|
2007-08-10 20:34:48 +00:00
|
|
|
lpd7a400 \
|
2010-03-05 06:36:33 +00:00
|
|
|
magnesium \
|
2009-07-16 15:28:01 +00:00
|
|
|
mv88f6281gtw_ge \
|
2007-08-10 20:34:48 +00:00
|
|
|
mx1ads \
|
|
|
|
mx1fs2 \
|
|
|
|
netstar \
|
2009-07-04 23:06:06 +00:00
|
|
|
nhk8815 \
|
|
|
|
nhk8815_onenand \
|
2007-08-10 20:34:48 +00:00
|
|
|
omap1510inn \
|
|
|
|
omap1610h2 \
|
|
|
|
omap1610inn \
|
2008-01-18 20:45:45 +00:00
|
|
|
omap5912osk \
|
2007-08-10 20:34:48 +00:00
|
|
|
omap730p2 \
|
2009-09-21 22:31:01 +00:00
|
|
|
openrd_base \
|
2009-07-16 15:32:24 +00:00
|
|
|
rd6281a \
|
2007-08-10 20:34:48 +00:00
|
|
|
sbc2410x \
|
|
|
|
scb9328 \
|
2009-07-16 15:28:00 +00:00
|
|
|
sheevaplug \
|
2007-08-10 20:34:48 +00:00
|
|
|
smdk2400 \
|
|
|
|
smdk2410 \
|
2010-01-15 13:45:50 +00:00
|
|
|
spear300 \
|
2010-01-15 13:45:52 +00:00
|
|
|
spear310 \
|
2010-01-15 13:45:53 +00:00
|
|
|
spear320 \
|
2010-01-15 13:45:48 +00:00
|
|
|
spear600 \
|
2010-02-22 11:13:02 +00:00
|
|
|
suen3 \
|
2007-08-10 20:34:48 +00:00
|
|
|
trab \
|
|
|
|
VCMA9 \
|
|
|
|
versatile \
|
|
|
|
versatileab \
|
|
|
|
versatilepb \
|
|
|
|
voiceblue \
|
|
|
|
davinci_dvevm \
|
|
|
|
davinci_schmoogie \
|
2008-05-21 17:58:41 +00:00
|
|
|
davinci_sffsdr \
|
2007-08-10 20:34:48 +00:00
|
|
|
davinci_sonata \
|
2009-05-15 21:48:37 +00:00
|
|
|
davinci_dm355evm \
|
2009-10-10 17:37:10 +00:00
|
|
|
davinci_dm355leopard \
|
2010-02-18 02:09:21 +00:00
|
|
|
davinci_dm365evm \
|
2009-10-10 16:00:47 +00:00
|
|
|
davinci_dm6467evm \
|
2003-08-29 22:00:43 +00:00
|
|
|
"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2005-09-24 23:48:28 +00:00
|
|
|
#########################################################################
|
|
|
|
## ARM10 Systems
|
|
|
|
#########################################################################
|
2007-08-10 20:34:48 +00:00
|
|
|
LIST_ARM10=" \
|
|
|
|
integratorcp \
|
|
|
|
cp1026 \
|
2005-09-24 23:48:28 +00:00
|
|
|
"
|
|
|
|
|
2005-01-09 23:16:25 +00:00
|
|
|
#########################################################################
|
|
|
|
## ARM11 Systems
|
|
|
|
#########################################################################
|
2009-03-25 10:36:50 +00:00
|
|
|
LIST_ARM11=" \
|
|
|
|
cp1136 \
|
|
|
|
omap2420h4 \
|
|
|
|
apollon \
|
|
|
|
imx31_litekit \
|
|
|
|
imx31_phycore \
|
|
|
|
imx31_phycore_eet \
|
|
|
|
mx31ads \
|
2009-06-30 23:07:55 +00:00
|
|
|
mx31pdk \
|
2009-07-04 08:31:24 +00:00
|
|
|
mx31pdk_nand \
|
2009-03-25 10:36:50 +00:00
|
|
|
qong \
|
|
|
|
smdk6400 \
|
2010-06-07 18:13:36 +00:00
|
|
|
tnetv107x_evm \
|
2005-09-24 23:48:28 +00:00
|
|
|
"
|
2005-01-09 23:16:25 +00:00
|
|
|
|
2009-01-27 17:19:12 +00:00
|
|
|
#########################################################################
|
2010-06-18 04:50:01 +00:00
|
|
|
## ARMV7 Systems
|
2009-01-27 17:19:12 +00:00
|
|
|
#########################################################################
|
2010-06-18 04:50:01 +00:00
|
|
|
LIST_ARMV7=" \
|
2010-06-07 19:20:43 +00:00
|
|
|
am3517_evm \
|
2010-10-07 21:48:45 +00:00
|
|
|
ca9x4_ct_vxp \
|
2009-08-23 10:56:42 +00:00
|
|
|
devkit8000 \
|
2010-10-14 20:54:59 +00:00
|
|
|
igep0020 \
|
2010-10-14 20:57:39 +00:00
|
|
|
igep0030 \
|
2010-02-05 14:13:58 +00:00
|
|
|
mx51evk \
|
2009-01-27 17:19:12 +00:00
|
|
|
omap3_beagle \
|
2009-01-28 20:39:57 +00:00
|
|
|
omap3_overo \
|
2009-01-28 20:39:58 +00:00
|
|
|
omap3_evm \
|
2009-01-28 20:39:58 +00:00
|
|
|
omap3_pandora \
|
2009-10-17 17:41:06 +00:00
|
|
|
omap3_sdp3430 \
|
2009-01-28 20:40:16 +00:00
|
|
|
omap3_zoom1 \
|
2009-05-15 21:48:36 +00:00
|
|
|
omap3_zoom2 \
|
2010-06-12 03:35:26 +00:00
|
|
|
omap4_panda \
|
2010-06-08 20:07:46 +00:00
|
|
|
omap4_sdp4430 \
|
2010-05-31 13:02:42 +00:00
|
|
|
s5p_goni \
|
2009-10-01 08:20:40 +00:00
|
|
|
smdkc100 \
|
2009-01-27 17:19:12 +00:00
|
|
|
"
|
|
|
|
|
2008-05-24 10:47:46 +00:00
|
|
|
#########################################################################
|
|
|
|
## AT91 Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2009-07-09 08:16:29 +00:00
|
|
|
LIST_at91=" \
|
|
|
|
afeb9260 \
|
|
|
|
at91cap9adk \
|
|
|
|
at91rm9200dk \
|
|
|
|
at91rm9200ek \
|
|
|
|
at91sam9260ek \
|
|
|
|
at91sam9261ek \
|
|
|
|
at91sam9263ek \
|
2009-09-27 12:47:24 +00:00
|
|
|
at91sam9g10ek \
|
2009-07-09 08:16:29 +00:00
|
|
|
at91sam9g20ek \
|
2009-06-25 15:04:15 +00:00
|
|
|
at91sam9m10g45ek \
|
2009-07-09 08:16:29 +00:00
|
|
|
at91sam9rlek \
|
|
|
|
cmc_pu2 \
|
2009-09-27 12:47:24 +00:00
|
|
|
CPUAT91 \
|
2009-09-27 16:10:09 +00:00
|
|
|
CPU9260 \
|
|
|
|
CPU9G20 \
|
2009-07-09 08:16:29 +00:00
|
|
|
csb637 \
|
2010-02-03 21:48:09 +00:00
|
|
|
eb_cpux9k2 \
|
2009-07-09 08:16:29 +00:00
|
|
|
kb9202 \
|
|
|
|
meesc \
|
|
|
|
mp2usb \
|
|
|
|
m501sk \
|
2010-01-25 09:50:41 +00:00
|
|
|
otc570 \
|
2009-07-09 08:16:29 +00:00
|
|
|
pm9261 \
|
|
|
|
pm9263 \
|
2010-04-20 19:49:04 +00:00
|
|
|
pm9g45 \
|
2009-08-20 14:04:49 +00:00
|
|
|
SBC35_A9G20 \
|
|
|
|
TNY_A9260 \
|
|
|
|
TNY_A9G20 \
|
2008-05-24 10:47:46 +00:00
|
|
|
"
|
|
|
|
|
2002-11-02 23:17:16 +00:00
|
|
|
#########################################################################
|
|
|
|
## Xscale Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-03 22:21:51 +00:00
|
|
|
LIST_pxa="$(boards_by_cpu pxa)"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
LIST_ixp="$(boards_by_cpu ixp)
|
2007-08-10 20:34:48 +00:00
|
|
|
pdnb3 \
|
|
|
|
scpu \
|
|
|
|
"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2008-04-20 22:35:52 +00:00
|
|
|
#########################################################################
|
|
|
|
## ARM groups
|
|
|
|
#########################################################################
|
2003-10-14 19:43:55 +00:00
|
|
|
|
2009-01-27 17:19:12 +00:00
|
|
|
LIST_arm=" \
|
|
|
|
${LIST_SA} \
|
|
|
|
${LIST_ARM7} \
|
|
|
|
${LIST_ARM9} \
|
|
|
|
${LIST_ARM10} \
|
|
|
|
${LIST_ARM11} \
|
2010-06-18 04:50:01 +00:00
|
|
|
${LIST_ARMV7} \
|
2009-01-27 17:19:12 +00:00
|
|
|
${LIST_at91} \
|
|
|
|
${LIST_pxa} \
|
|
|
|
${LIST_ixp} \
|
2005-01-09 23:16:25 +00:00
|
|
|
"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2003-03-27 12:09:35 +00:00
|
|
|
#########################################################################
|
2005-08-13 22:27:00 +00:00
|
|
|
## MIPS Systems (default = big endian)
|
2003-03-27 12:09:35 +00:00
|
|
|
#########################################################################
|
|
|
|
|
2007-08-10 20:34:48 +00:00
|
|
|
LIST_mips4kc=" \
|
|
|
|
incaip \
|
2008-01-16 17:27:51 +00:00
|
|
|
qemu_mips \
|
2009-01-21 16:25:01 +00:00
|
|
|
vct_platinum \
|
|
|
|
vct_platinum_small \
|
|
|
|
vct_platinum_onenand \
|
|
|
|
vct_platinum_onenand_small \
|
|
|
|
vct_platinumavc \
|
|
|
|
vct_platinumavc_small \
|
|
|
|
vct_platinumavc_onenand \
|
|
|
|
vct_platinumavc_onenand_small \
|
|
|
|
vct_premium \
|
|
|
|
vct_premium_small \
|
|
|
|
vct_premium_onenand \
|
|
|
|
vct_premium_onenand_small \
|
2007-08-10 20:34:48 +00:00
|
|
|
"
|
2003-03-27 12:09:35 +00:00
|
|
|
|
2007-08-10 20:34:48 +00:00
|
|
|
LIST_mips5kc=" \
|
|
|
|
purple \
|
|
|
|
"
|
2003-04-05 00:53:31 +00:00
|
|
|
|
2007-08-10 20:34:48 +00:00
|
|
|
LIST_au1xx0=" \
|
|
|
|
dbau1000 \
|
|
|
|
dbau1100 \
|
|
|
|
dbau1500 \
|
|
|
|
dbau1550 \
|
|
|
|
dbau1550_el \
|
|
|
|
gth2 \
|
|
|
|
"
|
2003-10-09 20:09:04 +00:00
|
|
|
|
2007-08-10 20:34:48 +00:00
|
|
|
LIST_mips=" \
|
|
|
|
${LIST_mips4kc} \
|
|
|
|
${LIST_mips5kc} \
|
|
|
|
${LIST_au1xx0} \
|
|
|
|
"
|
2003-03-27 12:09:35 +00:00
|
|
|
|
2005-08-13 22:27:00 +00:00
|
|
|
#########################################################################
|
|
|
|
## MIPS Systems (little endian)
|
|
|
|
#########################################################################
|
|
|
|
|
|
|
|
LIST_mips4kc_el=""
|
|
|
|
|
|
|
|
LIST_mips5kc_el=""
|
|
|
|
|
2007-08-10 20:34:48 +00:00
|
|
|
LIST_au1xx0_el=" \
|
|
|
|
dbau1550_el \
|
2007-10-27 06:00:25 +00:00
|
|
|
pb1000 \
|
2007-08-10 20:34:48 +00:00
|
|
|
"
|
2005-08-13 22:27:00 +00:00
|
|
|
|
2007-08-10 20:34:48 +00:00
|
|
|
LIST_mips_el=" \
|
|
|
|
${LIST_mips4kc_el} \
|
|
|
|
${LIST_mips5kc_el} \
|
|
|
|
${LIST_au1xx0_el} \
|
|
|
|
"
|
2005-08-13 22:27:00 +00:00
|
|
|
|
2003-05-31 18:35:21 +00:00
|
|
|
#########################################################################
|
|
|
|
## i386 Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-20 07:34:19 +00:00
|
|
|
LIST_x86="$(boards_by_arch i386)"
|
2003-05-31 18:35:21 +00:00
|
|
|
|
2004-10-10 21:27:30 +00:00
|
|
|
#########################################################################
|
|
|
|
## Nios-II Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
LIST_nios2="$(boards_by_arch nios2)
|
2010-04-21 00:40:59 +00:00
|
|
|
nios2-generic \
|
2006-06-10 17:27:47 +00:00
|
|
|
"
|
2004-10-10 21:27:30 +00:00
|
|
|
|
2004-07-10 23:48:41 +00:00
|
|
|
#########################################################################
|
|
|
|
## MicroBlaze Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
LIST_microblaze="$(boards_by_arch microblaze)"
|
2004-07-10 23:48:41 +00:00
|
|
|
|
2006-01-26 22:38:46 +00:00
|
|
|
#########################################################################
|
|
|
|
## ColdFire Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
LIST_coldfire="$(boards_by_arch m68k)
|
2010-01-25 10:27:44 +00:00
|
|
|
astro_mcf5373l \
|
2007-08-10 20:34:48 +00:00
|
|
|
cobra5272 \
|
|
|
|
EB+MCF-EV123 \
|
|
|
|
EB+MCF-EV123_internal \
|
2008-01-14 23:43:33 +00:00
|
|
|
M52277EVB \
|
2007-08-17 00:23:50 +00:00
|
|
|
M5235EVB \
|
2008-01-14 23:23:08 +00:00
|
|
|
M5329AFEE \
|
|
|
|
M5373EVB \
|
2008-08-11 13:41:49 +00:00
|
|
|
M54451EVB \
|
2007-08-16 20:05:11 +00:00
|
|
|
M54455EVB \
|
2008-01-15 20:15:46 +00:00
|
|
|
M5475AFE \
|
|
|
|
M5485AFE \
|
2006-04-20 06:42:42 +00:00
|
|
|
"
|
2006-01-26 22:38:46 +00:00
|
|
|
|
2006-10-24 12:42:37 +00:00
|
|
|
#########################################################################
|
|
|
|
## AVR32 Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
LIST_avr32="$(boards_by_arch avr32)"
|
2006-10-24 12:42:37 +00:00
|
|
|
|
2007-03-09 05:40:56 +00:00
|
|
|
#########################################################################
|
|
|
|
## Blackfin Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-19 06:41:26 +00:00
|
|
|
LIST_blackfin="$(boards_by_arch blackfin)"
|
2007-03-09 05:40:56 +00:00
|
|
|
|
2007-11-27 08:44:53 +00:00
|
|
|
#########################################################################
|
|
|
|
## SH Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-10-19 16:22:25 +00:00
|
|
|
LIST_sh2="$(boards_by_cpu sh2)"
|
2010-10-19 16:28:29 +00:00
|
|
|
LIST_sh3="$(boards_by_cpu sh3)"
|
2010-10-19 16:35:28 +00:00
|
|
|
LIST_sh4="$(boards_by_cpu sh4)"
|
2008-04-20 22:35:52 +00:00
|
|
|
|
2010-10-19 16:35:28 +00:00
|
|
|
LIST_sh="$(boards_by_arch sh)"
|
2007-11-27 08:44:53 +00:00
|
|
|
|
2008-03-28 08:47:00 +00:00
|
|
|
#########################################################################
|
|
|
|
## SPARC Systems
|
|
|
|
#########################################################################
|
|
|
|
|
2010-08-19 17:05:06 +00:00
|
|
|
LIST_sparc="$(boards_by_arch sparc)"
|
2002-11-02 23:17:16 +00:00
|
|
|
|
|
|
|
#-----------------------------------------------------------------------
|
|
|
|
|
|
|
|
build_target() {
|
|
|
|
target=$1
|
|
|
|
|
|
|
|
${MAKE} distclean >/dev/null
|
2010-09-14 19:48:16 +00:00
|
|
|
${MAKE} -s ${target}_config
|
2006-09-01 17:49:50 +00:00
|
|
|
|
|
|
|
${MAKE} ${JOBS} all 2>&1 >${LOG_DIR}/$target.MAKELOG \
|
|
|
|
| tee ${LOG_DIR}/$target.ERR
|
2009-12-07 05:58:28 +00:00
|
|
|
|
|
|
|
# Check for 'make' errors
|
|
|
|
if [ ${PIPESTATUS[0]} -ne 0 ] ; then
|
|
|
|
RC=1
|
|
|
|
fi
|
|
|
|
|
2009-09-21 17:04:32 +00:00
|
|
|
if [ -s ${LOG_DIR}/$target.ERR ] ; then
|
|
|
|
ERR_CNT=$((ERR_CNT + 1))
|
|
|
|
ERR_LIST="${ERR_LIST} $target"
|
|
|
|
else
|
|
|
|
rm ${LOG_DIR}/$target.ERR
|
|
|
|
fi
|
|
|
|
|
|
|
|
TOTAL_CNT=$((TOTAL_CNT + 1))
|
2006-09-01 17:49:50 +00:00
|
|
|
|
2008-01-28 10:56:19 +00:00
|
|
|
${CROSS_COMPILE}size ${BUILD_DIR}/u-boot \
|
2006-09-01 17:49:50 +00:00
|
|
|
| tee -a ${LOG_DIR}/$target.MAKELOG
|
2002-11-02 23:17:16 +00:00
|
|
|
}
|
2010-08-19 17:05:06 +00:00
|
|
|
build_targets() {
|
|
|
|
for t in "$@" ; do
|
|
|
|
# If a LIST_xxx var exists, use it. But avoid variable
|
|
|
|
# expansion in the eval when a board name contains certain
|
|
|
|
# characters that the shell interprets.
|
|
|
|
case ${t} in
|
|
|
|
*[-+=]*) list= ;;
|
|
|
|
*) list=$(eval echo '${LIST_'$t'}') ;;
|
|
|
|
esac
|
|
|
|
if [ -n "${list}" ] ; then
|
|
|
|
build_targets ${list}
|
|
|
|
else
|
|
|
|
build_target ${t}
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
}
|
2002-11-02 23:17:16 +00:00
|
|
|
|
|
|
|
#-----------------------------------------------------------------------
|
|
|
|
|
2009-09-21 17:04:32 +00:00
|
|
|
print_stats() {
|
|
|
|
echo ""
|
|
|
|
echo "--------------------- SUMMARY ----------------------------"
|
|
|
|
echo "Boards compiled: ${TOTAL_CNT}"
|
|
|
|
if [ ${ERR_CNT} -gt 0 ] ; then
|
|
|
|
echo "Boards with warnings or errors: ${ERR_CNT} (${ERR_LIST} )"
|
|
|
|
fi
|
|
|
|
echo "----------------------------------------------------------"
|
2009-12-07 05:58:28 +00:00
|
|
|
|
|
|
|
exit $RC
|
2009-09-21 17:04:32 +00:00
|
|
|
}
|
2002-11-02 23:17:16 +00:00
|
|
|
|
2009-09-21 17:04:32 +00:00
|
|
|
#-----------------------------------------------------------------------
|
2010-08-19 17:05:06 +00:00
|
|
|
|
2010-10-17 10:26:48 +00:00
|
|
|
# Build target groups selected by options, plus any command line args
|
|
|
|
set -- ${SELECTED} "$@"
|
|
|
|
# run PowerPC by default
|
2010-08-19 17:05:06 +00:00
|
|
|
[ $# = 0 ] && set -- powerpc
|
|
|
|
build_targets "$@"
|