Lint: Suppress or fix cpplint2 warnings #397
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
# Compile project on Windows | |
name: Windows | |
on: | |
push: | |
branches: | |
- '**' | |
paths: | |
- "**" | |
- "!.github/**" | |
- ".github/workflows/Windows.yml" | |
pull_request: | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
build: | |
runs-on: ${{ matrix.cudacxx.os }} | |
strategy: | |
fail-fast: false | |
# Multiplicative build matrix | |
# optional exclude: can be partial, include: must be specific | |
matrix: | |
cudacxx: | |
# VS2022 must now use CUDA 12.4 or newer | |
- cuda: "12.4.0" | |
cuda_arch: "50" | |
hostcxx: "Visual Studio 17 2022" | |
os: windows-2022 | |
# VS 2019 for 11.0-12.3 | |
- cuda: "12.0.0" | |
cuda_arch: "50" | |
hostcxx: "Visual Studio 16 2019" | |
os: windows-2019 | |
- cuda: "11.2.0" | |
cuda_arch: "35" | |
hostcxx: "Visual Studio 16 2019" | |
os: windows-2019 | |
config: | |
- name: "Release" | |
config: "Release" | |
# Name the job based on matrix/env options | |
name: "build (${{ matrix.cudacxx.cuda }}, ${{ matrix.config.name }}, ${{ matrix.cudacxx.os }})" | |
# Define job-wide env constants, and promote matrix elements to env constants for portable steps. | |
env: | |
# Define constants | |
BUILD_DIR: "build" | |
BUILD_TESTS: "OFF" | |
# Port matrix options to environment, for more portability. | |
CUDA: ${{ matrix.cudacxx.cuda }} | |
CUDA_ARCH: ${{ matrix.cudacxx.cuda_arch }} | |
HOSTCXX: ${{ matrix.cudacxx.hostcxx }} | |
OS: ${{ matrix.cudacxx.os }} | |
CONFIG: ${{ matrix.config.config }} | |
# Kept for portable steps between this and the main repository. | |
VISUALISATION: "ON" | |
# Ensure MSVC >= 1940 works with CUDA <= 12.3 | |
CUDAFLAGS: -allow-unsupported-compiler | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install CUDA (Windows) | |
if: ${{ runner.os == 'Windows' && env.CUDA != '' }} | |
shell: powershell | |
env: | |
cuda: ${{ env.CUDA }} | |
visual_studio: ${{ env.HOSTCXX }} | |
run: .github\scripts\install_cuda_windows.ps1 | |
- name: Add custom problem matchers for annotations | |
run: echo "::add-matcher::.github/problem-matchers.json" | |
- name: Configure cmake | |
run: > | |
cmake . -B "${{ env.BUILD_DIR }}" | |
-G "${{ env.HOSTCXX }}" -A x64 | |
-Werror=dev | |
-DCMAKE_WARN_DEPRECATED="OFF" | |
-DFLAMEGPU_WARNINGS_AS_ERRORS="ON" | |
-DCMAKE_CUDA_ARCHITECTURES="${{ env.CUDA_ARCH }}" | |
- name: Build | |
working-directory: ${{ env.BUILD_DIR }} | |
run: cmake --build . --config ${{ env.CONFIG }} --target ALL_BUILD --verbose -j `nproc` |