]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - MAKEALL
Tegra30: mmc: Add Tegra30 SDMMC compatible entry to fdtdec & driver
[karo-tx-uboot.git] / MAKEALL
diff --git a/MAKEALL b/MAKEALL
index 5b06c5477decafc2d18dafd0ad8520e96a572ca0..397adef920a4f9e281ad7f44fe941b42c399f314 100755 (executable)
--- a/MAKEALL
+++ b/MAKEALL
@@ -35,6 +35,9 @@ usage()
        Environment variables:
          BUILD_NCPUS      number of parallel make jobs (default: auto)
          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/)
          BUILD_DIR        output build directory (default: ./)
          BUILD_NBUILDS    number of parallel targets (default: 1)
@@ -180,13 +183,6 @@ else
        JOBS=""
 fi
 
-
-if [ "${CROSS_COMPILE}" ] ; then
-       MAKE="make CROSS_COMPILE=${CROSS_COMPILE}"
-else
-       MAKE=make
-fi
-
 if [ "${MAKEALL_LOGDIR}" ] ; then
        LOG_DIR=${MAKEALL_LOGDIR}
 else
@@ -585,6 +581,18 @@ get_target_maintainers() {
        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() {
        if [ "$PRINT_MAINTS" != 'y' ] ; then
                echo "$1"
@@ -655,6 +663,16 @@ build_target() {
 
        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} -s ${target}_config