test: add github actions for linux builds

This commit is contained in:
Charles Giessen 2021-03-01 12:07:58 -07:00 committed by Charles Giessen
parent 55b0e4e4ad
commit 860389249f

61
.github/workflows/ci_build.yml vendored Normal file
View File

@ -0,0 +1,61 @@
#!/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 © 2021 Charles Giessen (charles@lunarg.com)
#
name: CI Build
on: [push, pull_request]
jobs:
linux-build:
name: ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
strategy:
fail-fast: false
matrix:
config:
- {
name: "Ubuntu GCC Debug",
os: ubuntu-latest,
type: "debug",
build_dir: "build",
cc: "gcc", cxx: "g++"
}
- {
name: "Ubuntu Clang Debug",
os: ubuntu-latest,
type: "debug",
build_dir: "build",
cc: "clang", cxx: "clang++"
}
steps:
- name: Checkout
uses: actions/checkout@v2.0.0
- name: Install build dependencies
run: |
wget -qO - https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo apt-key add -
sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-bionic.list https://packages.lunarg.com/vulkan/lunarg-vulkan-bionic.list
sudo apt-get -qq update
sudo apt-get install -y vulkan-headers libvulkan-dev xorg-dev
- name: CMake Configure
run: cmake -Bbuild -DVK_BOOTSTRAP_TEST=ON -DCMAKE_BUILD_TYPE=Debug
- name: CMake Build
run: cmake --build build