55 push :
66 branches :
77 - master
8- paths : ['.github/workflows/build.yml', '.github/workflows/build-linux-cross.yml', '**/CMakeLists.txt', '**/.cmake', '**/*.h', '**/*.hpp', '**/*.c', '**/*.cpp', '**/*.cu', '**/*.cuh', '**/*.swift', '**/*.m', '**/*.metal', '**/*.comp']
8+ paths : [
9+ ' .github/workflows/build.yml' ,
10+ ' .github/workflows/build-linux-cross.yml' ,
11+ ' .github/workflows/build-cmake-pkg.yml' ,
12+ ' **/CMakeLists.txt' ,
13+ ' **/.cmake' ,
14+ ' **/*.h' ,
15+ ' **/*.hpp' ,
16+ ' **/*.c' ,
17+ ' **/*.cpp' ,
18+ ' **/*.cu' ,
19+ ' **/*.cuh' ,
20+ ' **/*.swift' ,
21+ ' **/*.m' ,
22+ ' **/*.metal' ,
23+ ' **/*.comp'
24+ ]
25+
926 pull_request :
1027 types : [opened, synchronize, reopened]
11- paths : ['.github/workflows/build.yml', '.github/workflows/build-linux-cross.yml', '**/CMakeLists.txt', '**/.cmake', '**/*.h', '**/*.hpp', '**/*.c', '**/*.cpp', '**/*.cu', '**/*.cuh', '**/*.swift', '**/*.m', '**/*.metal', '**/*.comp']
28+ paths : [
29+ ' .github/workflows/build.yml' ,
30+ ' .github/workflows/build-linux-cross.yml' ,
31+ ' .github/workflows/build-cmake-pkg.yml' ,
32+ ' **/CMakeLists.txt' ,
33+ ' **/.cmake' ,
34+ ' **/*.h' ,
35+ ' **/*.hpp' ,
36+ ' **/*.c' ,
37+ ' **/*.cpp' ,
38+ ' **/*.cu' ,
39+ ' **/*.cuh' ,
40+ ' **/*.swift' ,
41+ ' **/*.m' ,
42+ ' **/*.metal' ,
43+ ' **/*.comp'
44+ ]
1245
1346concurrency :
1447 group : ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }}
@@ -306,6 +339,7 @@ jobs:
306339 id : cmake_test
307340 run : |
308341 cd build
342+ export GGML_VK_VISIBLE_DEVICES=0
309343 # This is using llvmpipe and runs slower than other backends
310344 ctest -L main --verbose --timeout 3600
311345
@@ -477,6 +511,9 @@ jobs:
477511 build-linux-cross :
478512 uses : ./.github/workflows/build-linux-cross.yml
479513
514+ build-cmake-pkg :
515+ uses : ./.github/workflows/build-cmake-pkg.yml
516+
480517 macOS-latest-cmake-ios :
481518 runs-on : macos-latest
482519
@@ -627,7 +664,7 @@ jobs:
627664 ./build-xcframework.sh
628665
629666 windows-msys2 :
630- runs-on : windows-latest
667+ runs-on : windows-2025
631668
632669 strategy :
633670 fail-fast : false
@@ -677,27 +714,33 @@ jobs:
677714 cmake --build build --config ${{ matrix.build }} -j $(nproc)
678715
679716 windows-latest-cmake :
680- runs-on : windows-latest
717+ runs-on : windows-2025
681718
682719 env :
683720 OPENBLAS_VERSION : 0.3.23
684721 SDE_VERSION : 9.33.0-2024-01-07
685- VULKAN_VERSION : 1.4.309.0
722+ VULKAN_VERSION : 1.4.313.2
686723
687724 strategy :
688725 matrix :
689726 include :
690- - build : ' cpu-x64'
691- defines : ' -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/x64-windows-llvm.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DGGML_OPENMP=OFF'
727+ - build : ' cpu-x64 (static)'
728+ arch : ' x64'
729+ defines : ' -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/x64-windows-llvm.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DBUILD_SHARED_LIBS=OFF'
692730 - build : ' openblas-x64'
731+ arch : ' x64'
693732 defines : ' -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/x64-windows-llvm.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DGGML_OPENMP=OFF -DGGML_BLAS=ON -DGGML_BLAS_VENDOR=OpenBLAS -DBLAS_INCLUDE_DIRS="$env:RUNNER_TEMP/openblas/include" -DBLAS_LIBRARIES="$env:RUNNER_TEMP/openblas/lib/openblas.lib"'
694733 - build : ' vulkan-x64'
695- defines : ' -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DGGML_VULKAN=ON'
734+ arch : ' x64'
735+ defines : ' -DCMAKE_BUILD_TYPE=Release -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DGGML_VULKAN=ON'
696736 - build : ' llvm-arm64'
737+ arch : ' arm64'
697738 defines : ' -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/arm64-windows-llvm.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON'
698739 - build : ' llvm-arm64-opencl-adreno'
740+ arch : ' arm64'
699741 defines : ' -G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/arm64-windows-llvm.cmake -DCMAKE_PREFIX_PATH="$env:RUNNER_TEMP/opencl-arm64-release" -DGGML_OPENCL=ON -DGGML_OPENCL_USE_ADRENO_KERNELS=ON'
700742 # - build: 'kompute-x64'
743+ # arch: 'x64'
701744 # defines: '-G "Ninja Multi-Config" -D CMAKE_TOOLCHAIN_FILE=cmake/x64-windows-llvm.cmake -DGGML_NATIVE=OFF -DLLAMA_BUILD_SERVER=ON -DGGML_RPC=ON -DGGML_BACKEND_DL=ON -DGGML_CPU_ALL_VARIANTS=ON -DGGML_OPENMP=OFF -DGGML_KOMPUTE=ON -DKOMPUTE_OPT_DISABLE_VULKAN_VERSION_CHECK=ON'
702745
703746 steps :
@@ -735,7 +778,7 @@ jobs:
735778 id : get_vulkan
736779 if : ${{ matrix.build == 'kompute-x64' || matrix.build == 'vulkan-x64' }}
737780 run : |
738- curl.exe -o $env:RUNNER_TEMP/VulkanSDK-Installer.exe -L "https://sdk.lunarg.com/sdk/download/${env:VULKAN_VERSION}/windows/VulkanSDK- ${env:VULKAN_VERSION}-Installer .exe"
781+ curl.exe -o $env:RUNNER_TEMP/VulkanSDK-Installer.exe -L "https://sdk.lunarg.com/sdk/download/${env:VULKAN_VERSION}/windows/vulkansdk-windows-X64- ${env:VULKAN_VERSION}.exe"
739782 & "$env:RUNNER_TEMP\VulkanSDK-Installer.exe" --accept-licenses --default-answer --confirm-command install
740783 Add-Content $env:GITHUB_ENV "VULKAN_SDK=C:\VulkanSDK\${env:VULKAN_VERSION}"
741784 Add-Content $env:GITHUB_PATH "C:\VulkanSDK\${env:VULKAN_VERSION}\bin"
@@ -768,6 +811,8 @@ jobs:
768811 - name : libCURL
769812 id : get_libcurl
770813 uses : ./.github/actions/windows-setup-curl
814+ with :
815+ architecture : ${{ matrix.arch == 'x64' && 'win64' || 'win64a' }}
771816
772817 - name : Build
773818 id : cmake_build
@@ -777,6 +822,7 @@ jobs:
777822 cmake -S . -B build ${{ matrix.defines }} `
778823 -DCURL_LIBRARY="$env:CURL_PATH/lib/libcurl.dll.a" -DCURL_INCLUDE_DIR="$env:CURL_PATH/include"
779824 cmake --build build --config Release -j ${env:NUMBER_OF_PROCESSORS}
825+ cp $env:CURL_PATH/bin/libcurl-*.dll build/bin/Release
780826
781827 - name : Add libopenblas.dll
782828 id : add_libopenblas_dll
@@ -787,7 +833,7 @@ jobs:
787833
788834 - name : Test
789835 id : cmake_test
790- if : ${{ matrix.build != 'llvm-arm64' && matrix.build ! = 'llvm-arm64-opencl-adreno ' }}
836+ if : ${{ matrix.arch = = 'x64 ' }}
791837 run : |
792838 cd build
793839 ctest -L main -C Release --verbose --timeout 900
@@ -892,7 +938,7 @@ jobs:
892938 cmake --build build --config Release
893939
894940 windows-latest-cmake-sycl :
895- runs-on : windows-latest
941+ runs-on : windows-2022
896942
897943 defaults :
898944 run :
@@ -926,7 +972,7 @@ jobs:
926972
927973 windows-latest-cmake-hip :
928974 if : ${{ github.event.inputs.create_release != 'true' }}
929- runs-on : windows-latest
975+ runs-on : windows-2022
930976
931977 steps :
932978 - name : Clone
0 commit comments