mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-24 21:31:04 +00:00
Backed out 13 changesets (bug 1709640, bug 1718341
) for causing android build bustages. CLOSED TREE
Backed out changeset 20645ae32b84 (bug 1709640) Backed out changeset 7c45682a8f98 (bug 1709640) Backed out changeset 667e768fd75e (bug 1709640) Backed out changeset f072adb45b85 (bug1718341
) Backed out changeset cf443dddb5f5 (bug1718341
) Backed out changeset 09d3d3e4ce7d (bug1718341
) Backed out changeset 2b47cc469477 (bug1718341
) Backed out changeset 8ec277361e46 (bug1718341
) Backed out changeset b6c4c82d3efc (bug1718341
) Backed out changeset 8afb8fcd0dc3 (bug1718341
) Backed out changeset 7723d3a9ba7f (bug1718341
) Backed out changeset f33b120a77d0 (bug1718341
) Backed out changeset e7bf6deac270 (bug1718341
)
This commit is contained in:
parent
407f1ae5ac
commit
df5b6f3929
@ -220,7 +220,7 @@ modify are listed below:
|
||||
- Linux: `unittests/linux_unittest.py`
|
||||
- Mac: `unittests/mac_unittest.py`
|
||||
- Windows: `unittests/win_unittest.py`
|
||||
- Android: `android/androidarm.py`
|
||||
- Android: `android/androidarm_4_3.py`
|
||||
|
||||
## How to instrument your objects for BloatView
|
||||
|
||||
|
@ -248,7 +248,7 @@ support-files =
|
||||
file_font_loading_api_vframe.html
|
||||
# This test checks font loading state. When loaded second time, fonts may be
|
||||
# loaded synchronously, causing this test to fail in test-verify task.
|
||||
skip-if = verify || toolkit == 'android' # Bug 1455824
|
||||
skip-if = verify
|
||||
[test_garbage_at_end_of_declarations.html]
|
||||
[test_grid_container_shorthands.html]
|
||||
[test_grid_item_shorthands.html]
|
||||
|
@ -1,6 +1,7 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Android
|
||||
ac_add_options --with-android-min-sdk=21
|
||||
ac_add_options --target=aarch64-linux-android
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/beta
|
||||
|
@ -4,6 +4,7 @@
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
ac_add_options --with-android-min-sdk=21
|
||||
ac_add_options --target=aarch64-linux-android
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
@ -4,6 +4,7 @@
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
ac_add_options --with-android-min-sdk=21
|
||||
ac_add_options --target=aarch64-linux-android
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
@ -1,7 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-aarch64/debug"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,7 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-aarch64/nightly-lite"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-aarch64/l10n-nightly"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,6 +1,7 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Android
|
||||
ac_add_options --with-android-min-sdk=21
|
||||
ac_add_options --target=aarch64-linux-android
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
@ -1,11 +0,0 @@
|
||||
. "$topsrcdir/build/mozconfig.artifact.automation"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-aarch64/nightly-artifact"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-aarch64/nightly-lite"
|
||||
|
||||
. "$topsrcdir/build/mozconfig.artifact"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,7 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-aarch64/nightly"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,38 +0,0 @@
|
||||
# Many things aren't appropriate for a frontend-only build.
|
||||
MOZ_AUTOMATION_BUILD_SYMBOLS=0
|
||||
MOZ_AUTOMATION_PACKAGE=0
|
||||
MOZ_AUTOMATION_UPLOAD=0
|
||||
MOZ_AUTOMATION_PACKAGE_GENERATED_SOURCES=0
|
||||
|
||||
NO_CACHE=1
|
||||
NO_NDK=1
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# We want to download Gradle.
|
||||
ac_add_options --with-gradle
|
||||
# We want to use (and populate!) the local Nexus repositories.
|
||||
export GRADLE_MAVEN_REPOSITORIES="http://localhost:8081/nexus/content/repositories/google/","http://localhost:8081/nexus/content/repositories/central/","http://localhost:8081/nexus/content/repositories/gradle-plugins/"
|
||||
|
||||
# From here on, just like ../android-arm/nightly.
|
||||
|
||||
. "$topsrcdir/build/mozconfig.no-compile"
|
||||
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
|
||||
ac_add_options --disable-tests
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
||||
# mozconfigs/common.override would be here, but it needs to be last in the file.
|
||||
# End ../android-arm/nightly.
|
||||
|
||||
# Disable Keyfile Loading (and checks) since dependency fetching doesn't need these keys.
|
||||
# This overrides the settings in the common android mozconfig
|
||||
ac_add_options --without-mozilla-api-keyfile
|
||||
ac_add_options --without-google-location-service-api-keyfile
|
||||
ac_add_options --without-google-safebrowsing-api-keyfile
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,7 +1,45 @@
|
||||
# Many things aren't appropriate for a frontend-only build.
|
||||
MOZ_AUTOMATION_BUILD_SYMBOLS=0
|
||||
MOZ_AUTOMATION_PACKAGE=0
|
||||
MOZ_AUTOMATION_UPLOAD=0
|
||||
MOZ_AUTOMATION_PACKAGE_GENERATED_SOURCES=0
|
||||
|
||||
NO_CACHE=1
|
||||
NO_NDK=1
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# We want to download Gradle.
|
||||
ac_add_options --with-gradle
|
||||
# We want to use (and populate!) the local Nexus repositories.
|
||||
export GRADLE_MAVEN_REPOSITORIES="http://localhost:8081/nexus/content/repositories/google/","http://localhost:8081/nexus/content/repositories/central/","http://localhost:8081/nexus/content/repositories/gradle-plugins/"
|
||||
|
||||
# From here on, just like ../android-arm/nightly.
|
||||
|
||||
. "$topsrcdir/build/mozconfig.no-compile"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-arm-gradle-dependencies/base"
|
||||
ac_add_options --disable-tests
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
||||
# mozconfigs/common.override would be here, but it needs to be last in the file.
|
||||
# End ../android-arm/nightly.
|
||||
|
||||
# Disable Keyfile Loading (and checks) since dependency fetching doesn't need these keys.
|
||||
# This overrides the settings in the common android mozconfig
|
||||
ac_add_options --without-mozilla-api-keyfile
|
||||
ac_add_options --without-google-location-service-api-keyfile
|
||||
ac_add_options --without-google-safebrowsing-api-keyfile
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
||||
|
@ -1,10 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
. "$topsrcdir/build/mozconfig.no-compile"
|
||||
|
||||
# Android
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-arm-gradle-dependencies/base"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,6 +1,12 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/beta
|
||||
|
@ -4,6 +4,12 @@
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
@ -4,6 +4,12 @@
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
@ -10,6 +10,12 @@ ac_add_options --enable-debug
|
||||
ac_add_options --enable-java-coverage
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-arm/debug"
|
||||
|
@ -1,22 +0,0 @@
|
||||
. "$topsrcdir/build/mozconfig.artifact.automation"
|
||||
|
||||
NO_CACHE=1
|
||||
NO_NDK=1
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Global options
|
||||
ac_add_options --enable-debug
|
||||
ac_add_options --enable-java-coverage
|
||||
|
||||
# Android
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-arm/debug"
|
||||
|
||||
. "$topsrcdir/build/mozconfig.artifact"
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,14 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Global options
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -4,6 +4,12 @@
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
@ -1,9 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-arm/nightly-lite"
|
||||
|
||||
. "$topsrcdir/build/mozconfig.no-compile"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-arm/l10n-nightly"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,6 +1,12 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
@ -16,6 +16,12 @@ ac_add_options --disable-tests
|
||||
# From here on, like ../android-arm/nightly.
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
@ -1,35 +0,0 @@
|
||||
# Many things aren't appropriate for a frontend-only build.
|
||||
MOZ_AUTOMATION_BUILD_SYMBOLS=0
|
||||
MOZ_AUTOMATION_PACKAGE=0
|
||||
MOZ_AUTOMATION_UPLOAD=0
|
||||
MOZ_AUTOMATION_PACKAGE_GENERATED_SOURCES=0
|
||||
|
||||
NO_CACHE=1
|
||||
NO_NDK=1
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
. "$topsrcdir/build/mozconfig.no-compile"
|
||||
|
||||
ac_add_options --disable-tests
|
||||
|
||||
# From here on, like ../android-arm/nightly.
|
||||
|
||||
# Android
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
||||
# mozconfigs/common.override would be here, but it needs to be last in the file.
|
||||
# End ../android-arm/nightly.
|
||||
|
||||
# Disable Keyfile Loading (and checks) since.
|
||||
# This overrides the settings in the common android mozconfig
|
||||
ac_add_options --without-mozilla-api-keyfile
|
||||
ac_add_options --without-google-location-service-api-keyfile
|
||||
ac_add_options --without-google-safebrowsing-api-keyfile
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,11 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Android
|
||||
ac_add_options --target=arm-linux-androideabi
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,4 +1,4 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86/nightly"
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-arm/nightly"
|
||||
|
||||
mk_add_options "export MOZ_AUTOMATION_PACKAGE_GENERATED_SOURCES=0"
|
||||
|
@ -1,6 +1,12 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --target=i686-linux-android
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/beta
|
||||
|
||||
|
@ -4,6 +4,12 @@
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=i686-linux-android
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
@ -4,6 +4,12 @@
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=i686-linux-android
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
@ -1,5 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86/debug-lite"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86/debug-fuzzing"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,14 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Global options
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
ac_add_options --target=i686-linux-android
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,9 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86/nightly-lite"
|
||||
|
||||
. "$topsrcdir/build/mozconfig.no-compile"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86/l10n-nightly"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,6 +1,12 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Android
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
ac_add_options --with-android-min-sdk=16
|
||||
ac_add_options --target=i686-linux-android
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
@ -1,12 +0,0 @@
|
||||
. "$topsrcdir/build/mozconfig.artifact.automation"
|
||||
|
||||
NO_CACHE=1
|
||||
NO_NDK=1
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86/nightly-lite"
|
||||
|
||||
. "$topsrcdir/build/mozconfig.artifact"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,11 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Android
|
||||
ac_add_options --target=i686-linux-android
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,6 +1,7 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Android
|
||||
ac_add_options --with-android-min-sdk=21
|
||||
ac_add_options --target=x86_64-linux-android
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/beta
|
||||
|
@ -4,6 +4,7 @@
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
ac_add_options --with-android-min-sdk=21
|
||||
ac_add_options --target=x86_64-linux-android
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
@ -4,6 +4,7 @@
|
||||
ac_add_options --enable-debug
|
||||
|
||||
# Android
|
||||
ac_add_options --with-android-min-sdk=21
|
||||
ac_add_options --target=x86_64-linux-android
|
||||
|
||||
export MOZILLA_OFFICIAL=1
|
||||
|
@ -1,7 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86_64/debug"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,7 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86_64/l10n-nightly"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86_64/nightly-lite"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,6 +1,7 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
# Android
|
||||
ac_add_options --with-android-min-sdk=21
|
||||
ac_add_options --target=x86_64-linux-android
|
||||
|
||||
ac_add_options --with-branding=mobile/android/branding/nightly
|
||||
|
@ -1,12 +0,0 @@
|
||||
. "$topsrcdir/build/mozconfig.artifact.automation"
|
||||
|
||||
NO_CACHE=1
|
||||
NO_NDK=1
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86_64/nightly-lite"
|
||||
|
||||
. "$topsrcdir/build/mozconfig.artifact"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,5 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86_64/nightly-lite"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86_64/nightly-fuzzing-asan"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,7 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common"
|
||||
|
||||
ac_add_options --enable-geckoview-lite
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86_64/nightly"
|
||||
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/common.override"
|
@ -1,6 +0,0 @@
|
||||
. "$topsrcdir/mobile/android/config/mozconfigs/android-x86_64/nightly"
|
||||
|
||||
mk_add_options "export MOZ_AUTOMATION_PACKAGE_GENERATED_SOURCES=0"
|
||||
|
||||
ac_add_options --enable-profile-generate=cross
|
||||
ac_add_options --disable-tests
|
@ -12,7 +12,7 @@ MOZ_BRANDING_DIRECTORY=mobile/android/branding/unofficial
|
||||
MOZ_OFFICIAL_BRANDING_DIRECTORY=mobile/android/branding/official
|
||||
# MOZ_APP_DISPLAYNAME is set by branding/configure.sh
|
||||
|
||||
# We support Android SDK version 21 and up by default (16 in lite mode).
|
||||
# We support Android SDK version 16 and up by default.
|
||||
# See the --enable-android-min-sdk and --enable-android-max-sdk arguments in configure.in.
|
||||
#
|
||||
# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
|
||||
@ -20,11 +20,12 @@ MOZ_OFFICIAL_BRANDING_DIRECTORY=mobile/android/branding/official
|
||||
# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
|
||||
# If you think you can't handle the whole set of changes, please reach out to the Release
|
||||
# Engineering team.
|
||||
if test "$MOZ_ANDROID_GECKOVIEW_LITE"; then
|
||||
MOZ_ANDROID_MIN_SDK_VERSION=16
|
||||
else
|
||||
MOZ_ANDROID_MIN_SDK_VERSION=21
|
||||
fi
|
||||
MOZ_ANDROID_MIN_SDK_VERSION=16
|
||||
|
||||
# There are several entry points into the Firefox application. These are the names of some of the classes that are
|
||||
# listed in the Android manifest. They are specified in here to avoid hard-coding them in source code files.
|
||||
MOZ_ANDROID_APPLICATION_CLASS=org.mozilla.gecko.GeckoApplication
|
||||
MOZ_ANDROID_BROWSER_INTENT_CLASS=org.mozilla.gecko.BrowserApp
|
||||
|
||||
MOZ_NO_SMART_CARDS=1
|
||||
|
||||
|
@ -420,16 +420,11 @@ publishing {
|
||||
pom {
|
||||
groupId = 'org.mozilla.geckoview'
|
||||
|
||||
def omniSuffix = ""
|
||||
if (!mozconfig.substs.MOZ_ANDROID_GECKOVIEW_LITE) {
|
||||
omniSuffix = "-omni"
|
||||
}
|
||||
|
||||
if (mozconfig.substs.MOZ_UPDATE_CHANNEL == 'release') {
|
||||
// Release artifacts don't specify the channel, for the sake of simplicity.
|
||||
artifactId = 'geckoview$omniSuffix'
|
||||
artifactId = 'geckoview'
|
||||
} else {
|
||||
artifactId = "geckoview-${mozconfig.substs.MOZ_UPDATE_CHANNEL}$omniSuffix"
|
||||
artifactId = "geckoview-${mozconfig.substs.MOZ_UPDATE_CHANNEL}"
|
||||
}
|
||||
|
||||
if (mozconfig.substs.MOZILLA_OFFICIAL && !mozconfig.substs.MOZ_ANDROID_FAT_AAR_ARCHITECTURES) {
|
||||
|
@ -479,17 +479,22 @@ class AndroidEmulatorCommands(MachCommandBase):
|
||||
@CommandArgument(
|
||||
"--version",
|
||||
metavar="VERSION",
|
||||
choices=["arm", "x86_64"],
|
||||
choices=["arm-4.3", "x86-7.0"],
|
||||
help="Specify which AVD to run in emulator. "
|
||||
'One of "arm" (Android supporting armv7 binaries), or '
|
||||
'"x86_64" (Android supporting x86 or x86_64 binaries, '
|
||||
'One of "arm-4.3" (Android 4.3 supporting armv7 binaries), or '
|
||||
'"x86-7.0" (Android 7.0 supporting x86 or x86_64 binaries, '
|
||||
"recommended for most applications). "
|
||||
'By default, "arm" will be used if the current build environment '
|
||||
'architecture is arm; otherwise "x86_64".',
|
||||
'By default, "arm-4.3" will be used if the current build environment '
|
||||
'architecture is arm; otherwise "x86-7.0".',
|
||||
)
|
||||
@CommandArgument(
|
||||
"--wait", action="store_true", help="Wait for emulator to be closed."
|
||||
)
|
||||
@CommandArgument(
|
||||
"--force-update",
|
||||
action="store_true",
|
||||
help="Update AVD definition even when AVD is already installed.",
|
||||
)
|
||||
@CommandArgument("--gpu", help="Over-ride the emulator -gpu argument.")
|
||||
@CommandArgument(
|
||||
"--verbose", action="store_true", help="Log informative status messages."
|
||||
@ -499,6 +504,7 @@ class AndroidEmulatorCommands(MachCommandBase):
|
||||
command_context,
|
||||
version,
|
||||
wait=False,
|
||||
force_update=False,
|
||||
gpu=None,
|
||||
verbose=False,
|
||||
):
|
||||
@ -533,6 +539,15 @@ class AndroidEmulatorCommands(MachCommandBase):
|
||||
)
|
||||
return 2
|
||||
|
||||
if not emulator.check_avd(force_update):
|
||||
self.log(
|
||||
logging.INFO,
|
||||
"emulator",
|
||||
{},
|
||||
"Fetching and installing AVD. This may take a few minutes...",
|
||||
)
|
||||
emulator.update_avd(force_update)
|
||||
|
||||
self.log(
|
||||
logging.INFO,
|
||||
"emulator",
|
||||
|
@ -50,16 +50,6 @@ set_config(
|
||||
depends_if("MOZ_ANDROID_CONTENT_SERVICE_ISOLATED_PROCESS")(lambda x: True),
|
||||
)
|
||||
|
||||
option(
|
||||
"--enable-geckoview-lite",
|
||||
help="Build GeckoView in Lite mode. Lite mode removes all unnecessary dependencies like Glean.",
|
||||
)
|
||||
|
||||
set_config("MOZ_ANDROID_GECKOVIEW_LITE", True, when="--enable-geckoview-lite")
|
||||
add_old_configure_assignment(
|
||||
"MOZ_ANDROID_GECKOVIEW_LITE", True, when="--enable-geckoview-lite"
|
||||
)
|
||||
|
||||
imply_option("MOZ_NORMANDY", False)
|
||||
imply_option("MOZ_SERVICES_HEALTHREPORT", True)
|
||||
imply_option("MOZ_ANDROID_HISTORY", True)
|
||||
|
@ -2475,6 +2475,8 @@ AC_SUBST(MOZ_CRASHREPORTER_INJECTOR)
|
||||
AC_SUBST(MOZ_STUB_INSTALLER)
|
||||
AC_SUBST(MOZ_UPDATER)
|
||||
|
||||
AC_SUBST(MOZ_ANDROID_APPLICATION_CLASS)
|
||||
AC_SUBST(MOZ_ANDROID_BROWSER_INTENT_CLASS)
|
||||
AC_SUBST(INCREMENTAL_LINKER)
|
||||
|
||||
AC_SUBST_LIST(MOZ_FIX_LINK_PATHS)
|
||||
|
@ -1,25 +0,0 @@
|
||||
{
|
||||
"emulator_package": "system-images;android-24;default;armeabi-v7a",
|
||||
"emulator_avd_name": "mozemulator-armeabi-v7a",
|
||||
"emulator_extra_args": [
|
||||
"-skip-adb-auth",
|
||||
"-verbose",
|
||||
"-show-kernel",
|
||||
"-ranchu",
|
||||
"-selinux", "permissive",
|
||||
"-memory", "3072",
|
||||
"-cores", "4",
|
||||
"-skin", "800x1280",
|
||||
"-gpu", "on",
|
||||
"-no-snapstorage",
|
||||
"-no-snapshot",
|
||||
"-no-window",
|
||||
"-no-accel",
|
||||
"-prop", "ro.test_harness=true"
|
||||
],
|
||||
"emulator_extra_config": {
|
||||
"hw.lcd.density": "320",
|
||||
"disk.dataPartition.size": "4000MB",
|
||||
"sdcard.size": "600M"
|
||||
}
|
||||
}
|
@ -1,25 +0,0 @@
|
||||
{
|
||||
"emulator_package": "system-images;android-24;default;x86_64",
|
||||
"emulator_avd_name": "mozemulator-x86_64",
|
||||
"emulator_extra_args": [
|
||||
"-skip-adb-auth",
|
||||
"-verbose",
|
||||
"-show-kernel",
|
||||
"-ranchu",
|
||||
"-selinux", "permissive",
|
||||
"-memory", "3072",
|
||||
"-cores", "4",
|
||||
"-skin", "800x1280",
|
||||
"-gpu", "on",
|
||||
"-no-snapstorage",
|
||||
"-no-snapshot",
|
||||
"-no-window",
|
||||
"-no-accel",
|
||||
"-prop", "ro.test_harness=true"
|
||||
],
|
||||
"emulator_extra_config": {
|
||||
"hw.lcd.density": "320",
|
||||
"disk.dataPartition.size": "4000MB",
|
||||
"sdcard.size": "600M"
|
||||
}
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
platform-tools
|
||||
build-tools;30.0.2
|
||||
platforms;android-30
|
||||
emulator
|
||||
|
@ -1 +0,0 @@
|
||||
emulator
|
@ -5,12 +5,10 @@
|
||||
from __future__ import absolute_import, print_function, unicode_literals
|
||||
|
||||
import errno
|
||||
import json
|
||||
import os
|
||||
import stat
|
||||
import subprocess
|
||||
import sys
|
||||
import time
|
||||
|
||||
# We need the NDK version in multiple different places, and it's inconvenient
|
||||
# to pass down the NDK version to all relevant places, so we have this global
|
||||
@ -18,26 +16,6 @@ import time
|
||||
from mozboot.bootstrap import MOZCONFIG_SUGGESTION_TEMPLATE
|
||||
|
||||
NDK_VERSION = "r21d"
|
||||
CMDLINE_TOOLS_VERSION_STRING = "4.0"
|
||||
CMDLINE_TOOLS_VERSION = "7302050"
|
||||
|
||||
# We expect the emulator AVD definitions to be platform agnostic
|
||||
LINUX_X86_64_ANDROID_AVD = "linux64-android-avd-x86_64-repack"
|
||||
LINUX_ARM_ANDROID_AVD = "linux64-android-avd-arm-repack"
|
||||
|
||||
MACOS_X86_64_ANDROID_AVD = "linux64-android-avd-x86_64-repack"
|
||||
MACOS_ARM_ANDROID_AVD = "linux64-android-avd-arm-repack"
|
||||
|
||||
# We don't currently support bootstrapping on Windows yet.
|
||||
# WINDOWS_X86_64_ANDROID_AVD = "linux64-android-avd-x86_64-repack"
|
||||
# WINDOWS_ARM_ANDROID_AVD = "linux64-android-avd-arm-repack"
|
||||
|
||||
AVD_MANIFEST_X86_64 = os.path.abspath(
|
||||
os.path.join(os.path.dirname(__file__), "android-avds/x86_64.json")
|
||||
)
|
||||
AVD_MANIFEST_ARM = os.path.abspath(
|
||||
os.path.join(os.path.dirname(__file__), "android-avds/arm.json")
|
||||
)
|
||||
|
||||
ANDROID_NDK_EXISTS = """
|
||||
Looks like you have the correct version of the Android NDK installed at:
|
||||
@ -206,39 +184,13 @@ def get_paths(os_name):
|
||||
"ANDROID_NDK_HOME",
|
||||
os.path.join(mozbuild_path, "android-ndk-{0}".format(NDK_VERSION)),
|
||||
)
|
||||
avd_path = os.environ.get(
|
||||
"ANDROID_AVD_HOME", os.path.join(mozbuild_path, "android-device", "avd")
|
||||
)
|
||||
emulator_path = os.environ.get(
|
||||
"ANDROID_EMULATOR_HOME", os.path.join(mozbuild_path, "android-device")
|
||||
)
|
||||
return (mozbuild_path, sdk_path, ndk_path, avd_path, emulator_path)
|
||||
return (mozbuild_path, sdk_path, ndk_path)
|
||||
|
||||
|
||||
def sdkmanager_tool(sdk_path):
|
||||
# sys.platform is win32 even if Python/Win64.
|
||||
sdkmanager = "sdkmanager.bat" if sys.platform.startswith("win") else "sdkmanager"
|
||||
return os.path.join(
|
||||
sdk_path, "cmdline-tools", CMDLINE_TOOLS_VERSION_STRING, "bin", sdkmanager
|
||||
)
|
||||
|
||||
|
||||
def avdmanager_tool(sdk_path):
|
||||
# sys.platform is win32 even if Python/Win64.
|
||||
sdkmanager = "avdmanager.bat" if sys.platform.startswith("win") else "avdmanager"
|
||||
return os.path.join(
|
||||
sdk_path, "cmdline-tools", CMDLINE_TOOLS_VERSION_STRING, "bin", sdkmanager
|
||||
)
|
||||
|
||||
|
||||
def adb_tool(sdk_path):
|
||||
adb = "adb.bat" if sys.platform.startswith("win") else "adb"
|
||||
return os.path.join(sdk_path, "platform-tools", adb)
|
||||
|
||||
|
||||
def emulator_tool(sdk_path):
|
||||
emulator = "emulator.bat" if sys.platform.startswith("win") else "emulator"
|
||||
return os.path.join(sdk_path, "emulator", emulator)
|
||||
return os.path.join(sdk_path, "tools", "bin", sdkmanager)
|
||||
|
||||
|
||||
def ensure_dir(dir):
|
||||
@ -255,12 +207,8 @@ def ensure_android(
|
||||
os_name,
|
||||
artifact_mode=False,
|
||||
ndk_only=False,
|
||||
system_images_only=False,
|
||||
emulator_only=False,
|
||||
avd_manifest_path=None,
|
||||
prewarm_avd=False,
|
||||
no_interactive=False,
|
||||
list_packages=False,
|
||||
):
|
||||
"""
|
||||
Ensure the Android SDK (and NDK, if `artifact_mode` is falsy) are
|
||||
@ -268,23 +216,18 @@ def ensure_android(
|
||||
given URLs. Ensure the required Android SDK packages are
|
||||
installed.
|
||||
|
||||
`os_name` can be 'linux', 'macosx' or 'windows'.
|
||||
`os_name` can be 'linux' or 'macosx'.
|
||||
"""
|
||||
# The user may have an external Android SDK (in which case we
|
||||
# save them a lengthy download), or they may have already
|
||||
# completed the download. We unpack to
|
||||
# ~/.mozbuild/{android-sdk-$OS_NAME, android-ndk-$VER}.
|
||||
mozbuild_path, sdk_path, ndk_path, avd_path, emulator_path = get_paths(os_name)
|
||||
|
||||
if os_name == "macosx":
|
||||
os_tag = "mac"
|
||||
elif os_name == "windows":
|
||||
os_tag = "win"
|
||||
else:
|
||||
os_tag = os_name
|
||||
|
||||
sdk_url = "https://dl.google.com/android/repository/commandlinetools-{0}-{1}_latest.zip".format( # NOQA: E501
|
||||
os_tag, CMDLINE_TOOLS_VERSION
|
||||
mozbuild_path, sdk_path, ndk_path = get_paths(os_name)
|
||||
os_tag = "darwin" if os_name == "macosx" else os_name
|
||||
sdk_url = (
|
||||
"https://dl.google.com/android/repository/sdk-tools-{0}-4333796.zip".format(
|
||||
os_tag
|
||||
)
|
||||
)
|
||||
ndk_url = android_ndk_url(os_name)
|
||||
|
||||
@ -303,35 +246,12 @@ def ensure_android(
|
||||
if ndk_only:
|
||||
return
|
||||
|
||||
avd_manifest = None
|
||||
if avd_manifest_path is not None:
|
||||
with open(avd_manifest_path) as f:
|
||||
avd_manifest = json.load(f)
|
||||
|
||||
# We expect the |sdkmanager| tool to be at
|
||||
# ~/.mozbuild/android-sdk-$OS_NAME/tools/cmdline-tools/$CMDLINE_TOOLS_VERSION_STRING/bin/sdkmanager. # NOQA: E501
|
||||
# ~/.mozbuild/android-sdk-$OS_NAME/tools/bin/sdkmanager.
|
||||
ensure_android_packages(
|
||||
sdkmanager_tool=sdkmanager_tool(sdk_path),
|
||||
emulator_only=emulator_only,
|
||||
system_images_only=system_images_only,
|
||||
avd_manifest=avd_manifest,
|
||||
no_interactive=no_interactive,
|
||||
list_packages=list_packages,
|
||||
)
|
||||
|
||||
if emulator_only or system_images_only:
|
||||
return
|
||||
|
||||
ensure_android_avd(
|
||||
avdmanager_tool=avdmanager_tool(sdk_path),
|
||||
adb_tool=adb_tool(sdk_path),
|
||||
emulator_tool=emulator_tool(sdk_path),
|
||||
avd_path=avd_path,
|
||||
sdk_path=sdk_path,
|
||||
emulator_path=emulator_path,
|
||||
no_interactive=no_interactive,
|
||||
avd_manifest=avd_manifest,
|
||||
prewarm_avd=prewarm_avd,
|
||||
)
|
||||
|
||||
|
||||
@ -386,141 +306,32 @@ def ensure_android_sdk_and_ndk(
|
||||
# android-sdk-$OS_NAME directory; it no longer does so. We
|
||||
# preserve the old convention to smooth detecting existing SDK
|
||||
# installations.
|
||||
cmdline_tools_path = os.path.join(
|
||||
mozbuild_path, "android-sdk-{0}".format(os_name), "cmdline-tools"
|
||||
)
|
||||
install_mobile_android_sdk_or_ndk(sdk_url, cmdline_tools_path)
|
||||
# The tools package *really* wants to be in
|
||||
# <sdk>/cmdline-tools/$CMDLINE_TOOLS_VERSION_STRING
|
||||
os.rename(
|
||||
os.path.join(cmdline_tools_path, "cmdline-tools"),
|
||||
os.path.join(cmdline_tools_path, CMDLINE_TOOLS_VERSION_STRING),
|
||||
install_mobile_android_sdk_or_ndk(
|
||||
sdk_url, os.path.join(mozbuild_path, "android-sdk-{0}".format(os_name))
|
||||
)
|
||||
|
||||
|
||||
def get_packages_to_install(packages_file_content, avd_manifest):
|
||||
packages = []
|
||||
packages += map(lambda package: package.strip(), packages_file_content)
|
||||
if avd_manifest is not None:
|
||||
packages += [avd_manifest["emulator_package"]]
|
||||
return packages
|
||||
|
||||
|
||||
def ensure_android_avd(
|
||||
avdmanager_tool,
|
||||
adb_tool,
|
||||
emulator_tool,
|
||||
avd_path,
|
||||
sdk_path,
|
||||
emulator_path,
|
||||
no_interactive=False,
|
||||
avd_manifest=None,
|
||||
prewarm_avd=False,
|
||||
):
|
||||
def get_packages_to_install(packages_file_name):
|
||||
"""
|
||||
Use the given sdkmanager tool (like 'sdkmanager') to install required
|
||||
Android packages.
|
||||
"""
|
||||
if avd_manifest is None:
|
||||
return
|
||||
|
||||
ensure_dir(avd_path)
|
||||
# The AVD needs this folder to boot, so make sure it exists here.
|
||||
ensure_dir(os.path.join(sdk_path, "platforms"))
|
||||
|
||||
avd_name = avd_manifest["emulator_avd_name"]
|
||||
args = [
|
||||
avdmanager_tool,
|
||||
"--verbose",
|
||||
"create",
|
||||
"avd",
|
||||
"--force",
|
||||
"--name",
|
||||
avd_name,
|
||||
"--package",
|
||||
avd_manifest["emulator_package"],
|
||||
]
|
||||
|
||||
if not no_interactive:
|
||||
sdkmanager version 26.1.1 (current) and some versions below have a bug that makes
|
||||
the following command fail:
|
||||
args = [sdkmanager_tool, '--package_file={0}'.format(package_file_name)]
|
||||
subprocess.check_call(args)
|
||||
return
|
||||
|
||||
# Flush outputs before running sdkmanager.
|
||||
sys.stdout.flush()
|
||||
env = os.environ.copy()
|
||||
env["ANDROID_AVD_HOME"] = avd_path
|
||||
proc = subprocess.Popen(args, stdin=subprocess.PIPE, env=env)
|
||||
proc.communicate("no\n".encode("UTF-8"))
|
||||
|
||||
retcode = proc.poll()
|
||||
if retcode:
|
||||
cmd = args[0]
|
||||
e = subprocess.CalledProcessError(retcode, cmd)
|
||||
raise e
|
||||
|
||||
config_file_name = os.path.join(avd_path, avd_name + ".avd", "config.ini")
|
||||
|
||||
print("Writing config at %s" % config_file_name)
|
||||
|
||||
if os.path.isfile(config_file_name):
|
||||
with open(config_file_name, "a") as config:
|
||||
for key, value in avd_manifest["emulator_extra_config"].items():
|
||||
config.write("%s=%s\n" % (key, value))
|
||||
else:
|
||||
raise NotImplementedError(
|
||||
"Could not find config file at %s, something went wrong" % config_file_name
|
||||
)
|
||||
if prewarm_avd:
|
||||
run_prewarm_avd(
|
||||
adb_tool, emulator_tool, env, avd_name, avd_manifest, no_interactive
|
||||
)
|
||||
|
||||
|
||||
def run_prewarm_avd(
|
||||
adb_tool, emulator_tool, env, avd_name, avd_manifest, no_interactive=False
|
||||
):
|
||||
The error is in the sdkmanager, where the --package_file param isn't recognized.
|
||||
The error is being tracked here https://issuetracker.google.com/issues/66465833
|
||||
Meanwhile, this workaround achives installing all required Android packages by reading
|
||||
them out of the same file that --package_file would have used, and passing them as strings.
|
||||
So from here: https://developer.android.com/studio/command-line/sdkmanager
|
||||
Instead of:
|
||||
sdkmanager --package_file=package_file [options]
|
||||
We're doing:
|
||||
sdkmanager "platform-tools" "platforms;android-26"
|
||||
"""
|
||||
Ensures the emulator is fully booted to save time on future iterations.
|
||||
"""
|
||||
args = [emulator_tool, "-avd", avd_name] + avd_manifest["emulator_extra_args"]
|
||||
|
||||
# Flush outputs before running emulator.
|
||||
sys.stdout.flush()
|
||||
proc = subprocess.Popen(args, env=env)
|
||||
|
||||
booted = False
|
||||
for i in range(100):
|
||||
boot_completed_cmd = [adb_tool, "shell", "getprop", "sys.boot_completed"]
|
||||
completed_proc = subprocess.Popen(
|
||||
boot_completed_cmd, env=env, stdout=subprocess.PIPE
|
||||
)
|
||||
try:
|
||||
out, err = completed_proc.communicate(timeout=30)
|
||||
boot_completed = out.decode("UTF-8").strip()
|
||||
print("sys.boot_completed = %s" % boot_completed)
|
||||
time.sleep(30)
|
||||
if boot_completed == "1":
|
||||
booted = True
|
||||
break
|
||||
except subprocess.TimeoutExpired:
|
||||
# Sometimes the adb command hangs, that's ok
|
||||
print("sys.boot_completed = Timeout")
|
||||
|
||||
if not booted:
|
||||
raise NotImplementedError("Could not prewarm emulator")
|
||||
|
||||
# We can kill the emulator now
|
||||
proc.terminate()
|
||||
with open(packages_file_name) as package_file:
|
||||
return map(lambda package: package.strip(), package_file.readlines())
|
||||
|
||||
|
||||
def ensure_android_packages(
|
||||
sdkmanager_tool,
|
||||
emulator_only=False,
|
||||
system_images_only=False,
|
||||
avd_manifest=None,
|
||||
no_interactive=False,
|
||||
list_packages=False,
|
||||
):
|
||||
def ensure_android_packages(sdkmanager_tool, emulator_only=False, no_interactive=False):
|
||||
"""
|
||||
Use the given sdkmanager tool (like 'sdkmanager') to install required
|
||||
Android packages.
|
||||
@ -528,24 +339,18 @@ def ensure_android_packages(
|
||||
|
||||
# This tries to install all the required Android packages. The user
|
||||
# may be prompted to agree to the Android license.
|
||||
if system_images_only:
|
||||
packages_file_name = "android-system-images-packages.txt"
|
||||
elif emulator_only:
|
||||
packages_file_name = "android-emulator-packages.txt"
|
||||
if emulator_only:
|
||||
package_file_name = os.path.abspath(
|
||||
os.path.join(os.path.dirname(__file__), "android-emulator-packages.txt")
|
||||
)
|
||||
else:
|
||||
packages_file_name = "android-packages.txt"
|
||||
|
||||
packages_file_path = os.path.abspath(
|
||||
os.path.join(os.path.dirname(__file__), packages_file_name)
|
||||
)
|
||||
with open(packages_file_path) as packages_file:
|
||||
packages_file_content = packages_file.readlines()
|
||||
|
||||
packages = get_packages_to_install(packages_file_content, avd_manifest)
|
||||
print(INSTALLING_ANDROID_PACKAGES % "\n".join(packages))
|
||||
package_file_name = os.path.abspath(
|
||||
os.path.join(os.path.dirname(__file__), "android-packages.txt")
|
||||
)
|
||||
print(INSTALLING_ANDROID_PACKAGES % open(package_file_name, "rt").read())
|
||||
|
||||
args = [sdkmanager_tool]
|
||||
args.extend(packages)
|
||||
args.extend(get_packages_to_install(package_file_name))
|
||||
|
||||
if not no_interactive:
|
||||
subprocess.check_call(args)
|
||||
@ -565,12 +370,10 @@ def ensure_android_packages(
|
||||
cmd = args[0]
|
||||
e = subprocess.CalledProcessError(retcode, cmd)
|
||||
raise e
|
||||
if list_packages:
|
||||
subprocess.check_call([sdkmanager_tool, "--list"])
|
||||
|
||||
|
||||
def generate_mozconfig(os_name, artifact_mode=False):
|
||||
moz_state_dir, sdk_path, ndk_path, avd_path, emulator_path = get_paths(os_name)
|
||||
moz_state_dir, sdk_path, ndk_path = get_paths(os_name)
|
||||
|
||||
extra_lines = []
|
||||
if extra_lines:
|
||||
@ -584,7 +387,6 @@ def generate_mozconfig(os_name, artifact_mode=False):
|
||||
kwargs = dict(
|
||||
sdk_path=sdk_path,
|
||||
ndk_path=ndk_path,
|
||||
avd_path=avd_path,
|
||||
moz_state_dir=moz_state_dir,
|
||||
extra_lines="\n".join(extra_lines),
|
||||
)
|
||||
@ -626,12 +428,6 @@ def main(argv):
|
||||
action="store_true",
|
||||
help="If true, install only the Android NDK (and not the Android SDK).",
|
||||
)
|
||||
parser.add_option(
|
||||
"--system-images-only",
|
||||
dest="system_images_only",
|
||||
action="store_true",
|
||||
help="If true, install only the system images for the AVDs.",
|
||||
)
|
||||
parser.add_option(
|
||||
"--no-interactive",
|
||||
dest="no_interactive",
|
||||
@ -644,23 +440,6 @@ def main(argv):
|
||||
action="store_true",
|
||||
help="If true, install only the Android emulator (and not the SDK or NDK).",
|
||||
)
|
||||
parser.add_option(
|
||||
"--avd-manifest",
|
||||
dest="avd_manifest_path",
|
||||
help="If present, generate AVD from the manifest pointed by this argument.",
|
||||
)
|
||||
parser.add_option(
|
||||
"--prewarm-avd",
|
||||
dest="prewarm_avd",
|
||||
action="store_true",
|
||||
help="If true, boot the AVD and wait until completed to speed up subsequent boots.",
|
||||
)
|
||||
parser.add_option(
|
||||
"--list-packages",
|
||||
dest="list_packages",
|
||||
action="store_true",
|
||||
help="If true, list installed packages.",
|
||||
)
|
||||
|
||||
options, _ = parser.parse_args(argv)
|
||||
|
||||
@ -687,12 +466,8 @@ def main(argv):
|
||||
os_name,
|
||||
artifact_mode=options.artifact_mode,
|
||||
ndk_only=options.ndk_only,
|
||||
system_images_only=options.system_images_only,
|
||||
emulator_only=options.emulator_only,
|
||||
avd_manifest_path=options.avd_manifest_path,
|
||||
prewarm_avd=options.prewarm_avd,
|
||||
no_interactive=options.no_interactive,
|
||||
list_packages=options.list_packages,
|
||||
)
|
||||
mozconfig = generate_mozconfig(os_name, options.artifact_mode)
|
||||
|
||||
|
@ -23,7 +23,12 @@ if sys.version_info < (3,):
|
||||
class ArchlinuxBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
"""Archlinux experimental bootstrapper."""
|
||||
|
||||
SYSTEM_PACKAGES = ["base-devel", "nodejs", "unzip", "zip"]
|
||||
SYSTEM_PACKAGES = [
|
||||
"base-devel",
|
||||
"nodejs",
|
||||
"unzip",
|
||||
"zip",
|
||||
]
|
||||
|
||||
BROWSER_PACKAGES = [
|
||||
"alsa-lib",
|
||||
@ -43,7 +48,7 @@ class ArchlinuxBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
]
|
||||
|
||||
BROWSER_AUR_PACKAGES = [
|
||||
"https://aur.archlinux.org/cgit/aur.git/snapshot/uuid.tar.gz"
|
||||
"https://aur.archlinux.org/cgit/aur.git/snapshot/uuid.tar.gz",
|
||||
]
|
||||
|
||||
MOBILE_ANDROID_COMMON_PACKAGES = [
|
||||
@ -71,6 +76,12 @@ class ArchlinuxBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
def install_browser_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_browser_packages(artifact_mode=True)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder, artifact_mode=True)
|
||||
|
||||
def ensure_browser_packages(self, artifact_mode=False):
|
||||
# TODO: Figure out what not to install for artifact mode
|
||||
self.aur_install(*self.BROWSER_AUR_PACKAGES)
|
||||
@ -80,7 +91,7 @@ class ArchlinuxBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
# installed via ensure_browser_packages
|
||||
pass
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
def ensure_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
# Multi-part process:
|
||||
# 1. System packages.
|
||||
# 2. Android SDK. Android NDK only if we are not in artifact mode. Android packages.
|
||||
@ -103,7 +114,7 @@ class ArchlinuxBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
|
||||
# 2. Android pieces.
|
||||
self.ensure_java(mozconfig_builder)
|
||||
super().install_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
super().ensure_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
|
||||
def _update_package_manager(self):
|
||||
self.pacman_update()
|
||||
|
@ -210,14 +210,6 @@ class BaseBootstrapper(object):
|
||||
"%s does not yet implement install_browser_packages()" % __name__
|
||||
)
|
||||
|
||||
def ensure_browser_packages(self, state_dir, checkout_root):
|
||||
"""
|
||||
Install pre-built packages needed to build Firefox for Desktop (application 'browser')
|
||||
|
||||
Currently this is not needed and kept for compatibility with Firefox for Android.
|
||||
"""
|
||||
pass
|
||||
|
||||
def generate_browser_mozconfig(self):
|
||||
"""
|
||||
Print a message to the console detailing what the user's mozconfig
|
||||
@ -264,23 +256,14 @@ class BaseBootstrapper(object):
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
"""
|
||||
Install packages required to build GeckoView (application
|
||||
'mobile/android').
|
||||
Install packages required to build Firefox for Android (application
|
||||
'mobile/android', also known as Fennec).
|
||||
"""
|
||||
raise NotImplementedError(
|
||||
"Cannot bootstrap GeckoView/Firefox for Android: "
|
||||
"%s does not yet implement install_mobile_android_packages()" % __name__
|
||||
)
|
||||
|
||||
def ensure_mobile_android_packages(self, state_dir, checkout_root):
|
||||
"""
|
||||
Install pre-built packages required to run GeckoView (application 'mobile/android')
|
||||
"""
|
||||
raise NotImplementedError(
|
||||
"Cannot bootstrap GeckoView/Firefox for Android: "
|
||||
"%s does not yet implement ensure_mobile_android_packages()" % __name__
|
||||
)
|
||||
|
||||
def generate_mobile_android_mozconfig(self):
|
||||
"""
|
||||
Print a message to the console detailing what the user's mozconfig
|
||||
|
@ -249,9 +249,7 @@ class Bootstrapper(object):
|
||||
|
||||
return state_dir
|
||||
|
||||
def maybe_install_private_packages_or_exit(
|
||||
self, state_dir, checkout_root, application
|
||||
):
|
||||
def maybe_install_private_packages_or_exit(self, state_dir, checkout_root):
|
||||
# Install the clang packages needed for building the style system, as
|
||||
# well as the version of NodeJS that we currently support.
|
||||
# Also install the clang static-analysis package by default
|
||||
@ -266,10 +264,6 @@ class Bootstrapper(object):
|
||||
self.instance.ensure_nasm_packages(state_dir, checkout_root)
|
||||
self.instance.ensure_sccache_packages(state_dir, checkout_root)
|
||||
self.instance.ensure_wasi_sysroot_packages(state_dir, checkout_root)
|
||||
# Like 'ensure_browser_packages' or 'ensure_mobile_android_packages'
|
||||
getattr(self.instance, "ensure_%s_packages" % application)(
|
||||
state_dir, checkout_root
|
||||
)
|
||||
|
||||
def check_code_submission(self, checkout_root):
|
||||
if self.instance.no_interactive or which("moz-phab"):
|
||||
@ -390,9 +384,7 @@ class Bootstrapper(object):
|
||||
which("git"), which("git-cinnabar"), state_dir, checkout_root
|
||||
)
|
||||
|
||||
self.maybe_install_private_packages_or_exit(
|
||||
state_dir, checkout_root, application
|
||||
)
|
||||
self.maybe_install_private_packages_or_exit(state_dir, checkout_root)
|
||||
self.check_code_submission(checkout_root)
|
||||
# Wait until after moz-phab setup to check telemetry so that employees
|
||||
# will be automatically opted-in.
|
||||
|
@ -84,17 +84,23 @@ class CentOSFedoraBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
def install_browser_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_browser_packages(artifact_mode=True)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder, artifact_mode=False)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder, artifact_mode=True)
|
||||
|
||||
def ensure_browser_packages(self, artifact_mode=False):
|
||||
# TODO: Figure out what not to install for artifact mode
|
||||
self.dnf_groupinstall(*self.browser_group_packages)
|
||||
self.dnf_install(*self.browser_packages)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
def ensure_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
# Install Android specific packages.
|
||||
self.dnf_install(*self.mobile_android_packages)
|
||||
|
||||
self.ensure_java(mozconfig_builder)
|
||||
super().install_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
super().ensure_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
|
||||
def upgrade_mercurial(self, current):
|
||||
if current is None:
|
||||
|
@ -102,6 +102,12 @@ class DebianBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
def install_browser_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_browser_packages(artifact_mode=True)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder, artifact_mode=True)
|
||||
|
||||
def ensure_browser_packages(self, artifact_mode=False):
|
||||
# TODO: Figure out what not to install for artifact mode
|
||||
self.apt_install(*self.BROWSER_COMMON_PACKAGES)
|
||||
@ -109,7 +115,7 @@ class DebianBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
if not modern:
|
||||
self.apt_install("nasm")
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
def ensure_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
# Multi-part process:
|
||||
# 1. System packages.
|
||||
# 2. Android SDK. Android NDK only if we are not in artifact mode. Android packages.
|
||||
@ -117,7 +123,7 @@ class DebianBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
|
||||
# 2. Android pieces.
|
||||
self.ensure_java(mozconfig_builder)
|
||||
super().install_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
super().ensure_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
|
||||
def _update_package_manager(self):
|
||||
self.apt_update()
|
||||
|
@ -24,8 +24,21 @@ class GentooBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
def install_browser_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_browser_packages(artifact_mode=True)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder, artifact_mode=False)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder, artifact_mode=True)
|
||||
|
||||
def ensure_system_packages(self):
|
||||
self.run_as_root(["emerge", "--noreplace", "--quiet", "app-arch/zip"])
|
||||
self.run_as_root(
|
||||
[
|
||||
"emerge",
|
||||
"--noreplace",
|
||||
"--quiet",
|
||||
"app-arch/zip",
|
||||
]
|
||||
)
|
||||
|
||||
def ensure_browser_packages(self, artifact_mode=False):
|
||||
# TODO: Figure out what not to install for artifact mode
|
||||
@ -43,11 +56,11 @@ class GentooBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
]
|
||||
)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
def ensure_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
self.run_as_root(["emerge", "--noreplace", "--quiet", "dev-java/openjdk-bin"])
|
||||
|
||||
self.ensure_java(mozconfig_builder)
|
||||
super().install_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
super().ensure_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
|
||||
def _update_package_manager(self):
|
||||
self.run_as_root(["emerge", "--sync"])
|
||||
|
@ -136,39 +136,12 @@ class MobileAndroidBootstrapper(object):
|
||||
def __init__(self, **kwargs):
|
||||
pass
|
||||
|
||||
def install_mobile_android_packages(self, artifact_mode=False):
|
||||
def ensure_mobile_android_packages(self, artifact_mode=False):
|
||||
from mozboot import android
|
||||
|
||||
android.ensure_android(
|
||||
"linux", artifact_mode=artifact_mode, no_interactive=self.no_interactive
|
||||
)
|
||||
android.ensure_android(
|
||||
"linux",
|
||||
artifact_mode=artifact_mode,
|
||||
no_interactive=self.no_interactive,
|
||||
system_images_only=True,
|
||||
avd_manifest_path=android.AVD_MANIFEST_X86_64,
|
||||
)
|
||||
android.ensure_android(
|
||||
"linux",
|
||||
artifact_mode=artifact_mode,
|
||||
no_interactive=self.no_interactive,
|
||||
system_images_only=True,
|
||||
avd_manifest_path=android.AVD_MANIFEST_ARM,
|
||||
)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self):
|
||||
self.install_mobile_android_packages(artifact_mode=True)
|
||||
|
||||
def ensure_mobile_android_packages(self, state_dir, checkout_root):
|
||||
from mozboot import android
|
||||
|
||||
self.install_toolchain_artifact(
|
||||
state_dir, checkout_root, android.LINUX_X86_64_ANDROID_AVD
|
||||
)
|
||||
self.install_toolchain_artifact(
|
||||
state_dir, checkout_root, android.LINUX_ARM_ANDROID_AVD
|
||||
)
|
||||
|
||||
def generate_mobile_android_mozconfig(self, artifact_mode=False):
|
||||
from mozboot import android
|
||||
|
@ -154,7 +154,13 @@ class MozillaBuildBootstrapper(BaseBootstrapper):
|
||||
def install_browser_artifact_mode_packages(self, mozconfig_builder):
|
||||
pass
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder, artifact_mode=True)
|
||||
|
||||
def ensure_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
java_bin_dir = self.ensure_java(mozconfig_builder)
|
||||
from mach.util import setenv
|
||||
|
||||
|
@ -35,9 +35,15 @@ class OpenSUSEBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
"patterns-gnome-devel_gnome",
|
||||
]
|
||||
|
||||
BROWSER_GROUP_PACKAGES = ["devel_C_C++", "devel_gnome"]
|
||||
BROWSER_GROUP_PACKAGES = [
|
||||
"devel_C_C++",
|
||||
"devel_gnome",
|
||||
]
|
||||
|
||||
MOBILE_ANDROID_COMMON_PACKAGES = ["java-1_8_0-openjdk", "wget"]
|
||||
MOBILE_ANDROID_COMMON_PACKAGES = [
|
||||
"java-1_8_0-openjdk",
|
||||
"wget",
|
||||
]
|
||||
|
||||
def __init__(self, version, dist_id, **kwargs):
|
||||
print("Using an experimental bootstrapper for openSUSE.")
|
||||
@ -55,6 +61,12 @@ class OpenSUSEBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
def install_browser_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_browser_packages(artifact_mode=True)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages()
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(artifact_mode=True)
|
||||
|
||||
def install_mercurial(self):
|
||||
self(["pip", "install", "--upgrade", "pip", "--user"])
|
||||
self(["pip", "install", "--upgrade", "Mercurial", "--user"])
|
||||
@ -74,7 +86,7 @@ class OpenSUSEBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
# TODO: Figure out what not to install for artifact mode
|
||||
self.zypper_patterninstall(*self.BROWSER_GROUP_PACKAGES)
|
||||
|
||||
def install_mobile_android_packages(self, artifact_mode=False):
|
||||
def ensure_mobile_android_packages(self, artifact_mode=False):
|
||||
# Multi-part process:
|
||||
# 1. System packages.
|
||||
# 2. Android SDK. Android NDK only if we are not in artifact mode. Android packages.
|
||||
@ -93,7 +105,7 @@ class OpenSUSEBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
raise e
|
||||
|
||||
# 2. Android pieces.
|
||||
super().install_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
super().ensure_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
|
||||
def _update_package_manager(self):
|
||||
self.zypper_update
|
||||
|
@ -163,16 +163,6 @@ class OSXBootstrapper(BaseBootstrapper):
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
self.ensure_homebrew_mobile_android_packages(mozconfig_builder)
|
||||
|
||||
def ensure_mobile_android_packages(self, state_dir, checkout_root):
|
||||
from mozboot import android
|
||||
|
||||
self.install_toolchain_artifact(
|
||||
state_dir, checkout_root, android.MACOS_X86_64_ANDROID_AVD
|
||||
)
|
||||
self.install_toolchain_artifact(
|
||||
state_dir, checkout_root, android.MACOS_ARM_ANDROID_AVD
|
||||
)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_homebrew_mobile_android_packages(
|
||||
mozconfig_builder, artifact_mode=True
|
||||
@ -277,20 +267,6 @@ class OSXBootstrapper(BaseBootstrapper):
|
||||
android.ensure_android(
|
||||
"macosx", artifact_mode=artifact_mode, no_interactive=self.no_interactive
|
||||
)
|
||||
android.ensure_android(
|
||||
"macosx",
|
||||
system_images_only=True,
|
||||
artifact_mode=artifact_mode,
|
||||
no_interactive=self.no_interactive,
|
||||
avd_manifest_path=android.AVD_MANIFEST_X86_64,
|
||||
)
|
||||
android.ensure_android(
|
||||
"macosx",
|
||||
system_images_only=True,
|
||||
artifact_mode=artifact_mode,
|
||||
no_interactive=self.no_interactive,
|
||||
avd_manifest_path=android.AVD_MANIFEST_ARM,
|
||||
)
|
||||
|
||||
def ensure_homebrew_installed(self):
|
||||
"""
|
||||
|
@ -20,8 +20,14 @@ if sys.version_info < (3,):
|
||||
class SolusBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
"""Solus experimental bootstrapper."""
|
||||
|
||||
SYSTEM_PACKAGES = ["nodejs", "unzip", "zip"]
|
||||
SYSTEM_COMPONENTS = ["system.devel"]
|
||||
SYSTEM_PACKAGES = [
|
||||
"nodejs",
|
||||
"unzip",
|
||||
"zip",
|
||||
]
|
||||
SYSTEM_COMPONENTS = [
|
||||
"system.devel",
|
||||
]
|
||||
|
||||
BROWSER_PACKAGES = [
|
||||
"alsa-lib",
|
||||
@ -62,6 +68,12 @@ class SolusBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
def install_browser_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_browser_packages(artifact_mode=True)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder, artifact_mode=True)
|
||||
|
||||
def ensure_browser_packages(self, artifact_mode=False):
|
||||
self.package_install(*self.BROWSER_PACKAGES)
|
||||
|
||||
@ -69,7 +81,7 @@ class SolusBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
# installed via ensure_browser_packages
|
||||
pass
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
def ensure_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
try:
|
||||
self.package_install(*self.MOBILE_ANDROID_COMMON_PACKAGES)
|
||||
except Exception as e:
|
||||
@ -78,7 +90,7 @@ class SolusBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
|
||||
# 2. Android pieces.
|
||||
self.ensure_java(mozconfig_builder)
|
||||
super().install_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
super().ensure_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
|
||||
def _update_package_manager(self):
|
||||
pass
|
||||
|
@ -14,7 +14,14 @@ from mozboot.linux_common import LinuxBootstrapper
|
||||
|
||||
class VoidBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
|
||||
PACKAGES = ["clang", "make", "mercurial", "nodejs", "unzip", "zip"]
|
||||
PACKAGES = [
|
||||
"clang",
|
||||
"make",
|
||||
"mercurial",
|
||||
"nodejs",
|
||||
"unzip",
|
||||
"zip",
|
||||
]
|
||||
|
||||
BROWSER_PACKAGES = [
|
||||
"dbus-devel",
|
||||
@ -77,10 +84,16 @@ class VoidBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
def install_browser_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_browser_packages(artifact_mode=True)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
self.ensure_mobile_android_packages(mozconfig_builder, artifact_mode=True)
|
||||
|
||||
def ensure_browser_packages(self, artifact_mode=False):
|
||||
self.xbps_install(*self.browser_packages)
|
||||
|
||||
def install_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
def ensure_mobile_android_packages(self, mozconfig_builder, artifact_mode=False):
|
||||
# Multi-part process:
|
||||
# 1. System packages.
|
||||
# 2. Android SDK. Android NDK only if we are not in artifact mode. Android packages.
|
||||
@ -88,7 +101,7 @@ class VoidBootstrapper(LinuxBootstrapper, BaseBootstrapper):
|
||||
|
||||
# 2. Android pieces.
|
||||
self.ensure_java(mozconfig_builder)
|
||||
super().install_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
super().ensure_mobile_android_packages(artifact_mode=artifact_mode)
|
||||
|
||||
def _update_package_manager(self):
|
||||
self.xbps_update()
|
||||
|
@ -56,7 +56,10 @@ class WindowsBootstrapper(BaseBootstrapper):
|
||||
"mingw-w64-i686-toolchain",
|
||||
]
|
||||
|
||||
BROWSER_PACKAGES = ["mingw-w64-x86_64-nasm", "mingw-w64-i686-nsis"]
|
||||
BROWSER_PACKAGES = [
|
||||
"mingw-w64-x86_64-nasm",
|
||||
"mingw-w64-i686-nsis",
|
||||
]
|
||||
|
||||
MOBILE_ANDROID_COMMON_PACKAGES = ["wget"]
|
||||
|
||||
@ -93,11 +96,6 @@ class WindowsBootstrapper(BaseBootstrapper):
|
||||
"We do not support building Android on Windows. Sorry!"
|
||||
)
|
||||
|
||||
def ensure_mobile_android_packages(self, state_dir, checkout_root):
|
||||
raise NotImplementedError(
|
||||
"We do not support building Android on Windows. Sorry!"
|
||||
)
|
||||
|
||||
def install_mobile_android_artifact_mode_packages(self, mozconfig_builder):
|
||||
raise NotImplementedError(
|
||||
"We do not support building Android on Windows. Sorry!"
|
||||
|
@ -93,19 +93,6 @@ configurations.all { config ->
|
||||
'geckoview-beta-x86_64',
|
||||
]
|
||||
|
||||
def geckoviewOmniModules = [
|
||||
'geckoview-nightly-omni',
|
||||
'geckoview-nightly-omni-armeabi-v7a',
|
||||
'geckoview-nightly-omni-arm64-v8a',
|
||||
'geckoview-nightly-omni-x86',
|
||||
'geckoview-nightly-omni-x86_64',
|
||||
'geckoview-beta-omni',
|
||||
'geckoview-beta-omni-armeabi-v7a',
|
||||
'geckoview-beta-omni-arm64-v8a',
|
||||
'geckoview-beta-omni-x86',
|
||||
'geckoview-beta-omni-x86_64',
|
||||
]
|
||||
|
||||
if (config.isCanBeResolved()) {
|
||||
config.resolutionStrategy { strategy ->
|
||||
dependencySubstitution {
|
||||
@ -120,15 +107,8 @@ configurations.all { config ->
|
||||
}
|
||||
|
||||
def group = dependency.requested.group
|
||||
def module = dependency.requested.module
|
||||
if (group == 'org.mozilla.geckoview'
|
||||
&& (geckoviewModules.contains(module) || geckoviewOmniModules.contains(module))) {
|
||||
def name = ''
|
||||
if (geckoviewOmniModules.contains(module)) {
|
||||
name = 'geckoview-default-omni'
|
||||
} else {
|
||||
name = 'geckoview-default'
|
||||
}
|
||||
if (group == 'org.mozilla.geckoview' && geckoviewModules.contains(dependency.requested.module)) {
|
||||
def name = 'geckoview-default'
|
||||
log("Substituting ${group}:${dependency.requested.module} with local GeckoView ${group}:${name} in ${config}")
|
||||
|
||||
dependency.useTarget([group: group, name: name, version: '+'])
|
||||
|
@ -92,7 +92,7 @@ jobs:
|
||||
job-name: android-geckoview-fat-aar-opt
|
||||
type: shippable-with-multi-l10n
|
||||
treeherder:
|
||||
platform: android-5-0-geckoview-fat-aar-shippable/opt
|
||||
platform: android-4-0-geckoview-fat-aar-shippable/opt
|
||||
symbol: Bgv
|
||||
dependencies:
|
||||
android-x86-shippable: build-android-x86-shippable/opt
|
||||
@ -109,33 +109,3 @@ jobs:
|
||||
- taskcluster_nightly.py
|
||||
optimization:
|
||||
skip-unless-backstop: null
|
||||
|
||||
android-geckoview-fat-aar-shippable-lite/opt:
|
||||
description: "Android GeckoView Lite multi-architecture fat AAR Shippable"
|
||||
attributes:
|
||||
shippable: true
|
||||
enable-full-crashsymbols: true
|
||||
disable-push-apk: true
|
||||
shipping-phase: build
|
||||
shipping-product: fennec
|
||||
index:
|
||||
job-name: android-geckoview-fat-aar-opt-lite
|
||||
type: shippable-with-multi-l10n
|
||||
treeherder:
|
||||
platform: android-4-1-geckoview-fat-aar-shippable/opt
|
||||
symbol: Bgvl
|
||||
dependencies:
|
||||
android-x86-shippable: build-android-x86-shippable-lite/opt
|
||||
android-x86_64-shippable: build-android-x86_64-shippable-lite/opt
|
||||
android-arm-shippable: build-android-arm-shippable-lite/opt
|
||||
android-aarch64-shippable: build-android-aarch64-shippable-lite/opt
|
||||
worker:
|
||||
env:
|
||||
PERFHERDER_EXTRA_OPTIONS: android-geckoview-fat-aar-nightly-lite
|
||||
run:
|
||||
actions: [get-secrets, build, multi-l10n]
|
||||
config:
|
||||
- builds/releng_base_android_64_builds.py
|
||||
- taskcluster_nightly.py
|
||||
optimization:
|
||||
skip-unless-backstop: null
|
||||
|
@ -14,7 +14,7 @@ android-geckoview-docs/opt:
|
||||
product: mobile
|
||||
job-name: android-geckoview-docs
|
||||
treeherder:
|
||||
platform: android-4-1-armv7/opt
|
||||
platform: android-4-0-armv7/opt
|
||||
kind: build
|
||||
tier: 2
|
||||
symbol: A(gv-docs)
|
||||
|
@ -33,6 +33,7 @@ job-defaults:
|
||||
tooltool-downloads: internal
|
||||
fetches:
|
||||
toolchain:
|
||||
- android-gradle-dependencies
|
||||
- android-ndk-linux
|
||||
- android-sdk-linux
|
||||
- linux64-rust-android
|
||||
@ -44,13 +45,13 @@ job-defaults:
|
||||
- sysroot-x86_64-linux-gnu
|
||||
|
||||
android-arm/debug:
|
||||
description: "Android 5.0 Arm Debug"
|
||||
description: "Android 4.0 Arm Debug"
|
||||
index:
|
||||
job-name: android-arm-debug
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-armv7/debug
|
||||
platform: android-4-0-armv7/debug
|
||||
symbol: B
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
@ -66,40 +67,15 @@ android-arm/debug:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-arm-lite/debug:
|
||||
description: "Android 4.1 Arm Debug Lite"
|
||||
index:
|
||||
job-name: android-arm-lite-debug
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-4-1-armv7/debug
|
||||
symbol: Bl
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
run:
|
||||
actions: [get-secrets, build]
|
||||
config: ["builds/releng_base_android_64_builds.py"]
|
||||
custom-build-variant-cfg: arm-lite-debug
|
||||
use-sccache: true
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-x86/opt:
|
||||
description: "Android 5.0 x86 Opt"
|
||||
description: "Android 4.2 x86 Opt"
|
||||
index:
|
||||
job-name: android-x86-opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-x86/opt
|
||||
platform: android-4-2-x86/opt
|
||||
symbol: B
|
||||
run-on-projects: ['integration']
|
||||
worker-type: b-linux
|
||||
@ -115,40 +91,13 @@ android-x86/opt:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-x86-lite/opt:
|
||||
description: "Android 4.1 x86 Opt"
|
||||
index:
|
||||
job-name: android-x86-lite-opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-4-1-x86/opt
|
||||
symbol: Bl
|
||||
run-on-projects: ['integration']
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
|
||||
PERFHERDER_EXTRA_OPTIONS: lite
|
||||
run:
|
||||
actions: [get-secrets, build]
|
||||
config: ["builds/releng_base_android_64_builds.py"]
|
||||
custom-build-variant-cfg: x86-lite
|
||||
use-sccache: true
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-x86-fuzzing/debug:
|
||||
description: "Android x86 Fuzzing Debug"
|
||||
index:
|
||||
job-name: android-x86-fuzzing-debug
|
||||
treeherder:
|
||||
platform: android-4-1-x86/debug
|
||||
platform: android-4-2-x86/debug
|
||||
symbol: Bf
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
@ -163,13 +112,11 @@ android-x86-fuzzing/debug:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
optimization:
|
||||
skip-unless-expanded: null
|
||||
|
||||
android-x86-shippable/opt:
|
||||
description: "Android 5.0 x86 Shippable"
|
||||
use-pgo: true
|
||||
description: "Android 4.2 x86 Shippable"
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
shippable: true
|
||||
@ -179,7 +126,7 @@ android-x86-shippable/opt:
|
||||
job-name: android-x86-opt
|
||||
type: android-shippable
|
||||
treeherder:
|
||||
platform: android-5-0-x86-shippable/opt
|
||||
platform: android-4-2-x86-shippable/opt
|
||||
symbol: B
|
||||
run-on-projects: ['release']
|
||||
worker-type: b-linux
|
||||
@ -196,47 +143,15 @@ android-x86-shippable/opt:
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-x86-shippable-lite/opt:
|
||||
description: "Android 4.1 x86 Shippable Lite"
|
||||
use-pgo: android-x86-shippable/opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
shippable: true
|
||||
shipping-phase: build
|
||||
shipping-product: fennec
|
||||
index:
|
||||
job-name: android-x86-lite-opt
|
||||
type: android-shippable
|
||||
treeherder:
|
||||
platform: android-4-1-x86-shippable-lite/opt
|
||||
symbol: Bl
|
||||
run-on-projects: ['release']
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
|
||||
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
|
||||
run:
|
||||
actions: [get-secrets, build, multi-l10n]
|
||||
config:
|
||||
- builds/releng_base_android_64_builds.py
|
||||
- taskcluster_nightly.py
|
||||
custom-build-variant-cfg: x86-lite
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-arm/opt:
|
||||
description: "Android 5.0 Arm Opt"
|
||||
description: "Android 4.0 Arm Opt"
|
||||
index:
|
||||
job-name: android-arm-opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-armv7/opt
|
||||
platform: android-4-0-armv7/opt
|
||||
symbol: B
|
||||
run-on-projects: ['integration']
|
||||
worker-type: b-linux
|
||||
@ -252,37 +167,11 @@ android-arm/opt:
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies
|
||||
- linux64-sccache
|
||||
|
||||
android-arm-lite/opt:
|
||||
description: "Android 4.1 Arm Opt Lite"
|
||||
index:
|
||||
job-name: android-arm-lite-opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-4-1-armv7/opt
|
||||
symbol: Bl
|
||||
run-on-projects: ['integration']
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
run:
|
||||
actions: [get-secrets, build]
|
||||
config: ["builds/releng_base_android_64_builds.py"]
|
||||
custom-build-variant-cfg: arm-lite
|
||||
use-sccache: true
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-arm-shippable/opt:
|
||||
description: "Android 5.0 Arm Shippable"
|
||||
use-pgo: android-x86-shippable/opt
|
||||
description: "Android 4.0 Arm Shippable"
|
||||
use-pgo: true
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
shippable: true
|
||||
@ -292,7 +181,7 @@ android-arm-shippable/opt:
|
||||
job-name: android-arm-opt
|
||||
type: android-shippable-with-multi-l10n
|
||||
treeherder:
|
||||
platform: android-5-0-armv7-shippable/opt
|
||||
platform: android-4-0-armv7-shippable/opt
|
||||
symbol: Bpgo(B)
|
||||
run-on-projects: ['release']
|
||||
worker-type: b-linux
|
||||
@ -309,38 +198,6 @@ android-arm-shippable/opt:
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-arm-shippable-lite/opt:
|
||||
description: "Android 4.1 Arm Shippable Lite"
|
||||
use-pgo: android-x86-shippable/opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
shippable: true
|
||||
shipping-phase: build
|
||||
shipping-product: fennec
|
||||
index:
|
||||
job-name: android-arm-lite-opt
|
||||
type: android-shippable-with-multi-l10n
|
||||
treeherder:
|
||||
platform: android-4-1-armv7-shippable-lite/opt
|
||||
symbol: Bpgo(Bl)
|
||||
run-on-projects: ['release']
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
|
||||
run:
|
||||
actions: [get-secrets, build, multi-l10n]
|
||||
config:
|
||||
- builds/releng_base_android_64_builds.py
|
||||
- taskcluster_nightly.py
|
||||
custom-build-variant-cfg: arm-lite
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-aarch64/opt:
|
||||
description: "Android 5.0 AArch64 Opt"
|
||||
@ -366,33 +223,6 @@ android-aarch64/opt:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-aarch64-lite/opt:
|
||||
description: "Android 5.0 AArch64 Opt Lite"
|
||||
index:
|
||||
job-name: android-aarch64-lite-opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-aarch64/opt
|
||||
symbol: Bl
|
||||
run-on-projects: ['integration']
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
PERFHERDER_EXTRA_OPTIONS: lite
|
||||
run:
|
||||
actions: [get-secrets, build]
|
||||
config: ["builds/releng_base_android_64_builds.py"]
|
||||
custom-build-variant-cfg: aarch64-lite
|
||||
use-sccache: true
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-aarch64/debug:
|
||||
description: "Android 5.0 AArch64 Debug"
|
||||
@ -417,36 +247,10 @@ android-aarch64/debug:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-aarch64-lite/debug:
|
||||
description: "Android 5.0 AArch64 Debug Lite"
|
||||
index:
|
||||
job-name: android-aarch64-lite-debug
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-aarch64/debug
|
||||
symbol: Bl
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
PERFHERDER_EXTRA_OPTIONS: lite
|
||||
run:
|
||||
actions: [get-secrets, build]
|
||||
config: ["builds/releng_base_android_64_builds.py"]
|
||||
custom-build-variant-cfg: aarch64-lite-debug
|
||||
use-sccache: true
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-aarch64-shippable/opt:
|
||||
description: "Android 5.0 AArch64 Shippable"
|
||||
use-pgo: android-x86_64-shippable/opt
|
||||
use-pgo: android-arm-shippable/opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
shippable: true
|
||||
@ -473,39 +277,6 @@ android-aarch64-shippable/opt:
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-aarch64-shippable-lite/opt:
|
||||
description: "Android 5.0 AArch64 Shippable Lite"
|
||||
use-pgo: android-x86_64-shippable/opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
shippable: true
|
||||
shipping-phase: build
|
||||
shipping-product: fennec
|
||||
index:
|
||||
job-name: android-aarch64-lite-opt
|
||||
type: android-shippable
|
||||
treeherder:
|
||||
platform: android-5-0-aarch64-shippable-lite/opt
|
||||
symbol: Bpgo(Bl)
|
||||
run-on-projects: ['release']
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
|
||||
PERFHERDER_EXTRA_OPTIONS: lite
|
||||
run:
|
||||
actions: [get-secrets, build, multi-l10n]
|
||||
config:
|
||||
- builds/releng_base_android_64_builds.py
|
||||
- taskcluster_nightly.py
|
||||
custom-build-variant-cfg: aarch64-lite
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-x86_64/opt:
|
||||
description: "Android 5.0 x86-64 Opt"
|
||||
@ -531,38 +302,9 @@ android-x86_64/opt:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-x86_64-lite/opt:
|
||||
description: "Android 5.0 x86-64 Opt Lite"
|
||||
index:
|
||||
job-name: android-x86_64-lite-opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-x86_64/opt
|
||||
symbol: Bl
|
||||
run-on-projects: ['integration']
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
|
||||
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
|
||||
PERFHERDER_EXTRA_OPTIONS: lite
|
||||
run:
|
||||
actions: [get-secrets, build]
|
||||
config: ["builds/releng_base_android_64_builds.py"]
|
||||
custom-build-variant-cfg: x86_64-lite
|
||||
use-sccache: true
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-x86_64-shippable/opt:
|
||||
description: "Android 5.0 x86-64 Shippable"
|
||||
use-pgo: true
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
shippable: true
|
||||
@ -589,39 +331,6 @@ android-x86_64-shippable/opt:
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-x86_64-shippable-lite/opt:
|
||||
description: "Android 5.0 x86-64 Shippable Lite"
|
||||
use-pgo: android-x86_64-shippable/opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
shippable: true
|
||||
shipping-phase: build
|
||||
shipping-product: fennec
|
||||
index:
|
||||
job-name: android-x86_64-lite-opt
|
||||
type: android-shippable
|
||||
treeherder:
|
||||
platform: android-5-0-x86_64-shippable-lite/opt
|
||||
symbol: Bl
|
||||
run-on-projects: ['release']
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
|
||||
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
|
||||
PERFHERDER_EXTRA_OPTIONS: lite
|
||||
run:
|
||||
actions: [get-secrets, build, multi-l10n]
|
||||
config:
|
||||
- builds/releng_base_android_64_builds.py
|
||||
- taskcluster_nightly.py
|
||||
custom-build-variant-cfg: x86_64-lite
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-x86_64/debug:
|
||||
description: "Android 5.0 x86-64 Debug"
|
||||
@ -646,33 +355,6 @@ android-x86_64/debug:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-x86_64-lite/debug:
|
||||
description: "Android 5.0 x86-64 Debug Lite"
|
||||
index:
|
||||
job-name: android-x86_64-lite-debug
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-x86_64/debug
|
||||
symbol: Bl
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android-x86/releng.manifest"
|
||||
MOZ_AUTOMATION_PACKAGE_TESTS: "1"
|
||||
PERFHERDER_EXTRA_OPTIONS: lite
|
||||
run:
|
||||
actions: [get-secrets, build]
|
||||
config: ["builds/releng_base_android_64_builds.py"]
|
||||
custom-build-variant-cfg: x86_64-lite-debug
|
||||
use-sccache: true
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies-lite
|
||||
|
||||
android-x86_64/debug-isolated-process:
|
||||
description: "Android 5.0 x86-64 Debug with Isolated Process"
|
||||
@ -698,16 +380,15 @@ android-x86_64/debug-isolated-process:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
|
||||
android-arm-gcp/debug:
|
||||
description: "Android 5.0 Arm Debug - built on GCP"
|
||||
description: "Android 4.0 Arm Debug - built on GCP"
|
||||
index:
|
||||
job-name: android-arm-gcp-debug
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-armv7/debug
|
||||
platform: android-4-0-armv7/debug
|
||||
symbol: B-gcp
|
||||
tier: 2
|
||||
worker-type: b-linux-gcp
|
||||
@ -724,19 +405,18 @@ android-arm-gcp/debug:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
optimization:
|
||||
skip-unless-backstop: null
|
||||
|
||||
|
||||
android-x86-gcp/opt:
|
||||
description: "Android 5.0 x86 Opt - built on GCP"
|
||||
description: "Android 4.2 x86 Opt - built on GCP"
|
||||
index:
|
||||
job-name: android-x86-gcp-opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-x86/opt
|
||||
platform: android-4-2-x86/opt
|
||||
symbol: B-gcp
|
||||
tier: 2
|
||||
worker-type: b-linux-gcp
|
||||
@ -753,18 +433,17 @@ android-x86-gcp/opt:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
optimization:
|
||||
skip-unless-backstop: null
|
||||
|
||||
android-arm-gcp/opt:
|
||||
description: "Android 5.0 Arm Opt - built on GCP"
|
||||
description: "Android 4.0 Arm Opt - built on GCP"
|
||||
index:
|
||||
job-name: android-arm-gcp-opt
|
||||
attributes:
|
||||
enable-full-crashsymbols: true
|
||||
treeherder:
|
||||
platform: android-5-0-armv7/opt
|
||||
platform: android-4-0-armv7/opt
|
||||
symbol: B-gcp
|
||||
tier: 2
|
||||
worker-type: b-linux-gcp
|
||||
@ -781,7 +460,6 @@ android-arm-gcp/opt:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
optimization:
|
||||
skip-unless-backstop: null
|
||||
|
||||
@ -809,7 +487,6 @@ android-aarch64-gcp/opt:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
optimization:
|
||||
skip-unless-backstop: null
|
||||
|
||||
@ -837,7 +514,6 @@ android-aarch64-gcp/debug:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
optimization:
|
||||
skip-unless-backstop: null
|
||||
|
||||
@ -865,7 +541,6 @@ android-x86_64-gcp/opt:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
optimization:
|
||||
skip-unless-backstop: null
|
||||
|
||||
@ -891,7 +566,6 @@ android-x86_64-gcp/debug:
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- android-gradle-dependencies
|
||||
optimization:
|
||||
skip-unless-backstop: null
|
||||
|
||||
@ -915,6 +589,5 @@ android-x86_64-asan-fuzzing/opt:
|
||||
toolchain:
|
||||
- linux64-clang-android-cross
|
||||
- linux64-sccache
|
||||
- android-gradle-dependencies
|
||||
optimization:
|
||||
skip-unless-expanded: null
|
||||
|
@ -85,15 +85,15 @@ jobs:
|
||||
- linux64-clang
|
||||
- linux64-minidump-stackwalk
|
||||
|
||||
android-x86-shippable/opt:
|
||||
description: "Android 5.0 x86 Profile Generation"
|
||||
android-arm-shippable/opt:
|
||||
description: "Android 4.0 Arm Profile Generation"
|
||||
shipping-phase: build
|
||||
shipping-product: fennec
|
||||
index:
|
||||
product: mobile
|
||||
job-name: android-x86-profile
|
||||
job-name: android-arm-profile
|
||||
treeherder:
|
||||
platform: android-5-0-x86/pgo
|
||||
platform: android-4-0-armv7/pgo
|
||||
worker-type: t-linux-xlarge-pgo
|
||||
worker:
|
||||
chain-of-trust: true
|
||||
@ -115,55 +115,12 @@ jobs:
|
||||
options: [installer-path=/builds/worker/fetches/geckoview-androidTest.apk]
|
||||
config:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64-profile-generation.py
|
||||
- android/androidarm_4_3.py
|
||||
- android/android_pgo.py
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-minidump-stackwalk
|
||||
- android-sdk-linux
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
|
||||
android-x86_64-shippable/opt:
|
||||
description: "Android 5.0 x86_64 Profile Generation"
|
||||
shipping-phase: build
|
||||
shipping-product: fennec
|
||||
index:
|
||||
product: mobile
|
||||
job-name: android-x86_64-profile
|
||||
treeherder:
|
||||
platform: android-5-0-x86_64/pgo
|
||||
worker-type: t-linux-xlarge-pgo
|
||||
worker:
|
||||
chain-of-trust: true
|
||||
max-run-time: 2700
|
||||
docker-image: {in-tree: ubuntu1804-test}
|
||||
env:
|
||||
WORKING_DIR: "/builds/worker"
|
||||
MOZHARNESS_PATH: "/builds/worker/checkouts/gecko/testing/mozharness"
|
||||
artifacts:
|
||||
- type: directory
|
||||
name: public/build
|
||||
path: /builds/worker/artifacts/
|
||||
run:
|
||||
using: mozharness
|
||||
need-xvfb: true
|
||||
job-script: taskcluster/scripts/tester/test-linux.sh
|
||||
script: android_emulator_pgo.py
|
||||
tooltool-downloads: internal
|
||||
options: [installer-path=/builds/worker/fetches/geckoview-androidTest.apk]
|
||||
config:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64-profile-generation.py
|
||||
- android/android_pgo.py
|
||||
fetches:
|
||||
toolchain:
|
||||
- linux64-clang
|
||||
- linux64-minidump-stackwalk
|
||||
- android-sdk-linux
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
|
||||
win32-shippable/opt:
|
||||
description: "Win32 Profile Generation"
|
||||
|
@ -137,14 +137,14 @@ jobs:
|
||||
- sysroot-x86_64-linux-gnu
|
||||
- wasi-sysroot
|
||||
|
||||
android-x86-shippable/opt:
|
||||
description: "Android 5.0 x86 PGO instrumented"
|
||||
android-arm-shippable/opt:
|
||||
description: "Android 4.0 Arm PGO instrumented"
|
||||
index:
|
||||
product: mobile
|
||||
job-name: instrumented-android-x86
|
||||
job-name: instrumented-android-arm
|
||||
shipping-product: fennec
|
||||
treeherder:
|
||||
platform: android-5-0-x86/pgo
|
||||
platform: android-4-0-armv7/pgo
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
@ -164,48 +164,7 @@ jobs:
|
||||
run:
|
||||
config:
|
||||
- builds/releng_base_android_64_builds.py
|
||||
custom-build-variant-cfg: x86-profile-generate
|
||||
tooltool-downloads: internal
|
||||
fetches:
|
||||
toolchain:
|
||||
- android-gradle-dependencies
|
||||
- android-ndk-linux
|
||||
- android-sdk-linux
|
||||
- linux64-clang-android-cross
|
||||
- linux64-rust-android
|
||||
- linux64-rust-size
|
||||
- linux64-cbindgen
|
||||
- linux64-nasm
|
||||
- linux64-node
|
||||
|
||||
android-x86_64-shippable/opt:
|
||||
description: "Android 5.0 x86_64 PGO instrumented"
|
||||
index:
|
||||
product: mobile
|
||||
job-name: instrumented-android-x86_64
|
||||
shipping-product: fennec
|
||||
treeherder:
|
||||
platform: android-5-0-x86_64/pgo
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
env:
|
||||
GRADLE_USER_HOME: "/builds/worker/checkouts/gecko/mobile/android/gradle/dotgradle-offline"
|
||||
TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
|
||||
artifacts:
|
||||
- name: public/build
|
||||
path: /builds/worker/artifacts/
|
||||
type: directory
|
||||
- name: public/build/geckoview-androidTest.apk
|
||||
path: /builds/worker/workspace/obj-build/gradle/build/mobile/android/geckoview/outputs/apk/androidTest/withGeckoBinaries/debug/geckoview-withGeckoBinaries-debug-androidTest.apk
|
||||
type: file
|
||||
- name: public/build/geckoview_example.apk
|
||||
path: /builds/worker/workspace/obj-build/gradle/build/mobile/android/geckoview_example/outputs/apk/withGeckoBinaries/debug/geckoview_example-withGeckoBinaries-debug.apk
|
||||
type: file
|
||||
run:
|
||||
config:
|
||||
- builds/releng_base_android_64_builds.py
|
||||
custom-build-variant-cfg: x86_64-profile-generate
|
||||
custom-build-variant-cfg: arm-profile-generate
|
||||
tooltool-downloads: internal
|
||||
fetches:
|
||||
toolchain:
|
||||
|
@ -159,7 +159,7 @@ jobs:
|
||||
index:
|
||||
job-name: android-armv7-searchfox-debug
|
||||
treeherder:
|
||||
platform: android-4-1-armv7/debug
|
||||
platform: android-4-0-armv7/debug
|
||||
worker-type: b-linux
|
||||
worker:
|
||||
docker-image: {in-tree: android-build}
|
||||
|
@ -19,7 +19,7 @@ job-defaults:
|
||||
by-test-platform:
|
||||
android-em-7.*:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
android-hw.*:
|
||||
- android/android_common.py
|
||||
- android/android_hw.py
|
||||
|
@ -63,8 +63,6 @@ job-defaults:
|
||||
- macosx64-minidump-stackwalk
|
||||
- macosx64-fix-stacks
|
||||
android-em-7.*:
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
- android-emulator-linux
|
||||
- linux64-minidump-stackwalk
|
||||
- linux64-fix-stacks
|
||||
|
@ -26,7 +26,7 @@ geckoview-junit:
|
||||
by-test-platform:
|
||||
android-em-7.*:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
extra-options:
|
||||
- --test-suite=geckoview-junit
|
||||
|
||||
@ -99,7 +99,7 @@ test-verify:
|
||||
by-test-platform:
|
||||
android-em-7.*:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
linux.*:
|
||||
- unittests/linux_unittest.py
|
||||
- remove_executables.py
|
||||
@ -133,8 +133,6 @@ test-verify:
|
||||
- win32-fix-stacks
|
||||
android-em-7.*:
|
||||
- android-sdk-linux
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
- linux64-node
|
||||
- linux64-minidump-stackwalk
|
||||
- linux64-fix-stacks
|
||||
@ -173,7 +171,7 @@ test-verify-gpu:
|
||||
by-test-platform:
|
||||
android-em-7.*:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
linux.*:
|
||||
- unittests/linux_unittest.py
|
||||
- remove_executables.py
|
||||
@ -210,7 +208,7 @@ test-coverage:
|
||||
by-test-platform:
|
||||
android-em-7.*:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
linux.*:
|
||||
- unittests/linux_unittest.py
|
||||
- remove_executables.py
|
||||
@ -244,8 +242,6 @@ test-coverage:
|
||||
- win32-fix-stacks
|
||||
android-em-7.*:
|
||||
- android-sdk-linux
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
- linux64-node
|
||||
- linux64-minidump-stackwalk
|
||||
- linux64-fix-stacks
|
||||
@ -280,7 +276,7 @@ test-coverage-gpu:
|
||||
by-test-platform:
|
||||
android-em-7.*:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
linux.*:
|
||||
- unittests/linux_unittest.py
|
||||
- remove_executables.py
|
||||
|
@ -36,7 +36,7 @@ job-defaults:
|
||||
by-test-platform:
|
||||
android-em-7.*:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
android-hw.*:
|
||||
- android/android_common.py
|
||||
- android/android_hw.py
|
||||
|
@ -27,7 +27,7 @@ job-defaults:
|
||||
by-test-platform:
|
||||
android-em-7.*:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
android-hw.*:
|
||||
- android/android_common.py
|
||||
- android/android_hw.py
|
||||
|
@ -419,34 +419,17 @@ android-em-7.0-x86_64/opt:
|
||||
- android-x86_64-tests
|
||||
- web-platform-tests-backlog
|
||||
|
||||
android-em-7.0-x86_64-lite/opt:
|
||||
build-platform: android-x86_64-lite/opt
|
||||
test-sets:
|
||||
- android-x86_64-tests
|
||||
- web-platform-tests-backlog
|
||||
|
||||
android-em-7.0-x86_64-shippable/opt:
|
||||
build-platform: android-x86_64-shippable/opt
|
||||
test-sets:
|
||||
- android-x86_64-tests
|
||||
- web-platform-tests-backlog
|
||||
|
||||
android-em-7.0-x86_64-shippable-lite/opt:
|
||||
build-platform: android-x86_64-shippable-lite/opt
|
||||
test-sets:
|
||||
- android-x86_64-tests
|
||||
- web-platform-tests-backlog
|
||||
|
||||
android-em-7.0-x86_64/debug:
|
||||
build-platform: android-x86_64/debug
|
||||
test-sets:
|
||||
- android-x86_64-tests
|
||||
|
||||
android-em-7.0-x86_64-lite/debug:
|
||||
build-platform: android-x86_64-lite/debug
|
||||
test-sets:
|
||||
- android-x86_64-tests
|
||||
|
||||
android-em-7.0-x86_64/debug-isolated-process:
|
||||
build-platform: android-x86_64/debug-isolated-process
|
||||
test-sets:
|
||||
|
@ -26,16 +26,16 @@ job-defaults:
|
||||
macosx.*:
|
||||
- web_platform_tests/prod_config_mac.py
|
||||
android-em.*:
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
- web_platform_tests/prod_config_android.py
|
||||
default:
|
||||
- web_platform_tests/prod_config.py
|
||||
- remove_executables.py
|
||||
target:
|
||||
by-test-platform:
|
||||
android-em-7.0-x86_64-shippable(-qr|-lite)?/opt: geckoview-androidTest.apk
|
||||
android-em-7.0-x86_64(-qr|-lite)?/opt: geckoview-androidTest.apk
|
||||
android-em-7.0-x86_64(-qr|-lite)?/debug(-isolated-process)?: geckoview-androidTest.apk
|
||||
android-em-7.0-x86_64-shippable(-qr)?/opt: geckoview-androidTest.apk
|
||||
android-em-7.0-x86_64(-qr)?/opt: geckoview-androidTest.apk
|
||||
android-em-7.0-x86_64(-qr)?/debug(-isolated-process)?: geckoview-androidTest.apk
|
||||
default: null
|
||||
python-3: true
|
||||
|
||||
|
@ -22,7 +22,7 @@ job-defaults:
|
||||
by-test-platform:
|
||||
android-em-7.*:
|
||||
- android/android_common.py
|
||||
- android/android-x86_64.py
|
||||
- android/androidx86_7_0.py
|
||||
linux.*:
|
||||
- unittests/linux_unittest.py
|
||||
- remove_executables.py
|
||||
@ -101,8 +101,6 @@ xpcshell:
|
||||
- win32-minidump-stackwalk
|
||||
- win32-fix-stacks
|
||||
android-em-7.*:
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
- android-emulator-linux
|
||||
- linux64-node
|
||||
- linux64-minidump-stackwalk
|
||||
|
@ -8,64 +8,6 @@ job-defaults:
|
||||
docker-image: {in-tree: android-build}
|
||||
max-run-time: 1800
|
||||
|
||||
# In automation, we generate the AVD using the linux64-android-avd jobs. On
|
||||
# developers' machines, bootstrap will download the artifact from the avd job
|
||||
# instead of generating it.
|
||||
#
|
||||
# The Android AVD needs the corresponding system image generated in the
|
||||
# linux64-android-system-image TL job. System images are not redistributable,
|
||||
# so locally bootstrap will use sdkmanager to download the corresponding system
|
||||
# images.
|
||||
linux64-android-avd-x86_64-repack:
|
||||
attributes:
|
||||
local-toolchain: true
|
||||
description: "Android AVD (Linux) repack toolchain build"
|
||||
treeherder:
|
||||
symbol: TL(avd-x86_64-linux)
|
||||
run-on-projects: [trunk]
|
||||
run:
|
||||
script: repack-android-avd-linux.sh
|
||||
arguments:
|
||||
- 'python/mozboot/mozboot/android-avds/x86_64.json'
|
||||
resources:
|
||||
- 'python/mozboot/**/*android*'
|
||||
toolchain-artifact: public/build/android-avd-linux.tar.zst
|
||||
toolchain-alias: android-avd-x86_64-linux
|
||||
|
||||
linux64-android-avd-arm-repack:
|
||||
attributes:
|
||||
local-toolchain: true
|
||||
description: "Android AVD (Linux) repack toolchain build"
|
||||
treeherder:
|
||||
symbol: TL(avd-arm-linux)
|
||||
run-on-projects: [trunk]
|
||||
run:
|
||||
script: repack-android-avd-linux.sh
|
||||
arguments:
|
||||
- 'python/mozboot/mozboot/android-avds/arm.json'
|
||||
resources:
|
||||
- 'python/mozboot/**/*android*'
|
||||
toolchain-artifact: public/build/android-avd-linux.tar.zst
|
||||
toolchain-alias: android-avd-arm-linux
|
||||
|
||||
linux64-android-system-image-x86_64-repack:
|
||||
description: "Android System Images (Linux) repack toolchain build"
|
||||
treeherder:
|
||||
symbol: TL(x86_64-avd-img-linux)
|
||||
worker:
|
||||
artifacts:
|
||||
- name: project/gecko/android-system-images
|
||||
path: /builds/worker/project/gecko/android-system-images/
|
||||
type: directory
|
||||
run:
|
||||
script: repack-android-system-images-linux.sh
|
||||
arguments:
|
||||
- 'python/mozboot/mozboot/android-avds/x86_64.json'
|
||||
resources:
|
||||
- 'python/mozboot/**/*android*'
|
||||
toolchain-artifact: project/gecko/android-system-images/android-system-images-linux.tar.zst
|
||||
toolchain-alias: android-system-image-x86_64-linux
|
||||
|
||||
linux64-android-sdk-linux-repack:
|
||||
description: "Android SDK (Linux) repack toolchain build"
|
||||
treeherder:
|
||||
@ -140,30 +82,3 @@ linux64-android-gradle-dependencies:
|
||||
# Aliases aren't allowed for toolchains depending on toolchains.
|
||||
- linux64-android-sdk-linux-repack
|
||||
- linux64-node
|
||||
|
||||
linux64-android-gradle-dependencies-lite:
|
||||
description: "Android Lite Gradle dependencies toolchain task"
|
||||
treeherder:
|
||||
symbol: TL(gradle-dependencies-lite)
|
||||
worker:
|
||||
env:
|
||||
GRADLE_USER_HOME: "/builds/worker/workspace/build/src/mobile/android/gradle/dotgradle-online"
|
||||
run:
|
||||
script: android-gradle-dependencies-lite.sh
|
||||
sparse-profile: null
|
||||
resources:
|
||||
- 'taskcluster/scripts/misc/android-gradle-dependencies/**'
|
||||
- '*.gradle'
|
||||
- 'mobile/android/**/*.gradle'
|
||||
- 'mobile/android/config/mozconfigs/android-arm-gradle-dependencies/**'
|
||||
- 'mobile/android/config/mozconfigs/common*'
|
||||
- 'mobile/android/gradle.configure'
|
||||
toolchain-artifact: public/build/android-gradle-dependencies.tar.zst
|
||||
toolchain-alias: android-gradle-dependencies-lite
|
||||
fetches:
|
||||
fetch:
|
||||
- sonatype-nexus
|
||||
toolchain:
|
||||
# Aliases aren't allowed for toolchains depending on toolchains.
|
||||
- linux64-android-sdk-linux-repack
|
||||
- linux64-node
|
||||
|
@ -271,8 +271,6 @@ jobs:
|
||||
- android-gradle-dependencies
|
||||
- android-ndk-linux
|
||||
- android-sdk-linux
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
- linux64-rust-android
|
||||
- wrench-deps
|
||||
treeherder:
|
||||
@ -313,8 +311,6 @@ jobs:
|
||||
- android-gradle-dependencies
|
||||
- android-ndk-linux
|
||||
- android-sdk-linux
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
- linux64-rust-android
|
||||
- wrench-deps
|
||||
treeherder:
|
||||
@ -351,8 +347,6 @@ jobs:
|
||||
- 'wrench-debug.apk'
|
||||
toolchain:
|
||||
- android-sdk-linux
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
run:
|
||||
using: run-task
|
||||
tooltool-downloads: internal
|
||||
@ -395,8 +389,6 @@ jobs:
|
||||
- 'wrench-release.apk'
|
||||
toolchain:
|
||||
- android-sdk-linux
|
||||
- android-system-image-x86_64-linux
|
||||
- android-avd-x86_64-linux
|
||||
run:
|
||||
using: run-task
|
||||
tooltool-downloads: internal
|
||||
|
@ -31,8 +31,6 @@ RUN apt-get update && \
|
||||
uuid \
|
||||
valgrind \
|
||||
vim \
|
||||
x11-utils \
|
||||
xvfb \
|
||||
wget \
|
||||
zip \
|
||||
zstd
|
||||
|
@ -59,11 +59,20 @@ Build Platforms
|
||||
Windows 2012 x64 DevEdition, ,
|
||||
Windows MinGW, Tom Ritter, "| the Tor project uses MinGW; make sure we test that for them
|
||||
| Only runs on autoland, m-c and m-esr"
|
||||
Android 4.1 API16+, , "| All Android jobs are for GeckoView. Fenix nightly uses m-c, Fenix beta => m-b, Fenix release => m-r and Focus uses m-r.
|
||||
Android 4.0 API16+, , "| All Android jobs are for GeckoView. Fenix nightly uses m-c, Fenix beta => m-b, Fenix release => m-r and Focus uses m-r.
|
||||
| We run these tests in the CI to make sure that GeckoView tests do not regress."
|
||||
Android 4.1 API16+ Beta, Agi Sferro, To ship/test Android 4.1 on arm v7 CPU
|
||||
Android 4.1 API16+ Release, , To ship/test Android 4.1 on arm v7 CPU
|
||||
Android 4.1 API16+ GeckoView multi-arch fat AAR, ,
|
||||
Android 4.0 API16+ Beta, James Willcox (Snorp), To ship/test Android 4.1 on arm v7 CPU
|
||||
Android 4.0 API16+ Release, , To ship/test Android 4.1 on arm v7 CPU
|
||||
Android 4.0 API16+ GeckoView multi-arch fat AAR, ,
|
||||
Android 4.2 x86, ,
|
||||
Android 4.2 x86 Beta, ,
|
||||
Android 4.2 x86 Release, ,
|
||||
Android 4.2 x86, ,
|
||||
Android 4.2 x86 Beta, ,
|
||||
Android 4.2 x86 Release, ,
|
||||
Android 4.3 API16+, ,
|
||||
Android 4.3 API16+ Beta, ,
|
||||
Android 4.3 API16+ Release, ,
|
||||
Android 5.0 AArch64, ,
|
||||
Android 5.0 AArch64 Beta, ,
|
||||
Android 5.0 AArch64 Release, ,
|
||||
|
@ -1,17 +0,0 @@
|
||||
#!/bin/bash -vex
|
||||
|
||||
set -x -e
|
||||
|
||||
echo "running as" $(id)
|
||||
|
||||
set -v
|
||||
|
||||
cd $GECKO_PATH
|
||||
|
||||
. taskcluster/scripts/misc/android-gradle-dependencies/before.sh
|
||||
|
||||
export MOZCONFIG=mobile/android/config/mozconfigs/android-arm-gradle-dependencies/nightly-lite
|
||||
./mach build
|
||||
./mach android gradle-dependencies
|
||||
|
||||
. taskcluster/scripts/misc/android-gradle-dependencies/after.sh
|
@ -1,30 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -x -e -v
|
||||
|
||||
# Initialize XVFB for the AVD
|
||||
. /builds/worker/scripts/xvfb.sh
|
||||
|
||||
cleanup() {
|
||||
local rv=$?
|
||||
cleanup_xvfb
|
||||
exit $rv
|
||||
}
|
||||
trap cleanup EXIT INT
|
||||
|
||||
start_xvfb '1024x768x24' 2
|
||||
|
||||
# This script is for fetching and repacking the Android SDK (for
|
||||
# Linux), the tools required to produce Android packages.
|
||||
|
||||
UPLOAD_DIR=/builds/worker/artifacts/
|
||||
AVD_JSON_CONFIG="$1"
|
||||
|
||||
mkdir -p $HOME/artifacts $UPLOAD_DIR
|
||||
|
||||
# Populate /builds/worker/.mozbuild/android-device
|
||||
cd $GECKO_PATH
|
||||
./mach python python/mozboot/mozboot/android.py --artifact-mode --prewarm-avd --avd-manifest="$AVD_JSON_CONFIG" --no-interactive --list-packages
|
||||
|
||||
tar cavf $UPLOAD_DIR/android-avd-linux.tar.zst -C /builds/worker/.mozbuild android-device
|
||||
|
||||
ls -al $UPLOAD_DIR
|
@ -10,7 +10,7 @@ mkdir -p $HOME/artifacts $UPLOAD_DIR
|
||||
|
||||
# Populate /builds/worker/.mozbuild/android-emulator-linux.
|
||||
cd $GECKO_PATH
|
||||
./mach python python/mozboot/mozboot/android.py --emulator-only --no-interactive --list-packages
|
||||
./mach python python/mozboot/mozboot/android.py --emulator-only --no-interactive
|
||||
|
||||
# Remove extra files we don't need
|
||||
rm -rfv /builds/worker/.mozbuild/android-sdk-linux/tools
|
||||
|
@ -10,7 +10,11 @@ mkdir -p $HOME/artifacts $UPLOAD_DIR
|
||||
|
||||
# Populate /builds/worker/.mozbuild/android-sdk-linux.
|
||||
cd $GECKO_PATH
|
||||
./mach python python/mozboot/mozboot/android.py --artifact-mode --no-interactive --list-packages
|
||||
./mach python python/mozboot/mozboot/android.py --artifact-mode --no-interactive
|
||||
|
||||
# It's nice to have the build logs include the state of the world upon
|
||||
# completion.
|
||||
/builds/worker/.mozbuild/android-sdk-linux/tools/bin/sdkmanager --list
|
||||
|
||||
tar cavf $UPLOAD_DIR/android-sdk-linux.tar.zst -C /builds/worker/.mozbuild android-sdk-linux
|
||||
|
||||
|
@ -1,18 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -x -e -v
|
||||
|
||||
# This script is for fetching and repacking the Android SDK (for
|
||||
# Linux), the tools required to produce Android packages.
|
||||
|
||||
AVD_JSON_CONFIG="$1"
|
||||
UPLOAD_DIR=$HOME/project/gecko/android-system-images
|
||||
|
||||
mkdir -p $HOME/artifacts $UPLOAD_DIR
|
||||
|
||||
# Populate /builds/worker/.mozbuild/android-sdk-linux.
|
||||
cd $GECKO_PATH
|
||||
./mach python python/mozboot/mozboot/android.py --artifact-mode --system-images-only --avd-manifest="$AVD_JSON_CONFIG" --no-interactive --list-packages
|
||||
|
||||
tar cavf $UPLOAD_DIR/android-system-images-linux.tar.zst -C /builds/worker/.mozbuild android-sdk-linux/system-images
|
||||
|
||||
ls -al $UPLOAD_DIR
|
@ -1444,14 +1444,10 @@ def handle_tier(config, tasks):
|
||||
"macosx1015-64-shippable-qr/opt",
|
||||
"macosx1015-64-qr/debug",
|
||||
"android-em-7.0-x86_64-shippable/opt",
|
||||
"android-em-7.0-x86_64-shippable-lite/opt",
|
||||
"android-em-7.0-x86_64/debug",
|
||||
"android-em-7.0-x86_64/debug-isolated-process",
|
||||
"android-em-7.0-x86_64-lite/debug",
|
||||
"android-em-7.0-x86_64/opt",
|
||||
"android-em-7.0-x86_64-lite/opt",
|
||||
"android-em-7.0-x86-shippable/opt",
|
||||
"android-em-7.0-x86-shippable-lite/opt",
|
||||
"android-em-7.0-x86_64-shippable-qr/opt",
|
||||
"android-em-7.0-x86_64-qr/debug",
|
||||
"android-em-7.0-x86_64-qr/opt",
|
||||
|
@ -16,15 +16,10 @@ _ARTIFACT_ID_PER_PLATFORM = {
|
||||
"android-x86_64-opt": "geckoview-default-x86_64",
|
||||
"android-geckoview-fat-aar-opt": "geckoview-default",
|
||||
"android-aarch64-shippable": "geckoview{update_channel}-arm64-v8a",
|
||||
"android-aarch64-shippable-lite": "geckoview{update_channel}-lite-arm64-v8a",
|
||||
"android-arm-shippable": "geckoview{update_channel}-armeabi-v7a",
|
||||
"android-arm-shippable-lite": "geckoview{update_channel}-lite-armeabi-v7a",
|
||||
"android-x86-shippable": "geckoview{update_channel}-x86",
|
||||
"android-x86-shippable-lite": "geckoview{update_channel}-lite-x86",
|
||||
"android-x86_64-shippable": "geckoview{update_channel}-x86_64",
|
||||
"android-x86_64-shippable-lite": "geckoview{update_channel}-lite-x86_64",
|
||||
"android-geckoview-fat-aar-shippable": "geckoview{update_channel}",
|
||||
"android-geckoview-fat-aar-shippable-lite": "geckoview{update_channel}-lite",
|
||||
}
|
||||
|
||||
|
||||
|
@ -0,0 +1,10 @@
|
||||
[
|
||||
{
|
||||
"size": 136624500,
|
||||
"visibility": "public",
|
||||
"digest": "1fcebe172773704aef5f30a9056b68a8b77d42de26270443dfa0f80d629f89b63e4bf47b23e8641f1aec66db38e1c4ff2fd10bf0fe836438cb476a7bd74de36d",
|
||||
"algorithm": "sha512",
|
||||
"filename": "AVDs-armv7a-android-4.3.1_r1-build-2019-01-22.tar.gz",
|
||||
"unpack": true
|
||||
}
|
||||
]
|
@ -0,0 +1,10 @@
|
||||
[
|
||||
{
|
||||
"algorithm": "sha512",
|
||||
"visibility": "public",
|
||||
"filename": "AVDs-armv7a-android-4.3.1_r1-build-2016-08-02_larger_disk.tar.gz",
|
||||
"unpack": true,
|
||||
"digest": "03e2812cfe9cd733a9094900e36a7fa2e67d948e392ec09b84810134ce0662deaf73f784f5d4ba141d19550c6ad5ca19b7e2ba13b0a51f3540c4648e0be499d5",
|
||||
"size": 130163149
|
||||
}
|
||||
]
|
@ -0,0 +1,10 @@
|
||||
[
|
||||
{
|
||||
"size": 408178881,
|
||||
"visibility": "public",
|
||||
"digest": "7d6a138946e4a45d846bc35f362567871cbb473b19baf2c49dd04cd7c35f0e5299cb98a8995be0f0b54a1b4c241110562a7b863225839a5a5a9d75ee0138ba03",
|
||||
"algorithm": "sha512",
|
||||
"filename": "AVDs-arm64v8a-android-7.0-build-2018-06-07.tar.gz",
|
||||
"unpack": true
|
||||
}
|
||||
]
|
@ -0,0 +1,10 @@
|
||||
[
|
||||
{
|
||||
"algorithm": "sha512",
|
||||
"visibility": "public",
|
||||
"filename": "AVDs-x86-android-7.0-build-2019-04-23.tar.gz",
|
||||
"unpack": true,
|
||||
"digest": "3cc03789aabfc692c76e5ae4ebefa7a5628f386df3c9778af2485a49b2401d4ad66301be6c3d116ff7d3ee747e00ce6332381216f55a7253b6b5b600d059baa2",
|
||||
"size": 445250935
|
||||
}
|
||||
]
|
@ -0,0 +1,10 @@
|
||||
[
|
||||
{
|
||||
"algorithm": "sha512",
|
||||
"visibility": "public",
|
||||
"filename": "AVDs-x86-android-7.0-build-2019-04-23.tar.gz",
|
||||
"unpack": true,
|
||||
"digest": "3cc03789aabfc692c76e5ae4ebefa7a5628f386df3c9778af2485a49b2401d4ad66301be6c3d116ff7d3ee747e00ce6332381216f55a7253b6b5b600d059baa2",
|
||||
"size": 445250935
|
||||
}
|
||||
]
|
@ -19,6 +19,7 @@ import time
|
||||
from distutils.spawn import find_executable
|
||||
from enum import Enum
|
||||
|
||||
from mozbuild.base import MozbuildObject
|
||||
from mozdevice import ADBHost, ADBDeviceFactory
|
||||
from six.moves import input, urllib
|
||||
|
||||
@ -83,9 +84,16 @@ class AvdInfo(object):
|
||||
Simple class to contain an AVD description.
|
||||
"""
|
||||
|
||||
def __init__(self, description, name, extra_args, x86):
|
||||
def __init__(
|
||||
self, description, name, tooltool_manifest, toolchain_job, extra_args, x86
|
||||
):
|
||||
assert not (tooltool_manifest and toolchain_job), (
|
||||
"%s: specify manifest or toolchain job, not both" % description
|
||||
)
|
||||
self.description = description
|
||||
self.name = name
|
||||
self.tooltool_manifest = tooltool_manifest
|
||||
self.toolchain_job = toolchain_job
|
||||
self.extra_args = extra_args
|
||||
self.x86 = x86
|
||||
|
||||
@ -97,34 +105,19 @@ class AvdInfo(object):
|
||||
and the parameters for each reflect those used in mozharness.
|
||||
"""
|
||||
AVD_DICT = {
|
||||
"arm": AvdInfo(
|
||||
"Android arm",
|
||||
"mozemulator-armeabi-v7a",
|
||||
[
|
||||
"-skip-adb-auth",
|
||||
"-verbose",
|
||||
"-show-kernel",
|
||||
"-ranchu",
|
||||
"-selinux",
|
||||
"permissive",
|
||||
"-memory",
|
||||
"3072",
|
||||
"-cores",
|
||||
"4",
|
||||
"-skin",
|
||||
"800x1280",
|
||||
"-gpu",
|
||||
"on",
|
||||
"-no-snapstorage",
|
||||
"-no-snapshot",
|
||||
"-prop",
|
||||
"ro.test_harness=true",
|
||||
],
|
||||
"arm-4.3": AvdInfo(
|
||||
"Android 4.3",
|
||||
"mozemulator-4.3",
|
||||
"testing/config/tooltool-manifests/androidarm_4_3/mach-emulator.manifest",
|
||||
None,
|
||||
["-skip-adb-auth", "-verbose", "-show-kernel"],
|
||||
False,
|
||||
),
|
||||
"x86_64": AvdInfo(
|
||||
"Android x86_64",
|
||||
"mozemulator-x86_64",
|
||||
"x86-7.0": AvdInfo(
|
||||
"Android 7.0 x86/x86_64",
|
||||
"mozemulator-x86-7.0",
|
||||
"testing/config/tooltool-manifests/androidx86_7_0/mach-emulator.manifest",
|
||||
None,
|
||||
[
|
||||
"-skip-adb-auth",
|
||||
"-verbose",
|
||||
@ -136,12 +129,6 @@ AVD_DICT = {
|
||||
"3072",
|
||||
"-cores",
|
||||
"4",
|
||||
"-skin",
|
||||
"800x1280",
|
||||
"-prop",
|
||||
"ro.test_harness=true",
|
||||
"-no-snapstorage",
|
||||
"-no-snapshot",
|
||||
],
|
||||
True,
|
||||
),
|
||||
@ -296,8 +283,8 @@ def verify_android_device(
|
||||
).strip()
|
||||
if response.lower().startswith("y") or response == "":
|
||||
if not emulator.check_avd():
|
||||
_log_info("Android AVD not found, please run |mach bootstrap|")
|
||||
return
|
||||
_log_info("Fetching AVD...")
|
||||
emulator.update_avd()
|
||||
_log_info(
|
||||
"Starting emulator running %s..." % emulator.get_avd_description()
|
||||
)
|
||||
@ -544,7 +531,7 @@ class AndroidEmulator(object):
|
||||
emulator = AndroidEmulator()
|
||||
if not emulator.is_running() and emulator.is_available():
|
||||
if not emulator.check_avd():
|
||||
print("Android Emulator AVD not found, please run |mach bootstrap|")
|
||||
emulator.update_avd()
|
||||
emulator.start()
|
||||
emulator.wait_for_start()
|
||||
emulator.wait()
|
||||
@ -594,18 +581,56 @@ class AndroidEmulator(object):
|
||||
found = True
|
||||
return found
|
||||
|
||||
def check_avd(self):
|
||||
def check_avd(self, force=False):
|
||||
"""
|
||||
Determine if the AVD is already installed locally.
|
||||
(This is usually used to determine if update_avd() is likely
|
||||
to require a download.)
|
||||
|
||||
Returns True if the AVD is installed.
|
||||
"""
|
||||
avd = os.path.join(EMULATOR_HOME_DIR, "avd", self.avd_info.name + ".avd")
|
||||
if force and os.path.exists(avd):
|
||||
shutil.rmtree(avd)
|
||||
if os.path.exists(avd):
|
||||
_log_debug("AVD found at %s" % avd)
|
||||
return True
|
||||
return False
|
||||
|
||||
def update_avd(self, force=False):
|
||||
"""
|
||||
If required, update the AVD via tooltool.
|
||||
|
||||
If the AVD directory is not found, or "force" is requested,
|
||||
download the tooltool manifest associated with the AVD and then
|
||||
invoke tooltool.py on the manifest. tooltool.py will download the
|
||||
required archive (unless already present in the local tooltool
|
||||
cache) and install the AVD.
|
||||
"""
|
||||
avd = os.path.join(EMULATOR_HOME_DIR, "avd", self.avd_info.name + ".avd")
|
||||
ini_file = os.path.join(EMULATOR_HOME_DIR, "avd", self.avd_info.name + ".ini")
|
||||
if force and os.path.exists(avd):
|
||||
shutil.rmtree(avd)
|
||||
if force:
|
||||
for f in glob.glob(os.path.join(EMULATOR_HOME_DIR, "AVD*.checksum")):
|
||||
os.remove(f)
|
||||
if not os.path.exists(avd):
|
||||
if os.path.exists(ini_file):
|
||||
os.remove(ini_file)
|
||||
if self.avd_info.tooltool_manifest:
|
||||
path = self.avd_info.tooltool_manifest
|
||||
_get_tooltool_manifest(
|
||||
self.substs, path, EMULATOR_HOME_DIR, "releng.manifest"
|
||||
)
|
||||
_tooltool_fetch(self.substs)
|
||||
elif self.avd_info.toolchain_job:
|
||||
_install_toolchain_artifact(self.avd_info.toolchain_job)
|
||||
else:
|
||||
raise Exception(
|
||||
"either a tooltool manifest or a toolchain job is required"
|
||||
)
|
||||
self._update_avd_paths()
|
||||
|
||||
def start(self, gpu_arg=None):
|
||||
"""
|
||||
Launch the emulator.
|
||||
@ -620,7 +645,6 @@ class AndroidEmulator(object):
|
||||
auth_file.close()
|
||||
|
||||
env = os.environ
|
||||
env["ANDROID_EMULATOR_HOME"] = EMULATOR_HOME_DIR
|
||||
env["ANDROID_AVD_HOME"] = os.path.join(EMULATOR_HOME_DIR, "avd")
|
||||
command = [self.emulator_path, "-avd", self.avd_info.name]
|
||||
override = os.environ.get("MOZ_EMULATOR_COMMAND_ARGS")
|
||||
@ -835,10 +859,10 @@ class AndroidEmulator(object):
|
||||
return requested
|
||||
if self.substs:
|
||||
if not self.substs["TARGET_CPU"].startswith("arm"):
|
||||
return "x86_64"
|
||||
return "x86-7.0"
|
||||
else:
|
||||
return "arm"
|
||||
return "x86_64"
|
||||
return "arm-4.3"
|
||||
return "x86-7.0"
|
||||
|
||||
|
||||
def _find_sdk_exe(substs, exe, tools):
|
||||
@ -988,6 +1012,34 @@ def _tooltool_fetch(substs):
|
||||
_log_warning(str(e))
|
||||
|
||||
|
||||
def _install_toolchain_artifact(toolchain_job, no_unpack=False):
|
||||
build_obj = MozbuildObject.from_environment()
|
||||
mach_binary = os.path.join(build_obj.topsrcdir, "mach")
|
||||
mach_binary = os.path.abspath(mach_binary)
|
||||
if not os.path.exists(mach_binary):
|
||||
raise ValueError("mach not found at %s" % mach_binary)
|
||||
|
||||
# If Python can't figure out what its own executable is, there's little
|
||||
# chance we're going to be able to execute mach on its own, particularly
|
||||
# on Windows.
|
||||
if not sys.executable:
|
||||
raise ValueError("cannot determine path to Python executable")
|
||||
|
||||
cmd = [
|
||||
sys.executable,
|
||||
mach_binary,
|
||||
"artifact",
|
||||
"toolchain",
|
||||
"--from-build",
|
||||
toolchain_job,
|
||||
]
|
||||
|
||||
if no_unpack:
|
||||
cmd += ["--no-unpack"]
|
||||
|
||||
subprocess.check_call(cmd, cwd=EMULATOR_HOME_DIR)
|
||||
|
||||
|
||||
def _get_host_platform():
|
||||
plat = None
|
||||
if "darwin" in str(sys.platform).lower():
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user