X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;ds=sidebyside;f=do_build;h=6909065762d81ffeb5c75702327fb5043936170d;hb=3b12961b47780d32c77479e662fd342eff8f750a;hp=3e25833d0d06d656dbe4e31f10a801bd6cec248c;hpb=5fa6bbbe7c418b4d705c1aa84fa4f22473ff8bd7;p=next-scripts diff --git a/do_build b/do_build index 3e25833..6909065 100755 --- a/do_build +++ b/do_build @@ -6,38 +6,101 @@ set -e ###ssh "$build_host" /bin/sh -e <<-EOF ssh root@"$build_host" unshare -n su $(id -u -n) <<-EOF - set -e echo Building on \$(hostname) echo \$PATH | grep -q "\$HOME/bin" || export PATH="\$HOME/bin:\$PATH" export LANG=C - cd "$build_dir" + cd "$build_dir" || exit 1 export CCACHE_DIR="${build_dir%/*}/.ccache" export TMPDIR="${build_dir%/*}/tmp" - git reset --hard next - touch .scmversion - - echo Building: powerpc ppc64_defconfig - d=../powerpc_ppc64_defconfig - [ -d \$d ] || mkdir \$d - cross -n -N -a powerpc64 -k powerpc -c $gcc_version O=\$d ppc64_defconfig - time cross -n -N -a powerpc64 -k powerpc -c $gcc_version O=\$d -j$j_factor -s + git reset --hard next || exit 1 + touch .scmversion || exit 1 echo Building: x86_64 allmodconfig d=../x86_64_allmodconfig - [ -d \$d ] || mkdir \$d - cross -n -N -a x86_64 -c $gcc_version O=\$d allmodconfig - time cross -n -N -a x86_64 -c $gcc_version O=\$d -j$j_factor -s + [ -d \$d ] || mkdir \$d || exit 1 + log_x86=\$d.log + e=\$d.except + echo CONFIG_BUILD_DOCSRC=n >\$e || exit 1 + KCONFIG_ALLCONFIG=\$e cross -n -N -a x86_64 -c $gcc_version O=\$d allyesconfig || exit 1 + echo "Forking x86 build ..." + /usr/bin/time cross -n -N -a x86_64 -c $gcc_version O=\$d -j$j_factor -s > \$log_x86 2>&1 & + + echo Building: powerpc ppc64_defconfig + d=../powerpc_ppc64_defconfig + [ -d \$d ] || mkdir \$d || exit 1 + log_ppc=\$d.log + cross -n -N -a powerpc64 -k powerpc -c $gcc_version O=\$d ppc64_defconfig || exit 1 + echo "Forking powerpc build ..." + /usr/bin/time cross -n -N -a powerpc64 -k powerpc -c $gcc_version O=\$d -j$j_factor -s > \$log_ppc 2>&1 & echo Building: arm multi_v7_defconfig d=../arm_multi_v7_defconfig - [ -d \$d ] || mkdir \$d - cross -n -N -a arm -c $gcc_version O=\$d multi_v7_defconfig - time cross -n -N -a arm -c $gcc_version O=\$d -j$j_factor -s + [ -d \$d ] || mkdir \$d || exit 1 + log_arm=\$d.log + cross -n -N -a arm -c $gcc_version O=\$d multi_v7_defconfig || exit 1 + echo "Forking arm build ..." + /usr/bin/time cross -n -N -a arm -c $gcc_version O=\$d -j$j_factor -s > \$log_arm 2>&1 & + + wait %3 + rc=\$? + + if [ \$rc -ne 0 ]; then + echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" + echo "ERROR: ARM build failed - log follows" + echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" + cat \$log_arm + kill %1 + kill %2 + killall make + rm .scmversion + exit 1 + else + echo "==================================================" + echo " ARM build OK - log follows" + echo "==================================================" + cat \$log_arm + fi + + wait %2 + rc=\$? + + if [ \$rc -ne 0 ]; then + echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" + echo "ERROR: powerpc build failed - log follows" + echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" + cat \$log_ppc + kill %1 + killall make + rm .scmversion + exit 1 + else + echo "==================================================" + echo " powerpc build OK - log follows" + echo "==================================================" + cat \$log_ppc + fi + + wait %1 + rc=\$? + + if [ \$rc -ne 0 ]; then + echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" + echo "ERROR: x86 build failed - log follows" + echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" + cat \$log_x86 + rm .scmversion + exit 1 + else + echo "==================================================" + echo " x86 build OK - log follows" + echo "==================================================" + cat \$log_x86 + fi rm .scmversion EOF