This may help track down some issues with adb reliability:
- sharder: sets the env var that will be inherited by the child shards.
- run_command.py: redirect stderr (i.e., trace output) to stdout, otherwise
higher up layers get confused with the extra data.
It will be reverted soon after the data has been collected.
BUG=268450
Review URL: https://chromiumcodereview.appspot.com/22430003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@216168 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The initial attempt caused flakiness (random deadlocks). It turns out that
testserver.py was inheriting undesirable file descriptors when it was spawned
(including file lock file descriptors). Closing the unnecessary file
descriptors between fork() and exec() solves the problem.
Forwarder used to be a pain to setup/tear down across all the various
harnesses.
This CL should hopefully solve these issues by hiding these
implementation details. The host daemon is now killed once the first time that
the Forwarder class is used and the daemon running on the devices is also
killed the first time a port is forwarded for a specific device.
TBR=bulach@chromium.org
BUG=242846
Review URL: https://codereview.chromium.org/20824008
git-svn-id: http://src.chromium.org/svn/trunk/src/build@215023 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
(was: Issue 18848002: Shows Japanese and English mixed queries correctly.)
The CL 18848002 was reverted because the new unit test, which I added, depended on the specific fonts and didn't run well on some of platforms.
I've carefully chosen another font for the unit test, which is available on all platforms.
BUG=244323
TEST=Test manually.
Review URL: https://chromiumcodereview.appspot.com/19352002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@212792 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Forwarder used to be a pain to setup/tear down across all the various
harnesses.
This CL should hopefully solve these issues by hiding these
implementation details. The host daemon is now killed once the first time that
the Forwarder class is used and the daemon running on the devices is also
killed the first time a port is forwarded for a specific device.
TBR=bulach@chromium.org
BUG=242846
Review URL: https://codereview.chromium.org/19550004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@212582 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This causes flakiness on the Android debug tester bot.
> Move Python setup/tear down logic into Forwarder itself.
>
> Forwarder used to be a pain to setup/tear down across all the various
> harnesses.
> This CL should hopefully solve these issues by hiding these implementation
> details. The host daemon is now killed once the first time that the Forwarder
> class is used and the daemon running on the devices is also killed the first
> time a port is forwarded for a specific device.
>
> BUG=242846
> R=bulach@chromium.org, frankf@chromium.org
>
> Review URL: https://codereview.chromium.org/18086004TBR=pliard@chromium.org
Review URL: https://codereview.chromium.org/19576005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@212054 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Adds an option to print the device status information (i.e. online devices, offline devices and device battery levels). Example output:
<*>RESULT OnlineDevices: OnlineDevices= 2
RESULT OfflineDevices: OfflineDevice= 0
RESULT DeviceBattery: 0149CC380F016011= 99
RESULT DeviceBattery: 014E378305007013= 60
Cleanup uses AndroidCommands for calling adb shell commands rather than its own GetCmdOutput function.
BUG=254014
Review URL: https://chromiumcodereview.appspot.com/19284009
git-svn-id: http://src.chromium.org/svn/trunk/src/build@212052 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Forwarder used to be a pain to setup/tear down across all the various
harnesses.
This CL should hopefully solve these issues by hiding these implementation
details. The host daemon is now killed once the first time that the Forwarder
class is used and the daemon running on the devices is also killed the first
time a port is forwarded for a specific device.
BUG=242846
R=bulach@chromium.org, frankf@chromium.org
Review URL: https://codereview.chromium.org/18086004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@212020 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The perf bots run with -v (INFO level debugging). I'm moving the noisiest
output to DEBUG level. This will make the android log output more parsable
so that the real failures are easier to spot.
Also, this cuts down on several commands running between each page.
BUG=None
TEST=smoothness and page_cycler on android
Review URL: https://chromiumcodereview.appspot.com/18764005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@211673 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
- Instead of parsing *.isolated files, use isolate remap
to create a temporary dependency dir.
- Add an exclusion list to filter dependecies at a finer grain
than what's specified in isolate files.
- Convert base_unittests and unit_tests to use isolate.
This adds an additional 50MB to the dependency size due
to many small directories not specified in the exclusion list.
BUG=249870
Review URL: https://chromiumcodereview.appspot.com/18233018
git-svn-id: http://src.chromium.org/svn/trunk/src/build@211350 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
asan_symbolize.py is used for the logcat stacks using the special ASan format.
tombstones.py is used to manage tombstones files in devices.
symbolize.py is used for stack traces generated by base/debug/stack_trace_android.cc
BUG=234973
Review URL: https://chromiumcodereview.appspot.com/18473004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@211134 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The script now returns exit codes based on what occurred in the
test. Exit codes:
0 -- normal
1 -- fail/crash
88 -- warning
In addition, the scripts now handle DeviceUnresponsiveError by
returning a warning exit code overall, rather than silently moving
on.
BUG=170477, 258171
Review URL: https://chromiumcodereview.appspot.com/18323020
git-svn-id: http://src.chromium.org/svn/trunk/src/build@210749 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Currently, we are generating v14 layout and style resources from v17
resources by replacing Start and End attributes to Left and Right
attributes. However, it is not necessary for all cases, so make an
option to disable generate_v14_compatible_resources.py script and
only verify that there is no RTL attributes in the pre-v17 resources.
BUG=247049
Review URL: https://chromiumcodereview.appspot.com/18653002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@210555 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This relands r209945.
r242846 slightly changed the CLI <-> device daemon message sequence which made
the following check fail in case the device daemon was started but already
running on the device: device_forwarder_main.cc:10: CHECK_GT(bytes_read, 0).
This was actually caused by an unexposed long standing issue in daemon.cc.
ConnectToUnixDomainSocket() is performing a hand check to make sure that the
CLI is connecting to the forwarder daemon. While doing this hand check, rather
than only reading the expected fixed-size message, the function was reading all
the available bytes in the socket thus consuming the client data.
BUG=242846
R=bulach@chromium.org
Review URL: https://codereview.chromium.org/18635005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@210273 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Causes android buildbots to spew deprecation warnings.
> Creates a new test running script test_runner.py
>
> This new script serves as a unified entry point for all tests. The
> existing scripts are now just wrappers around the new script. Old
> commands should thus still work, but you can now make use of the
> new script to run various types of tests.
>
> There are a few TODOs left:
> * Add options to run Monkey tests.
>
> Miscellaneous notes:
> * --python_test_root is now a required flag when Python host-driven
> tests are being run.
>
> BUG=248351
>
> Review URL: https://chromiumcodereview.appspot.com/15942016TBR=gkanwar@google.com
Review URL: https://codereview.chromium.org/18732002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@210251 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This new script serves as a unified entry point for all tests. The
existing scripts are now just wrappers around the new script. Old
commands should thus still work, but you can now make use of the
new script to run various types of tests.
There are a few TODOs left:
* Add options to run Monkey tests.
Miscellaneous notes:
* --python_test_root is now a required flag when Python host-driven
tests are being run.
BUG=248351
Review URL: https://chromiumcodereview.appspot.com/15942016
git-svn-id: http://src.chromium.org/svn/trunk/src/build@210035 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
When doing a gyp_managed_install, we install APKs to the attached
device. Currently this can fail in many ways (no device attached,
multiple devices attached, device offline, device doesn't have root,
etc.). In addition, we need to detect changes to the attached device
(particularly when the device is switched, when an APK is
uninstalled/updated).
The current approach is to check all this information in the action
interacting with the device. This means that when there is some
problem we print the same warning messages for every APK that is built,
and, in some cases, multiple times for each APK. Also, we have to run
every install/push action every build because we detect changes to the
attached device in that action.
This change creates a new build action, "get device configurations".
This action inspects the attached devices, filters out offline devices,
filters out devices without root, and then writes a configuration
file with the id+metadata for the first non-filtered device. This
configuration is then used by each of the build steps that interacts
with the device. This consolidates all the device checking to a single
place, and the build actions don't need to do any checking. In
addition, to detect changes in the attached device, we only need to run
this single action every build and the install/push actions will only
change when the device/metadata changes.
Also, with this change we can now gracefully handle the case where
multiple devices are attached (currently just write the configuration
for the first valid device and install to that one).
Review URL: https://chromiumcodereview.appspot.com/16831013
git-svn-id: http://src.chromium.org/svn/trunk/src/build@209582 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Many people's workflows assume that they can install the APK created in
out/Debug/apks. With the component build that APK is actually an
"incomplete" APK that cannot be manually installed (or rather causes
obscure errors when manually installed).
This change does two things. First, it moves the "incomplete" APK
output to out/Debug/<package_name>/<ApkName>.apk. This should prevent
accidental installs of the "incomplete" APK. Second, it introduces an
option (create_standalone_apk) that when doing a component build, if
set, will merge the shared libraries into the "incomplete" APK to
create a standalone APK. This standalone APK will be created in
out/Debug/apks/.
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=207345
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=207516
Review URL: https://chromiumcodereview.appspot.com/14843017
git-svn-id: http://src.chromium.org/svn/trunk/src/build@208529 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
WebHistoryItem serialization is now split into two parts. PageState (i.e., encoded string)to ExplodedPageState, and ExplodedPageState to WebHistoryItem. This way we can generate ExplodedPageState in the browser process without a dependency on Blink API.
This CL drops support for version 1-10 of the format. I confirmed with laforge@ that the usage of such old versions of Chrome is minimal enough.
I've included code to extract file paths from the "document state" vector of strings. This code just has to be consistent with the way document state was generated in versions 11 through 13 of the format. Version 14 has the file path vector included directly in the serialized data.
Gone is the serializers ability to write out different versions of the format. That code existed to support testing as we would write out old versions and test our ability to read them. Instead, I've captured some serialized snapshots at different versions, and I just test that we can read them. I've included code for generating a snapshot as a test case that by default returns early. (This way the code doesn't bit-rot.)
R=jamesr@chromium.org,tsepez@chromium.org
BUG=237243
Review URL: https://chromiumcodereview.appspot.com/16867005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@208367 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Reland https://codereview.chromium.org/17569006/ with check_perms fix.
Support using loadable module for libpeerconnection on Android.
Borrowed create_standalone_apk_action.gypi, create_standalone_apk.py and finalize_apk_action.gypi from https://codereview.chromium.org/14843017/ with some minor fix in create_standalone_apk_action.gypi.
For some cases where libpeerconnection needs to be a loadable module, we need to add libpeerconnection.so into Chrome_apk.
This patch takes 2 steps:
1. build chrome with libpeer_target_type=loadable_module.
2. add libpeerconnection.so into the apk file.
TEST=run gyp: GYP_DEFINES="$GYP_DEFINES libpeer_target_type=loadable_module" build/gyp_chromium
build chrome
re-run gyp: GYP_DEFINES="$GYP_DEFINES libpeer_target_type=loadable_module" CHROMIUM_GYP_FILE="build/android/chrome_with_libs.gyp" build/gyp_chromium
build chrome_with_libs
install Chrome-with-libs.apk and it works for https://apprtc.appspot.com
Review URL: https://codereview.chromium.org/17647002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@208304 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Borrowed create_standalone_apk_action.gypi, create_standalone_apk.py and finalize_apk_action.gypi from https://codereview.chromium.org/14843017/ with some minor fix in create_standalone_apk_action.gypi.
For some cases where libpeerconnection needs to be a loadable module, we need to add libpeerconnection.so into Chrome_apk.
This patch takes 2 steps:
1. build chrome with libpeer_target_type=loadable_module.
2. add libpeerconnection.so into the apk file.
TEST=run gyp: GYP_DEFINES="$GYP_DEFINES libpeer_target_type=loadable_module" build/gyp_chromium
build chrome
re-run gyp: GYP_DEFINES="$GYP_DEFINES libpeer_target_type=loadable_module" CHROMIUM_GYP_FILE="build/android/chrome_with_libs.gyp" build/gyp_chromium
build chrome_with_libs
install Chrome-with-libs.apk and it works for https://apprtc.appspot.comR=cjhopman@chromium.org, mallinath@chromium.org, tommi@chromium.org
Review URL: https://codereview.chromium.org/17569006
git-svn-id: http://src.chromium.org/svn/trunk/src/build@208246 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This breaks the Android component build.
This reverts commit 125e64a9eb6406446fb864aea9fa887521f19616.
>> [Android] Support building standalone APK in component build
>>
>> Many people's workflows assume that they can install the APK created in
>> out/Debug/apks. With the component build that APK is actually an
>> "incomplete" APK that cannot be manually installed (or rather causes
>> obscure errors when manually installed).
>>
>> This change does two things. First, it moves the "incomplete" APK
>> output to out/Debug/<package_name>/<ApkName>.apk. This should prevent
>> accidental installs of the "incomplete" APK. Second, it introduces an
>> option (create_standalone_apk) that when doing a component build, if
>> set, will merge the shared libraries into the "incomplete" APK to
>> create a standalone APK. This standalone APK will be created in
>> out/Debug/apks/.
>>
>> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=207345
>>
>> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=207516
BUG=
R=cjhopman@chromium.org
Review URL: https://codereview.chromium.org/17291013
git-svn-id: http://src.chromium.org/svn/trunk/src/build@207587 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Many people's workflows assume that they can install the APK created in
out/Debug/apks. With the component build that APK is actually an
"incomplete" APK that cannot be manually installed (or rather causes
obscure errors when manually installed).
This change does two things. First, it moves the "incomplete" APK
output to out/Debug/<package_name>/<ApkName>.apk. This should prevent
accidental installs of the "incomplete" APK. Second, it introduces an
option (create_standalone_apk) that when doing a component build, if
set, will merge the shared libraries into the "incomplete" APK to
create a standalone APK. This standalone APK will be created in
out/Debug/apks/.
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=207345
Review URL: https://chromiumcodereview.appspot.com/14843017
git-svn-id: http://src.chromium.org/svn/trunk/src/build@207516 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Using page-repeat and pageset-repeat options in commands like
tools/perf/run_measurement --browser=release --page-repeat=2 --pageset-repeat=3 blink_perf third_party/WebKit/PerformanceTests/Parser/html-parser.html
previously let to a crash in _MeanAndStdDevFromList.
BUG=
Review URL: https://chromiumcodereview.appspot.com/17390017
git-svn-id: http://src.chromium.org/svn/trunk/src/build@207426 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
First, only get the device's utc offset when it is actually needed. Calculating
this offset takes about 100ms on a typical device. The build scripts assume
that creating an instance of AndroidCommands is not so expensive. Instead,
defer calculating this value until it is actually requested. There are
currently several cases where the build scripts call adb directly instead of
through android_commands just to avoid this extra cost.
Second, add a GetDescription method to get a (mostly) user-readable description
of the device.
TBR=frankf@chromium.org
Review URL: https://chromiumcodereview.appspot.com/17088005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@207371 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Many people's workflows assume that they can install the APK created in
out/Debug/apks. With the component build that APK is actually an
"incomplete" APK that cannot be manually installed (or rather causes
obscure errors when manually installed).
This change does two things. First, it moves the "incomplete" APK
output to out/Debug/<package_name>/<ApkName>.apk. This should prevent
accidental installs of the "incomplete" APK. Second, it introduces an
option (create_standalone_apk) that when doing a component build, if
set, will merge the shared libraries into the "incomplete" APK to
create a standalone APK. This standalone APK will be created in
out/Debug/apks/.
Review URL: https://chromiumcodereview.appspot.com/14843017
git-svn-id: http://src.chromium.org/svn/trunk/src/build@207345 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This patch improves the Android-specific adb_gdb debugging scripts
in several minor ways:
- It ensures that the temporary directory is always removed when
the script exits, even whe it is interrupted with Ctrl-C.
- It ensures that if --pull-libs is interrupted by a Ctrl-C,
the build.prop in /tmp/$USER-adb-gdb-libs/ is erased, forcing
a --pull-libs operation in the next invokation, instead of keeping
a portion of the libraries in a bad state.
- It adds a --su-prefix=<prefix> option, to be able to use tools
like 'su' on rooted production devices. This is useful when the
installed app is not debuggable (e.g. a release build), and there
is no way to run ADB as root.
BUG=NONE
Review URL: https://chromiumcodereview.appspot.com/17103007
git-svn-id: http://src.chromium.org/svn/trunk/src/build@206990 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
- Run envsetup.sh and retrieve environment rather than wrapping
commands in a bash shell. Consolidate remaining PATH code.
This also cleans up the preamble output.
- Port android landmine code to python.
- Simplified testing command layout in bb_run_bot.
- Change bb_run_bot_test to run in parallel.
- Fixed bug where dbg clobber affects release bot using same checkout
- Made step names more similar to other chromium bots.
- Consolidated factory-prop and build-prop parsing code.
BUG=176126
NOTRY=True
Review URL: https://chromiumcodereview.appspot.com/16688002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@205244 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This patch makes it possible to use glob-style gtest filters with
the content browser tests. An example of such a filter is
WebGLConformanceTest.*, which should cause all the WebGL conformance
tests to be run.
Previously the gtest filter was passed directly to the test executable,
causing it to run all matching tests successively in the same process.
Normally this would be fine, but with content browsertests we must run
each test in a fresh process to avoid issues with double initialization.
The fix is to expand the filter to a flat list of tests in the test
dispatcher. After this, the tests are sharded and run in exactly the
same way as when no gtest filter is provided.
BUG=138226
Review URL: https://chromiumcodereview.appspot.com/14882007
git-svn-id: http://src.chromium.org/svn/trunk/src/build@204680 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
- Rename ContentVideoViewContextDelegate to ContentVideoViewClient, instead of having the getContext() method, passing the context to ContentVideoView when it is created.
- Add getContentVideoViewClient method in ContentViewClient, so it will be created when it actually used.
BUG=http://b/8315237
Review URL: https://chromiumcodereview.appspot.com/13669003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@204353 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Removes check install step and moves it into the device status check. This will allow us to examine Android install speeds, which have recently caused timeout problems when installing large APK's. Unlike the original CL, low install speed only causes a warning (i.e. does not fail the step). The step fails if the battery of an online device is less than 5%.
BUG=230970, 224004, 242237
---------------------------------------------------
Original CL:
Move CheckInstall to device status and fail on low install speed and battery.
Removes the recently added CheckInstall step and moves the checking to the
device status check step. Recently, devices will install very slowly causing
tests to fail with device problems. We have also seen battery issues. The new
device status check step will fail if any devices install unreasonably slow
(i.e. < 800 KB/s) or have critically low battery level (i.e. < 5%).
BUG=230970, 224004, 242237
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=203587
Review URL: https://chromiumcodereview.appspot.com/16110005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@204013 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Broke android tests.
> Move CheckInstall to device status and fail on low install speed and battery.
>
> Removes the recently added CheckInstall step and moves the checking to the
> device status check step. Recently, devices will install very slowly causing
> tests to fail with device problems. We have also seen battery issues. The new
> device status check step will fail if any devices install unreasonably slow
> (i.e. < 800 KB/s) or have critically low battery level (i.e. < 5%).
>
> BUG=230970, 224004, 242237
>
> Review URL: https://chromiumcodereview.appspot.com/16110005TBR=navabi@google.com
Review URL: https://codereview.chromium.org/16299003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@203594 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Removes the recently added CheckInstall step and moves the checking to the
device status check step. Recently, devices will install very slowly causing
tests to fail with device problems. We have also seen battery issues. The new
device status check step will fail if any devices install unreasonably slow
(i.e. < 800 KB/s) or have critically low battery level (i.e. < 5%).
BUG=230970, 224004, 242237
Review URL: https://chromiumcodereview.appspot.com/16110005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@203587 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
If styles.xml has paddingStart and exists in values/, it will cause
crashes on Galaxy Tab&Note because style resources are not overrided by
the generated styles.xml (generate_v14_compatible_resources.py), which is to
avoid crashes on Galaxy Tab&Note (crbug.com/235118). So make
generate_v14_compatible_resource.py use styles.xml under values-v17/ not values/
BUG=243952
Review URL: https://chromiumcodereview.appspot.com/16125003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@202812 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
There are situations like running tests where it's not necessary to run envsetup.sh.
However, build/android/pylib requires adb to be in the path.
Rather than requiring envsetup, it can be smart enough to set the path itself.
BUG=242960
Review URL: https://chromiumcodereview.appspot.com/15891002
git-svn-id: http://src.chromium.org/svn/trunk/src/build@202558 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Depends on assets in http://crrev.com/15136005, which had to be separated because of the trybots.
With the way things are currently set up, Chrome on Android can't access properly
sized image resources:
* The APK only packages the mostly unused 100% resources (none of
the larger 200% assets)
* The bitmaps don't scale properly when they're converted to Java bitmaps because
the Java code knows nothing about the resource's expected dimensions on different
devices
* The Chromium resource loading system doesn't allow us to take advantage of
Android's resource loading schemes (drawable directories for different screen
sizes, RTL support, etc.).
Instead of #ifdefing out practically everything in the theme_resources.grd file,
this CL introduces a map between the chromium resource IDs and Android drawables,
allowing us to load up the correctly sized Android assets.
The template system is bootstrapped with the InfoBar and WebsiteSettingsUI icon
assets.
TBR=jochen
BUG=237034,238668
Review URL: https://chromiumcodereview.appspot.com/14772036
git-svn-id: http://src.chromium.org/svn/trunk/src/build@201328 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Gyp supports only very limited ways of changing behavior based upon
CONFIGURATION_NAME. Particularly, it does not support the way that was
supposed to enable/disable use of proguard.
Instead of trying to switch behavior in gyp, instead pass
CONFIGURATION_NAME, proguard_enabled, and
proguard_enabled_dex_input_path to dex.py and switch the behavior
there.
This also extracts the dex actions into build/android/dex_action.gypi
and uses that for the actions in both build/java.gypi and
build/java_apk.gypi.
BUG=240837
Review URL: https://chromiumcodereview.appspot.com/15231006
git-svn-id: http://src.chromium.org/svn/trunk/src/build@200958 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
The comment in android_webview.gyp about static library dependencies not
being handled correctly is incorrect, and the workaround not necessary:
the problem was just that I wasn't using link_settings correctly. Remove
the workaround and instead add proper dependencies in the places that
actually use cpufeatures and cutils (ashmem). This doesn't change the
generated makefiles but makes more logical sense.
BUG=
R=digit@chromium.org
Review URL: https://codereview.chromium.org/14753011
git-svn-id: http://src.chromium.org/svn/trunk/src/build@200806 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This reverts the changes from commit 6394facfcd6150a69be418212f1caff2f6639540
and instead improves the adb_gdb script to properly auto-detect the right
location of the toolchain binaries.
This means that on a Linux 64-bit systems, it will first try to find the
64-bit binaries, and if not available, will fallback to 32-bit ones.
Tested with the default toolchain from third_party/android_tools/ndk/
(64-bit) and with --ndk-dir=/path/to/android-ndk-r8d (32-bit).
Also remove "gdb_apk" and "gdb_content_shell" which were obsoleted by
"adb_gdb" and "adb_gdb_content_shell", respectively.
BUG=none
R=yfriedman@chromium.org,navabi@chromium.org,wangxianzhu@chromium.org
Review URL: https://chromiumcodereview.appspot.com/14910010
git-svn-id: http://src.chromium.org/svn/trunk/src/build@200547 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This is achieved by having BaseTestRunner instantiate a single Forwarder
instance and inject it into SpawningServer.
This makes the test server spawner instance use an already configured Forwarder
instance for every single unit test rather than instantiating Forwarder every
time (which also meant unnecessarily running 'adb forward' for every single
unit test).
Note that this CL also makes Forwarder thread-safe. This is due to the fact
that the test server spawner does its work on a worker thread and not to the
fact that a single Forwarder instance can be shared accross multiple shards as
one could think.
BUG=229685,239014
R=bulach@chromium.org, craigdh@chromium.org, frankf@chromium.org
Review URL: https://codereview.chromium.org/15151003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@200500 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
With the component build we need to always trigger stripping because we
can't specify the inputs correctly at gyp time. This is not required
for the non-component build.
Also, slightly refactor strip_native_libraries.gypi and its users to
make it more clear what variables are being used by the .gypi.
Review URL: https://chromiumcodereview.appspot.com/14844009
git-svn-id: http://src.chromium.org/svn/trunk/src/build@200422 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This patch implements the following changes to make it possible to run
the WebGL conformance test suite on Android:
1. Copy WebGL test data files to the device.
2. When running the conformance test, turn on WebGL with the
--enable-webgl command line flag.
3. Avoid validating the PCI vendor and device ids for the GPU because
Android has no such concept.
With these changes, you can run the WebGL conformance test by first
building content_browsertests_apk, removing the WebGL exclusion from
build/android/pylib/gtest/filter/content_browsertests_disabled and then executing:
$ build/android/run_browser_tests.py -f WebGLConformanceTest.*
BUG=138226
Review URL: https://chromiumcodereview.appspot.com/14944010
git-svn-id: http://src.chromium.org/svn/trunk/src/build@200298 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
There used not to be any way to unmap a previously forwarded port. Since
the host and device forwarder processes are kept alive during a whole test
suite, both the host and device ended up with an unnecessarily high amount of
unused open sockets. That is source of flakiness (e.g. too many opened file
descriptors).
This adds an UnmapDevicePort() method to the Python Forwarder wrapper class and
modifies the native forwarder2 to accept a negative port on the command line.
When a negative port is provided, the host forwarder tries to unmap that port
(that was mapped previously).
BUG=229685,239014
R=bulach@chromium.org, digit@chromium.org
Review URL: https://codereview.chromium.org/15008004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@200257 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Added a spin-wait to cause the test to wait for the browser to create the BackingStore via its normal mechanism.
...and then I went ahead and refactored and cleaned up all the code. I did not add any significant additional testing. We will want to do this in a follow-up change. However, I did get rid of the #ifdef OS_XXX pragmas, so the tests will attempt to run on all platforms, not just Mac and Win, and use the CanXXX() methods to determine which features are supported for testing.
BUG=224351
Review URL: https://chromiumcodereview.appspot.com/14495016
git-svn-id: http://src.chromium.org/svn/trunk/src/build@200226 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
When running tests, we should only be reinstalling the test apk if it
is different than the one currently installed. So, before reinstalling,
query the package manager for the path to the installed apk, and then
only reinstall if the md5sum of the installed apk differs from the one
we are about to install.
NOTRY=true
Review URL: https://chromiumcodereview.appspot.com/14601004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@199835 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
After recent upgradation to third_party/android_tools/ndk, there is no
linux-x86 toolchain directory any more, but linux-x86_64 instead. This
causes failure of adb_gdb and gdb_apk which hard-coded linux-x86
in the scripts. As envsetup.sh already set correct $ANDROID_TOOLCHAIN,
now use it in the scripts instead of the hardcoded one.
BUG=none
NOTRY=true (presubmit passed)
Review URL: https://chromiumcodereview.appspot.com/15028013
git-svn-id: http://src.chromium.org/svn/trunk/src/build@199567 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
After recent change in android_tools to update ndk, the scripts can reuse
android_host_arch variable for MIPS too. This is important, as the release
now contains 64-bit host toolchain set.
BUG=130022
TEST=build content_shell_apk
Review URL: https://chromiumcodereview.appspot.com/15085019
git-svn-id: http://src.chromium.org/svn/trunk/src/build@199492 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
They must match the trace names printed by PrintPerfResult, which are also
escaped with the same method.
This patch allows the buildbot log processor to work with the updated page
cyclers.
BUG=None
TEST=tools/perf/run_multipage_benchmarks --browser=system page_cycler tools/perf/page_sets/intl_es_fr_pt-BR.json --pageset-repeat=2
NOTRY=True
Review URL: https://chromiumcodereview.appspot.com/14780004
git-svn-id: http://src.chromium.org/svn/trunk/src/build@198765 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
lsof -np is not able (permission denied when running as non-root to be exact)
to retrieve file descriptor information for processes running under a different
UID. This can make IsHostPortUsed() return false when the provided port is
actually used.
Trying to connect to a port rather than binding it should not introduce any
side-effect on the system that could affect next runs as the TODO suggested. It
is also always sane not to depend on an external process (lsof) output format.
BUG=229685
R=bulach@chromium.org
Review URL: https://codereview.chromium.org/14567016
git-svn-id: http://src.chromium.org/svn/trunk/src/build@198683 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
There are several attributes introduced in API 17, mostly for BiDi(RTL) support, e.g., paddingStart.
This build script will generate another set of resource that is API 14 compatible by
converting those API 17 attributes to API 14 attributes, e.g., paddingStart -> paddingLeft.
The goal of this script is for programmers to use those attributes without worrying
about backward-compatibility care and related bugs. About the bugs, please refer to crbug.com/235118 .
BUG=235118
Review URL: https://chromiumcodereview.appspot.com/14476011
git-svn-id: http://src.chromium.org/svn/trunk/src/build@198325 4ff67af0-8c30-449e-8e8b-ad334ec8d88c