From 7fe87d96f0d1a046cf06f48b76ee5639f2dba632 Mon Sep 17 00:00:00 2001 From: Marc Andre Tanner Date: Wed, 14 Oct 2009 09:57:08 +0200 Subject: [PATCH] Rename download_scm to download_svn and just care about svn The distributed systems like git or hg work differently which makes the original idea a bit clumsy (unfortunately git archive --remote=$REPO_URL $REVISION doesn't work reliable because it needs to be explicitely activated in the git server configuration. On the upside these modern scm systems normaly provide a web interface where you can download a tarball of a given revision. So we will wget from those if we need to. Signed-off-by: Marc Andre Tanner --- download.sh | 32 +++++++++++++++---------------- sources/functions.sh | 54 ++++++++++++++++++---------------------------------- 2 files changed, 35 insertions(+), 51 deletions(-) diff --git a/download.sh b/download.sh index be3f5e4..f1741b3 100755 --- a/download.sh +++ b/download.sh @@ -57,9 +57,9 @@ download || dienow #URL=http://www.brain-dump.org/tmp/tslib-1.0.0-r77-patched.tar.bz2 \ #SHA1=37e6e7fd0ad30cea19f03bf0276100d606861d00 \ -SHA1= SCM_REV=77 \ +SHA1= SVN_REV=77 \ URL=svn://svn.berlios.de/tslib/trunk/tslib \ -download_scm || dienow +download_svn || dienow URL=http://mirrors.zerg.biz/nongnu/freetype/freetype-2.3.9.tar.bz2 \ SHA1=db08969cb5053879ff9e973fe6dd2c52c7ea2d4e \ @@ -67,33 +67,33 @@ download || dienow #URL=http://download.enlightenment.org/snapshots/2009-07-29/eina-0.0.2.062.tar.bz2 \ #SHA1=937e3d7744cb70d6b79a6f55143cb85e2ac52013 \ -SHA1= SCM=svn SCM_REV=42803 \ +SHA1= SVN_REV=42803 \ URL=http://svn.enlightenment.org/svn/e/trunk/eina \ -download_scm || dienow +download_svn || dienow #URL=http://download.enlightenment.org/releases/eet-1.2.2.tar.bz2 \ #SHA1=971bc5b4d3678369b7c9e86cb641644d80109b26 \ -SHA1= SCM=svn SCM_REV=42803 \ +SHA1= SVN_REV=42803 \ URL=http://svn.enlightenment.org/svn/e/trunk/eet \ -download_scm || dienow +download_svn || dienow #URL=http://download.enlightenment.org/snapshots/2009-07-29/evas-0.9.9.062.tar.bz2 \ #SHA1=182bd28662f40a498a40c2ecf9ae41ff53c167b8 \ -SHA1= SCM=svn SCM_REV=42803 \ +SHA1= SVN_REV=42803 \ URL=http://svn.enlightenment.org/svn/e/trunk/evas \ -download_scm || dienow +download_svn || dienow #URL=http://download.enlightenment.org/snapshots/2009-07-29/ecore-0.9.9.062.tar.bz2 \ #SHA1=45d27ff2a3b1dd749bad7b5132bbed94beff10d4 \ -SHA1= SCM=svn SCM_REV=42803 \ +SHA1= SVN_REV=42803 \ URL=http://svn.enlightenment.org/svn/e/trunk/ecore \ -download_scm || dienow +download_svn || dienow #URL=http://download.enlightenment.org/snapshots/2009-07-29/embryo-0.9.9.062.tar.bz2 \ #SHA1=a4939038dd5951a75b91085de0e9bf7bf1b9e16e \ -SHA1= SCM=svn SCM_REV=42803 \ +SHA1= SVN_REV=42803 \ URL=http://svn.enlightenment.org/svn/e/trunk/embryo \ -download_scm || dienow +download_svn || dienow URL=http://www.lua.org/ftp/lua-5.1.4.tar.gz \ SHA1=2b11c8e60306efb7f0734b747588f57995493db7 \ @@ -101,15 +101,15 @@ download || dienow #URL=http://download.enlightenment.org/snapshots/2009-07-29/edje-0.9.92.062.tar.bz2 \ #SHA1=ede4573df69e4c2fdeaf72b930556491680c7167 \ -SHA1= SCM=svn SCM_REV=42803 \ +SHA1= SVN_REV=42803 \ URL=http://svn.enlightenment.org/svn/e/trunk/edje \ -download_scm || dienow +download_svn || dienow #URL=http://download.enlightenment.org/snapshots/2009-07-29/elementary-0.5.1.0.tar.bz2 \ #SHA1=3cad3467aba08167de1e8d41235126ee7cd5a533 \ -SHA1= SCM=svn SCM_REV=42803 \ +SHA1= SVN_REV=42803 \ URL=http://svn.enlightenment.org/svn/e/trunk/TMP/st/elementary \ -download_scm || dienow +download_svn || dienow URL=http://matt.ucc.asn.au/dropbear/releases/dropbear-0.52.tar.bz2 \ SHA1=8c1745a9b64ffae79f28e25c6fe9a8b96cac86d8 \ diff --git a/sources/functions.sh b/sources/functions.sh index 8d76223..b271b91 100755 --- a/sources/functions.sh +++ b/sources/functions.sh @@ -49,34 +49,18 @@ function create_rootfs_tarball() } | dotprogress } -# Try to download a given revision from a source control -# management system. +# Try to download a given revision from a svn repository -function download_scm() +function download_svn() { - SCM_TYPE=$SCM - [ -z "$SCM" ] && SCM_TYPE=`echo "$URL" | sed 's ://.* '` # In a first step get a tarball filename for the requested revison - [ -z "$SCM_REV" ] && SCM_REV="HEAD" + [ -z "$SVN_REV" ] && SVN_REV="HEAD" - case "$SCM_TYPE" in - git) - echo git support not yet implemented - return 1; - ;; - hg) - echo hg support not yet implemented - return 1; - ;; - svn) - PACKAGE=`echo "$URL" | sed 's .*/ '` - DIRNAME=$PACKAGE-r$SCM_REV - FILENAME=$PACKAGE-r$SCM_REV.tar.bz2 - ;; - *) return 1 - esac + PACKAGE=`echo "$URL" | sed 's .*/ '` + DIRNAME=$PACKAGE-r$SVN_REV + FILENAME=$PACKAGE-r$SVN_REV.tar.bz2 # Update timestamp so cleanup_oldfiles doesn't delete it touch -c "$SRCDIR/$FILENAME" 2>/dev/null @@ -84,22 +68,22 @@ function download_scm() # Return success if we have a valid copy of the file try_checksum && return 0 - echo Checking out $PACKAGE revision $SCM_REV from $SCM repository + echo Checking out $PACKAGE revision $SVN_REV from svn repository # Checkout files from source repository if no revison was # requested find out which revison current HEAD is and # package everything into a tarball. - case "$SCM_TYPE" in - svn) - svn co --non-interactive -r$SCM_REV "$URL" "$SRCDIR/$PACKAGE" | dotprogress || return 1 - [ "x$SCM_REV" = "xHEAD" ] && cd "$SRCDIR/$PACKAGE" && \ - DIRNAME="$PACKAGE-r$(svn info | grep Revision: | sed 's/Revision: //')" && cd - 1> /dev/null - mv "$SRCDIR/$PACKAGE" "$SRCDIR/$DIRNAME" && - find "$SRCDIR/$DIRNAME" -name .svn | xargs rm -rf && - tar -C "$SRCDIR" -cjf "$SRCDIR/$DIRNAME.tar.bz2" "$DIRNAME" && - rm -rf "$SRCDIR/$DIRNAME" && - return 0 - ;; - esac + svn co --non-interactive -r$SVN_REV "$URL" "$SRCDIR/$PACKAGE" | dotprogress || return 1 + + if [ "x$SVN_REV" = "xHEAD" ]; then + cd "$SRCDIR/$PACKAGE" && + DIRNAME="$PACKAGE-r$(svn info | grep Revision: | sed 's/Revision: //')" && + cd - 1> /dev/null + fi + + mv "$SRCDIR/$PACKAGE" "$SRCDIR/$DIRNAME" && + find "$SRCDIR/$DIRNAME" -name .svn | xargs rm -rf && + tar -C "$SRCDIR" -cjf "$SRCDIR/$DIRNAME.tar.bz2" "$DIRNAME" && + rm -rf "$SRCDIR/$DIRNAME" && return 0 return 1 } -- 2.11.4.GIT