Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: build/android/pylib/gtest/test_package_exe.py

Issue 157743004: android: Require exe unittests to have a foo_unittest_stripped target. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: debug more Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « build/all.gyp ('k') | sandbox/linux/sandbox_linux.gypi » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Defines TestPackageExecutable to help run stand-alone executables.""" 5 """Defines TestPackageExecutable to help run stand-alone executables."""
6 6
7 import logging 7 import logging
8 import os 8 import os
9 import shutil 9 import shutil
10 import sys 10 import sys
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
115 args = ['adb', '-s', adb.GetDevice(), 'shell', 'sh', 115 args = ['adb', '-s', adb.GetDevice(), 'shell', 'sh',
116 constants.TEST_EXECUTABLE_DIR + '/chrome_test_runner.sh'] 116 constants.TEST_EXECUTABLE_DIR + '/chrome_test_runner.sh']
117 logging.info(args) 117 logging.info(args)
118 return pexpect.spawn(args[0], args[1:], logfile=sys.stdout) 118 return pexpect.spawn(args[0], args[1:], logfile=sys.stdout)
119 119
120 #override 120 #override
121 def Install(self, adb): 121 def Install(self, adb):
122 if self.tool.NeedsDebugInfo(): 122 if self.tool.NeedsDebugInfo():
123 target_name = self.suite_path 123 target_name = self.suite_path
124 else: 124 else:
125 target_name = self.suite_path + '_' + adb.GetDevice() + '_stripped' 125 target_name = self.suite_path + '_stripped'
126 should_strip = True 126 if not os.path.isfile(target_name):
127 if os.path.isfile(target_name): 127 logging.critical('Did not find %s, build target %s',
128 logging.info('Found target file %s' % target_name) 128 target_name, self.suite_name + '_stripped')
129 target_mtime = os.stat(target_name).st_mtime 129 sys.exit(1)
130 source_mtime = os.stat(self.suite_path).st_mtime
131 if target_mtime > source_mtime:
132 logging.info('Target mtime (%d) is newer than source (%d), assuming '
133 'no change.' % (target_mtime, source_mtime))
134 should_strip = False
135 130
136 if should_strip: 131 target_mtime = os.stat(target_name).st_mtime
137 logging.info('Did not find up-to-date stripped binary. Generating a ' 132 source_mtime = os.stat(self.suite_path).st_mtime
138 'new one (%s).' % target_name) 133 if target_mtime < source_mtime:
139 # Whenever we generate a stripped binary, copy to the symbols dir. If we 134 logging.critical(
140 # aren't stripping a new binary, assume it's there. 135 'stripped binary (%s, timestamp %d) older than '
141 if not os.path.exists(self._symbols_dir): 136 'source binary (%s, timestamp %d), build target %s',
142 os.makedirs(self._symbols_dir) 137 target_name, target_mtime, self.suite_path, source_mtime,
143 shutil.copy(self.suite_path, self._symbols_dir) 138 self.suite_name + '_stripped')
144 strip = os.environ['STRIP'] 139 sys.exit(1)
145 cmd_helper.RunCmd([strip, self.suite_path, '-o', target_name]) 140
146 test_binary = constants.TEST_EXECUTABLE_DIR + '/' + self.suite_name 141 test_binary = constants.TEST_EXECUTABLE_DIR + '/' + self.suite_name
147 adb.PushIfNeeded(target_name, test_binary) 142 adb.PushIfNeeded(target_name, test_binary)
OLDNEW
« no previous file with comments | « build/all.gyp ('k') | sandbox/linux/sandbox_linux.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698