ladybird/Meta/Azure/Caches.yml
Daniel Bertalan d0edf2627c Toolchain+Ports: Split the GCC patches
This shouldn't cause any breaking changes, so a toolchain rebuild is not
required.

As per Hendiadyoin's request, math errno is disabled by default, which
should enable some extra compiler optimizations in LibGL and LibSoftGPU
code that uses math functions heavily.

Co-Authored-By: Ali Mohammad Pur <mpfard@serenityos.org>
2022-05-19 20:17:10 +04:30

77 lines
3.4 KiB
YAML

parameters:
os: 'Linux'
arch: 'i686'
toolchain: 'gcc'
coverage: 'OFF'
build_directory: ''
ccache_version: 1 # Increment this number if CI has trouble with ccache.
serenity_ccache_path: ''
toolchain_ccache_path: ''
toolchain_ccache_size: $(CCACHE_MAXSIZE)
with_remote_data_caches: true
steps:
- script: |
echo "##vso[task.setvariable variable=timestamp]$(date -u +"%Y%m%d%H%M_%S")"
displayName: 'Stamps'
- ${{ if ne(parameters.arch, 'Lagom') }}:
- ${{ if eq(parameters.toolchain, 'clang') }}:
- task: Cache@2
inputs:
key: '"toolchain" | "x86_64" | Toolchain/BuildClang.sh | Toolchain/Patches/llvm/*.patch | Toolchain/CMake/*.cmake | Userland/Libraries/LibC/**/*.h | Userland/Libraries/LibPthread/**/*.h'
path: $(Build.SourcesDirectory)/Toolchain/Cache
displayName: 'Toolchain Prebuilt Cache'
- ${{ if eq(parameters.toolchain, 'gcc') }}:
- task: Cache@2
inputs:
key: '"toolchain" | "${{ parameters.arch }}" | Toolchain/BuildIt.sh | Toolchain/Patches/binutils.patch | Toolchain/Patches/gcc/*.patch | Userland/Libraries/LibC/**/*.h | Userland/Libraries/LibPthread/**/*.h'
path: $(Build.SourcesDirectory)/Toolchain/Cache
displayName: 'Toolchain Prebuilt Cache'
- ${{ if ne(parameters.toolchain_ccache_path, '') }}:
- task: Cache@2
inputs:
key: '"toolchain ccache" | "x86_64" | "${{ parameters.toolchain }}" | "${{ parameters.ccache_version }}" | "$(timestamp)"'
restoreKeys: |
"toolchain ccache" | "x86_64" | "${{ parameters.toolchain }}" | "${{ parameters.ccache_version }}"
path: ${{ parameters.toolchain_ccache_path }}
displayName: 'Toolchain Compiler Cache'
- script: |
CCACHE_DIR=${{ parameters.toolchain_ccache_path }} ccache -M ${{ parameters.toolchain_ccache_size }}
CCACHE_DIR=${{ parameters.toolchain_ccache_path }} ccache -s
displayName: 'Configure Toolchain ccache'
- ${{ if ne(parameters.serenity_ccache_path, '') }}:
- task: Cache@2
inputs:
key: '"ccache" | "${{ parameters.os }}" | "${{ parameters.arch }}" | "${{ parameters.toolchain }}" | "${{ parameters.coverage }}" | "${{ parameters.ccache_version }}" | "$(timestamp)"'
restoreKeys: |
"ccache" | "${{ parameters.os }}" | "${{ parameters.arch }}" | "${{ parameters.toolchain }}" | "${{ parameters.coverage }}" | "${{ parameters.ccache_version }}"
path: ${{ parameters.serenity_ccache_path }}
displayName: 'Serenity Compiler Cache'
- script: |
CCACHE_DIR=${{ parameters.serenity_ccache_path }} ccache -M 5G
CCACHE_DIR=${{ parameters.serenity_ccache_path }} ccache -s
displayName: 'Configure Serenity ccache'
- ${{ if eq(parameters.with_remote_data_caches, true) }}:
- task: Cache@2
inputs:
key: '"time_zone_data" | Meta/CMake/time_zone_data.cmake'
path: $(Build.SourcesDirectory)/${{ parameters.build_directory }}/TZDB
displayName: 'TimeZoneData Cache'
- task: Cache@2
inputs:
key: '"unicode_data" | Meta/CMake/unicode_data.cmake'
path: $(Build.SourcesDirectory)/${{ parameters.build_directory }}/UCD
displayName: 'UnicodeData Cache'
- task: Cache@2
inputs:
key: '"unicode_locale" | Meta/CMake/unicode_data.cmake'
path: $(Build.SourcesDirectory)/${{ parameters.build_directory }}/CLDR
displayName: 'UnicodeLocale Cache'