Index: compiler-rt/test/sanitizer_common/android_commands/android_common.py =================================================================== --- compiler-rt/test/sanitizer_common/android_commands/android_common.py +++ compiler-rt/test/sanitizer_common/android_commands/android_common.py @@ -1,4 +1,4 @@ -import os, subprocess, tempfile +import os, sys, subprocess, tempfile import time ANDROID_TMPDIR = '/data/local/tmp/Output' @@ -8,6 +8,11 @@ if os.environ.get('ANDROID_RUN_VERBOSE') == '1': verbose = True +def host_to_device_path(path): + rel = os.path.relpath(path, "/") + dev = os.path.join(ANDROID_TMPDIR, rel) + return dev + def adb(args, attempts = 1): if verbose: print args @@ -37,5 +42,5 @@ return text def push_to_device(path): - dst_path = os.path.join(ANDROID_TMPDIR, os.path.basename(path)) + dst_path = host_to_device_path(path) adb(['push', path, dst_path], 5) Index: compiler-rt/test/sanitizer_common/android_commands/android_run.py =================================================================== --- compiler-rt/test/sanitizer_common/android_commands/android_run.py +++ compiler-rt/test/sanitizer_common/android_commands/android_run.py @@ -5,8 +5,7 @@ ANDROID_TMPDIR = '/data/local/tmp/Output' -here = os.path.abspath(os.path.dirname(sys.argv[0])) -device_binary = os.path.join(ANDROID_TMPDIR, os.path.basename(sys.argv[0])) +device_binary = host_to_device_path(sys.argv[0]) def build_env(): args = []