Add a flag to rebranch if we need to.
authorBill Wendling <isanbard@gmail.com>
Wed, 18 Apr 2012 21:38:12 +0000 (21:38 +0000)
committerBill Wendling <isanbard@gmail.com>
Wed, 18 Apr 2012 21:38:12 +0000 (21:38 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155049 91177308-0d34-0410-b5e6-96231b3b80d8

utils/release/tag.sh

index 551fe9130056e947c50bfa09f2d759df4f02d190..399d5c5a7fa93b113c131c8968d19d4f06e44533 100755 (executable)
@@ -16,26 +16,33 @@ set -e
 
 release=""
 rc=""
+rebranch="no"
 
 base_url="https://llvm.org/svn/llvm-project"
 
 function usage() {
-    echo "usage: `basename $0` -release <num>"
+    echo "usage: `basename $0` -release <num> [-rebranch]"
     echo "usage: `basename $0` -release <num> -rc <num>"
     echo " "
     echo "  -release <num>  The version number of the release"
     echo "  -rc <num>       The release candidate number"
+    echo "  -rebranch       Remove existing branch, if present, before branching"
     echo "  -final          Tag final release candidate"
 }
 
 function tag_version() {
     set -x
     for proj in llvm cfe dragonegg test-suite compiler-rt ; do
-        if ! svn ls $base_url/$proj/branches/release_$release > /dev/null 2>&1 ; then
-            svn copy -m "Creating release_$release branch" \
-                $base_url/$proj/trunk \
+        if svn ls $base_url/$proj/branches/release_$release > /dev/null 2>&1 ; then
+            if [ $rebranch = "no" ]; then
+                continue
+            fi
+            svn remove -m "Removing old release_$release branch for rebranching." \
                 $base_url/$proj/branches/release_$release
         fi
+        svn copy -m "Creating release_$release branch" \
+            $base_url/$proj/trunk \
+            $base_url/$proj/branches/release_$release
     done
     set +x
 }
@@ -65,6 +72,9 @@ while [ $# -gt 0 ]; do
             shift
             rc="rc$1"
             ;;
+        -rebranch | --rebranch )
+            rebranch="yes"
+            ;;
         -final | --final )
             rc="final"
             ;;