summaryrefslogtreecommitdiffstatsci
path: root/.github/workflows/cmake.yml
blob: 0ae09efc88e8ba4387c4392f004513e3d2bdafd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
name: CMake

on:
  push:
    branches: ["*"]
  pull_request:
    branches: [master]
  workflow_dispatch:

jobs:
  Win_jorb:
    runs-on: windows-latest
    timeout-minutes: 4
    steps:
      - uses: actions/checkout@v4
        with:
          submodules: "true"
      - name: Install Vulkan SDK
        uses: humbletim/setup-vulkan-sdk@v1.2.1
        with:
          vulkan-query-version: 1.4.304.1
          vulkan-components: Vulkan-Headers, Vulkan-Loader
          vulkan-use-cache: false
      - name: configure
        run: cmake -B build_win64 -G "Visual Studio 18 2026" -A x64 -DVKVG_RECORDING=false -DVKVG_SVG=false -DGIT_SUBMODULE=true -DBUILD_SHARED_LIBS=OFF
      - name: build win64
        run: cmake --build build_win64 --parallel

  linux_jorb:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        build_config: ["Release"]
    defaults:
      run:
        shell: bash
    env:
      VULKAN_SDK: ${{ github.workspace }}/VulkanSDK/x86_64
      VULKAN_LAYER_PATH: ${{ github.workspace }}/VulkanSDK/x86_64/share/vulkan/explicit_layer.d"

    steps:
      - uses: actions/checkout@v4
        with:
          repository: "krOoze/vk_sdk_lite"
          path: "VulkanSDK"
          ref: linux
          persist-credentials: false
      - run: echo "${{ env.VULKAN_SDK }}/bin" >> $GITHUB_PATH
      - run: sudo apt update && sudo apt install xorg-dev libglfw3-dev xxd
      - uses: actions/checkout@v4
        with:
          path: "source"
          persist-credentials: false
          submodules: "true"
      - run: mkdir -p source/build
      - name: Conifgure cmake
        run: cmake -DCMAKE_BUILD_TYPE=${{ matrix.build_config }} -G "Unix Makefiles" .. -DVKVG_RECORDING=false -DVKVG_SVG=false
        working-directory: source/build
      - name: Build
        run: cmake --build . --config ${{ matrix.build_config }} --parallel
        working-directory: source/build
  mac_jorb:
    runs-on: macos-latest
    strategy:
      matrix:
        build_config: ["Release"]
    defaults:
      run:
        shell: bash
    env:
      VULKAN_SDK: ${{ github.workspace }}/VulkanSDK/macOS

    steps:
      - uses: actions/checkout@v4
        with:
          repository: "krOoze/vk_sdk_lite"
          path: "VulkanSDK"
          ref: macos
          persist-credentials: false
      - run: echo "${{ env.VULKAN_SDK }}/bin" >> $GITHUB_PATH
      - uses: actions/checkout@v4
        with:
          submodules: "true"
          path: "source"
          persist-credentials: false
      - run: mkdir -p source/build
      - run: cmake -DCMAKE_BUILD_TYPE=${{ matrix.build_config }} .. -DVKVG_RECORDING=false -DVKVG_SVG=false
        working-directory: source/build
      - run: cmake --build . --config ${{ matrix.build_config }}
        working-directory: source/build