From f09e6dba2f8b9b6c9d3cf190556210979b333ef0 Mon Sep 17 00:00:00 2001 From: Stephen Rothwell Date: Fri, 10 May 2013 10:47:55 +1000 Subject: [PATCH] do a build after mergeing akpm-current --- merge_akpm | 50 ++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 42 insertions(+), 8 deletions(-) diff --git a/merge_akpm b/merge_akpm index e09625d..aa4e984 100755 --- a/merge_akpm +++ b/merge_akpm @@ -46,6 +46,7 @@ git branch -f akpm-current/current akpm/current 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 || { @@ -60,6 +61,33 @@ execute git merge akpm-current/current || { } printf "%s\t%s\n" akpm-current $(git show-ref --hash akpm-current/current) >> $SHA1_FILE +[ -f "../merge-fixes/akpm-current" ] && { + for p in $(cat "../merge-fixes/akpm-current"); do + $(dirname $0)/merge_fix -n "$p" || { + bash -i || exit + } + done +} +[ -x "../pre-build/akpm-current" ] && { + "../pre-build/akpm-current" || bash -i || exit +} + +new_head=$(git rev-parse HEAD) + +$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 || { + echo git push failed 1>&2 + bash -i || exit + } + ssh "$build_host" "$build_cmd" || { + echo Build failed 1>&2 + bash -i || exit + } +} + execute git clone -s -l -n -q . ../rebase-tmp || { echo Clone failed 1>&2 bash -i || exit @@ -86,6 +114,7 @@ execute rm -rf ../rebase-tmp git branch -f akpm/master-base HEAD +old_head=$(git rev-parse HEAD) log Merging akpm/master '('$(git log -1 --oneline akpm/master)')' execute git merge --no-ff akpm/master || { echo Merge failed 1>&2 @@ -104,15 +133,20 @@ printf "%s\t\t%s\n" akpm $(git show-ref --hash akpm/master) >> $SHA1_FILE "../pre-build/akpm" || bash -i || exit } -$no_build && exit 0 +new_head=$(git rev-parse HEAD) -git push -f "$build_host":"$build_dir" master:refs/heads/next || { - echo git push failed 1>&2 - bash -i || exit -} -ssh "$build_host" "$build_cmd" || { - echo Build failed 1>&2 - bash -i || exit +$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 || { + echo git push failed 1>&2 + bash -i || exit + } + ssh "$build_host" "$build_cmd" || { + echo Build failed 1>&2 + bash -i || exit + } } exit 0 -- 2.39.2