mirror of
https://github.com/RGBCube/serenity
synced 2025-06-18 05:52:11 +00:00
CI: Build Lagom with fuzzing on Azure
This commit is contained in:
parent
9fd2f97d27
commit
e3d4778a63
2 changed files with 62 additions and 34 deletions
|
@ -1,20 +1,27 @@
|
||||||
parameters:
|
parameters:
|
||||||
os: 'Linux'
|
os: 'Linux'
|
||||||
allow_test_failures: false
|
fuzzer: 'NoFuzz'
|
||||||
|
allow_test_failures: 'NoFuzz'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
- job: 'Lagom_${{ parameters.os }}'
|
- job: 'Lagom_${{ parameters.os }}_${{ parameters.fuzzer }}'
|
||||||
|
|
||||||
variables:
|
variables:
|
||||||
- name: CCACHE_DIR
|
- name: CCACHE_DIR
|
||||||
value: $(Build.SourcesDirectory)/.ccache
|
value: $(Build.SourcesDirectory)/.ccache
|
||||||
- ${{ if eq(parameters.os, 'Linux') }}:
|
|
||||||
- name: job_pool
|
- name: job_pool
|
||||||
|
${{ if eq(parameters.os, 'Linux') }}:
|
||||||
value: ubuntu-20.04
|
value: ubuntu-20.04
|
||||||
- ${{ if eq(parameters.os, 'macOS') }}:
|
${{ if eq(parameters.os, 'macOS') }}:
|
||||||
- name: job_pool
|
|
||||||
value: macos-10.15
|
value: macos-10.15
|
||||||
|
|
||||||
|
- name: toolchain
|
||||||
|
${{ if eq(parameters.fuzzer, 'Fuzz') }}:
|
||||||
|
value: clang
|
||||||
|
${{ if eq(parameters.fuzzer, 'NoFuzz') }}:
|
||||||
|
value: gcc
|
||||||
|
|
||||||
pool:
|
pool:
|
||||||
vmImage: $(job_pool)
|
vmImage: $(job_pool)
|
||||||
|
|
||||||
|
@ -27,46 +34,62 @@ jobs:
|
||||||
parameters:
|
parameters:
|
||||||
os: '${{ parameters.os }}'
|
os: '${{ parameters.os }}'
|
||||||
arch: 'Lagom'
|
arch: 'Lagom'
|
||||||
toolchain: 'gcc'
|
toolchain: '$(toolchain)'
|
||||||
build_directory: 'Meta/Lagom/Build'
|
build_directory: 'Meta/Lagom/Build'
|
||||||
|
|
||||||
- script: |
|
- script: |
|
||||||
mkdir -p Meta/Lagom/Build
|
mkdir -p Meta/Lagom/Build
|
||||||
displayName: 'Create Build Directory'
|
displayName: 'Create Build Directory'
|
||||||
|
|
||||||
- script: |
|
- ${{ if eq(parameters.fuzzer, 'Fuzz') }}:
|
||||||
cmake -GNinja \
|
- script: |
|
||||||
-DBUILD_LAGOM=ON \
|
cmake -GNinja \
|
||||||
-DENABLE_LAGOM_CCACHE=ON \
|
-DBUILD_LAGOM=ON \
|
||||||
-DINCLUDE_WASM_SPEC_TESTS=ON \
|
-DENABLE_LAGOM_CCACHE=ON \
|
||||||
-DWASM_SPEC_TEST_SKIP_FORMATTING=ON \
|
-DENABLE_FUZZER_SANITIZER=ON \
|
||||||
-DENABLE_UNDEFINED_SANITIZER=ON \
|
-DENABLE_ADDRESS_SANITIZER=ON \
|
||||||
-DENABLE_ADDRESS_SANITIZER=ON \
|
-DENABLE_PCI_IDS_DOWNLOAD=OFF \
|
||||||
-DENABLE_PCI_IDS_DOWNLOAD=OFF \
|
-DENABLE_USB_IDS_DOWNLOAD=OFF \
|
||||||
-DENABLE_USB_IDS_DOWNLOAD=OFF \
|
-DCMAKE_C_COMPILER=clang \
|
||||||
-DCMAKE_C_COMPILER=gcc-10 \
|
-DCMAKE_CXX_COMPILER=clang++ \
|
||||||
-DCMAKE_CXX_COMPILER=g++-10 \
|
..
|
||||||
..
|
displayName: 'Create Build Environment'
|
||||||
displayName: 'Create Build Environment'
|
workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom/Build
|
||||||
workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom/Build
|
- ${{ if eq(parameters.fuzzer, 'NoFuzz') }}:
|
||||||
env:
|
- script: |
|
||||||
PATH: '$(PATH):$(Build.SourcesDirectory)/wabt-1.0.23/bin'
|
cmake -GNinja \
|
||||||
|
-DBUILD_LAGOM=ON \
|
||||||
|
-DENABLE_LAGOM_CCACHE=ON \
|
||||||
|
-DINCLUDE_WASM_SPEC_TESTS=ON \
|
||||||
|
-DWASM_SPEC_TEST_SKIP_FORMATTING=ON \
|
||||||
|
-DENABLE_UNDEFINED_SANITIZER=ON \
|
||||||
|
-DENABLE_ADDRESS_SANITIZER=ON \
|
||||||
|
-DENABLE_PCI_IDS_DOWNLOAD=OFF \
|
||||||
|
-DENABLE_USB_IDS_DOWNLOAD=OFF \
|
||||||
|
-DCMAKE_C_COMPILER=gcc-10 \
|
||||||
|
-DCMAKE_CXX_COMPILER=g++-10 \
|
||||||
|
..
|
||||||
|
displayName: 'Create Build Environment'
|
||||||
|
workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom/Build
|
||||||
|
env:
|
||||||
|
PATH: '$(PATH):$(Build.SourcesDirectory)/wabt-1.0.23/bin'
|
||||||
|
|
||||||
- script: |
|
- script: |
|
||||||
cmake --build .
|
cmake --build .
|
||||||
displayName: 'Build'
|
displayName: 'Build'
|
||||||
workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom/Build
|
workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom/Build
|
||||||
|
|
||||||
- script: |
|
- ${{ if eq(parameters.fuzzer, 'NoFuzz') }}:
|
||||||
ninja test || ${{ parameters.allow_test_failures }}
|
- script: |
|
||||||
displayName: 'Test'
|
ninja test || ${{ parameters.allow_test_failures }}
|
||||||
workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom/Build
|
displayName: 'Test'
|
||||||
env:
|
workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom/Build
|
||||||
SERENITY_SOURCE_DIR: '$(Build.SourcesDirectory)'
|
env:
|
||||||
CTEST_OUTPUT_ON_FAILURE: 1
|
SERENITY_SOURCE_DIR: '$(Build.SourcesDirectory)'
|
||||||
# FIXME: enable detect_stack_use_after_return=1 #7420
|
CTEST_OUTPUT_ON_FAILURE: 1
|
||||||
ASAN_OPTIONS: 'strict_string_checks=1:check_initialization_order=1:strict_init_order=1'
|
# FIXME: enable detect_stack_use_after_return=1 #7420
|
||||||
UBSAN_OPTIONS: 'print_stacktrace=1:print_summary=1:halt_on_error=1'
|
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: |
|
- script: |
|
||||||
ccache -s
|
ccache -s
|
||||||
|
|
|
@ -6,6 +6,11 @@ jobs:
|
||||||
parameters:
|
parameters:
|
||||||
os: 'Linux'
|
os: 'Linux'
|
||||||
|
|
||||||
|
- template: Meta/Azure/Lagom.yml
|
||||||
|
parameters:
|
||||||
|
os: 'Linux'
|
||||||
|
fuzzer: 'Fuzz'
|
||||||
|
|
||||||
- template: Meta/Azure/Lagom.yml
|
- template: Meta/Azure/Lagom.yml
|
||||||
parameters:
|
parameters:
|
||||||
os: 'macOS'
|
os: 'macOS'
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue