MAKEALL: add support for per architecture toolchains
Add support for per architecture CROSS_COMPILE toolchain definitions via CROSS_COMPILE_ARCH where "ARCH" is any of the supported u-boot architectures. This allows building every supported u-boot board in a single pass of MAKEALL. Signed-off-by: Allen Martin <amartin@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stephen Warren <swarren@wwwdotorg.org>
This commit is contained in:
parent
3e34cf7bff
commit
47104c37de
32
MAKEALL
32
MAKEALL
|
@ -35,6 +35,9 @@ usage()
|
||||||
Environment variables:
|
Environment variables:
|
||||||
BUILD_NCPUS number of parallel make jobs (default: auto)
|
BUILD_NCPUS number of parallel make jobs (default: auto)
|
||||||
CROSS_COMPILE cross-compiler toolchain prefix (default: "")
|
CROSS_COMPILE cross-compiler toolchain prefix (default: "")
|
||||||
|
CROSS_COMPILE_<ARCH> cross-compiler toolchain prefix for
|
||||||
|
architecture "ARCH". Substitute "ARCH" for any
|
||||||
|
supported architecture (default: "")
|
||||||
MAKEALL_LOGDIR output all logs to here (default: ./LOG/)
|
MAKEALL_LOGDIR output all logs to here (default: ./LOG/)
|
||||||
BUILD_DIR output build directory (default: ./)
|
BUILD_DIR output build directory (default: ./)
|
||||||
BUILD_NBUILDS number of parallel targets (default: 1)
|
BUILD_NBUILDS number of parallel targets (default: 1)
|
||||||
|
@ -180,13 +183,6 @@ else
|
||||||
JOBS=""
|
JOBS=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if [ "${CROSS_COMPILE}" ] ; then
|
|
||||||
MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
|
|
||||||
else
|
|
||||||
MAKE=make
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "${MAKEALL_LOGDIR}" ] ; then
|
if [ "${MAKEALL_LOGDIR}" ] ; then
|
||||||
LOG_DIR=${MAKEALL_LOGDIR}
|
LOG_DIR=${MAKEALL_LOGDIR}
|
||||||
else
|
else
|
||||||
|
@ -585,6 +581,18 @@ get_target_maintainers() {
|
||||||
echo "$mail"
|
echo "$mail"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
get_target_arch() {
|
||||||
|
local target=$1
|
||||||
|
|
||||||
|
# Automatic mode
|
||||||
|
local line=`egrep -i "^[[:space:]]*${target}[[:space:]]" boards.cfg`
|
||||||
|
|
||||||
|
if [ -z "${line}" ] ; then echo "" ; return ; fi
|
||||||
|
|
||||||
|
set ${line}
|
||||||
|
echo "$2"
|
||||||
|
}
|
||||||
|
|
||||||
list_target() {
|
list_target() {
|
||||||
if [ "$PRINT_MAINTS" != 'y' ] ; then
|
if [ "$PRINT_MAINTS" != 'y' ] ; then
|
||||||
echo "$1"
|
echo "$1"
|
||||||
|
@ -655,6 +663,16 @@ build_target() {
|
||||||
|
|
||||||
export BUILD_DIR="${output_dir}"
|
export BUILD_DIR="${output_dir}"
|
||||||
|
|
||||||
|
target_arch=$(get_target_arch ${target})
|
||||||
|
eval cross_toolchain=\$CROSS_COMPILE_${target_arch^^}
|
||||||
|
if [ "${cross_toolchain}" ] ; then
|
||||||
|
MAKE="make CROSS_COMPILE=${cross_toolchain}"
|
||||||
|
elif [ "${CROSS_COMPILE}" ] ; then
|
||||||
|
MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
|
||||||
|
else
|
||||||
|
MAKE=make
|
||||||
|
fi
|
||||||
|
|
||||||
${MAKE} distclean >/dev/null
|
${MAKE} distclean >/dev/null
|
||||||
${MAKE} -s ${target}_config
|
${MAKE} -s ${target}_config
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue