Skip to content

Commit 512e6c8

Browse files
committed
build: add vulkan windows build to github action
1 parent 9cc4a6c commit 512e6c8

File tree

1 file changed

+122
-1
lines changed

1 file changed

+122
-1
lines changed

Diff for: .github/workflows/build.yml

+122-1
Original file line numberDiff line numberDiff line change
@@ -171,4 +171,125 @@ jobs:
171171
uses: actions/upload-artifact@v4
172172
with:
173173
name: windows_cpu_release.zip
174-
path: build/libgodot_llm.windows.release.amd64.dll
174+
path: build/libgodot_llm.windows.release.amd64.dll
175+
176+
windows-latest-cmake-cpu-debug:
177+
runs-on: windows-latest
178+
steps:
179+
- uses: ilammy/msvc-dev-cmd@v1
180+
181+
- name: Clone
182+
id: checkout
183+
uses: actions/checkout@v4
184+
185+
- name: Clone submodule
186+
id: clone_submodule
187+
run: |
188+
git submodule update --init --recursive
189+
190+
- name: Scoop dependencies
191+
run: |
192+
irm get.scoop.sh | iex
193+
scoop install ninja llvm
194+
Add-Content $env:GITHUB_PATH "$HOME\scoop\apps\llvm\current\bin"
195+
Add-Content $env:GITHUB_PATH "$HOME\scoop\shims"
196+
197+
- name: Build
198+
id: cmake_build
199+
run: |
200+
mkdir build
201+
cd build
202+
cmake .. -GNinja -DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl -DLLAMA_NATIVE=OFF -DLLAMA_VULKAN=OFF -DCMAKE_BUILD_TYPE=Debug
203+
ninja -j ${env:NUMBER_OF_PROCESSORS}
204+
205+
- name: Archive library
206+
uses: actions/upload-artifact@v4
207+
with:
208+
name: windows_cpu_debug.zip
209+
path: build/libgodot_llm.windows.debug.amd64.dll
210+
211+
windows-latest-cmake-vulkan-release:
212+
runs-on: windows-latest
213+
steps:
214+
- uses: ilammy/msvc-dev-cmd@v1
215+
216+
- name: Clone
217+
id: checkout
218+
uses: actions/checkout@v4
219+
220+
- name: Clone submodule
221+
id: clone_submodule
222+
run: |
223+
git submodule update --init --recursive
224+
225+
- name: Scoop dependencies
226+
run: |
227+
irm get.scoop.sh | iex
228+
scoop install ninja llvm
229+
Add-Content $env:GITHUB_PATH "$HOME\scoop\apps\llvm\current\bin"
230+
Add-Content $env:GITHUB_PATH "$HOME\scoop\shims"
231+
232+
- name: Install Vulkan SDK
233+
id: get_vulkan
234+
run: |
235+
curl.exe -o $env:RUNNER_TEMP/VulkanSDK-Installer.exe -L "https://sdk.lunarg.com/sdk/download/${1.3.283}/windows/VulkanSDK-${1.3.283}-Installer.exe"
236+
& "$env:RUNNER_TEMP\VulkanSDK-Installer.exe" --accept-licenses --default-answer --confirm-command install
237+
Add-Content $env:GITHUB_ENV "VULKAN_SDK=C:\VulkanSDK\${env:VULKAN_VERSION}"
238+
Add-Content $env:GITHUB_PATH "C:\VulkanSDK\${env:VULKAN_VERSION}\bin"
239+
240+
- name: Build
241+
id: cmake_build
242+
run: |
243+
mkdir build
244+
cd build
245+
cmake .. -GNinja -DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl -DLLAMA_NATIVE=OFF -DLLAMA_VULKAN=ON -DCMAKE_BUILD_TYPE=Release
246+
ninja -j ${env:NUMBER_OF_PROCESSORS}
247+
248+
- name: Archive library
249+
uses: actions/upload-artifact@v4
250+
with:
251+
name: windows_vulkan_release.zip
252+
path: build/libgodot_llm.windows.release.amd64.dll
253+
254+
windows-latest-cmake-vulkan-debug:
255+
runs-on: windows-latest
256+
steps:
257+
- uses: ilammy/msvc-dev-cmd@v1
258+
259+
- name: Clone
260+
id: checkout
261+
uses: actions/checkout@v4
262+
263+
- name: Clone submodule
264+
id: clone_submodule
265+
run: |
266+
git submodule update --init --recursive
267+
268+
- name: Scoop dependencies
269+
run: |
270+
irm get.scoop.sh | iex
271+
scoop install ninja llvm
272+
Add-Content $env:GITHUB_PATH "$HOME\scoop\apps\llvm\current\bin"
273+
Add-Content $env:GITHUB_PATH "$HOME\scoop\shims"
274+
275+
- name: Install Vulkan SDK
276+
id: get_vulkan
277+
run: |
278+
curl.exe -o $env:RUNNER_TEMP/VulkanSDK-Installer.exe -L "https://sdk.lunarg.com/sdk/download/${1.3.283}/windows/VulkanSDK-${1.3.283}-Installer.exe"
279+
& "$env:RUNNER_TEMP\VulkanSDK-Installer.exe" --accept-licenses --default-answer --confirm-command install
280+
Add-Content $env:GITHUB_ENV "VULKAN_SDK=C:\VulkanSDK\${env:VULKAN_VERSION}"
281+
Add-Content $env:GITHUB_PATH "C:\VulkanSDK\${env:VULKAN_VERSION}\bin"
282+
283+
- name: Build
284+
id: cmake_build
285+
run: |
286+
mkdir build
287+
cd build
288+
cmake .. -GNinja -DCMAKE_C_COMPILER=clang-cl -DCMAKE_CXX_COMPILER=clang-cl -DLLAMA_NATIVE=OFF -DLLAMA_VULKAN=ON -DCMAKE_BUILD_TYPE=Debug
289+
ninja -j ${env:NUMBER_OF_PROCESSORS}
290+
291+
- name: Archive library
292+
uses: actions/upload-artifact@v4
293+
with:
294+
name: windows_vulkan_debug.zip
295+
path: build/libgodot_llm.windows.debug.amd64.dll

0 commit comments

Comments
 (0)