3 # ./update-source.sh [spec|rev]
4 # Download latest binary tarball based on latest release from
5 # buildbot, current version referenced in spec file, or custom
9 specfile=chromium-browser-bin.spec
15 if [ "$1" == "spec" ]; then
16 rev=$(awk '/^%define.*svnrev/{print $NF}' $specfile)
17 echo "Using $rev from spec file"
18 elif [ "$1" == "trunk" ]; then
19 echo "Fetching latest revno... "
20 rev=$(wget -q -O - http://commondatastorage.googleapis.com/chromium-browser-continuous/Linux/LAST_CHANGE)
21 rev64=$(wget -q -O - http://commondatastorage.googleapis.com/chromium-browser-continuous/Linux_x64/LAST_CHANGE)
22 # be sure that we use same rev on both arch
23 if [ "$rev" != "$rev64" ]; then
24 echo "Current 32bit build ($rev) does not match 64bit build ($rev64)"
25 echo "The upstream buildbot probably failed."
26 if [ "$rev" -lt "$rev64" ]; then
27 echo "Using latest 32bit revision..."
30 echo "Using latest 64bit revision..."
34 echo "Using trunk $rev"
39 contents=$(wget -q -O - "http://omahaproxy.appspot.com/?os=linux&channel=dev")
40 rev=$(echo "$contents" | awk -F, '/^linux/{print $7}')
41 version=$(echo "$contents" | awk -F, '/^linux/{print $3}')
42 echo "Using devel channel $rev..."
45 if [ ! -f chromium-browser32-r$rev.zip ]; then
46 wget http://commondatastorage.googleapis.com/chromium-browser-continuous/Linux/$rev/chrome-linux.zip -c -O chromium-browser32-r$rev.zip
48 upload_32="chromium-browser32-r$rev.zip"
50 if [ ! -f chromium-browser64-r$rev.zip ]; then
51 wget http://commondatastorage.googleapis.com/chromium-browser-continuous/Linux_x64/$rev/chrome-linux.zip -c -O chromium-browser64-r$rev.zip
52 upload_64="chromium-browser64-r$rev.zip"
55 if [ "$dropin" ]; then
56 if [ -x ./dropin ]; then
58 elif [ -x ../dropin ]; then
62 if [ "$upload_32" -o "$upload_64" ]; then
63 echo "Uploading to dropin. ^C to abort"
64 ../dropin $upload_32 $upload_64
68 oldrev=$(awk '/^%define[ ]+svnrev[ ]+/{print $NF}' $specfile)
69 if [ "$oldrev" != "$rev" ]; then
70 if [ -z "$version" ]; then
71 wget -q -O VERSION.sh http://src.chromium.org/viewvc/chrome/trunk/src/chrome/VERSION?revision=$rev
72 echo REV=$rev >> VERSION.sh
73 if grep -Ev '^(MAJOR|MINOR|BUILD|PATCH|REV)=[0-9]+$' VERSION.sh >&2; then
74 echo >&2 "I refuse to execute garbled file due security concerns"
78 version=$MAJOR.$MINOR.$BUILD.$PATCH
81 echo "Updating $specfile for $version r$rev"
83 s/^\(%define[ \t]\+svnrev[ \t]\+\)[0-9]\+\$/\1$rev/
84 s/^\(Version:[ \t]\+\)[.0-9]\+\$/\1$version/
86 ../builder -ncs -5 $specfile