#!/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
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()
{
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
}
}
done
}
-[ -x "../pre-build/akpm-current" ] && {
- "../pre-build/akpm-current" || bash -i || exit
-}
new_head=$(git rev-parse HEAD)
[ "$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
}
bash -i || exit
}
echo "fix up?"
+notify-send "Waiting for akpm fix up"
+pushover "Waiting for akpm fix up"
bash -i
log '$' cd $cpwd
cd $cpwd
}
done
}
-[ -x "../pre-build/akpm" ] && {
- "../pre-build/akpm" || bash -i || exit
-}
new_head=$(git rev-parse HEAD)
[ "$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
}