]> git.pld-linux.org Git - packages/apache-mod_pagespeed.git/blobdiff - get-source.sh
- smaller tarball by excluding deps from checkout present as system libs
[packages/apache-mod_pagespeed.git] / get-source.sh
index 98c1c041ed4f7dd0524a28534fb1e779c32fe6de..c9006126cd318d4f20fc9ee57224e537e10764f7 100644 (file)
@@ -5,35 +5,79 @@
 
 pkg=modpagespeed
 baseurl=http://modpagespeed.googlecode.com/svn
-# leave empty to use trunk
-version=0.9.17.7
+# leave empty to use latest tag, or "trunk" for trunk
+version=
 spec=apache-mod_pagespeed.spec
+force=0
 
 # abort on errors
 set -e
-
 # work in package dir
 dir=$(dirname "$0")
 cd "$dir"
 
-if [ -n "$version" ]; then
-       svnurl=$baseurl/tags/$version/src
-       tarball=$pkg-$version.tar.bz2
-else
+if [[ "$1" = *force ]]; then
+       force=1
+       shift
+fi
+
+if [ "$1" ]; then
+       version=$1
+fi
+
+if [ -z "$version" ]; then
+       echo "Looking for latest version..."
+       version=$(svn ls $baseurl/tags/ | sort -V | tail -n1)
+       version=${version%/}
+fi
+
+if [ "$version" = "trunk" ]; then
+       echo "Using trunk"
        svnurl=$baseurl/trunk/src
        tarball=$pkg-$(date +%Y%m%d).tar.bz2
+else
+       echo "Version: $version"
+       svnurl=$baseurl/tags/$version/src
+       tarball=$pkg-$version.tar.bz2
+fi
+
+if [ -f $tarball -a $force != 1 ]; then
+       echo "Tarball $tarball already exists"
+       exit 0
 fi
 
-wget -c http://src.chromium.org/svn/trunk/tools/depot_tools.tar.gz
-test -d depot_tools || tar xzf depot_tools.tar.gz
+# gclient needs python 2.6
+if python -c "import sys; sys.exit(sys.version[:3] > '2.6')"; then
+       echo >&2 "Need python >= 2.6 for gclient"
+       exit 1
+fi
+
+# http://www.chromium.org/developers/how-tos/install-depot-tools
+test -d depot_tools || {
+       wget -c https://src.chromium.org/svn/trunk/tools/depot_tools.zip
+       unzip -qq depot_tools.zip
+#      cd depot_tools
+#      svn upgrade
+#      cd ..
+       chmod a+x depot_tools/gclient depot_tools/update_depot_tools
+}
 
+topdir=${PWD:-($pwd)}
+gclient=$topdir/gclient.conf
 install -d $pkg
 cd $pkg
-# force update
-rm -f .gclient
 
-../depot_tools/gclient config $svnurl
-../depot_tools/gclient sync
+if [ ! -f .gclient ]; then
+       if [ ! -f $gclient ]; then
+               ../depot_tools/gclient config $svnurl --gclientfile=$gclient
+       fi
+       cp $gclient .gclient
+fi
+
+# emulate gclient config, preserving our deps
+sed -i -re '/"url"/ s,"http[^"]+","'$svnurl'",' .gclient
+
+../depot_tools/gclient sync -v
 
 # Populate the LASTCHANGE file template as we will not include VCS info in tarball
 (cd src/build && svnversion > LASTCHANGE.in)
This page took 0.031663 seconds and 4 git commands to generate.