#!/bin/bash savedir=../u-boot-images mkdir -p $savedir rm -fr $savedir/* boards=$(cd configs && grep -l DEFCONFIG * | sed 's/_defconfig.*$//'); cpus=`grep -c '^processor' /proc/cpuinfo` ; jobs=`expr $cpus + 2` ; numboards=0; numsuccess=0; numfailures=0; for board in $boards ; do if [ $board != "mx6qsabrelite" ] ; then cnt=`sed -n "/CONFIG_ARCH_IMX8M=/=" configs/${board}_defconfig` if [ "${cnt}" != "" ] ; then export ARCH=arm64 export CROSS_COMPILE=aarch64-linux-gnu- else export ARCH=arm export CROSS_COMPILE=arm-linux-gnueabihf- fi make distclean ; make ${board}_defconfig make all -j $jobs if [ $? -ne 0 ]; then numfailures=`expr $numfailures + 1`; echo -e "\n\n\n!!!!!!!! build failure for $board !!!!!!!!!!!!\n\n"; read line; else if [ "${ARCH}" == "arm64" ] ; then make flash.bin -j4 cp -fv flash.bin ${savedir}/u-boot.${board} ; ls -l ${savedir}/u-boot.${board}; cp -fv u-boot.bin ${savedir}/u-boot.bin.${board}; else cp -fv u-boot.imx $savedir/u-boot.${board}; ls -l $savedir/u-boot.${board}; fi numsuccess=`expr $numsuccess + 1`; fi defcfg=$(sed -n -e's/.\{1,\}DEFCONFIG=\\"\(.\{1,\}\)\\""/\1/p' configs/${board}_defconfig) if [ "$defcfg" != "$board" ] ; then echo -e "\n\n\n!!!!!!!! $board does not match $defcfg !!!!!!!!!!!!\n\n"; read line; fi numboards=`expr $numboards + 1`; fi done make distclean; echo -e "\n\n\nbuilt for ${numboards} boards. ${numsuccess} succeeded and ${numfailures} failed";