From e81c37c4498d7e49d6775028f869d0dbe5a674b3 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 10:30:28 -0700 Subject: [PATCH 01/19] Create go.yml workflow --- .github/workflows/go.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/workflows/go.yml diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml new file mode 100644 index 00000000000..80e3e676d1e --- /dev/null +++ b/.github/workflows/go.yml @@ -0,0 +1,28 @@ +# This workflow will build a golang project +# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go + +name: Go + +on: + push: + branches: [ "workflows" ] + pull_request: + branches: [ "workflows" ] + +jobs: + + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + + - name: Set up Go + uses: actions/setup-go@v4 + with: + go-version: '1.18' + + - name: Build + run: go build -v ./... + + - name: Test + run: go test -v ./... From d4f291a1dcebc9acc09616d96bbfef6afb222082 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 11:02:57 -0700 Subject: [PATCH 02/19] Create cmake.yml workflow --- .github/workflows/cmake.yml | 84 +++++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 .github/workflows/cmake.yml diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml new file mode 100644 index 00000000000..bc43be16201 --- /dev/null +++ b/.github/workflows/cmake.yml @@ -0,0 +1,84 @@ +name: CMake build + +on: + push: + branches: [ "workflows" ] + pull_request: + branches: [ "workflows" ] + +jobs: + build: + runs-on: ${{ matrix.os }} + + strategy: + # Set fail-fast to false to ensure that feedback is delivered for all matrix combinations. Consider changing this to true when your workflow is stable. + fail-fast: false + + # Set up a matrix to run the following 3 configurations: + # 1. + # 2. + # 3. + # 4. + # + # To add more build types (Release, Debug, RelWithDebInfo, etc.) customize the build_type list. + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + build_type: [Release] + c_compiler: [gcc, clang, cl] + python-version: ["3.11"] + include: + - os: windows-latest + c_compiler: cl + cpp_compiler: cl + - os: ubuntu-latest + c_compiler: gcc + cpp_compiler: g++ + - os: ubuntu-latest + c_compiler: clang + cpp_compiler: clang++ + - os: macos-latest + c_compiler: clang + cpp_compiler: clang++ + exclude: + - os: windows-latest + c_compiler: gcc + - os: windows-latest + c_compiler: clang + - os: ubuntu-latest + c_compiler: cl + - os: macos-latest + c_compiler: gcc + - os: macos-latest + c_compiler: cl + + steps: + - uses: actions/checkout@v3 + + - name: Set reusable strings + # Turn repeated input strings (such as the build output directory) into step outputs. These step outputs can be used throughout the workflow file. + id: strings + shell: bash + run: | + echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python-version }} + + - name: Fetch dependencies + run: python ./tools/fetch_dawn_dependencies.py + + - name: Configure CMake + # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. + # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: > + cmake -B ${{ steps.strings.outputs.build-output-dir }} + -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} + -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} + -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} + -S ${{ github.workspace }} + + - name: Build + # Build your program with the given configuration. Note that --config is needed because the default Windows generator is a multi-config generator (Visual Studio generator). + run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }} From 130fbfc2bfa8f126de4725adf50821413e57ec72 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 11:10:31 -0700 Subject: [PATCH 03/19] Update cmake.yml to fetch test deps and shallow clone --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index bc43be16201..0b7f1547c76 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -67,7 +67,7 @@ jobs: python-version: ${{ matrix.python-version }} - name: Fetch dependencies - run: python ./tools/fetch_dawn_dependencies.py + run: python ./tools/fetch_dawn_dependencies.py --use-test-deps --shallow - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. From df504c9dd5356b1939e1751d794bebc3a71da78d Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 11:16:09 -0700 Subject: [PATCH 04/19] Update cmake.yml: install ubuntu build dependences --- .github/workflows/cmake.yml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 0b7f1547c76..15a5830f9bc 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -59,7 +59,13 @@ jobs: id: strings shell: bash run: | - echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" + echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT + + - name: Install Ubuntu build dependencies + if: matrix.os == 'ubuntu-latest + run: | + sudo apt update + sudo apt install libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxext-dev wayland-protocols libwayland-dev libxkbcommon-dev - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v4 From 25653854b15b483b4aaaed179d5e42414fc1ff41 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 11:17:10 -0700 Subject: [PATCH 05/19] Update cmake.yml: fix missing quote --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 15a5830f9bc..e004042ff9e 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -62,7 +62,7 @@ jobs: echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT - name: Install Ubuntu build dependencies - if: matrix.os == 'ubuntu-latest + if: matrix.os == 'ubuntu-latest' run: | sudo apt update sudo apt install libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxext-dev wayland-protocols libwayland-dev libxkbcommon-dev From e697e6316394f0591b5dba736d5e926d07c107d4 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 11:20:07 -0700 Subject: [PATCH 06/19] Update cmake.yml: fix another missing quote --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index e004042ff9e..f8960d48a8e 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -59,7 +59,7 @@ jobs: id: strings shell: bash run: | - echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT + echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" - name: Install Ubuntu build dependencies if: matrix.os == 'ubuntu-latest' From 41e67b7e48c99191d93fb4fe632cb8571cb3c3a7 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 11:46:02 -0700 Subject: [PATCH 07/19] Update cmake.yml: use Ninja generator --- .github/workflows/cmake.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index f8960d48a8e..32ce0503bfc 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -75,11 +75,14 @@ jobs: - name: Fetch dependencies run: python ./tools/fetch_dawn_dependencies.py --use-test-deps --shallow + - name: Set up Ninja + uses: seanmiddleditch/gha-setup-ninja@master + - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type run: > - cmake -B ${{ steps.strings.outputs.build-output-dir }} + cmake -G Ninja -B ${{ steps.strings.outputs.build-output-dir }} -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} From 96049dd11bcac838161199f6f7fdf7b4674dc4c2 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 11:59:01 -0700 Subject: [PATCH 08/19] Update cmake.yml: setup visual studio environment --- .github/workflows/cmake.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 32ce0503bfc..948f7225085 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -78,6 +78,11 @@ jobs: - name: Set up Ninja uses: seanmiddleditch/gha-setup-ninja@master + - name: Set up Visual Studio x64 environment + if: matrix.is == 'windows-latest' + run: | + call "C:/Program Files (x86)/Microsoft Visual Studio/2022/Enterprise/VC/Auxiliary/Build/vcvarsall.bat" x64 + - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type From 49f02aec2975858e0ac49bc1bdbc66cd36ba8ecc Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 12:01:28 -0700 Subject: [PATCH 09/19] Update cmake.yml: fix "matrix.os" --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 948f7225085..d300cd23438 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -79,7 +79,7 @@ jobs: uses: seanmiddleditch/gha-setup-ninja@master - name: Set up Visual Studio x64 environment - if: matrix.is == 'windows-latest' + if: matrix.os == 'windows-latest' run: | call "C:/Program Files (x86)/Microsoft Visual Studio/2022/Enterprise/VC/Auxiliary/Build/vcvarsall.bat" x64 From 1a606fdf0b6f07f1562e7f310428e6851176f0e6 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 12:07:44 -0700 Subject: [PATCH 10/19] Update cmake.yml: use cmd.exe to set visual studio vars --- .github/workflows/cmake.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index d300cd23438..dbfdfa612cd 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -80,6 +80,7 @@ jobs: - name: Set up Visual Studio x64 environment if: matrix.os == 'windows-latest' + shell: cmd run: | call "C:/Program Files (x86)/Microsoft Visual Studio/2022/Enterprise/VC/Auxiliary/Build/vcvarsall.bat" x64 From fa912ec80c8fbe9ca4e854ec62ae2f6c0a669507 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 12:22:54 -0700 Subject: [PATCH 11/19] Update cmake.yml: Set up Visual Studio environment v2 --- .github/workflows/cmake.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index dbfdfa612cd..f62bd984ee0 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -78,11 +78,9 @@ jobs: - name: Set up Ninja uses: seanmiddleditch/gha-setup-ninja@master - - name: Set up Visual Studio x64 environment + - name: Set up Visual Studio environment if: matrix.os == 'windows-latest' - shell: cmd - run: | - call "C:/Program Files (x86)/Microsoft Visual Studio/2022/Enterprise/VC/Auxiliary/Build/vcvarsall.bat" x64 + uses: seanmiddleditch/gha-setup-vsdevenv@master - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. From a1d9fbe305ac368b706108f82d3500a4897aec45 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 12:46:33 -0700 Subject: [PATCH 12/19] Update cmake.yml: add sccache --- .github/workflows/cmake.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index f62bd984ee0..9e7ed98fbfd 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -82,6 +82,9 @@ jobs: if: matrix.os == 'windows-latest' uses: seanmiddleditch/gha-setup-vsdevenv@master + - name: Setup sccache + uses: mozilla-actions/sccache-action@v0.0.3 + - name: Configure CMake # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type @@ -90,8 +93,14 @@ jobs: -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} + -DCMAKE_C_COMPILER_LAUNCHER=sccache + -DCMAKE_CXX_COMPILER_LAUNCHER=sccache -S ${{ github.workspace }} + env: + SCCACHE_GHA_ENABLED: "true" - name: Build # Build your program with the given configuration. Note that --config is needed because the default Windows generator is a multi-config generator (Visual Studio generator). run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }} + env: + SCCACHE_GHA_ENABLED: "true" From 299e8587eb301d352e70580197c3dc5cd1a67c30 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 13:50:55 -0700 Subject: [PATCH 13/19] Update cmake.yml: add build of dawn.node --- .github/workflows/cmake.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 9e7ed98fbfd..564a31f9c4f 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -60,6 +60,7 @@ jobs: shell: bash run: | echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" + echo "build-node-output-dir=${{ github.workspace }}/build-node" >> "$GITHUB_OUTPUT" - name: Install Ubuntu build dependencies if: matrix.os == 'ubuntu-latest' @@ -104,3 +105,25 @@ jobs: run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }} env: SCCACHE_GHA_ENABLED: "true" + + - name: Configure CMake for dawn.node + # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. + # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type + run: > + cmake -G Ninja -B ${{ steps.strings.outputs.build-node-output-dir }} + -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} + -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} + -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} + -DCMAKE_C_COMPILER_LAUNCHER=sccache + -DCMAKE_CXX_COMPILER_LAUNCHER=sccache + -DDAWN_BUILD_NODE_BINDINGS=1 + -DDAWN_ENABLE_PIC=1 + -S ${{ github.workspace }} + env: + SCCACHE_GHA_ENABLED: "true" + + - name: Build dawn.node + # Build your program with the given configuration. Note that --config is needed because the default Windows generator is a multi-config generator (Visual Studio generator). + run: cmake --build ${{ steps.strings.outputs.build-node-output-dir }} --config ${{ matrix.build_type }} dawn.node + env: + SCCACHE_GHA_ENABLED: "true" From 0535ccd194f083b8de2f8a5d5dedcb75a1d41252 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 14:05:28 -0700 Subject: [PATCH 14/19] Update cmake.yml: delete dawn.node build required deps not in fetch_dawn_dependencies.py yet --- .github/workflows/cmake.yml | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 564a31f9c4f..9e7ed98fbfd 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -60,7 +60,6 @@ jobs: shell: bash run: | echo "build-output-dir=${{ github.workspace }}/build" >> "$GITHUB_OUTPUT" - echo "build-node-output-dir=${{ github.workspace }}/build-node" >> "$GITHUB_OUTPUT" - name: Install Ubuntu build dependencies if: matrix.os == 'ubuntu-latest' @@ -105,25 +104,3 @@ jobs: run: cmake --build ${{ steps.strings.outputs.build-output-dir }} --config ${{ matrix.build_type }} env: SCCACHE_GHA_ENABLED: "true" - - - name: Configure CMake for dawn.node - # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make. - # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type - run: > - cmake -G Ninja -B ${{ steps.strings.outputs.build-node-output-dir }} - -DCMAKE_CXX_COMPILER=${{ matrix.cpp_compiler }} - -DCMAKE_C_COMPILER=${{ matrix.c_compiler }} - -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} - -DCMAKE_C_COMPILER_LAUNCHER=sccache - -DCMAKE_CXX_COMPILER_LAUNCHER=sccache - -DDAWN_BUILD_NODE_BINDINGS=1 - -DDAWN_ENABLE_PIC=1 - -S ${{ github.workspace }} - env: - SCCACHE_GHA_ENABLED: "true" - - - name: Build dawn.node - # Build your program with the given configuration. Note that --config is needed because the default Windows generator is a multi-config generator (Visual Studio generator). - run: cmake --build ${{ steps.strings.outputs.build-node-output-dir }} --config ${{ matrix.build_type }} dawn.node - env: - SCCACHE_GHA_ENABLED: "true" From 225c640cc6bd219173965050ccd4a0b3f339d4ef Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 14:37:52 -0700 Subject: [PATCH 15/19] Update cmake.yml: ubuntu add libgl-dev --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 9e7ed98fbfd..cbd61519f3f 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -65,7 +65,7 @@ jobs: if: matrix.os == 'ubuntu-latest' run: | sudo apt update - sudo apt install libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxext-dev wayland-protocols libwayland-dev libxkbcommon-dev + sudo apt install libgl-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxext-dev wayland-protocols libwayland-dev libxkbcommon-dev - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v4 From 7c8d632e67b481a1c7e1da64627b219bdbdc447e Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Mon, 30 Oct 2023 14:49:14 -0700 Subject: [PATCH 16/19] Update cmake.yml: ubuntu add libx11-xcb-dev --- .github/workflows/cmake.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index cbd61519f3f..012b717e8cc 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -65,7 +65,7 @@ jobs: if: matrix.os == 'ubuntu-latest' run: | sudo apt update - sudo apt install libgl-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxext-dev wayland-protocols libwayland-dev libxkbcommon-dev + sudo apt install libgl-dev libx11-xcb-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxext-dev wayland-protocols libwayland-dev libxkbcommon-dev - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v4 From 65aeaa3c71b1b3cece27d3ccce5ac61f11a724bf Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Tue, 31 Oct 2023 13:41:29 -0700 Subject: [PATCH 17/19] Remove python version from build matrix Change-Id: I7072b648f6e567c1f83291b30a2284045837b298 --- .github/workflows/cmake.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 012b717e8cc..5a1b14819ec 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -1,4 +1,4 @@ -name: CMake build +name: CMake on: push: @@ -25,7 +25,6 @@ jobs: os: [ubuntu-latest, windows-latest, macos-latest] build_type: [Release] c_compiler: [gcc, clang, cl] - python-version: ["3.11"] include: - os: windows-latest c_compiler: cl @@ -67,10 +66,10 @@ jobs: sudo apt update sudo apt install libgl-dev libx11-xcb-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libxext-dev wayland-protocols libwayland-dev libxkbcommon-dev - - name: Set up Python ${{ matrix.python-version }} + - name: Set up Python uses: actions/setup-python@v4 with: - python-version: ${{ matrix.python-version }} + python-version: 3.11 - name: Fetch dependencies run: python ./tools/fetch_dawn_dependencies.py --use-test-deps --shallow @@ -82,7 +81,7 @@ jobs: if: matrix.os == 'windows-latest' uses: seanmiddleditch/gha-setup-vsdevenv@master - - name: Setup sccache + - name: Set up sccache uses: mozilla-actions/sccache-action@v0.0.3 - name: Configure CMake From 376a8c64f578a1e30d12b9bc2dfa695af65a4497 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Tue, 31 Oct 2023 13:44:01 -0700 Subject: [PATCH 18/19] Remove GCC build for now; add Debug builds Change-Id: I25612d668bd40ad1cbc68388eadfee8dc0ec99c4 --- .github/workflows/cmake.yml | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 5a1b14819ec..8a879a05b58 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -15,23 +15,19 @@ jobs: fail-fast: false # Set up a matrix to run the following 3 configurations: - # 1. - # 2. - # 3. - # 4. + # 1. + # 2. + # 3. # # To add more build types (Release, Debug, RelWithDebInfo, etc.) customize the build_type list. matrix: os: [ubuntu-latest, windows-latest, macos-latest] - build_type: [Release] - c_compiler: [gcc, clang, cl] + build_type: [Debug, Release] + c_compiler: [clang, cl] include: - os: windows-latest c_compiler: cl cpp_compiler: cl - - os: ubuntu-latest - c_compiler: gcc - cpp_compiler: g++ - os: ubuntu-latest c_compiler: clang cpp_compiler: clang++ @@ -39,14 +35,10 @@ jobs: c_compiler: clang cpp_compiler: clang++ exclude: - - os: windows-latest - c_compiler: gcc - os: windows-latest c_compiler: clang - os: ubuntu-latest c_compiler: cl - - os: macos-latest - c_compiler: gcc - os: macos-latest c_compiler: cl From 1a90e50de320c6c510a439930db38e92ce1310f1 Mon Sep 17 00:00:00 2001 From: Austin Eng Date: Tue, 31 Oct 2023 14:48:38 -0700 Subject: [PATCH 19/19] Exclude Windows MSVC debug builds Experiencing PDB file lock issues https://github.com/google/dawn/actions/runs/6712262986/job/18241441160 Change-Id: Ifee1a8654d96933430f1b98a45b3f7e6d798b602 --- .github/workflows/cmake.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 8a879a05b58..212e8e44ac0 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -37,6 +37,9 @@ jobs: exclude: - os: windows-latest c_compiler: clang + - os: windows-latest + c_compiler: cl + build_type: Debug - os: ubuntu-latest c_compiler: cl - os: macos-latest