new android port: fix android build and tests

This commit is contained in:
Paul Rouget 2018-07-31 22:38:54 +08:00
parent 76d394eca8
commit bef2fe83cd
9 changed files with 43 additions and 39 deletions

View file

@ -76,14 +76,14 @@ linux-rel-intermittent:
- ./mach clean-nightlies --keep 3 --force
- ./mach clean-cargo-cache --keep 3 --force
- ./etc/ci/clean_build_artifacts.sh
- ./mach build --release
- ./mach build --release -p servo
- ./etc/ci/check_intermittents.sh --log-raw intermittents.log
linux-rel-nogate:
- ./mach clean-nightlies --keep 3 --force
- ./mach clean-cargo-cache --keep 3 --force
- ./etc/ci/clean_build_artifacts.sh
- ./mach build --release
- ./mach build --release -p servo
- python ./etc/ci/chaos_monkey_test.py
- env RUSTFLAGS= bash ./etc/ci/mutation_test.sh
@ -103,11 +103,11 @@ linux-dev:
- ./etc/ci/clean_build_artifacts.sh
- ./mach test-tidy --no-progress --all
- ./mach test-tidy --no-progress --self-test
- ./mach build --dev
- ./mach build --dev -p servo
- ./mach test-unit
- python ./etc/memory_reports_over_time.py --test
- ./mach package --dev
- ./mach build --dev --no-default-features --features default-except-unstable
- ./mach build --dev --no-default-features --features default-except-unstable -p servo
- bash ./etc/ci/lockfile_changed.sh
- bash ./etc/ci/check_no_panic.sh
- ./etc/ci/clean_build_artifacts.sh
@ -120,7 +120,7 @@ linux-rel-wpt:
- ./mach clean-nightlies --keep 3 --force
- ./mach clean-cargo-cache --keep 3 --force
- ./etc/ci/clean_build_artifacts.sh
- ./mach build --release --with-debug-assertions
- ./mach build --release --with-debug-assertions -p servo
- ./mach test-wpt-failure
- ./mach test-wpt --release --processes 24 --total-chunks 2 --this-chunk 1 --log-raw test-wpt.log --log-errorsummary wpt-errorsummary.log --always-succeed
- ./mach filter-intermittents wpt-errorsummary.log --log-intermittents intermittents.log --log-filteredsummary filtered-wpt-errorsummary.log --tracker-api default --reporter-api default
@ -134,7 +134,7 @@ linux-rel-css:
- ./mach clean-nightlies --keep 3 --force
- ./mach clean-cargo-cache --keep 3 --force
- ./etc/ci/clean_build_artifacts.sh
- ./mach build --release --with-debug-assertions
- ./mach build --release --with-debug-assertions -p servo
- ./mach test-wpt --release --processes 24 --total-chunks 2 --this-chunk 2 --log-raw test-wpt.log --log-errorsummary wpt-errorsummary.log --always-succeed
- ./mach filter-intermittents wpt-errorsummary.log --log-intermittents intermittents.log --log-filteredsummary filtered-wpt-errorsummary.log --tracker-api default --reporter-api default
- bash ./etc/ci/lockfile_changed.sh
@ -144,7 +144,7 @@ linux-nightly:
- ./mach clean-nightlies --keep 3 --force
- ./mach clean-cargo-cache --keep 3 --force
- ./etc/ci/clean_build_artifacts.sh
- ./mach build --release
- ./mach build --release -p servo
- ./mach package --release
- ./mach upload-nightly linux
- ./mach test-perf

View file

@ -23,7 +23,7 @@ objdump_output = subprocess.check_output([
'android-toolchains', 'ndk', 'toolchains', 'arm-linux-androideabi-4.9',
'prebuilt', 'linux-x86_64', 'bin', 'arm-linux-androideabi-objdump'),
'-T',
'target/armv7-linux-androideabi/debug/libservo.so']
'target/armv7-linux-androideabi/debug/libsimpleservo.so']
).split(b'\n')
for line in objdump_output:

View file

@ -10,6 +10,7 @@
# except according to those terms.
import contextlib
import json
import os
import signal
import subprocess
@ -55,16 +56,17 @@ def main(avd_name, apk_path, *args):
args = list(args)
write_user_stylesheets(adb, args)
write_hosts_file(adb)
write_args(adb, args)
check_call(adb + ["shell", "am start com.mozilla.servo/com.mozilla.servo.MainActivity"],
stdout=sys.stderr)
json_params = shell_quote(json.dumps(args))
extra = "-e servoargs " + json_params
cmd = "am start " + extra + " com.mozilla.servo/com.mozilla.servo.MainActivity"
check_call(adb + ["shell", cmd], stdout=sys.stderr)
# Start showing logs as soon as the application starts,
# in case they say something useful while we wait in subsequent steps.
logcat_args = [
"--format=raw", # Print no metadata, only log messages
"RustAndroidGlueStdouterr:D", # Show (debug level) Rust stdio
"simpleservo:D", # Show (debug level) Rust stdio
"*:S", # Hide everything else
]
with terminate_on_exit(adb + ["logcat"] + logcat_args) as logcat:
@ -125,16 +127,6 @@ def check_call(*args, **kwargs):
sys.exit(exit_code)
def write_args(adb, args):
data_dir = "/sdcard/Android/data/com.mozilla.servo/files"
params_file = data_dir + "/android_params"
check_call(adb + ["shell", "mkdir -p %s" % data_dir])
check_call(adb + ["shell", "echo 'servo' > %s" % params_file])
for arg in args:
check_call(adb + ["shell", "echo %s >> %s" % (shell_quote(arg), params_file)])
def write_user_stylesheets(adb, args):
data_dir = "/sdcard/Android/data/com.mozilla.servo/files"
check_call(adb + ["shell", "mkdir -p %s" % data_dir])