зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1412006 - part 3 - add an Android NDK repackaging task; r=dustin,nalexander; f=glandium
We'd like to install the NDK through the Android SDK manager. But we can't pin versions of the NDK with the SDK manager, and so Google can silently upgrade the NDK on us. Since that is undesirable, this is the next best thing. With the toolchain task in hand, we can make all the relevant tasks depend on the toolchain task and remove the download of the NDK from tooltool as well.
This commit is contained in:
Родитель
a65d0b5a21
Коммит
38a5bb5c84
|
@ -1,13 +1,4 @@
|
||||||
[
|
[
|
||||||
{
|
|
||||||
"version": "Android NDK r15c + LLVM",
|
|
||||||
"size": 403602514,
|
|
||||||
"visibility": "internal",
|
|
||||||
"digest": "8515b8f615935e9ee81c1ada55ec46a9ebd46ca095b33bf2bf34d794b7737ffa8f32b4e3f410d3f63e2f2510fef7a5836a72c34b942a0687af8ca5a5d50efdb6",
|
|
||||||
"algorithm": "sha512",
|
|
||||||
"filename": "android-ndk.tar.bz2",
|
|
||||||
"unpack": true
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"size": 6856444,
|
"size": 6856444,
|
||||||
"visibility": "public",
|
"visibility": "public",
|
||||||
|
|
|
@ -1,13 +1,4 @@
|
||||||
[
|
[
|
||||||
{
|
|
||||||
"version": "Android NDK r15c + LLVM",
|
|
||||||
"size": 403602514,
|
|
||||||
"visibility": "internal",
|
|
||||||
"digest": "8515b8f615935e9ee81c1ada55ec46a9ebd46ca095b33bf2bf34d794b7737ffa8f32b4e3f410d3f63e2f2510fef7a5836a72c34b942a0687af8ca5a5d50efdb6",
|
|
||||||
"algorithm": "sha512",
|
|
||||||
"filename": "android-ndk.tar.bz2",
|
|
||||||
"unpack": true
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"size": 6856444,
|
"size": 6856444,
|
||||||
"visibility": "public",
|
"visibility": "public",
|
||||||
|
|
|
@ -39,6 +39,7 @@ android-api-16/debug:
|
||||||
tooltool-downloads: internal
|
tooltool-downloads: internal
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -91,6 +92,7 @@ android-x86/opt:
|
||||||
tooltool-downloads: internal
|
tooltool-downloads: internal
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -149,6 +151,7 @@ android-x86-nightly/opt:
|
||||||
tooltool-downloads: internal
|
tooltool-downloads: internal
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -196,6 +199,7 @@ android-api-16/opt:
|
||||||
tooltool-downloads: internal
|
tooltool-downloads: internal
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -298,6 +302,7 @@ android-api-16-nightly/opt:
|
||||||
tooltool-downloads: internal
|
tooltool-downloads: internal
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -351,6 +356,7 @@ android-x86-old-id/opt:
|
||||||
run-on-projects: ['mozilla-central']
|
run-on-projects: ['mozilla-central']
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -408,6 +414,7 @@ android-x86-old-id-nightly/opt:
|
||||||
run-on-projects: ['mozilla-central']
|
run-on-projects: ['mozilla-central']
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -456,6 +463,7 @@ android-api-16-old-id/opt:
|
||||||
run-on-projects: ['mozilla-central']
|
run-on-projects: ['mozilla-central']
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -508,6 +516,7 @@ android-api-16-old-id-nightly/opt:
|
||||||
run-on-projects: ['mozilla-central']
|
run-on-projects: ['mozilla-central']
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -554,6 +563,7 @@ android-api-16-gradle/opt:
|
||||||
custom-build-variant-cfg: api-16-gradle
|
custom-build-variant-cfg: api-16-gradle
|
||||||
tooltool-downloads: internal
|
tooltool-downloads: internal
|
||||||
toolchains:
|
toolchains:
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -601,6 +611,7 @@ android-aarch64/opt:
|
||||||
tooltool-downloads: internal
|
tooltool-downloads: internal
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
@ -654,6 +665,7 @@ android-aarch64-nightly/opt:
|
||||||
tooltool-downloads: internal
|
tooltool-downloads: internal
|
||||||
toolchains:
|
toolchains:
|
||||||
- android-gradle-dependencies
|
- android-gradle-dependencies
|
||||||
|
- android-ndk-linux
|
||||||
- android-sdk-linux
|
- android-sdk-linux
|
||||||
- linux64-clang
|
- linux64-clang
|
||||||
- linux64-rust-android
|
- linux64-rust-android
|
||||||
|
|
|
@ -301,6 +301,29 @@ linux64-android-sdk-linux-repack:
|
||||||
toolchain-artifact: project/gecko/android-sdk/android-sdk-linux.tar.xz
|
toolchain-artifact: project/gecko/android-sdk/android-sdk-linux.tar.xz
|
||||||
toolchain-alias: android-sdk-linux
|
toolchain-alias: android-sdk-linux
|
||||||
|
|
||||||
|
linux64-android-ndk-linux-repack:
|
||||||
|
description: "Android NDK (Linux) repack toolchain build"
|
||||||
|
treeherder:
|
||||||
|
kind: build
|
||||||
|
platform: toolchains/opt
|
||||||
|
symbol: TL(android-ndk-linux)
|
||||||
|
tier: 1
|
||||||
|
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
|
||||||
|
worker:
|
||||||
|
docker-image: {in-tree: android-build}
|
||||||
|
max-run-time: 1800
|
||||||
|
artifacts:
|
||||||
|
- name: project/gecko/android-ndk
|
||||||
|
path: /builds/worker/project/gecko/android-ndk/
|
||||||
|
type: directory
|
||||||
|
run:
|
||||||
|
using: toolchain-script
|
||||||
|
script: repack-android-ndk-linux.sh
|
||||||
|
resources:
|
||||||
|
- 'python/mozboot/**/*android*'
|
||||||
|
toolchain-artifact: project/gecko/android-ndk/android-ndk.tar.xz
|
||||||
|
toolchain-alias: android-ndk-linux
|
||||||
|
|
||||||
linux64-android-gradle-dependencies:
|
linux64-android-gradle-dependencies:
|
||||||
description: "Android Gradle dependencies toolchain task"
|
description: "Android Gradle dependencies toolchain task"
|
||||||
treeherder:
|
treeherder:
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
#!/bin/bash
|
||||||
|
set -x -e -v
|
||||||
|
|
||||||
|
# This script is for fetching and repacking the Android NDK (for
|
||||||
|
# Linux), the tools required to produce native Android programs.
|
||||||
|
|
||||||
|
WORKSPACE=$HOME/workspace
|
||||||
|
UPLOAD_DIR=$HOME/project/gecko/android-ndk
|
||||||
|
|
||||||
|
mkdir -p $HOME/artifacts $UPLOAD_DIR
|
||||||
|
|
||||||
|
# Populate /builds/worker/.mozbuild/android-ndk-$VER.
|
||||||
|
cd /builds/worker/workspace/build/src
|
||||||
|
./mach python python/mozboot/mozboot/android.py --ndk-only --no-interactive
|
||||||
|
|
||||||
|
# Don't generate a tarball with a versioned NDK directory.
|
||||||
|
mv $HOME/.mozbuild/android-ndk-* $HOME/.mozbuild/android-ndk
|
||||||
|
tar cf - -C /builds/worker/.mozbuild android-ndk | xz > $UPLOAD_DIR/android-ndk.tar.xz
|
||||||
|
|
||||||
|
ls -al $UPLOAD_DIR
|
Загрузка…
Ссылка в новой задаче