support v8-android-jit-nointl-nosnapshot publish #207
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build for Android | |
on: | |
push: | |
workflow_dispatch: | |
env: | |
CACHE_KEY_SUFFIX: v2 | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
variant: [intl, nointl, jit-intl, jit-nointl] | |
external-startup-data: ['snapshot'] | |
include: | |
- variant: jit-nointl | |
external-startup-data: 'nosnapshot' | |
container: | |
image: kudo/ubuntu-nonroot:20.04 | |
env: | |
DEBIAN_FRONTEND: noninteractive | |
TZ: UTC | |
NO_INTL: ${{ contains(matrix.variant, 'nointl') }} | |
NO_JIT: ${{ !contains(matrix.variant, 'jit') }} | |
EXTERNAL_STARTUP_DATA: ${{ matrix.external-startup-data == 'snapshot' }} | |
DEPOT_TOOLS_UPDATE: 0 | |
steps: | |
- name: Setup docker workspace | |
run: | | |
sudo sh -c "chown -R ubuntu $HOME" | |
sudo sh -c "chmod 777 $GITHUB_WORKSPACE" | |
# sudo sh -c "chmod 777 $GITHUB_WORKSPACE/../../_temp" | |
sudo sh -c "chmod 777 /home" | |
- uses: actions/checkout@v3 | |
- name: Setup Ubuntu environment | |
run: | | |
sudo ln -fs /usr/share/zoneinfo/UTC /etc/localtime | |
sudo apt-get update | |
sudo apt-get upgrade -y | |
sudo apt-get install -y apt-utils sudo lsb-core git python nodejs npm wget openjdk-8-jre openjdk-8-jdk | |
- name: Export settings from npm package | |
run: npm run export_npm_env | |
# - uses: actions/cache@v3 | |
# with: | |
# path: v8 | |
# key: android-v8-${{ env.V8_VERSION }}-${{ env.CACHE_KEY_SUFFIX }} | |
- name: Setup V8 build environment | |
run: | | |
scripts/setup.sh -r ${{ env.V8_VERSION }} android | |
sudo apt-get install -y libatomic1-i386-cross && sudo sh -c 'echo "/usr/i686-linux-gnu/lib" >> /etc/ld.so.conf.d/i386-linux-gnu.conf' && sudo ldconfig | |
- name: Patch V8 | |
run: scripts/patch.sh android | |
- name: Build V8 arm | |
run: | | |
scripts/build.sh android arm | |
- name: Build V8 x86 | |
run: | | |
scripts/build.sh android x86 | |
- name: Build V8 arm64 | |
run: | | |
scripts/build.sh android arm64 | |
- name: Build V8 x64 | |
run: | | |
scripts/build.sh android x64 | |
- name: Archive | |
run: | | |
scripts/archive.sh android | |
tar -cvf dist.tar dist | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: dist-${{ matrix.variant }}-${{ matrix.external-startup-data }} | |
path: dist.tar | |
############################################################### | |
# Backup config for triggering variant x arch matrix build | |
# Archiving is not finished yet. | |
# Since actions/cache unable to work well, there will be 4x4 gclient sync. | |
# It's getting a little waste from network bandwidth. | |
# That's the main reason not adopted. | |
############################################################### | |
# jobs: | |
# build-golden: | |
# runs-on: ubuntu-latest | |
# | |
# container: | |
# image: kudo/ubuntu-nonroot:18.04 | |
# env: | |
# DEBIAN_FRONTEND: noninteractive | |
# TZ: UTC | |
# NO_INTL: 0 | |
# NO_JIT: 1 | |
# CACHE_KEY_SUFFIX: v3 | |
# | |
# steps: | |
# - name: Setup docker workspace | |
# run: | | |
# sudo sh -c "chown -R ubuntu $HOME" | |
# sudo sh -c "chmod 777 $GITHUB_WORKSPACE" | |
# sudo sh -c "chmod 777 $GITHUB_WORKSPACE/../../_temp" | |
# sudo sh -c "chmod 777 /home" | |
# | |
# - uses: actions/checkout@v3 | |
# | |
# - name: Setup Ubuntu environment | |
# run: | | |
# sudo ln -fs /usr/share/zoneinfo/UTC /etc/localtime | |
# sudo apt-get update | |
# sudo apt-get upgrade -y | |
# sudo apt-get install -y apt-utils sudo lsb-core git python nodejs npm wget openjdk-8-jre openjdk-8-jdk | |
# | |
# - name: Export settings from npm package | |
# run: npm run export_npm_env | |
# | |
# # - uses: actions/cache@v3 | |
# # id: v8-source-cache | |
# # with: | |
# # path: v8 | |
# # key: android-v8-${{ env.V8_VERSION }}-${{ env.CACHE_KEY_SUFFIX }} | |
# # restore-keys: | | |
# # android-v8- | |
# | |
# - name: Setup V8 build environment | |
# run: | | |
# scripts/setup.sh -r ${{ env.V8_VERSION }} android | |
# sudo apt-get install -y libatomic1-i386-cross && sudo sh -c 'echo "/usr/i686-linux-gnu/lib" >> /etc/ld.so.conf.d/i386-linux-gnu.conf' && sudo ldconfig | |
# | |
# - name: Patch V8 | |
# run: scripts/patch.sh android | |
# | |
# - name: Build V8 arm | |
# run: | | |
# scripts/build.sh android arm | |
# | |
# - uses: actions/upload-artifact@v3 | |
# with: | |
# name: build-intl-arm | |
# path: build | |
# | |
# build-remains: | |
# needs: build-golden | |
# runs-on: ubuntu-latest | |
# | |
# strategy: | |
# matrix: | |
# variant: [intl, nointl, jit-intl, jit-nointl] | |
# arch: [arm, x86, arm64, x64] | |
# exclude: | |
# - variant: intl | |
# arch: arm | |
# | |
# container: | |
# image: kudo/ubuntu-nonroot:18.04 | |
# env: | |
# DEBIAN_FRONTEND: noninteractive | |
# TZ: UTC | |
# NO_INTL: ${{ contains(matrix.variant, 'nointl') && 1 }} | |
# NO_JIT: ${{ !contains(matrix.variant, 'jit' && 1) }} | |
# CACHE_KEY_SUFFIX: v3 | |
# | |
# steps: | |
# - name: Setup docker workspace | |
# run: | | |
# sudo sh -c "chown -R ubuntu $HOME" | |
# sudo sh -c "chmod 777 $GITHUB_WORKSPACE" | |
# sudo sh -c "chmod 777 $GITHUB_WORKSPACE/../../_temp" | |
# sudo sh -c "chmod 777 /home" | |
# | |
# - uses: actions/checkout@v3 | |
# | |
# - name: Setup Ubuntu environment | |
# run: | | |
# sudo ln -fs /usr/share/zoneinfo/UTC /etc/localtime | |
# sudo apt-get update | |
# sudo apt-get upgrade -y | |
# sudo apt-get install -y apt-utils sudo lsb-core git python nodejs npm wget openjdk-8-jre openjdk-8-jdk | |
# | |
# - name: Export settings from npm package | |
# run: npm run export_npm_env | |
# | |
# # - uses: actions/cache@v3 | |
# # id: v8-source-cache | |
# # with: | |
# # path: v8 | |
# # key: android-v8-${{ env.V8_VERSION }}-${{ env.CACHE_KEY_SUFFIX }} | |
# # restore-keys: | | |
# # android-v8- | |
# | |
# - name: Setup V8 build environment | |
# run: | | |
# scripts/setup.sh -r ${{ env.V8_VERSION }} android | |
# sudo apt-get install -y libatomic1-i386-cross && sudo sh -c 'echo "/usr/i686-linux-gnu/lib" >> /etc/ld.so.conf.d/i386-linux-gnu.conf' && sudo ldconfig | |
# | |
# - name: Patch V8 | |
# run: scripts/patch.sh android | |
# | |
# - name: Build V8 arm | |
# run: | | |
# scripts/build.sh android ${{ env.arch }} | |
# | |
# - uses: actions/upload-artifact@v3 | |
# with: | |
# name: build-${{ matrix.variant }}-${{ matrix.arch }} | |
# path: build |