add a debug nvhpc build to the test matrix (#1051) #6
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI (CPU) | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
concurrency: | |
group: ${{ github.workflow }}-on-${{ github.event_name }}-from-${{ github.ref_name }} | |
cancel-in-progress: true | |
jobs: | |
build-cpu: | |
runs-on: ubuntu-latest | |
name: ${{ matrix.name }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- { compiler: clang, version: "12", build: "Debug", os: ubuntu20.04, name: "CPU (clang 12, Debug, ubuntu 20.04)", cxxflags: "-stdlib=libc++" } | |
- { compiler: clang, version: "12", build: "Release", os: ubuntu20.04, name: "CPU (clang 12, Release, ubuntu 20.04)", cxxflags: "-stdlib=libc++" } | |
- { compiler: gcc, version: "11", build: "Debug", os: ubuntu20.04, name: "CPU (gcc 11, Debug, ubuntu 20.04)", cxxflags: "", } | |
- { compiler: gcc, version: "11", build: "Release", os: ubuntu20.04, name: "CPU (gcc 11, Release, ubuntu 20.04)", cxxflags: "", } | |
- { compiler: gcc, version: "11", build: "Release", os: ubuntu22.04, name: "CPU (gcc 11, Release, ubuntu 22.04, TSAN)", cxxflags: "-fsanitize=thread" } | |
- { compiler: gcc, version: "11", build: "Release", os: ubuntu22.04, name: "CPU (gcc 11, Release, ubuntu 22.04, ASAN)", cxxflags: "-fsanitize=address" } | |
container: | |
options: --entrypoint /bin/bash | |
image: ghcr.io/trxcllnt/action-cxx-toolkit:${{ matrix.compiler }}${{ matrix.version }}-${{ matrix.os }} | |
steps: | |
- name: Checkout stdexec | |
uses: actions/checkout@v3 | |
with: | |
persist-credentials: false | |
- name: Build and test CPU schedulers | |
run: exec /usr/local/bin/entrypoint.py | |
shell: bash --noprofile --norc -eo pipefail {0} | |
env: | |
INPUT_CHECKS: "build test" | |
INPUT_CXXFLAGS: "${{ matrix.cxxflags }}" | |
INPUT_CMAKEFLAGS: "-DSTDEXEC_ENABLE_TBB:BOOL=${{ !contains(matrix.cxxflags, '-fsanitize') }} -DCMAKE_BUILD_TYPE:STRING=${{ matrix.build }}" | |
INPUT_CC: "${{ matrix.compiler }}-${{ matrix.version }}" | |
INPUT_PREBUILD_COMMAND: | | |
apt update && apt install -y --no-install-recommends git libtbb-dev; | |
ci-cpu: | |
runs-on: ubuntu-latest | |
name: CI (CPU) | |
needs: | |
- build-cpu | |
steps: | |
- run: echo "CI (CPU) success" | |
build-cpu-windows: | |
runs-on: windows-latest | |
name: ${{ matrix.name }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- { compiler: "cl", build: "Debug", name: "CPU (Windows) (msvc, Debug)" } | |
- { compiler: "cl", build: "Release", name: "CPU (Windows) (msvc, Release)" } | |
#- { compiler: "clang++", build: "Debug", name: "CPU (Windows) (clang, Debug)" } | |
#- { compiler: "clang++", build: "Release", name: "CPU (Windows) (clang, Release)" } | |
#- { compiler: "clang-cl", build: "Debug", name: "CPU (Windows) (clang-cl, Debug)" } | |
#- { compiler: "clang-cl", build: "Release", name: "CPU (Windows) (clang-cl, Release)" } | |
steps: | |
- name: Checkout stdexec (Windows) | |
uses: actions/checkout@v3 | |
with: | |
persist-credentials: false | |
- name: Build and test CPU schedulers (Windows) | |
shell: pwsh | |
run: .github/workflows/test-windows.ps1 -Compiler '${{ matrix.compiler }}' -Config '${{ matrix.build }}' | |
ci-cpu-windows: | |
runs-on: windows-latest | |
name: CI (CPU) (Windows) | |
needs: | |
- build-cpu-windows | |
steps: | |
- run: echo "CI (CPU) (Windows) success" |