Commit Graph

209 Commits

Author SHA1 Message Date
kkinnunen
4c7040bf8a SampleApp: Make android_install_app and android_launch_app work consistently
Make android_install_app work more consistently:
* App can be "SampleApp" or "VisualBench"

Make android_launch_app work more consistently:
* Parameters to SampleApp are passed correctly
* SampleApp is actually launched

The parameters to "am" need to be quoted, since the command
is run on the device shell.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1589883002

Review URL: https://codereview.chromium.org/1589883002
2016-01-14 06:07:40 -08:00
kkinnunen
7ddfeeddf7 Make android scripts not warn about ADB in newer SDKs
The older SDK says:
$ adb version
Android Debug Bridge version 1.0.32

The newer SDK says:
$ adb version
Android Debug Bridge version 1.0.32
Revision eac51f2bb6a8-android

Removes the shebang as the file is not intended to be
run, and the copyright would render it useless.
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1583793002

Review URL: https://codereview.chromium.org/1583793002
2016-01-13 22:53:55 -08:00
borenet
f8d4d5c995 Android bots: set battery threshold to 80%
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1559913003

Review URL: https://codereview.chromium.org/1559913003
2016-01-04 12:33:26 -08:00
borenet
50850b152f Android devices: wait for 100% charge
Some devices are getting pretty low by the end of the build (3%).  No reason to cut it close, bump to 100% charge.  This will cause some devices to sit for a while as they charge up.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1556023002

Review URL: https://codereview.chromium.org/1556023002
2016-01-04 10:44:03 -08:00
borenet
f64be44667 adb_wait_for_device: More fixes
BUG=skia:4690

Review URL: https://codereview.chromium.org/1527713002
2015-12-15 04:25:39 -08:00
borenet
c9730831fc adb_wait_for_device: Add battery fallback, support no battery
BUG=skia:4690
TBR=rmistry

Review URL: https://codereview.chromium.org/1528563002
2015-12-14 10:07:37 -08:00
borenet
b11c4ff668 adb_wait_for_device: If we can't get the battery level, just exit
BUG=skia:4606
TBR=rmistry
NOTREECHECKS=true

Review URL: https://codereview.chromium.org/1529453002
2015-12-14 06:48:43 -08:00
borenet
0b29b728ca Add minimum battery level to adb_wait_for_device
This should prevent the Android bots running out of battery at the
expense of extra time spent waiting at the end of the build.

BUG=skia:4606

Review URL: https://codereview.chromium.org/1522013002
2015-12-14 05:56:46 -08:00
aam
419c37269f Fix 'debugging on Android' android_gdb_app script.
1) com.skia -> com.skia.sample_app
2) pass arguments to android_gdb_app to android_setup.sh so you can build gdbserver binaries for your actual device(rather than default arm64). This allows you to run it like this for example:

  ./platform_tools/android/bin/android_gdb_app -d nexus_6

BUG=skia:
DOCS_PREVIEW= https://skia.org/?cl=1509853006

Review URL: https://codereview.chromium.org/1509853006
2015-12-10 14:14:56 -08:00
mtklein
e14937e7c4 Update Android toolchains and streamline process.
- This updates to r10e / API v21 everywhere.
  - This has each host machine fetch the NDK,
    run make-standalone-toolchain.sh, and copy gdbserver itself.

(It will do all this once per $ARCH, which is a little inefficient, but it
washes out in steady state.)

BUG=skia:

Review URL: https://codereview.chromium.org/1385463002
2015-10-01 13:24:23 -07:00
borenet
ad54ffc235 adb_wait_for_device: Skip adb wait-for-device
This should still wait for the device to be attached and finished
booting, but will prevent no-output timeouts due to
`adb wait-for-device` never finishing.

The effect should be that, when an Android device is disconnected, the
"wait for device" step will run forever, or until the device
reconnects. This should prevent a disconnected device from spreading
purple all over the status page.

BUG=skia:

Review URL: https://codereview.chromium.org/1315753010
2015-09-03 10:41:07 -07:00
borenet
89971d4537 Use a different download URL for Android toolchains
The current one isn't working on the Appurify bot

BUG=skia:4093

Review URL: https://codereview.chromium.org/1311533006
2015-08-31 08:35:32 -07:00
djsollen
3a26fc8e9a Ensure that android "release" apps are signed with debug key
Review URL: https://codereview.chromium.org/1275223003
2015-08-10 08:58:04 -07:00
djsollen
5119ac069e Update Android Testing apps to support release mode
BUG=skia:4152

Review URL: https://codereview.chromium.org/1259123003
2015-07-31 10:25:17 -07:00
borenet
850bbf1bb6 Add android_run_app.go
Launches an app, pipes its output, and exits when the app exits.

