1# Copyright 2022-2023 LunarG, Inc. 2# 3# SPDX-License-Identifier: Apache-2.0 4 5name: ci 6 7on: 8 push: 9 pull_request: 10 branches: 11 - main 12 13env: 14 CMAKE_GENERATOR: Ninja 15 16permissions: 17 contents: read 18 19jobs: 20 ubuntu-cmake-install: 21 runs-on: ubuntu-latest 22 steps: 23 - uses: actions/checkout@v3 24 - uses: lukka/get-cmake@latest 25 with: 26 cmakeVersion: 3.17.0 27 - name: Configure Vulkan-Headers 28 run: cmake -S . -B build 29 - name: Install Vulkan-Headers 30 run: cmake --install build --prefix ${{ github.workspace }}/build/install 31 - name: Test Vulkan-Headers find_package support 32 run: cmake -S tests/find_package -B build/tests/find_package -D CMAKE_PREFIX_PATH=${{ github.workspace }}/build/install 33 34 ubuntu-cmake-tests: 35 runs-on: ubuntu-latest 36 steps: 37 - uses: actions/checkout@v3 38 - uses: lukka/get-cmake@latest 39 with: 40 cmakeVersion: 3.25.0 41 - name: Configure Vulkan-Headers 42 run: cmake -S . -B build -D BUILD_TESTS=ON --log-level=DEBUG 43 - name: Build Vulkan-Headers Tests 44 run: cmake --build build 45 46 windows-cmake-tests: 47 runs-on: windows-latest 48 strategy: 49 matrix: 50 arch: [ amd64, amd64_x86 ] 51 steps: 52 - uses: actions/checkout@v3 53 - uses: lukka/get-cmake@latest 54 - uses: ilammy/msvc-dev-cmd@v1 55 with: 56 arch: ${{ matrix.arch }} 57 - name: Configure Vulkan-Headers 58 run: cmake -S . -B build -D BUILD_TESTS=ON --log-level=DEBUG 59 - name: Build Vulkan-Headers Tests 60 run: cmake --build build 61 62 test-cmake-minimum: 63 runs-on: ubuntu-latest 64 steps: 65 - uses: actions/checkout@v3 66 - uses: lukka/get-cmake@latest 67 with: 68 cmakeVersion: 3.15.0 69 - name: Configure Vulkan-Headers 70 run: cmake -S . -B build/ --loglevel=DEBUG 71 - name: Install Vulkan-Headers 72 run: cmake --install build/ --prefix build/install 73 74 ubuntu-cmake-add_subdirectory: 75 runs-on: ubuntu-latest 76 steps: 77 - uses: actions/checkout@v3 78 - uses: lukka/get-cmake@latest 79 - name: Test add_subdirectory support 80 run: cmake -S tests/add_subdirectory -B tests/add_subdirectory/build 81 - name: Build 82 run: cmake --build tests/add_subdirectory/build 83 84 reuse: 85 runs-on: ubuntu-latest 86 steps: 87 - uses: actions/checkout@v3 88 - name: REUSE Compliance Check 89 uses: fsfe/reuse-action@v1 90