diff options
author | Andrew Kaster <akaster@serenityos.org> | 2022-02-19 16:09:40 -0700 |
---|---|---|
committer | Linus Groh <mail@linusgroh.de> | 2022-02-20 19:04:59 +0000 |
commit | 0c95d9962cbae11e9c26ba0984dc6080bf1b93a5 (patch) | |
tree | 9f216413f8b3778954c5eaed2394560a53537d7f /Meta/Azure/Lagom.yml | |
parent | bfa4bc6f2d415a3ffebfd6043df4a7d2256a5144 (diff) | |
download | serenity-0c95d9962cbae11e9c26ba0984dc6080bf1b93a5.zip |
Lagom: Add two-stage build for Fuzzers to enable fuzzing generated code
This allows us to fuzz the generated unicode and timezone database
helpers, and to fuzz things like LibJS using Fuzzilli to get proper
coverage of our unicode handling code.
Update the Azure CI to use the new two-stage build as well, and cleanup
some unused CMake options there.
Diffstat (limited to 'Meta/Azure/Lagom.yml')
-rw-r--r-- | Meta/Azure/Lagom.yml | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/Meta/Azure/Lagom.yml b/Meta/Azure/Lagom.yml index 5366468612..5fbe64de1e 100644 --- a/Meta/Azure/Lagom.yml +++ b/Meta/Azure/Lagom.yml @@ -43,42 +43,38 @@ jobs: ${{ if eq(parameters.fuzzer, 'NoFuzz') }}: with_remote_data_caches: true - - script: | - mkdir -p Meta/Lagom/Build - displayName: 'Create Build Directory' - - ${{ if eq(parameters.fuzzer, 'Fuzz') }}: - script: | - cmake -GNinja \ + cmake -GNinja -B tools-build \ + -DBUILD_LAGOM=OFF \ + -DENABLE_LAGOM_CCACHE=ON \ + -DCMAKE_INSTALL_PREFIX=tool-install + ninja -C tools-build install + cmake -GNinja -B Build \ -DBUILD_LAGOM=ON \ -DENABLE_LAGOM_CCACHE=ON \ -DENABLE_FUZZER_SANITIZER=ON \ -DENABLE_ADDRESS_SANITIZER=ON \ - -DENABLE_PCI_IDS_DOWNLOAD=OFF \ - -DENABLE_USB_IDS_DOWNLOAD=OFF \ -DCMAKE_C_COMPILER=clang \ -DCMAKE_CXX_COMPILER=clang++ \ - .. + -DCMAKE_PREFIX_PATH=tool-install displayName: 'Create Build Environment' - workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom/Build + workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom env: CCACHE_DIR: '$(SERENITY_CCACHE_DIR)' - ${{ if eq(parameters.fuzzer, 'NoFuzz') }}: - script: | - cmake -GNinja \ + cmake -GNinja -B Build \ -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-11 \ - -DCMAKE_CXX_COMPILER=g++-11 \ - .. + -DCMAKE_CXX_COMPILER=g++-11 displayName: 'Create Build Environment' - workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom/Build + workingDirectory: $(Build.SourcesDirectory)/Meta/Lagom env: PATH: '$(PATH):$(Build.SourcesDirectory)/wabt-1.0.23/bin' CCACHE_DIR: '$(SERENITY_CCACHE_DIR)' |