From 78064f98448a45f8694b270f374b3e0f6c214fa2 Mon Sep 17 00:00:00 2001 From: Michael Ellerman Date: Fri, 12 Jun 2015 08:18:04 +1000 Subject: [PATCH] do_build: Do builds in parallel --- do_build | 68 +++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 58 insertions(+), 10 deletions(-) diff --git a/do_build b/do_build index 09fae6d..89a3d76 100755 --- a/do_build +++ b/do_build @@ -21,25 +21,73 @@ ssh root@"$build_host" unshare -n su $(id -u -n) <<-EOF 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 - echo Building: x86_64 allmodconfig d=../x86_64_allmodconfig [ -d \$d ] || mkdir \$d + log_x86=\$d.log e=\$d.except echo CONFIG_BUILD_DOCSRC=n >\$e - KCONFIG_ALLCONFIG=\$e 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 + { + KCONFIG_ALLCONFIG=\$e cross -n -N -a x86_64 -c $gcc_version O=\$d allyesconfig + /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 + log_ppc=\$d.log + { + cross -n -N -a powerpc64 -k powerpc -c $gcc_version O=\$d ppc64_defconfig + /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 + log_arm=\$d.log + { + cross -n -N -a arm -c $gcc_version O=\$d multi_v7_defconfig + /usr/bin/time cross -n -N -a arm -c $gcc_version O=\$d -j$j_factor -s + } > \$log_arm 2>&1 & + + wait %3 + rc=\$? + + cat \$log_arm + if [ \$rc -ne 0 ]; then + echo "ERROR: ARM build failed" + kill %1 + kill %2 + rm .scmversion + exit 1 + else + echo "ARM build OK" + fi + + wait %2 + rc=\$? + + cat \$log_ppc + if [ \$rc -ne 0 ]; then + echo "ERROR: powerpc build failed" + kill %1 + rm .scmversion + exit 1 + else + echo "powerpc build OK" + fi + + wait %1 + rc=\$? + + cat \$log_x86 + if [ \$rc -ne 0 ]; then + echo "ERROR: x86 build failed" + rm .scmversion + exit 1 + else + echo "x86 build OK" + fi rm .scmversion EOF -- 2.39.2