Loosely based on the old buildbot code in python:
https://skia.googlesource.com/buildbot/+/ac0663c599a443a4958c8cad5aefd25eb09eff58/slave/skia_slave_scripts/utils/android_utils.py

BUG=skia:4093

Review URL: https://codereview.chromium.org/1256353002
2015-07-31 04:13:38 -07:00
borenet
b2c07364a3 Fix android_launch_app after Gradle change
NOTRY=true
TBR=djsollen
BUG=skia:

Review URL: https://codereview.chromium.org/1258253002
2015-07-28 06:00:36 -07:00
borenet
5f4dc38325 android_install_app: Use lower-cased app name
NOTRY=true
BUG=skia:

Review URL: https://codereview.chromium.org/1261873002
2015-07-28 05:13:41 -07:00
Brian Salomon
4239fc2f69 Remove skia_arch_width, fold into skia_arch_type.
DOCS_PREVIEW= https://skia.org/?cl=1228553010

BUG=skia:4042
R=borenet@google.com, mtklein@google.com

Review URL: https://codereview.chromium.org/1228553010
2015-07-27 09:10:36 -04:00
djsollen
d18b861061 Update Android Apps to use gradle
This CL replaces ant with gradle for the task of building APKs.
The primary driver of this change is that it now allow us to
develop and test our apps using Android Studio.
DOCS_PREVIEW= https://skia.org/?cl=1215023017

Committed: https://skia.googlesource.com/skia/+/425535f1626932e4e22f61a2571f9c3c2b1c5977

Review URL: https://codereview.chromium.org/1215023017
2015-07-24 13:15:59 -07:00
joshualitt
9efef7b56f Revert "Update Android Apps to use gradle"
This reverts commit 425535f162.

NOTRY=true
NOTREECHECKS=true
TBR=djsollen@google.com
BUG=skia:
DOCS_PREVIEW= https://skia.org/?cl=1250233002

Review URL: https://codereview.chromium.org/1250233002
2015-07-23 08:00:33 -07:00
djsollen
425535f162 Update Android Apps to use gradle
This CL replaces ant with gradle for the task of building APKs.
The primary driver of this change is that it now allow us to
develop and test our apps using Android Studio.
DOCS_PREVIEW= https://skia.org/?cl=1215023017

Review URL: https://codereview.chromium.org/1215023017
2015-07-22 11:33:25 -07:00
msarett
cf2a6a47e4 Reenable yasm for Android x86 and x86-64 on Linux host
It turns out that gyp (kind of) has support for cross
compiling with a different host and target.  We simply
need to specify CC_host and CC_target instead of CC.

Making this change allows us to compile yasm on a Linux
host for Android.

We run into problems on Mac because
the linker on a Mac host requires different command line
arguments than the linker on the Android target.  In
looking through the code for gyp itself and speaking to
Ben, it doesn't appear to me that gyp supports passing
different arguments to host and target linkers.

I would imagine that we would have similar problems on
Windows.

Below is a link to a CL that would fix this issue in gyp.
It looks like it has been dropped for a long time.
Thanks to Ben for this link!
https://chromiumcodereview.appspot.com/10795044/

Also I'm adding a link to the build instructions for Chrome
(thanks again Ben).  It looks like they only support
building for Android from Linux.
https://code.google.com/p/chromium/wiki/AndroidBuildInstructions

My next steps are:
1) Getting in touch with Torne or someone else with gyp to
see if people are aware of this issue or interested in
fixing it.
2) Deciding if skia should care about this issue.
3) Deciding if skia should work around this issue.

It'd be really great to hear your thoughts on (2) and (3).
My first thought is that we shouldn't care because, as
long as we always compile the production copy of skia for
Android on Linux, we will get the fast code.  Is this
a valid conclusion?  Is there a way to write Android apps
on Mac that accidentally use the slower code?

If we do care, there are workarounds:
For Mac, we can check in a yasm binary - it's a little
smaller than the one I am deleting in this CL :-/
For Windows, we *might* be able to use the yasm.exe binary
already in externals (we get this from DEPS because this is
how chromium uses yasm on Windows).
Are there other platforms that we care about?

Let me know what you think!

BUG=skia:4028
DOCS_PREVIEW= https://skia.org/?cl=1239333002

Review URL: https://codereview.chromium.org/1239333002
2015-07-21 12:01:48 -07:00
joshualitt
dcd56e2f0e Fix for android command line arguments to VisualBench
BUG=skia:

Review URL: https://codereview.chromium.org/1241923002
2015-07-15 10:17:21 -07:00
scroggo
33d35263bf Move android_gdb_tmp into out/
This way it will be ignored.

