Skip to content

CI - Linux x64 clang debug #3

CI - Linux x64 clang debug

CI - Linux x64 clang debug #3

# Copyright 2024 The IREE Authors
#
# Licensed under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
name: CI - Linux x64 clang debug
on:
pull_request:
branches:
- main
paths:
- ".github/workflows/ci_linux_x64_clang_debug.yml"
schedule:
# Weekday mornings at 09:15 UTC = 01:15 PST (UTC - 8).
- cron: "15 9 * * 1-5"
workflow_dispatch:
concurrency:
# A PR number if a pull request and otherwise the commit hash. This cancels
# queued and in-progress runs for the same PR (presubmit) or commit
# (postsubmit). The workflow name is prepended to avoid conflicts between
# different workflows.
group: ${{ github.workflow }}-${{ github.event.number || github.sha }}
cancel-in-progress: true
jobs:
setup:
uses: ./.github/workflows/setup.yml
# This may run out of memory / disk space on standard GitHub-hosted runners,
# so run on self-hosted CPU build runners instead.
linux_x64_clang_debug:
needs: setup
runs-on:
- self-hosted # must come first
- runner-group=${{ needs.setup.outputs.runner-group }}
- environment=${{ needs.setup.outputs.runner-env }}
- cpu
- os-family=Linux
container: ghcr.io/iree-org/cpubuilder_ubuntu_jammy_x86_64@sha256:54d9d17a79caa083aeff1243b27e767df2629b533c26e0b65d41beb160f197e4
defaults:
run:
shell: bash
env:
BUILD_DIR: build-debug
steps:
- name: "Checking out repository"
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
with:
submodules: true
- name: Install Python requirements
run: python3 -m pip install -r ./runtime/bindings/python/iree/runtime/build_requirements.txt
# Note: Not using ccache here. Debug builds need a lot of cache space
# and caching only provides marginal build time improvements.
- name: CMake - configure
run: |
cmake \
-G Ninja \
-B ${BUILD_DIR} \
-DPython3_EXECUTABLE="$(which python3)" \
-DCMAKE_BUILD_TYPE=Debug \
-DIREE_BUILD_PYTHON_BINDINGS=ON \
-DIREE_ENABLE_LLD=ON \
-DIREE_ENABLE_ASSERTIONS=ON
- name: CMake - build
run: cmake --build ${BUILD_DIR} -- -k 0
# We could build `iree-test-deps` or run some unit tests here, but the
# main thing we want coverage for is the build itself and those steps
# would add 10+ minutes to the job.