Running bb_device_steps.py with --install option adds an explicit
install step and eliminates the need to install it as part of
running the test with incorrect label. The install step was currently
being grouped into provision_device step.
This patch partially relands r273386, which was reverted due to issues
with gpu rasterization test. This portion of the patch is merely
cleanup that can be landed separately.
BUG=368495
TBR=navabi@chromium.org
Review URL: https://codereview.chromium.org/309523002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@273505 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This ant script is basically a simple wrapper around an aapt call (the
only thing the large AaptExecTask custom ant task adds is a bunch of
dependency checking that we don't actually want anyway). This
makes it use python instead.
BUG=359249,375324,375431
NOTRY=true
Review URL: https://codereview.chromium.org/291963002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@273326 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The adb_profile_chrome tool has grown quite a bit since its inception,
so now seems to be a good time to split it into smaller modules and add
some rudimentary tests.
BUG=375754
TEST=build/android/chrome_profiler/run_tests
NOTRY=true
Review URL: https://codereview.chromium.org/290013006
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272946 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Reason for revert:
Suspected for android compile failure on waterfall starting
http://build.chromium.org/p/chromium/builders/Android/builds/24321
Errors are pretty obscure. Things like
BUILD FAILED
/b/build/slave/Android/build/src/build/android/ant/apk-obfuscate.xml:161: /b/build/slave/Android/build/src/out/Release/multiple_proguards_test_apk/proguard.txt (No such file or directory)
at proguard.ant.ConfigurationTask.addText(ConfigurationTask.java:315)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
FAILED: cd ../../build/android/tests/multiple_proguards; /*snip*/ build/android/ant/apk-obfuscate.xml
Traceback (most recent call last):
File "../../../../build/android/gyp/ant.py", line 34, in main
stdout = build_utils.CheckOutput(['ant'] + verbose_args)
File "/b/build/slave/Android/build/src/build/android/gyp/util/build_utils.py", line 113, in CheckOutput
raise CalledProcessError(cwd, args, stdout + stderr)
Original issue's description:
> Remove apk-codegen.xml
>
> process_resources.py already implements almost everything from
> apk-codegen.xml so just use that instead.
>
> BUG=359249,375324,375431
>
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=272783TBR=yfriedman@chromium.org,cjhopman@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=359249,375324,375431
Review URL: https://codereview.chromium.org/301543002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272795 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This is the GN version of build/java_cpp_template.gypi.
It defines a template that wraps an action_foreach that generates .java
files using the host C preprocessor.
The major difference in the GN version is that it takes all the
generated java files and zips them together in a single .srcjar. When
such a target is included in the srcjar_deps of a java library, the
.java files in the .srcjar will be treated much like files listed in
that libraries java_sources (particularly they will be compiled and
included in the .jar/.dex).
Depends on https://crrev.com/264773014/
BUG=359249
Review URL: https://codereview.chromium.org/264923007
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272775 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
bb_device_steps.py's RunTestSuites took only one options
argument that will be applied for all the running test suites.
Add another suites_options argument so that the caller can
specify options on certain test suites.
BUG=368034
Review URL: https://codereview.chromium.org/297833002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272657 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The binary_size tool suit includes tools that are useful when trying
to reduce binary size of a program, and chromium related programs
in particular.
This commit (mostly written by andrewhayden@chromium.org for
Android but ported to generic Linux by bratell@opera.com) adds
a graphical HTML based output for run_binary_size_analysis.py.
In the generated web page it is possible to dynamically and
graphically browse the binary and each part of the source tree
is given a size that reflects its contribution to the binary size.
The run_binary_size_analysis tool is run on compiled binaries
with symbols and uses nm and addr2line to map parts of the
binary to source code. Since addr2line is slow the operation to map
binary symbols to source files takes a while but the output is
well worth it when shrinking programs. See its usage information
for details about how to run it.
This commit also includes the tool explain_binary_size_delta.py
(textual output) which can be used to understand why a binary
changed size and in what way. See its usage information for
details about how to run it.
There are many further improvements possible to to do on these tools.
Search the bug database for Label:Tools-BinarySize for suggestions.
BUG=339059
R=primiano@chromium.org,andrewhayden@chromium.org
Review URL: https://codereview.chromium.org/258633003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272255 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently, .isolate file list is hard-coded in
build/android/pylib/gtest/setup.py so for downstream to
provide .isolate file, we need to modify the upstream setup.py
file. So add --isolate-file-path option so that downstream
can provide their own .isolate file if they want.
BUG=368034
Review URL: https://codereview.chromium.org/294033003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@272137 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This extracts the device temp file creation deletion into a context
manager. This context manager will delete the temporary file when
leaving the with: scope.
Also changes logic for finding a temp file from a linear search from 0
to just using a random number (still checking that the file doesn't
exist). Both of these approaches could return the same file in
consecutive calls if the earlier files aren't written to (though it is
nearly impossible with the random number approach instead of essentially
guaranteed).
Removed the temp file name patterns and just added a prefix+suffix
argument to DeviceTempFile (like tempfile.NamedTemporaryFile).
BUG=371054
Review URL: https://codereview.chromium.org/276813002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@270917 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The x86 device can not dump battery information with 'adb dumbsys battery'. This
is causing the x86 instrumentation bot to fail on device status check. This is a
temporary fix until we determine how to check battery info on x86 devices.
BUG=371719
Review URL: https://codereview.chromium.org/284953002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@270516 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
- Make Android tools build as position independent executable by
default, as it now required by Android.
- Introduce a wrapper for running PIE on Android ICS (its linker
doesn't support PIE).
- Add the plumbing for running the PIE wrapper in the test/telemetry
python scripts.
BUG=373219
NOTRY=true
Review URL: https://codereview.chromium.org/287513002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@270406 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Down to 3m22 (without the other optimizations..)
/proc/pid/smaps is kind of large.
It was only used by old style perf tests downstream, long gone
in favor of Telemetry.
Use "showmap %pid" directly, which crunches the data in the device.
Also, while at it, remove GetMemoryUsageForPackage: no longer used.
BUG=
Review URL: https://codereview.chromium.org/280703010
git-svn-id: http://src.chromium.org/svn/trunk/src/build@270395 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
We keep seeing the INSTALL_FAILED_INSUFFICIENT_STORAGE error on the devices. The
APK we install to check for this failure succeeds even when this error exists on
the device (presumably because the APK we install is too small). Thus, this CL
will always wipe the device. It removes the reboot, because that would make the
step take too long.
BUG=335549
TBR=yfriedman@chromium.org
Review URL: https://codereview.chromium.org/255783008
git-svn-id: http://src.chromium.org/svn/trunk/src/build@269408 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
There is no way to see/list the categories present for recording the chrome traces (when running from adb_profile_chrome.py) unlike the UI. Adding the "list" command for --categories option, to keep the usage same as with systrace option.
Usage: build/android/adb_profile_chrome --categories list
BUG=366679
TESTS=To be added.
Review URL: https://codereview.chromium.org/257093004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@268841 4ff67af0-8c30-449e-8e8b-ad334ec8d88c