Review URL: https://codereview.chromium.org/1230773003
2015-07-10 11:05:10 -07:00
scroggo
139491fbaa Use the upstream version of libwebp, v0.4.3.
DEPS:
Update to pull v0.4.3 of libwebp from upstream

gyp/libwebp.gyp:
Add new files, as referenced by the gyp file used by Chromium.

resource/tests:
Add regression tests for particular images.

BUG=skia:3442
BUG=skia:3315
BUG=skia:3429

Committed: https://skia.googlesource.com/skia/+/3aa0fb4d80c76b559ff4b82d5e569993aea06da1

Review URL: https://codereview.chromium.org/1178013008
2015-07-10 09:32:09 -07:00
djsollen
4e7956147d Android scripts now notify gyp that your building with clang
Review URL: https://codereview.chromium.org/1217443004
2015-06-26 11:03:56 -07:00
joshualitt
01f38915e1 Fixup android launch script to launch VisualBench as well as SampleApp
BUG=skia:

Review URL: https://codereview.chromium.org/1185473003
2015-06-22 05:39:32 -07:00
joshualitt
74953c388c Modify android_install_app to install VisualBench
BUG=skia:

Review URL: https://codereview.chromium.org/1181973008
2015-06-18 13:08:26 -07:00
msarett
b3ec76b34f Update android perf script
BUG=skia:

Review URL: https://codereview.chromium.org/1185293006
2015-06-18 06:29:48 -07:00
djsollen
f793cd0913 Print command to be executed in verbose mode
Review URL: https://codereview.chromium.org/1180163002
2015-06-12 10:50:53 -07:00
Derek Sollenberger
de50d9b942 fix broken build by not passing the verbose flag through
Review URL: https://codereview.chromium.org/1176543004
2015-06-10 15:58:48 -04:00
djsollen
46409de6ab Remove verbose bash logging
Review URL: https://codereview.chromium.org/1170283004
2015-06-10 12:37:56 -07:00
borenet
5aa5ea3831 Add adb_wait_for_device script
BUG=skia:3718

Review URL: https://codereview.chromium.org/1149163003
2015-06-02 12:38:16 -07:00
borenet
7ae68a8f8d Android scripts: add --verbose, fix missing 'source android_setup'
BUG=skia:3836
TBR=djsollen

Review URL: https://codereview.chromium.org/1145473002
2015-05-14 06:37:23 -07:00
Derek Sollenberger
7c722197b3 Add android_launch_app script to allow command line options to be passed to the sampleApp when starting.
BUG=skia:3815
DOCS_PREVIEW= https://skia.org/?cl=1136753003
R=bungeman@google.com, tomhudson@google.com

Review URL: https://codereview.chromium.org/1136753003
2015-05-11 08:54:19 -04:00
mtklein
5ae0e2b563 Default to arm_v7_neon.
This aliases all devices we know have NEON over to that too.

BUG=skia:

Review URL: https://codereview.chromium.org/1095953007
2015-04-21 14:25:34 -07:00
mtklein
2d33a1d0b0 Streamline Thumb config.
Enable Thumb2 iff ARM v7.  (We don't turn it on today for ARM <v7, and ARM v8 doesn't support it.)

BUG=skia:

Review URL: https://codereview.chromium.org/1054993002
2015-04-02 10:47:57 -07:00
djsollen
48c3534541 Update the Android scripts to refresh device names and capabilities.
Review URL: https://codereview.chromium.org/1054633002
2015-04-01 12:15:39 -07:00
msarett
114912d4b9 Fix android_run_skia script to allow for larger blacklist
BUG=skia:

Review URL: https://codereview.chromium.org/1011653004
2015-03-25 12:28:33 -07:00
djsollen
176cd92a61 Allow either the old or new version of ADB on mac.
Review URL: https://codereview.chromium.org/926003002
2015-02-19 18:39:40 -08:00
scroggo
df1c3373fc Don't use m32 cflag for x86_64.
When checking the skia_arch_type for "x86", instead of doing an
== compare, check if "x86" in skia_arch_type, so it will cover
both x86 and x86_64.

Except when we specifically want x86.

Set skia_arch_width based on "64" in skia_arch_type. No need to specify
in scripts.

In gyp_to_android.py, create a separate var_dict for x86_64.

BUG=skia:3419

Review URL: https://codereview.chromium.org/916113002
2015-02-12 10:48:25 -08:00
djsollen
6429fd1e41 Cleanup the android scripts.
Rename a few files to make their function clearer.
Update other files to remove dead code or improve function.

Review URL: https://codereview.chromium.org/865943007
2015-02-03 15:07:30 -08:00
mtklein
2d63859f6f android_run_skia: dump logcat on failure
logcat -c clears the log before we run.
logcat -d dumps the log stdout and exits.

