mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-04-21 20:15:17 +00:00
CI: Add a nightly arm64 linux CI build
This requires setting VCPKG_FORCE_SYSTEM_BINARIES to 1, per vcpkg documentation.
This commit is contained in:
parent
13338a9532
commit
d64566f19e
Notes:
github-actions[bot]
2025-02-21 11:06:31 +00:00
Author: https://github.com/ADKaster Commit: https://github.com/LadybirdBrowser/ladybird/commit/d64566f19ea Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/3321 Reviewed-by: https://github.com/gmta ✅
3 changed files with 51 additions and 3 deletions
9
.github/actions/setup/action.yml
vendored
9
.github/actions/setup/action.yml
vendored
|
@ -40,6 +40,8 @@ runs:
|
|||
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-13 100
|
||||
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-13 100
|
||||
|
||||
# FIXME: https://github.com/WebAssembly/wabt/issues/2533
|
||||
# wabt doesn't have binary releases for arm64 Linux
|
||||
wget https://github.com/WebAssembly/wabt/releases/download/1.0.35/wabt-1.0.35-ubuntu-20.04.tar.gz
|
||||
tar -xzf ./wabt-1.0.35-ubuntu-20.04.tar.gz
|
||||
rm ./wabt-1.0.35-ubuntu-20.04.tar.gz
|
||||
|
@ -59,6 +61,13 @@ runs:
|
|||
brew update
|
||||
brew install autoconf autoconf-archive automake bash ccache coreutils llvm@19 nasm ninja qt unzip wabt
|
||||
|
||||
- name: 'Set required environment variables'
|
||||
if: ${{ inputs.os == 'Linux' && inputs.arch == 'arm64' }}
|
||||
uses: actions/github-script@v7
|
||||
with:
|
||||
script: |
|
||||
core.exportVariable('VCPKG_FORCE_SYSTEM_BINARIES', '1')
|
||||
|
||||
- name: 'Install vcpkg'
|
||||
shell: bash
|
||||
run: ./Toolchain/BuildVcpkg.sh
|
||||
|
|
11
.github/workflows/lagom-template.yml
vendored
11
.github/workflows/lagom-template.yml
vendored
|
@ -82,7 +82,14 @@ jobs:
|
|||
echo "cmake_options=-DENABLE_CLANG_PLUGINS=ON" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "ccache_key=${{ inputs.build_preset }}" >> "$GITHUB_OUTPUT"
|
||||
echo "cmake_options=" >> "$GITHUB_OUTPUT"
|
||||
if ${{ inputs.os_name == 'Linux' && inputs.arch == 'arm64' }} ; then
|
||||
# FIXME: https://github.com/WebAssembly/wabt/issues/2533
|
||||
# wabt doesn't have binary releases for arm64 Linux
|
||||
PKGCONFIG=$(which pkg-config)
|
||||
echo "cmake_options=-DPKG_CONFIG_EXECUTABLE=$PKGCONFIG" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "cmake_options=-DINCLUDE_WASM_SPEC_TESTS=ON -DWASM_SPEC_TEST_SKIP_FORMATTING=ON" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
fi
|
||||
|
||||
- name: Restore Caches
|
||||
|
@ -112,8 +119,6 @@ jobs:
|
|||
working-directory: ${{ github.workspace }}
|
||||
run: |
|
||||
cmake --preset ${{ inputs.build_preset }} -B Build \
|
||||
-DINCLUDE_WASM_SPEC_TESTS=ON \
|
||||
-DWASM_SPEC_TEST_SKIP_FORMATTING=ON \
|
||||
${{ steps.build-parameters.outputs.cmake_options }} \
|
||||
-DPython3_EXECUTABLE=${{ env.pythonLocation }}/bin/python \
|
||||
-DCMAKE_C_COMPILER=${{ steps.build-parameters.outputs.host_cc }} \
|
||||
|
|
34
.github/workflows/nightly-lagom.yml
vendored
Normal file
34
.github/workflows/nightly-lagom.yml
vendored
Normal file
|
@ -0,0 +1,34 @@
|
|||
name: Nightly Lagom
|
||||
|
||||
on:
|
||||
# Automatically run at the end of every day.
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
# CI matrix - runs the job in lagom-template.yml with different configurations.
|
||||
Lagom:
|
||||
if: github.repository == 'LadybirdBrowser/ladybird'
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os_name: ['Linux']
|
||||
os: [ubuntu-24.04-arm]
|
||||
arch: ['arm64']
|
||||
build_preset: ['Sanitizer_CI']
|
||||
toolchain: ['Clang']
|
||||
clang_plugins: [false]
|
||||
|
||||
uses: ./.github/workflows/lagom-template.yml
|
||||
with:
|
||||
toolchain: ${{ matrix.toolchain }}
|
||||
os_name: ${{ matrix.os_name }}
|
||||
os: ${{ matrix.os }}
|
||||
arch: ${{ matrix.arch }}
|
||||
build_preset: ${{ matrix.build_preset }}
|
||||
clang_plugins: ${{ matrix.clang_plugins }}
|
Loading…
Add table
Reference in a new issue