]> git.pld-linux.org Git - packages/chromium-browser.git/blame - get-source.sh
up to 28.0.1500.95
[packages/chromium-browser.git] / get-source.sh
CommitLineData
e6c6c1d9 1#!/bin/sh
ca7aa526 2set -e
e6c6c1d9 3
dbf2ee91 4# CHANNEL: any from CHANNELS_URL: stable, beta, dev
ca7aa526 5CHANNEL=${1:-beta}
e6c6c1d9 6
95372ebe 7CHANNELS_URL=http://omahaproxy.appspot.com/all
ca7aa526 8PACKAGE_NAME=chromium-browser
f4176835
ER
9PROGRAM=${0##*/}
10WORK_DIR=$(cd "$(dirname "$0")"; pwd)
ca7aa526
ER
11LOCKFILE=$WORK_DIR/$PACKAGE_NAME-$CHANNEL.lock
12OFFICIAL_URL=http://commondatastorage.googleapis.com/chromium-browser-official
13DIST_DIR=$HOME/public_html/chromium-browser/src/$CHANNEL
e6c6c1d9 14
eea8ad40
ER
15# skip package build if interactive
16tty -s && build_package=0
17
ca7aa526 18VERSION=$(wget -qO - "$CHANNELS_URL?os=linux&channel=$CHANNEL" | awk -F, 'NR > 1{print $3}')
95372ebe
ER
19if [ -z "$VERSION" ]; then
20 echo >&2 "Can't figure out version for $CHANNEL"
21 exit 1
22fi
23
e20f2cd0 24# don't use .xz for beta channels, annoying if unpacks that slowly
f20db397
ER
25if [ "$CHANNEL" = "stable" ]; then
26 EXT=xz
27else
28 EXT=gz
29fi
30VERSION_FILE=$DIST_DIR/$PACKAGE_NAME-$VERSION.tar.$EXT
e6c6c1d9 31
5ee7fc97 32if [ -e $VERSION_FILE -a -z "$FORCE" ]; then
ca7aa526
ER
33 # nothing to update
34 exit 0
35fi
e6c6c1d9 36
ca7aa526 37set -x
e6c6c1d9 38
f4176835
ER
39(
40 flock -n 9 || { echo "$PROGRAM: locked"; exit 1; }
e6c6c1d9 41
f4176835
ER
42 TMP_DIR=$(mktemp -d $WORK_DIR/$PACKAGE_NAME-$CHANNEL-$VERSION-_XXXXXX)
43 LOGFILE=$TMP_DIR/$PACKAGE_NAME-$VERSION.log
e6c6c1d9 44
f4176835
ER
45 (
46 cd "$TMP_DIR"
9d8fb756
ER
47 srctarball=$PACKAGE_NAME-$VERSION.tar.xz
48 wget -c -nv -O $srctarball "$OFFICIAL_URL/chromium-$VERSION.tar.xz"
e6c6c1d9 49
f4176835
ER
50 # repackage cleaned up tarball
51 test -d $PACKAGE_NAME-$VERSION || {
52 tar xvf $srctarball
75f96a39 53 mv chromium-$VERSION $PACKAGE_NAME-$VERSION
f4176835 54 }
42cc2c8c 55
f4176835
ER
56 ls -lh $srctarball
57 rm $srctarball
42cc2c8c 58
75f96a39 59 cd $PACKAGE_NAME-$VERSION
f4176835 60 du -sh .
2f77d5e5 61
e00e4177 62 awk '/^#define/ && /(MAJOR|MINOR)_VERSION|BUILD_NUMBER|PATCH_LEVEL/ { printf("%s=%s\n", $2, $3) }' v8/src/version.cc | tee -a v8.sh
2f77d5e5 63
f4176835 64 if [ "$CHANNEL" != "dev" ]; then
94458173 65 sh -x $WORK_DIR/clean-source.sh emptydirs=1 v8=0 mesa=0 sqlite=0
f4176835 66 fi
dbf2ee91 67
f4176835
ER
68 # do not keep REMOVED*.txt in tarball. they are visible in .log anyway
69 rm -vf REMOVED-*.txt
07b01cb7 70
f4176835 71 du -sh .
07b01cb7 72
f4176835
ER
73 # add LASTCHANGE info, take "branch_revision" item
74 svnver=$(wget -qO - "$CHANNELS_URL?os=linux&channel=$CHANNEL" | awk -F, 'NR > 1{print $8}')
75 echo "$svnver" > build/LASTCHANGE.in
85917d98 76
75f96a39 77 cd ..
85917d98 78
f4176835
ER
79 tarball=$PACKAGE_NAME-$VERSION.tar.$EXT
80 # xz -9 OOM's on carme
81 XZ_OPT=-e8 tar -caf $tarball $PACKAGE_NAME-$VERSION
82 ls -lh $tarball
e6c6c1d9 83
f4176835 84 rm -rf $PACKAGE_NAME-$VERSION
e6c6c1d9 85
f4176835
ER
86 chmod 644 $tarball
87 mv $tarball $DIST_DIR
e6c6c1d9 88
f4176835 89 ) > $LOGFILE 2>&1
e6c6c1d9 90
f4176835
ER
91 chmod 644 $LOGFILE
92 mv $LOGFILE $DIST_DIR
e6c6c1d9 93
f4176835 94 rm -rf $TMP_DIR
e6c6c1d9 95
f4176835
ER
96 # create diff patches
97 BASEVER=${VERSION%.*}.0
98 if [ -e $DIST_DIR/$PACKAGE_NAME-$BASEVER.tar.$EXT ]; then
99 base=$(readlink -f $DIST_DIR/$PACKAGE_NAME-$BASEVER.tar.$EXT)
100 current=$DIST_DIR/$PACKAGE_NAME-$VERSION.tar.$EXT
e63ffea8
ER
101 if [ "$(basename $base)" != "$(basename $current)" ]; then
102 sh -x $WORK_DIR/make-diff-patch.sh $base $current
103 mv $PACKAGE_NAME-$VERSION.patch.xz $DIST_DIR
104 # for beta and dev channels, update the diff pointer
105 if [ "$CHANNEL" != "stable" ]; then
106 ln -sf $PACKAGE_NAME-$VERSION.tar.$EXT $DIST_DIR/$PACKAGE_NAME-$BASEVER.tar.$EXT
107 fi
f4176835
ER
108 fi
109 fi
1a868d2c 110
f4176835
ER
111 # try updating spec and build it as well
112 if [ -x $WORK_DIR/update-source.sh ]; then
eea8ad40
ER
113 build_package=${build_package-1} \
114 publish_packages=${publish_packages-1} \
f4176835 115 sh -x $WORK_DIR/update-source.sh
ce99e0e3 116 fi
9337d609 117
f4176835
ER
118 rm $LOCKFILE
119) 9>$LOCKFILE
This page took 0.189296 seconds and 4 git commands to generate.