Skip to content

tests: Read property instead of using number #226

tests: Read property instead of using number

tests: Read property instead of using number #226

Workflow file for this run

# Copyright (c) 2023 Valve Corporation
# Copyright (c) 2023 LunarG, Inc.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: ci
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
on:
push:
pull_request:
branches:
- main
env:
CMAKE_GENERATOR: Ninja
permissions:
contents: read
jobs:
linux:
runs-on: ${{ matrix.os }}
strategy:
matrix:
compiler: [{cc: gcc, cxx: g++}]
config: [debug, release]
os: [ubuntu-22.04]
include:
# Test Ubuntu-20.04 release build works.
- os: ubuntu-20.04
compiler: {cc: gcc, cxx: g++}
config: release
# Test clang support
- os: ubuntu-22.04
compiler: {cc: clang, cxx: clang++}
config: release
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.8'
- uses: lukka/get-cmake@latest
with:
cmakeVersion: 3.17.2
- name: Install build dependencies
run: |
python -m pip install jsonschema pyparsing
sudo apt-get -qq update
sudo apt-get install -y libwayland-dev xorg-dev
- name: Setup ccache
uses: hendrikmuhs/[email protected]
with:
key: ${{ matrix.os }}-${{ matrix.config }}-${{ matrix.compiler.cc }}-${{ matrix.compiler.cxx }}
- name: Build Vulkan-ExtensionLayer
run: python scripts/github_ci_build_desktop.py --config ${{ matrix.config }}
env:
CC: ${{ matrix.compiler.cc }}
CXX: ${{ matrix.compiler.cxx }}
CMAKE_C_COMPILER_LAUNCHER: ccache
CMAKE_CXX_COMPILER_LAUNCHER: ccache
- name: Verify generated code is up to date
run: python scripts/github_ci_check_codegen.py
if: matrix.compiler.cc == 'gcc' && matrix.config == 'release'
windows:
runs-on: windows-latest
strategy:
matrix:
arch: [ amd64, amd64_x86 ]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.8'
- uses: ilammy/msvc-dev-cmd@v1
with:
arch: ${{ matrix.arch }}
- name: Install build dependencies
run: python -m pip install jsonschema pyparsing
- name: Build Vulkan-ExtensionLayer
run: python scripts/github_ci_build_desktop.py --config release
macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.8'
- uses: lukka/get-cmake@latest
- name: Setup ccache
uses: hendrikmuhs/[email protected]
with:
key: macos-ccache
- name: Configure
run: cmake -S. -B build -D CMAKE_BUILD_TYPE=Release -D BUILD_TESTS=ON -D BUILD_WERROR=ON -D UPDATE_DEPS=ON
env:
MACOSX_DEPLOYMENT_TARGET: 10.15
CMAKE_C_COMPILER_LAUNCHER: ccache
CMAKE_CXX_COMPILER_LAUNCHER: ccache
- name: Build
run: cmake --build build
- name: Install
run: cmake --install build --prefix build/install
android_cmake:
runs-on: ubuntu-22.04
strategy:
matrix:
abi: [ arm64-v8a ]
build_tests: [ "ON" ]
stl_type: ["c++_shared"]
include:
- abi: armeabi-v7a
build_tests: "OFF"
stl_type: c++_static
steps:
- uses: actions/checkout@v3
- uses: lukka/get-cmake@latest
- name: Setup ccache
uses: hendrikmuhs/[email protected]
with:
key: android-${{ matrix.abi }}-${{ matrix.build_tests }}-${{ matrix.stl_type }}
- name: Configure
run: |
cmake -S . -B build/ --toolchain $ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake \
-D ANDROID_PLATFORM=26 \
-D CMAKE_ANDROID_ARCH_ABI=${{ matrix.abi }} \
-D CMAKE_ANDROID_STL_TYPE=${{ matrix.stl_type }} \
-D ANDROID_USE_LEGACY_TOOLCHAIN_FILE=NO \
-D CMAKE_BUILD_TYPE=Debug \
-D BUILD_TESTS=${{ matrix.build_tests }} \
-D UPDATE_DEPS=ON \
-D BUILD_WERROR=ON
env:
CMAKE_C_COMPILER_LAUNCHER: ccache
CMAKE_CXX_COMPILER_LAUNCHER: ccache
- name: Build
run: cmake --build build/
- name: Install
run: cmake --install build --prefix build/install