X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=merge_akpm;h=0c3684d74887a3e0ceb347faa0963755c3a9f424;hb=69f33d24896cd12634189a4a4c76793b22ba0e07;hp=aa4e984bfabffe956f68aba47de073d289454dbf;hpb=f09e6dba2f8b9b6c9d3cf190556210979b333ef0;p=next-scripts diff --git a/merge_akpm b/merge_akpm index aa4e984..0c3684d 100755 --- a/merge_akpm +++ b/merge_akpm @@ -1,13 +1,5 @@ #!/bin/bash -LOG_FILE="../merge.log" -SHA1_FILE="../SHA1s" -build_host="ka2" -build_dir="/scratch/sfr/next" -build_cmd="bin/build_next" -[ "$NEXT_BUILD_HOST" ] && build_host="$NEXT_BUILD_HOST" -[ "$NEXT_BUILD_DIR" ] && build_dir="$NEXT_BUILD_DIR" - today="$(date '+%Y%m%d')" no_build=false @@ -16,17 +8,8 @@ no_build=false shift no_build=true } -[ -n "$1" ] && { - build_host="$1" - shift -} -[ -n "$1" ] && { - build_dir="$1" - shift -} -export NEXT_BUILD_HOST="$build_host" -export NEXT_BUILD_DIR="$build_dir" +. "$(dirname $0)/common.sh" log() { @@ -49,10 +32,16 @@ git branch -f akpm/base HEAD old_head=$(git rev-parse HEAD) hlog=$(git log -1 --oneline akpm-current/current) 2>/dev/null log Merging akpm-current/current "($hlog)" -execute git merge akpm-current/current || { +execute git merge --no-ff akpm-current/current || { echo Merge failed 1>&2 echo $h >>../merge.debug git diff >>../merge.debug 2>&1 + um_files=$(git diff 2>&1 | sed -n 's/^\* Unmerged path //p') + [ "$um_files" ] && [ -f "../merge-files/akpm-current" ] && { + rm_files=$(grep -F "$um_files" "../merge-files/akpm-current") + [ "$rm_files" ] && + "$bin_dir/do_rm" $rm_files + } git diff 2>&1 | egrep -q '<<<<<|^\*' && { bash -i || exit } @@ -68,9 +57,6 @@ printf "%s\t%s\n" akpm-current $(git show-ref --hash akpm-current/current) >> $S } done } -[ -x "../pre-build/akpm-current" ] && { - "../pre-build/akpm-current" || bash -i || exit -} new_head=$(git rev-parse HEAD) @@ -78,11 +64,11 @@ $no_build || [ "$old_head" = "$new_head" ] || [ "$(git diff ${old_head}.. | wc -c)" -eq 0 ] || { - git push -f "$build_host":"$build_dir" master:refs/heads/next || { + git push -f "${build_host}${build_host:+:}${build_dir}" master:refs/heads/next || { echo git push failed 1>&2 bash -i || exit } - ssh "$build_host" "$build_cmd" || { + "$bin_dir/do_build" akpm-current || { echo Build failed 1>&2 bash -i || exit } @@ -103,6 +89,7 @@ execute git rebase --onto master remotes/origin/akpm/master-base || { bash -i || exit } echo "fix up?" +linux-next-notify "Waiting for akpm fix up" bash -i log '$' cd $cpwd cd $cpwd @@ -129,9 +116,6 @@ printf "%s\t\t%s\n" akpm $(git show-ref --hash akpm/master) >> $SHA1_FILE } done } -[ -x "../pre-build/akpm" ] && { - "../pre-build/akpm" || bash -i || exit -} new_head=$(git rev-parse HEAD) @@ -139,11 +123,11 @@ $no_build || [ "$old_head" = "$new_head" ] || [ "$(git diff ${old_head}.. | wc -c)" -eq 0 ] || { - git push -f "$build_host":"$build_dir" master:refs/heads/next || { + git push -f "${build_host}${build_host:+:}${build_dir}" master:refs/heads/next || { echo git push failed 1>&2 bash -i || exit } - ssh "$build_host" "$build_cmd" || { + "$bin_dir/do_build" akpm || { echo Build failed 1>&2 bash -i || exit }