Reviewers: Jakob, ulan,

Message:
Use md5 on Mac and md5sum on Linux.

The only thing left is that we do not know how to install md5 on Android
devices. This information could be added in the wiki in the future.

Description:
Android test runner: Make android-sync.sh work on Mac

Please review this at http://codereview.chromium.org/10806063/

SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/

Affected files:
  M     tools/android-sync.sh


Index: tools/android-sync.sh
===================================================================
--- tools/android-sync.sh       (revision 12171)
+++ tools/android-sync.sh       (working copy)
@@ -33,7 +33,7 @@
# The fourth argument is the absolute path to the V8 directory on the device.

 if [ ${#@} -lt 4 ] ; then
-  echo "Error: need 4 arguments"
+  echo "$0: Error: need 4 arguments"
   exit 1
 fi

@@ -42,11 +42,34 @@
 HOST_V8=$3
 ANDROID_V8=$4

+function LINUX_MD5 {
+  local HASH=$(md5sum $1)
+  echo ${HASH%% *}
+}
+
+function DARWIN_MD5 {
+  local HASH=$(md5 $1)
+  echo ${HASH} | cut -f2 -d "=" | cut -f2 -d " "
+}
+
+host_os=$(uname -s)
+case "${host_os}" in
+  "Linux")
+    MD5=LINUX_MD5
+    ;;
+  "Darwin")
+    MD5=DARWIN_MD5
+    ;;
+  *)
+    echo "$0: Host platform ${host_os} is not supported" >& 2
+    exit 1
+esac
+
 function sync_file {
   local FILE=$1
   local ANDROID_HASH=$(adb shell "md5 \"$ANDROID_V8/$FILE\"")
-  local HOST_HASH=$(md5sum "$HOST_V8/$FILE")
-  if [ "${ANDROID_HASH%% *}" != "${HOST_HASH%% *}" ]; then
+  local HOST_HASH=$($MD5 "$HOST_V8/$FILE")
+  if [ "${ANDROID_HASH%% *}" != "${HOST_HASH}" ]; then
     adb push "$HOST_V8/$FILE" "$ANDROID_V8/$FILE" &> /dev/null
   fi
   echo -n "."


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to