mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 14:27:35 +00:00
CI: Use Azure caching for Lagom build
Adds a compiler cache and a cache for the UCD files.
This commit is contained in:
parent
831f90c9d4
commit
5eba8c948d
3 changed files with 40 additions and 2 deletions
24
Meta/Azure/Caches.yml
Normal file
24
Meta/Azure/Caches.yml
Normal file
|
@ -0,0 +1,24 @@
|
|||
parameters:
|
||||
os: 'Linux'
|
||||
arch: 'i686'
|
||||
toolchain: 'gcc'
|
||||
build_directory: ''
|
||||
ccache_version: 1 # Increment this number if CI has trouble with ccache.
|
||||
|
||||
steps:
|
||||
- task: Cache@2
|
||||
inputs:
|
||||
key: '"ccache" | "${{ parameters.os }}" | "${{ parameters.arch }}" | "${{ parameters.toolchain }}" | "${{ parameters.ccache_version }}"'
|
||||
path: $(CCACHE_DIR)
|
||||
displayName: 'Compiler Cache'
|
||||
|
||||
- task: Cache@2
|
||||
inputs:
|
||||
key: '"unicode_data" | Userland/Libraries/LibUnicode/unicode_data.cmake'
|
||||
path: $(Build.SourcesDirectory)/${{ parameters.build_directory }}/UCD
|
||||
displayName: 'UnicodeData Cache'
|
||||
|
||||
- script: |
|
||||
ccache -M 5G
|
||||
ccache -s
|
||||
displayName: 'Configure ccache'
|
|
@ -6,6 +6,8 @@ jobs:
|
|||
- job: 'Lagom_${{ parameters.os }}'
|
||||
|
||||
variables:
|
||||
- name: CCACHE_DIR
|
||||
value: $(Build.SourcesDirectory)/.ccache
|
||||
- ${{ if eq(parameters.os, 'Linux') }}:
|
||||
- name: job_pool
|
||||
value: ubuntu-20.04
|
||||
|
@ -21,6 +23,13 @@ jobs:
|
|||
parameters:
|
||||
os: '${{ parameters.os }}'
|
||||
|
||||
- template: Caches.yml
|
||||
parameters:
|
||||
os: '${{ parameters.os }}'
|
||||
arch: 'Lagom'
|
||||
toolchain: 'gcc'
|
||||
build_directory: 'Meta/Lagom/Build'
|
||||
|
||||
- script: |
|
||||
mkdir -p Meta/Lagom/Build
|
||||
displayName: 'Create Build Directory'
|
||||
|
@ -28,6 +37,7 @@ jobs:
|
|||
- script: |
|
||||
cmake -GNinja \
|
||||
-DBUILD_LAGOM=ON \
|
||||
-DENABLE_LAGOM_CCACHE=ON \
|
||||
-DINCLUDE_WASM_SPEC_TESTS=ON \
|
||||
-DWASM_SPEC_TEST_SKIP_FORMATTING=ON \
|
||||
-DENABLE_UNDEFINED_SANITIZER=ON \
|
||||
|
@ -57,3 +67,7 @@ jobs:
|
|||
# FIXME: enable detect_stack_use_after_return=1 #7420
|
||||
ASAN_OPTIONS: 'strict_string_checks=1:check_initialization_order=1:strict_init_order=1'
|
||||
UBSAN_OPTIONS: 'print_stacktrace=1:print_summary=1:halt_on_error=1'
|
||||
|
||||
- script: |
|
||||
ccache -s
|
||||
displayName: 'Cache Stats'
|
||||
|
|
|
@ -9,7 +9,7 @@ steps:
|
|||
- script: |
|
||||
sudo apt-get purge -y clang-11
|
||||
sudo apt-get update
|
||||
sudo apt-get install ninja-build
|
||||
sudo apt-get install ninja-build ccache
|
||||
|
||||
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-12 100
|
||||
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-12 100
|
||||
|
@ -21,5 +21,5 @@ steps:
|
|||
|
||||
- ${{ if eq(parameters.os, 'macOS') }}:
|
||||
- script: |
|
||||
brew install ninja wabt
|
||||
brew install ninja wabt ccache
|
||||
displayName: 'Install Dependencies'
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue