diff contrib/prepare_patch.sh @ 0:a06113de4d67

first commit
author kent <kent@cr.ie.u-ryukyu.ac.jp>
date Fri, 17 Jul 2009 14:47:48 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/contrib/prepare_patch.sh	Fri Jul 17 14:47:48 2009 +0900
@@ -0,0 +1,96 @@
+#!/bin/sh
+#set -x
+
+# Prepares a patch for the patch tester.
+# Copyright (C) 2007  Free Software Foundation, Inc.
+# Contributed by Sebastian Pop <sebastian.pop@amd.com>
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+
+usage() {
+    cat <<EOF
+prepare_patch.sh <source_dir> [patches_dir]
+
+    SOURCE_DIR is the directory containing GCC's toplevel configure.
+
+    PATCHES_DIR is the directory where the patch will be copied to.
+    Default is SOURCE_DIR/patches.
+
+EOF
+    exit 1
+}
+
+test $# -eq 0 && usage
+
+SOURCE=$1
+PATCHES=
+
+if [[ "$#" < 2 ]]; then
+    PATCHES=$SOURCE/patches
+else
+    PATCHES=$2
+fi
+
+[ -f $SOURCE/config.guess ] || usage
+[ -d $PATCHES ] || mkdir -p $PATCHES
+
+echo "Enter a name for this patch: "
+read name
+PATCH=$PATCHES/`TZ=UTC date +"%Y_%m_%d_%H_%M_%S"`_$name.diff
+
+echo "Enter the email where the report should be sent: "
+read email
+echo "email:$email" >> $PATCH
+
+branch=`svn info $SOURCE | grep URL: | sed -e "s/^URL: //g"`
+echo "Enter svn branch (svn info in $SOURCE reports $branch, default is trunk): "
+read svn_branch
+if [ x$svn_branch = x ]; then
+    svn_branch=trunk
+fi
+echo "branch:$svn_branch" >> $PATCH
+
+revision=`svn info $SOURCE | grep Revision: | sed -e "s/^Revision: //g"`
+echo "Enter svn revision (svn info in $SOURCE reports $revision, default is HEAD): "
+read svn_revision
+if [ x$svn_revision = x ]; then
+    svn_revision=HEAD
+fi
+echo "revision:$svn_revision" >> $PATCH
+
+echo "Enter configure options: "
+read configure_options
+echo "configure:$configure_options" >> $PATCH
+
+echo "Enter make options: "
+read make_options
+echo "make:$make_options" >> $PATCH
+
+echo "Enter make check options: "
+read check_options
+echo "check:$check_options" >> $PATCH
+
+echo "" >> $PATCH
+
+svn diff $SOURCE | tee -a $PATCH
+
+cat <<EOF
+
+You can now edit your patch, include a ChangeLog, and before
+submitting to the patch tester, don't forget to sign it with:
+
+  gpg --clearsign $PATCH
+
+EOF