Speed up CI by using ninja and parallel build (#1347)

* chore(CI): speed up CI by using ninja and parallel build

* chore(CI): align compiler for c and cxx

* fix(samples): add dependency to generator

* fix(cmake): get rid of file glob

* chore(CI): use clang on mac

glfw don't support gcc on mac

* fix(sample): add depencency on build_vulkan_hpp

* fix(cmake): make sure every target in tests and samples link to utils
This commit is contained in:
Jinesi Yelizati
2022-07-07 16:22:21 +08:00
committed by GitHub
parent 193c8e4628
commit 9748e47228
27 changed files with 194 additions and 67 deletions

View File

@@ -12,7 +12,12 @@ jobs:
strategy:
matrix:
build_type: [Debug, Release]
cxx_compiler: [g++-9, g++-10, clang++-10, clang++-11, clang++-12]
compiler:
- {cxx: "g++-9", c: "gcc-9"}
- {cxx: "g++-10", c: "gcc-10"}
- {cxx: "clang++-10", c: "clang-10"}
- {cxx: "clang++-11", c: "clang-11"}
- {cxx: "clang++-12", c: "clang-12"}
cxx_standard: [11, 14, 17, 20]
steps:
@@ -23,9 +28,14 @@ jobs:
- name: Update Submodules
run: git submodule update --init --recursive
- name: Install Ninja
uses: ashutoshvarma/setup-ninja@master
with:
version: 1.11.0
- name: Configure CMake
run: cmake -B ${{github.workspace}}/build
run: cmake -B ${{github.workspace}}/build -GNinja
-DSAMPLES_BUILD=ON
-DSAMPLES_BUILD_ONLY_DYNAMIC=ON
-DSAMPLES_BUILD_WITH_LOCAL_VULKAN_HPP=ON
@@ -33,8 +43,10 @@ jobs:
-DTESTS_BUILD_ONLY_DYNAMIC=ON
-DTESTS_BUILD_WITH_LOCAL_VULKAN_HPP=ON
-DVULKAN_HPP_RUN_GENERATOR=ON
-DCMAKE_CXX_COMPILER=${{matrix.cxx_compiler}}
-DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}}
-DCMAKE_C_COMPILER=${{matrix.compiler.c}}
-DCMAKE_CXX_STANDARD=${{matrix.cxx_standard}}
-DCMAKE_BUILD_TYPE=${{matrix.build_type}}
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{matrix.build_type}}
run: cmake --build ${{github.workspace}}/build --parallel