summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2008-03-06 14:47:23 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2008-03-06 14:47:23 +0000
commit1c4e2127649fc27d494d1e193ee7534e07bc495e (patch)
tree8a28514379142fe42f35452d0f1e282cd94a4d4b /contrib
parent8178351ba95c3baa876a935b0b89f7c1d7bcc58a (diff)
downloadgcc-1c4e2127649fc27d494d1e193ee7534e07bc495e.tar.gz
* patch_tester.sh (usage): Watermark is not lexicographic.
Load $STATE/defaults if it exists. (selfexec): Use $0. (apply_patch): Handle deletions. (bootntest): Handle default settings. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@132974 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'contrib')
-rw-r--r--contrib/ChangeLog8
-rwxr-xr-xcontrib/patch_tester.sh30
2 files changed, 33 insertions, 5 deletions
diff --git a/contrib/ChangeLog b/contrib/ChangeLog
index 1ce2fc5e378..15656b99652 100644
--- a/contrib/ChangeLog
+++ b/contrib/ChangeLog
@@ -1,3 +1,11 @@
+2008-03-06 Tom Tromey <tromey@redhat.com>
+
+ * patch_tester.sh (usage): Watermark is not lexicographic.
+ Load $STATE/defaults if it exists.
+ (selfexec): Use $0.
+ (apply_patch): Handle deletions.
+ (bootntest): Handle default settings.
+
2008-03-05 Jakub Jelinek <jakub@redhat.com>
* gennews (files): Reference GCC 4.3 web pages.
diff --git a/contrib/patch_tester.sh b/contrib/patch_tester.sh
index ab6847653c4..bff741c9d5d 100755
--- a/contrib/patch_tester.sh
+++ b/contrib/patch_tester.sh
@@ -1,7 +1,7 @@
#!/bin/sh
# Tests a set of patches from a directory.
-# Copyright (C) 2007 Free Software Foundation, Inc.
+# Copyright (C) 2007, 2008 Free Software Foundation, Inc.
# Contributed by Sebastian Pop <sebastian.pop@amd.com>
# This program is free software; you can redistribute it and/or modify
@@ -48,8 +48,7 @@ patch_tester.sh [-j<N>] [-standby N] [-watermark N] [-savecompilers] [-nogpg]
PATCHES_DIR. Default is ${default_standby} minutes.
WATERMARK is the 5 minute average system charge under which a new
- compile can start. Default is ${default_watermark}. Note that the comparison
- is done in lexicographical order, so don't forget the leading 0.
+ compile can start. Default is ${default_watermark}.
SAVECOMPILERS copies the compilers in the same directory as the
test results for the non patched version. Default is not copy.
@@ -132,6 +131,12 @@ fi
svn -q co svn://gcc.gnu.org/svn/gcc/trunk .
}
+# This can contain required local settings:
+# default_config configure options, always passed
+# default_make make bootstrap options, always passed
+# default_check make check options, always passed
+[ -f $STATE/defaults ] && . $STATE/defaults
+
VERSION=`svn info $SOURCE | grep "^Revision:" | sed -e "s/^Revision://g" -e "s/ //g"`
exec >> $STATE/tester.log 2>&1 || exit 1
@@ -182,7 +187,7 @@ cleanup () {
}
selfexec () {
- exec ${CONFIG_SHELL-/bin/sh} $SOURCE/contrib/patch_tester.sh $args
+ exec ${CONFIG_SHELL-/bin/sh} $0 $args
}
update () {
@@ -263,6 +268,17 @@ apply_patch () {
return 1
fi
fi
+
+ # Just assume indexes for now -- not really great, but svn always
+ # makes them.
+ grep "^Index: " $PATCH | sed -e 's/Index: //' | while read file; do
+ # If the patch resulted in an empty file, delete it.
+ # This is how svn reports deletions.
+ if [ ! -s $file ]; then
+ rm -f $file
+ report "Deleting empty file $file"
+ fi
+ done
}
save_compilers () {
@@ -279,13 +295,16 @@ bootntest () {
cd $BUILD
CONFIG_OPTIONS=`grep "^configure:" $PATCH | sed -e "s/^configure://g"`
+ CONFIG_OPTIONS="$default_config $CONFIG_OPTIONS"
if ! $SOURCE/configure $CONFIG_OPTIONS &> $1/configure ; then
report "configure failed with:"
freport $1/configure
return 1
fi
- if ! make $dashj `grep "^make:" $PATCH | sed -e "s/^make://g"` bootstrap &> $1/bootstrap ; then
+ MAKE_ARGS=`grep "^make:" $PATCH | sed -e "s/^make://g"`
+ MAKE_ARGS="$default_make $MAKE_ARGS"
+ if ! make $dashj $MAKE_ARGS bootstrap &> $1/bootstrap ; then
report "bootstrap failed with last lines:"
tail -30 $1/bootstrap > $1/last_bootstrap
freport $1/last_bootstrap
@@ -296,6 +315,7 @@ bootntest () {
fi
CHECK_OPTIONS=`grep "^check:" $PATCH | sed -e "s/^check://g"`
+ CHECK_OPTIONS="$default_check $CHECK_OPTIONS"
make $dashj $CHECK_OPTIONS -k check &> $1/check
for LOG in $TESTLOGS ; do