]> git.ozlabs.org Git - next-scripts/blobdiff - do_build
make_summ: filter out lines related to Revter commit patches
[next-scripts] / do_build
index 9b041192b9f3758520857085fe1dd28f14f5ca4e..84b225cc27dbe80e23aede60c8bf9fb63cc4be96 100755 (executable)
--- a/do_build
+++ b/do_build
 
 set -e
 
-###ssh "$build_host" /bin/sh -e <<-EOF
-ssh root@"$build_host" unshare -n su $(id -u -n) <<-EOF
-       set -e
+bparent=$(dirname "$build_dir")
+
+cmd="/bin/sh"
+[ "$build_host" ] &&
+       cmd="ssh root@$build_host unshare -n su $(id -u -n)"
+
+$cmd <<-EOF
+
+       echo Building on \$(hostname)
 
        echo \$PATH | grep -q "\$HOME/bin" || export PATH="\$HOME/bin:\$PATH"
        export LANG=C
 
-       cd "$build_dir"
-
-       export CCACHE_DIR="${build_dir%/*}/.ccache"
-       export TMPDIR="${build_dir%/*}/tmp"
+       cd "$build_dir" || exit 1
 
-       git reset --hard next
-       touch .scmversion
+       export CCACHE_DIR="$bparent/.ccache"
+       export TMPDIR="$bparent/tmp"
 
-       d=../powerpc_ppc64_defconfig
-       [ -d \$d ] || mkdir \$d
-       cross -n -N -a powerpc64 -k powerpc -c 4.8.1 O=\$d ppc64_defconfig
-       cross -n -N -a powerpc64 -k powerpc -c 4.8.1 O=\$d -j64 -s
+       git reset --hard next || exit 1
+       touch .scmversion || exit 1
 
-       d=../x86_64_allmodconfig
-       [ -d \$d ] || mkdir \$d
+       echo Building: x86_64 allmodconfig
+       d="$bparent/x86_64_allmodconfig"
+       [ -d \$d ] || mkdir \$d || exit 1
+       log_x86=\$d.log
        e=\$d.except
-       cat >\$e <<REOF
-               CONFIG_PROFILE_ALL_BRANCHES=n
-               CONFIG_DEBUG_INFO=n
-               CONFIG_X86_DECODER_SELFTEST=n
-               CONFIG_MODULES=y
-               CONFIG_INSTRUCTION_DECODER=n
-       REOF
-       KCONFIG_ALLCONFIG=\$e cross -n -N -a x86_64 -c 4.8.1 O=\$d allmodconfig
-       rm \$e
-       cross -n -N -a x86_64 -c 4.8.1 O=\$d -j64 -s
+       echo CONFIG_BUILD_DOCSRC=n >\$e || exit 1
+       echo CONFIG_MODULES=y >>\$e || exit 1
+       KCONFIG_ALLCONFIG=\$e cross -n -N -a x86_64 -c $gcc_version O=\$d allmodconfig || 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="$bparent/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="$bparent/arm_multi_v7_defconfig"
+       [ -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 &
+
+       echo Building: perf
+       d="$bparent/perf"
+       [ -d \$d ] || mkdir \$d || exit 1
+       log_perf=\$d.log
+       echo "Forking perf build ..."
+       /usr/bin/time make -s -C tools/perf JOBS=$j_factor O=\$d > \$log_perf 2>&1 &
+
+       wait %4
+       rc=\$?
+
+       if [ \$rc -ne 0 ]; then
+               echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
+               echo "ERROR: perf build failed - log follows"
+               echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
+               cat \$log_perf
+               kill %1
+               kill %2
+               kill %3
+               killall make
+               rm .scmversion
+               exit 1
+       else
+               echo "============================"
+               echo " perf build OK - log follows"
+               echo "============================"
+               cat \$log_perf
+       fi
+
+       wait %3
+       rc=\$?
+
+       if [ \$rc -ne 0 ]; then
+               echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
+               echo "ERROR: arm multi_v7_defconfig 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 ppc64_defconfig 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_64 allmodconfig 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