diff --git a/debian/orig-tar.sh b/debian/orig-tar.sh index 2efbbecb..ec964e9d 100755 --- a/debian/orig-tar.sh +++ b/debian/orig-tar.sh @@ -6,38 +6,64 @@ # llvm-toolchain-3.2_3.2repack.orig-polly.tar.bz2 # llvm-toolchain-3.2_3.2repack.orig.tar.bz2 -SVN_URL=http://llvm.org/svn/llvm-project/ -REVISION=$(LANG=C svn info $SVN_URL|grep "^Revision:"|awk '{print $2}') -SVN_CMD="svn export -r $REVISION $SVN_URL" +SVN_BASE_URL=http://llvm.org/svn/llvm-project/ + +if test -n "$1"; then +# http://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/branches/google/stable/ + BRANCH=$1 +fi + +get_svn_url() { + MODULE=$1 + BRANCH=$2 + if test -n "$BRANCH"; then + SVN_URL="$SVN_BASE_URL/$MODULE/branches/$BRANCH" + else + SVN_URL="$SVN_BASE_URL/$MODULE/trunk/" + fi + echo $SVN_URL +} + +if test -n "$BRANCH"; then + REVISION=$(LANG=C svn info $(get_svn_url llvm $BRANCH)|grep "^Last Changed Rev:"|awk '{print $4}') + # Do not use the revision when exporting branch. We consider that all the + # branch are sync + SVN_CMD="svn export" +else + REVISION=$(LANG=C svn info $(get_svn_url llvm)|grep "^Revision:"|awk '{print $2}') + SVN_CMD="svn export -r $REVISION" +fi + MAJOR_VERSION=3.3 # LLVM LLVM_TARGET=llvm-toolchain_$MAJOR_VERSION~svn$REVISION -$SVN_CMD/llvm/trunk $LLVM_TARGET +$SVN_CMD $(get_svn_url llvm $BRANCH) $LLVM_TARGET tar jcvf llvm-toolchain_$MAJOR_VERSION~svn$REVISION.orig.tar.bz2 $LLVM_TARGET rm -rf $LLVM_TARGET + # Clang CLANG_TARGET=clang_$MAJOR_VERSION~svn$REVISION -$SVN_CMD/cfe/trunk $CLANG_TARGET +$SVN_CMD $(get_svn_url cfe $BRANCH) $CLANG_TARGET tar jcvf llvm-toolchain_$MAJOR_VERSION~svn$REVISION.orig-clang.tar.bz2 $CLANG_TARGET rm -rf $CLANG_TARGET # Compiler-rt COMPILER_RT_TARGET=compiler-rt_$MAJOR_VERSION~svn$REVISION -$SVN_CMD/compiler-rt/trunk $COMPILER_RT_TARGET +$SVN_CMD $(get_svn_url compiler-rt $BRANCH) $COMPILER_RT_TARGET tar jcvf llvm-toolchain_$MAJOR_VERSION~svn$REVISION.orig-compiler-rt.tar.bz2 $COMPILER_RT_TARGET rm -rf $COMPILER_RT_TARGET # Polly POLLY_TARGET=polly_$MAJOR_VERSION~svn$REVISION -$SVN_CMD/polly/trunk $POLLY_TARGET +$SVN_CMD $(get_svn_url polly $BRANCH) $POLLY_TARGET tar jcvf llvm-toolchain_$MAJOR_VERSION~svn$REVISION.orig-polly.tar.bz2 $POLLY_TARGET rm -rf $POLLY_TARGET # LLDB LLDB_TARGET=lldb_$MAJOR_VERSION~svn$REVISION -$SVN_CMD/lldb/trunk $LLDB_TARGET +$SVN_CMD $(get_svn_url lldb $BRANCH) $LLDB_TARGET tar jcvf llvm-toolchain_$MAJOR_VERSION~svn$REVISION.orig-lldb.tar.bz2 $LLDB_TARGET rm -rf $LLDB_TARGET