Skip to content

Update to latest Vulkan-Headers #1058

Update to latest Vulkan-Headers

Update to latest Vulkan-Headers #1058

Workflow file for this run

#!/usr/bin/env python3
# Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
# documentation files (the “Software”), to deal in the Software without restriction, including without
# limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
# of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
# LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
# IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#
# Copyright © 2023 Charles Giessen (charles@lunarg.com)
#
name: CI Build
on: [push, pull_request]
jobs:
linux:
name: Linux
runs-on: ubuntu-latest
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
strategy:
fail-fast: false
matrix:
type: ["Debug", "Release"]
cc: ["gcc", "clang"]
cxx: ["g++", "clang++"]
exclude:
- cc: gcc
cxx: clang++
- cc: clang
cxx: g++
steps:
- uses: actions/checkout@v6
- uses: lukka/get-cmake@latest
with:
cmakeVersion: 3.22
- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y xorg-dev
- name: CMake Configure
run: cmake -S. -B build -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_C_COMPILER=${{matrix.cc}} -DCMAKE_CXX_COMPILER=${{matrix.cxx}} -DVK_BOOTSTRAP_WERROR=ON -DVK_BOOTSTRAP_TEST=ON -DENABLE_ADDRESS_SANITIZER=ON
- name: CMake Build
run: cmake --build build --config ${{matrix.type}}
- name: Install
run: cmake --install build --prefix build/install
- name: Run tests
working-directory: ./build
run: ctest --output-on-failure -C ${{matrix.type}}
linux-thread-sanitizer:
name: Linux with Thread Sanitizer
runs-on: ubuntu-latest
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
strategy:
fail-fast: false
matrix:
type: ["Release"]
cc: ["gcc", "clang"]
cxx: ["g++", "clang++"]
exclude:
- cc: gcc
cxx: clang++
- cc: clang
cxx: g++
steps:
- uses: actions/checkout@v6
- uses: lukka/get-cmake@latest
with:
cmakeVersion: 3.22
- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y xorg-dev
- name: CMake Configure
run: cmake -S. -B build -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_C_COMPILER=${{matrix.cc}} -DCMAKE_CXX_COMPILER=${{matrix.cxx}} -DVK_BOOTSTRAP_WERROR=ON -DVK_BOOTSTRAP_TEST=ON -DENABLE_THREAD_SANITIZER=ON
- name: CMake Build
run: cmake --build build --config ${{matrix.type}}
- name: Install
run: cmake --install build --prefix build/install
- name: Run tests
working-directory: ./build
run: ctest --output-on-failure -C ${{matrix.type}}
windows:
name: Windows
runs-on: windows-latest
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
strategy:
matrix:
arch: [ Win32, x64 ]
type: [ Debug, Release ]
steps:
- uses: actions/checkout@v6
- uses: TheMrMilchmann/setup-msvc-dev@v4
with:
arch: ${{matrix.arch}}
- name: CMake Configure
run: cmake -S. -B build -D CMAKE_BUILD_TYPE=${{matrix.type}} -D VK_BOOTSTRAP_WERROR=ON -D VK_BOOTSTRAP_TEST=ON -D ENABLE_ADDRESS_SANITIZER=ON -A ${{matrix.arch}}
- name: CMake Build
run: cmake --build build --config ${{matrix.type}}
- name: Run tests
working-directory: ./build
run: ctest --output-on-failure -C ${{matrix.type}}
macos:
name: macOS
runs-on: macos-latest
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
strategy:
fail-fast: false
matrix:
type: ["Debug", "Release"]
cc: ["clang"]
cxx: ["clang++"]
steps:
- uses: actions/checkout@v6
- uses: lukka/get-cmake@latest
with:
cmakeVersion: 3.22
- name: Install build dependencies
run: |
brew update
brew install xorg-server
- name: CMake Configure
run: cmake -S. -B build -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_C_COMPILER=${{matrix.cc}} -DCMAKE_CXX_COMPILER=${{matrix.cxx}} -DVK_BOOTSTRAP_WERROR=ON -DVK_BOOTSTRAP_TEST=ON -DENABLE_ADDRESS_SANITIZER=ON
- name: CMake Build
run: cmake --build build --config ${{matrix.type}}
- name: Install
run: cmake --install build --prefix build/install
- name: Run tests
working-directory: ./build
run: ctest --output-on-failure -C ${{matrix.type}}
macos-thread-sanitizer:
name: macOS with Thread Sanitizer
runs-on: macos-latest
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
strategy:
fail-fast: false
matrix:
type: ["Release"]
cc: ["clang"]
cxx: ["clang++"]
steps:
- uses: actions/checkout@v6
- uses: lukka/get-cmake@latest
with:
cmakeVersion: 3.22
- name: Install build dependencies
run: |
brew update
brew install xorg-server
- name: CMake Configure
run: cmake -S. -B build -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_C_COMPILER=${{matrix.cc}} -DCMAKE_CXX_COMPILER=${{matrix.cxx}} -DVK_BOOTSTRAP_WERROR=ON -DVK_BOOTSTRAP_TEST=ON -DENABLE_THREAD_SANITIZER=ON
- name: CMake Build
run: cmake --build build --config ${{matrix.type}}
- name: Install
run: cmake --install build --prefix build/install
- name: Run tests
working-directory: ./build
run: ctest --output-on-failure -C ${{matrix.type}}