BUG=skia:

Review URL: https://codereview.chromium.org/870643002
2015-01-22 10:43:34 -08:00
scroggo
8fd8d38626 Add ability to specify gyp dir to gyp_to_android.
When running gyp_to_android inside a Skia tree, it uses the gyp program
in third_party/externals. Inside an Android tree, we need to use a
different location for gyp (the Android copy of Skia, in external/skia,
does not contain third_party/externals).

The bot handles this by importing gyp_to_android and running its main
function directly.

Add command line arguments so a human can directly run gyp_to_android.

Review URL: https://codereview.chromium.org/864503002
2015-01-20 10:39:25 -08:00
scroggo
c7bfd5b441 Stop building gm in Android framework build.
Allows us to delete gm.

Review URL: https://codereview.chromium.org/860803004
2015-01-20 08:25:36 -08:00
scroggo
09acfc8d1f Pass gyp_source_dir to generate_tool.
When generating the tool makefiles, which also calls
android_framework_gyp, we also need to pass the gyp directory.

TBR=borenet
NOTRY=True
NOTREECHECKS=True

BUG=skia:3233

Review URL: https://codereview.chromium.org/804473005
2014-12-12 09:01:56 -08:00
scroggo
60936c732b Add parameter to specify gyp dir to gyp_to_android.
NOTRY=true
NOTREECHECKS=True
BUG=skia:3233

