2
# Copyright 2012 the V8 project authors. All rights reserved.
3
# Redistribution and use in source and binary forms, with or without
4
# modification, are permitted provided that the following conditions are
7
# * Redistributions of source code must retain the above copyright
8
# notice, this list of conditions and the following disclaimer.
9
# * Redistributions in binary form must reproduce the above
10
# copyright notice, this list of conditions and the following
11
# disclaimer in the documentation and/or other materials provided
12
# with the distribution.
13
# * Neither the name of Google Inc. nor the names of its
14
# contributors may be used to endorse or promote products derived
15
# from this software without specific prior written permission.
17
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
# This script pushes android binaries and test data to the device.
30
# The first argument can be either "android.release" or "android.debug".
31
# The second argument is a relative path to the output directory with binaries.
32
# The third argument is the absolute path to the V8 directory on the host.
33
# The fourth argument is the absolute path to the V8 directory on the device.
35
if [ ${#@} -lt 4 ] ; then
36
echo "$0: Error: need 4 arguments"
46
local HASH=$(md5sum $1)
52
echo ${HASH} | cut -f2 -d "=" | cut -f2 -d " "
64
echo "$0: Host platform ${host_os} is not supported" >& 2
70
local ANDROID_HASH=$(adb shell "md5 \"$ANDROID_V8/$FILE\"")
71
local HOST_HASH=$($MD5 "$HOST_V8/$FILE")
72
if [ "${ANDROID_HASH%% *}" != "${HOST_HASH}" ]; then
73
adb push "$HOST_V8/$FILE" "$ANDROID_V8/$FILE" &> /dev/null
80
echo -n "sync to $ANDROID_V8/$DIR"
81
for FILE in $(find "$HOST_V8/$DIR" -not -path "*.svn*" -type f); do
82
local RELATIVE_FILE=${FILE:${#HOST_V8}}
83
sync_file "$RELATIVE_FILE"
88
echo -n "sync to $ANDROID_V8/$OUTDIR/$ARCH_MODE"
89
sync_file "$OUTDIR/$ARCH_MODE/cctest"
90
sync_file "$OUTDIR/$ARCH_MODE/d8"
91
sync_file "$OUTDIR/$ARCH_MODE/preparser"
93
echo -n "sync to $ANDROID_V8/tools"
94
sync_file tools/consarray.js
95
sync_file tools/codemap.js
96
sync_file tools/csvparser.js
97
sync_file tools/profile.js
98
sync_file tools/splaytree.js
99
sync_file tools/profile_view.js
100
sync_file tools/logreader.js
101
sync_file tools/tickprocessor.js
103
sync_dir test/message
104
sync_dir test/mjsunit
105
sync_dir test/preparser