зеркало из https://github.com/mozilla/moz-skia.git
git-svn-id: http://skia.googlecode.com/svn/trunk@3758 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
Родитель
064e50d495
Коммит
494548b870
|
@ -0,0 +1,95 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# Copyright 2012 Intel Inc.
|
||||
#
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
# found in the LICENSE file.
|
||||
#
|
||||
# This script builds and runs GM in current workspace with another Skia
|
||||
# revision user specifies, and then compares their results. This script is
|
||||
# useful when developers want to know whether their changes would cause any
|
||||
# regression.
|
||||
#
|
||||
# As the name of this script tells, it only works for git repository. :)
|
||||
#
|
||||
# Usage:
|
||||
# Put this script into where your PATH can find it.
|
||||
# And then invoke:
|
||||
# $ git skia-verify [sha1-to-compare-default-is-HEAD^]
|
||||
# It would delete {before,after,diff} directory under the current directory,
|
||||
# so be warned!
|
||||
# After it's done, check out diff/index.html for the possible differences.
|
||||
|
||||
|
||||
function say() {
|
||||
# set color to yellow
|
||||
tput setaf 3
|
||||
echo $1
|
||||
tput sgr0
|
||||
}
|
||||
|
||||
function warn() {
|
||||
# set color to red
|
||||
tput setaf 1
|
||||
echo $1
|
||||
tput sgr0
|
||||
}
|
||||
|
||||
REVISION="HEAD^"
|
||||
|
||||
if [[ $# -eq 1 ]];
|
||||
then
|
||||
REVISION="$1"
|
||||
fi
|
||||
|
||||
tput clear
|
||||
|
||||
say "Checking sanity..."
|
||||
git diff --exit-code > /dev/null
|
||||
if [[ $? -ne 0 ]];
|
||||
then
|
||||
warn "You have uncommitted changes!"
|
||||
exit 1
|
||||
fi
|
||||
git diff --cached --exit-code > /dev/null
|
||||
if [[ $? -ne 0 ]];
|
||||
then
|
||||
warn "You have uncommitted changes!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
say "Preparing Directories..."
|
||||
rm -rf {before,after,diff}
|
||||
mkdir {before,after,diff}
|
||||
|
||||
PREVIOUS_BRANCH=`git branch --no-color | grep "^*" | awk '{ print $2}'`
|
||||
|
||||
say "Running GM for current revision..."
|
||||
./gyp_skia
|
||||
make BUILDTYPE=Release -j10
|
||||
if [[ $? -ne 0 ]];
|
||||
then
|
||||
warn "Failed to compile!"
|
||||
exit 1
|
||||
fi
|
||||
./out/Release/gm -w after
|
||||
|
||||
say "Running GM for revision $REVISION..."
|
||||
# we run the test in a detached branch
|
||||
git checkout --detach "$REVISION"
|
||||
./gyp_skia
|
||||
make BUILDTYPE=Release -j10
|
||||
if [[ $? -ne 0 ]];
|
||||
then
|
||||
warn "Failed to compile!"
|
||||
say "Back to original revision..."
|
||||
git checkout "$PREVIOUS_BRANCH"
|
||||
exit 1
|
||||
fi
|
||||
./out/Release/gm -w before
|
||||
|
||||
say "Back to original revision..."
|
||||
git checkout "$PREVIOUS_BRANCH"
|
||||
|
||||
say "Comparing..."
|
||||
./out/Release/skdiff before after diff
|
Загрузка…
Ссылка в новой задаче