Review URL: https://codereview.chromium.org/800573002
2014-12-11 13:05:14 -08:00
scroggo
8338a9a855 Reland "Move from libstlport to libc++ for Android framework builds" (patchset #1 id:1 of https://codereview.chromium.org/718793003/)
> Original issue's description:
> > Move from libstlport to libc++ for Android framework builds
> >
> > Committed: https://skia.googlesource.com/skia/+/ce259510a738fab05a0d456440104f5aba1c9d72
>
> TBR=tomhudson@google.com,djsollen@google.com
> NOTREECHECKS=true
> NOTRY=true
>
> Committed: https://skia.googlesource.com/skia/+/3c3fe7ce4893204eb8bcf885e8a1d539763bca5d

TBR=tomhudson@google.com,djsollen@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/717303002
2014-11-12 11:52:23 -08:00
scroggo
3c3fe7ce48 Revert of Move from libstlport to libc++ for Android framework builds (patchset #1 id:1 of https://codereview.chromium.org/714113002/)
Reason for revert:
The code this depends on is not ready yet. We can submit once https://android-review.googlesource.com/#/c/113924/ is submitted.

Original issue's description:
> Move from libstlport to libc++ for Android framework builds
>
> Committed: https://skia.googlesource.com/skia/+/ce259510a738fab05a0d456440104f5aba1c9d72

TBR=tomhudson@google.com,djsollen@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/718793003
2014-11-11 13:58:44 -08:00
djsollen
ce259510a7 Move from libstlport to libc++ for Android framework builds
Review URL: https://codereview.chromium.org/714113002
2014-11-11 07:02:03 -08:00
djsollen
0130c30d0a Add support for clang to the android build scripts
Review URL: https://codereview.chromium.org/692953002
2014-10-31 07:00:59 -07:00
djsollen
2550a7ed09 Remove adb from Skia repository
Review URL: https://codereview.chromium.org/696463003
2014-10-31 07:00:54 -07:00
djsollen
e228ba3e5c Update the Android NDK to r10c
Review URL: https://codereview.chromium.org/689943002
2014-10-30 13:27:26 -07:00
djsollen
f49bba8104 Use the most recent version of ADB from the SDK if necessary.
This removes ADB from the Skia checkout and also does some quick
checks to make sure the version of ADB used meets a minimum threshold

Review URL: https://codereview.chromium.org/692513003
2014-10-30 05:57:31 -07:00
djsollen
c96aa64246 Add a helper script to expose which version of adb the android scripts use.
Review URL: https://codereview.chromium.org/692633002
2014-10-29 12:59:50 -07:00
Derek Sollenberger
cd048d18e0 Update adb on linux to 1.0.32
Review URL: https://codereview.chromium.org/684203002
2014-10-29 11:41:17 -04:00
hcm
89e5caa6fb Revert of Update the Android NDK to r10c (patchset #1 id:1 of https://codereview.chromium.org/687603002/)
Reason for revert:
Spooky behavior on Nexus GPUs

Original issue's description:
> Update the Android NDK to r10c
>
> Committed: https://skia.googlesource.com/skia/+/a01a17b3f2f225d9499627e20f9b42ce351bd0eb

TBR=tomhudson@chromium.org,borenet@google.com,tomhudson@google.com,djsollen@google.com
NOTREECHECKS=true
NOTRY=true

Review URL: https://codereview.chromium.org/685753003
2014-10-28 08:25:31 -07:00
djsollen
a01a17b3f2 Update the Android NDK to r10c
Review URL: https://codereview.chromium.org/687603002
2014-10-28 06:53:09 -07:00
mtklein
f5b6bf775c Make -d x86 have the default GPU cache size.
We have no a priori reason to limit the cache for new devices.

BUG=skia:
R=djsollen@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/556863006
2014-09-09 12:07:05 -07:00
borenet
77d724c078 Fix adb_pull_if_needed
BUG=skia:
R=djsollen@google.com

Author: borenet@google.com

Review URL: https://codereview.chromium.org/519743002
2014-08-29 07:56:14 -07:00
Eric Boren
60d30548e8 Add Android copy_directory_contents_[to|from]_device scripts
BUG=skia:
NOTRY=true
R=djsollen@google.com

Review URL: https://codereview.chromium.org/510653004
2014-08-28 09:31:15 -04:00
mtklein
7deeaf9521 add n5
NOTRY=true

BUG=skia:
R=djsollen@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/506403004
2014-08-27 08:38:12 -07:00
mtklein
0459cc732b Android.mk: bench_pictures -> nanobench
We're only keeping bench_pictures around for the bots now.  For human-initiated work, nanobench is the way to go.

BUG=skia:
R=djsollen@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/484663002
2014-08-18 08:44:54 -07:00
mtklein
be21e3432e Bye bye bench.
NOTREECHECKS=true

BUG=skia:
R=djsollen@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/442343004
2014-08-06 08:39:38 -07:00
mtklein
d3d6b818c7 Stop building tests in the Android tree.
BUG=skia:
R=djsollen@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/440653004
2014-08-04 09:57:37 -07:00
djsollen
384b0202c0 Fix mac NDK builds
R=jvanverth@google.com, scroggo@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/401613005
2014-07-17 14:00:57 -07:00
qiankun.miao
ac298384b3 Fix warning about missing shared library symbols in android_gdbserver
Grab related shared libraryies. Remove libcorkscrew.so due libcorkscrew
is removed from AOSP.

BUG=skia:
R=djsollen@google.com

Author: qiankun.miao@intel.com

Review URL: https://codereview.chromium.org/399843002
2014-07-17 08:18:23 -07:00
scroggo
3eb258d3f6 Generate makefile for bench_pictures.
When generating Android framework makefiles, create one for
bench_pictures.

BUG=skia:2744
R=djsollen@google.com, halcanary@google.com, mtklein@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/391423002
2014-07-17 06:58:29 -07:00
qiankun.miao
d75547925d Make gdb work for 64-bit Skia
BUG=skia:
R=djsollen@google.com

Author: qiankun.miao@intel.com

Review URL: https://codereview.chromium.org/398733002
2014-07-16 13:21:15 -07:00
scroggo
24b04fa2ad Alphabetize defines in generated SkUserConfig.
When generating SkUserConfig.h for Android, alphabetize the defines.

This will make one merge much harder to look at, but every following
one much easier.

R=mtklein@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/388693003
2014-07-14 10:22:02 -07:00
djsollen
f94bdb84ef explicitly add /data/local/tmp to the library path to support new AOSP restrictions
BUG=skia:2660
R=tomhudson@chromium.org, tomhudson@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/387893003
2014-07-11 08:47:23 -07:00
Derek Sollenberger
777a7dd519 Add config to build mips with dsp2 optimizations enabled by default.
R=borenet@google.com

Review URL: https://codereview.chromium.org/380213004
2014-07-10 13:04:24 -04:00
Derek Sollenberger
c7d29c86b2 update our build system to support the experimental L-Release NDK
This includes adding 64-bit support for arm, x86, and mips.

R=borenet@google.com

Review URL: https://codereview.chromium.org/377993002
2014-07-10 08:10:20 -04:00
tomhudson
f9552230dc Add missing / in android_gdbserver
Introduced in https://codereview.chromium.org/22617002, apparently
worked just fine, at least on already-set-up devices. Failing at
least since https://codereview.chromium.org/352303003/.

BUG=skia:2729
R=djsollen@google.com, tomhudson@google.com

Author: tomhudson@chromium.org

Review URL: https://codereview.chromium.org/372273003
2014-07-08 12:29:54 -07:00
scroggo
f50a79366f Use BUILD_NATIVE_TEST instead of BUILD_EXECUTABLE.
This will generate makefiles for our tools (bench, tests, gm, dm) using
the line "include $(BUILD_NATIVE_TEST)". This has been recommended by the
Android team, as it builds both 32 bit and 64 bit versions of the test.

Do not use LOCAL_MODULE_PATH, which is deprecated (see https://docs.google.com/a/google.com/document/d/1uLAuY7_KYGx1TSzJ9SXkyevT8qNpra2ZoIBkmCoq8VM/edit# ).

Corresponds to ag/498302 , which makes this change just for bench.

R=djsollen@google.com, halcanary@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/369673002
2014-07-08 11:20:58 -07:00
scroggo
950f89dd20 Specify the name of tool for creating a makefile.
When generating tool Android.mks from gyp files, specify the name
of the target needed.

This fixes a bug where nanobench was being added to the same
makefile as bench, which would not compile.

TODO: Make gyp_to_android more general, so that it handles this
case better. See http://skbug.com/2709

R=mtklein@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/366653002
2014-07-01 08:02:30 -07:00
qiankun.miao
b2e1fa5b76 Push resources to Android device
The resources directory is required by some benchmarks. Push it to
device's /data/local/tmp. Add "-i /data/local/tmp/resources" to command
line when using these resources.

BUG=skia:
R=djsollen@google.com, mtklein@google.com, borenet@google.com

Author: qiankun.miao@intel.com

Review URL: https://codereview.chromium.org/352303003
2014-06-29 22:38:54 -07:00
qiankun.miao
5102345029 Fix android_run_skia script running with command line options
This script cannot recognize command line options when running bench:
e.g. android_run_skia bench --config 8888.

BUG=skia:
R=mtklein@google.com, djsollen@google.com

Author: qiankun.miao@intel.com

Review URL: https://codereview.chromium.org/314903003
2014-06-06 06:43:46 -07:00
scroggo
9de2fb680f Add mips64 to the makefile.
Currently we have no optimizations for mips64, so it correctly
contains the various _none.cpps.

Corresponds to https://android-review.googlesource.com/#/c/96536/1

R=halcanary@google.com, djsollen@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/311163003
2014-06-05 10:28:36 -07:00
scroggo
0ba5a4a306 Use tests tag for Skia tools on Android.
When generating the makefiles for Skia testing tools on Android,
use the tag 'tests' and do not use the tags 'optional' or 'eng'.

R=djsollen@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/315013003
2014-06-04 08:25:50 -07:00
mtklein
bec3634a4a Android: remove -lcutils dependency
I believe we no longer depend on this after we ported our atomics to __sync.

Tested by running android_ninja.

BUG=skia:
R=scroggo@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/318493002
2014-06-03 15:38:18 -07:00
commit-bot@chromium.org
120c99993e Generate Android.mk for DM.
ifdef out code that won't build where we don't have jsoncpp.

Include ctype instead of string.h for tolower.

Depends on https://codereview.chromium.org/282053002/

BUG=skia:2447
R=mtklein@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/290603002

git-svn-id: http://skia.googlecode.com/svn/trunk@14768 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-16 18:11:51 +00:00
commit-bot@chromium.org
25c1066e4d Generate gm/Android.mk, minus JSON.
When running gyp_to_android.py, generate the makefile for gm.

For now, remove json functionality and do not depend on json. This
allows us to build and run until solving skbug.com/2448.

gm/gm_expectations.cpp:
gm/gm_expectations.h:
gm/gmmain.cpp:
Remove all json functionality when SK_BUILD_JSON_WRITER is not defined.
This flag is not defined when SK_BUILD_FOR_ANDROID is defined.

gyp/gm.gyp:
Depend on skia and cutils.

platform_tools/android/bin/gyp_to_android.py:
Generate gm/Android.mk.

platform_tools/android/gyp_gen/makefile_writer.py:
Build gm/Android.mk when building external/skia.

Depends on https://codereview.chromium.org/282053002/

BUG=skia:2447
BUG=skia:2448
R=epoger@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/281303003

git-svn-id: http://skia.googlecode.com/svn/trunk@14767 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-16 17:56:43 +00:00
commit-bot@chromium.org
61744ec1d2 Generate bench/Android.mk from gyp.
For now, remove json functionality and do not depend on json. This
allows us to build and run until solving skbug.com/2448.

bench/DeferredSurfaceCopyBench.cpp:
Include GrRenderTarget last, so SK_SUPPORT_GPU will be set properly.

bench/ResultsWriter.h:
bench/benchmain.cpp:
Remove JSONResultsWriter when SK_BUILD_JSON_WRITER is not defined,
which is the case for the Android framework build.

gyp/bench.gyp:
Depend on skia and cutils (for android_atomic_inc etc).

gyp/common_conditions.gypi:
Define SK_BUILD_JSON_WRITER when skia_build_json_writer is set.

gyp/common_variables.gypi:
Add a flag for skia_build_json_writer, and set it only when
skia_android_framework is not set.

gyp/jsoncpp.gyp:
Do not build jsoncpp when skia_build_json_writer is not defined.
include/utils/SkJSONCPP.h:
Do not include json headers when SK_BUILD_JSON_WRITER is not defined.

platform_tools/android/bin/gyp_to_android.py:
Generate bench/Android.mk.

platform_tools/android/gyp_gen/gypd_parser.py:
Skip dest_dir when checking for include_dirs.

platform_tools/android/gyp_gen/makefile_writer.py:
Build bench/Android.mk when building external/skia.

platform_tools/android/gyp_gen/tool_makefile_writer.py:
Add a parameter for putting the binary into /data/local/tmp.

BUG=skia:2447
BUG=skia:2448
R=halcanary@google.com, reed@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/282053002

git-svn-id: http://skia.googlecode.com/svn/trunk@14760 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-16 13:15:41 +00:00
commit-bot@chromium.org
105775b823 Run Android make script from any directory
R=djsollen@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/260743003

git-svn-id: http://skia.googlecode.com/svn/trunk@14594 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-06 18:31:09 +00:00
commit-bot@chromium.org
c1dc0d486f Fix android_install_apk script to work with changes from a137675
(http://crrev.com/223613004).  See http://crrev.com/256413006 or
http://crrev.com/262053007 for similar changes.

R=djsollen@google.com, mtklein@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/266373005

git-svn-id: http://skia.googlecode.com/svn/trunk@14593 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-06 18:29:28 +00:00
commit-bot@chromium.org
e8846f3d3f Fix android_perf script to work with changes from a137675
(http://crrev.com/223613004).  See http://crrev.com/256413006
for a similar change.

R=mtklein@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/262053007

git-svn-id: http://skia.googlecode.com/svn/trunk@14574 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-05 18:40:15 +00:00
commit-bot@chromium.org
123f3d74e3 Add more detailed logging when things go wrong in android_run_skia
R=borenet@google.com, halcanary@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/263733006

git-svn-id: http://skia.googlecode.com/svn/trunk@14513 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-01 19:30:35 +00:00
commit-bot@chromium.org
c2d6a20ef8 Improve Android gdbserver and gdb_ex scripts
- Don't complain if $GDB_TMP_DIR already exists
- Since $GDB_TMP_DIR/gdb.setup might already exist, overwrite the file.

NOTRY=true
R=djsollen@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/266453006

git-svn-id: http://skia.googlecode.com/svn/trunk@14503 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-01 15:34:28 +00:00
commit-bot@chromium.org
e3916bfe0e Support unknown Android target devices via environment variables.
This is useful for working with prototypes and uncommon devices.

NOTRY=true
R=djsollen@google.com, scroggo@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/263673004

git-svn-id: http://skia.googlecode.com/svn/trunk@14495 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-05-01 12:56:19 +00:00
commit-bot@chromium.org
edea842b6a Revert of Improve Android scripts: (https://codereview.chromium.org/254923003/)
Reason for revert:
errors

Original issue's description:
> Improve Android scripts:
>
> * android_gdbserver:
>   - Don't complain if $GDB_TMP_DIR already exists
>   - Since $GDB_TMP_DIR/gdb.setup might already exist, overwrite the file.
>
> * android_run_skia:
>   - Move resource files onto the device.
>   - Change to tmp directory before executing program.
>
> * android_make, android_setup:
>   - stop assuming PWD is skia source directory.
>
> NOTRY=true
>
> Committed: http://code.google.com/p/skia/source/detail?r=14442

R=djsollen@google.com, scroggo@google.com
TBR=djsollen@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/254073003

git-svn-id: http://skia.googlecode.com/svn/trunk@14448 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-29 21:00:06 +00:00
commit-bot@chromium.org
7f07e956fe adb_push_if_needed - make target directory if it does not exist.
(fixes error introduced in 21a6d13.)

NOTRY=true
R=djsollen@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/255263002

git-svn-id: http://skia.googlecode.com/svn/trunk@14445 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-29 20:12:21 +00:00
commit-bot@chromium.org
21a6d13a2b Improve Android scripts:
* android_gdbserver:
  - Don't complain if $GDB_TMP_DIR already exists
  - Since $GDB_TMP_DIR/gdb.setup might already exist, overwrite the file.

* android_run_skia:
  - Move resource files onto the device.
  - Change to tmp directory before executing program.

* android_make, android_setup:
  - stop assuming PWD is skia source directory.

NOTRY=true
R=djsollen@google.com, scroggo@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/254923003

git-svn-id: http://skia.googlecode.com/svn/trunk@14442 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-29 19:09:58 +00:00
commit-bot@chromium.org
19a21894ea android_gdbserver - fix warning about missing shared library symbols
The warning was:
	warning: Could not load shared library symbols for 4 libraries,
	e.g. /system/bin/linker.  Use the "info sharedlibrary" command to
	see the complete listing.

Fixed by grabbing all of those libraries along with libc.so.

NOTRY=true
R=scroggo@google.com, djsollen@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/255193003

git-svn-id: http://skia.googlecode.com/svn/trunk@14441 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-29 19:04:21 +00:00
commit-bot@chromium.org
a3987574c8 Explicitly include gyp_gen/android_framework_gyp.
Add __init__.py to gyp_gen and explicitly include android_framework_gyp
from there.

Fixes a bug where after moving that file, python was looking for it in
its old location, where there was a compiled version of the file.

BUG=skia:2468
R=epoger@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/251903003

git-svn-id: http://skia.googlecode.com/svn/trunk@14427 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-29 00:39:45 +00:00
commit-bot@chromium.org
d665685469 Generate tests/Android.mk from gyp
gyp/apptype_console.gypi:
Don't include console app dependencies when building for Android framework.

gyp/tests.gyp:
Add/remove libraries for framework build.

platform_tools/android/bin/android_framework_gyp.py:
Moved to gyp_gen.
clean_up_gypd_files moved to this script.

platform_tools/android/bin/gyp_to_android.py:
Call new function for generating tool makefile.
Set LOCAL_MODULE.

platform_tools/android/gyp_gen/gypd_parser.py:
Support relative paths.

platform_tools/android/gyp_gen/makefile_writer.py:
Factor out helper functions to be used by tool writer.
LOCAL_MODULE is set elsewhere.

platform_tools/android/gyp_gen/tool_makefile_writer.py:
Multipurpose file for writing makefiles for tools. Should be able to use
it mostly unchanged for bench, gm, etc.

platform_tools/android/gyp_gen/vars_dict_lib.py:
Make the comments follow the style guide.
Add set().
Rename __li to __ordered_set

More/update tests:
platform_tools/android/tests/android_framework_gyp_tests.py
platform_tools/android/tests/expectations/Android.mk
platform_tools/android/tests/expectations/tool/Android.mk
platform_tools/android/tests/expectations/write_local_vars_append_arm
platform_tools/android/tests/expectations/write_local_vars_append_foo
platform_tools/android/tests/expectations/write_local_vars_append_no_name
platform_tools/android/tests/expectations/write_local_vars_no_append_arm
platform_tools/android/tests/expectations/write_local_vars_no_append_foo
platform_tools/android/tests/expectations/write_local_vars_no_append_no_name
platform_tools/android/tests/gyp_to_android_tests.py
platform_tools/android/tests/makefile_writer_tests.py
platform_tools/android/tests/ordered_set_tests.py
platform_tools/android/tests/test_variables.py

BUG=skia:2447

May require an update to the bot to remove pyc files.

R=halcanary@google.com, djsollen@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/235883015

git-svn-id: http://skia.googlecode.com/svn/trunk@14408 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-28 16:00:30 +00:00
commit-bot@chromium.org
44566e2a15 Fix android_gdbserver script to work with changes from a137675.
Also stop assuming ANDROID_ARCH one of x86 or arm.

NOTRY=true
R=mtklein@google.com, djsollen@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/256413006

git-svn-id: http://skia.googlecode.com/svn/trunk@14358 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-24 18:36:36 +00:00
commit-bot@chromium.org
e20f7cf995 android scripts respect SKIA_OUT, if already set.
R=scroggo@google.com, djsollen@google.com, mtklein@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/250303002

git-svn-id: http://skia.googlecode.com/svn/trunk@14350 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-24 15:16:32 +00:00
commit-bot@chromium.org
ec68ee9d56 Allow running gyp_to_android without SkUserConfig.
The old code requires that include/config/SkUserConfig.h exists,
to ensure that it gets copied into Android's
include/core/SkUserConfig.h when we do a merge. However, if a
developer wants to make changes and rerun the script, they
should not have to recreate include/config/SkUserConfig.h just
to rerun the script. By default, allow the original to not
exist and just skip the copy.

Update tests to pass. Also add tests to support this use case.

Make gyp_to_android.py executable.

R=robertphillips@google.com, halcanary@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/242203008

git-svn-id: http://skia.googlecode.com/svn/trunk@14273 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-21 14:45:01 +00:00
commit-bot@chromium.org
0257ebe4ac enable developers to provide their own android toolchain
R=halcanary@google.com, scroggo@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/227673003

git-svn-id: http://skia.googlecode.com/svn/trunk@14113 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-04-09 18:57:42 +00:00