Skip to content

Update tests feature to include gui dependency #5105

Update tests feature to include gui dependency

Update tests feature to include gui dependency #5105

Workflow file for this run

name: build-xmake
on: [push, pull_request]
jobs:
build-linux:
strategy:
fail-fast: false
matrix:
toolchain: [gcc, clang]
config: [release, debug]
name: Ubuntu / ${{ matrix.config }} / ${{ matrix.toolchain }}
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: "Install Dependencies"
run: |
sudo apt-get update
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 20 all
sudo apt-get -y install build-essential wget uuid-dev libxinerama-dev libxcursor-dev libxi-dev libvulkan-dev
sudo add-apt-repository ppa:xmake-io/xmake
sudo apt update
sudo apt install xmake
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
- name: "Setup CUDA"
run: |
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda-toolkit
- name: "Setup Vulkan"
uses: johnnynunez/setup-vulkan-sdk@v1
with:
vulkan-query-version: 1.4.304.1
vulkan-components: Vulkan-Headers, Vulkan-Loader
vulkan-use-cache: true
- name: "Configure and Build"
run: |
xmake f -p linux -a x86_64 --toolchain=${{ matrix.toolchain }} -m ${{ matrix.config }} --lc_cuda_backend=true --lc_enable_dsl=true --lc_enable_gui=true --lc_enable_unity_build=false --lc_enable_tests=true --lc_enable_mimalloc=false --check -c -y
xmake
build-windows:
strategy:
fail-fast: false
matrix:
config: [release, debug]
compiler: [msvc, clang-cl]
name: Windows / ${{ matrix.config }} / ${{ matrix.compiler }}
runs-on: windows-2025
concurrency:
group: ${{ github.ref }}-${{ github.base_ref }}-${{ github.head_ref }}-xmake-windows-${{ matrix.config }}-${{ matrix.compiler }}
cancel-in-progress: true
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: "Setup Ninja"
uses: ashutoshvarma/setup-ninja@master
with:
version: 1.11.1
- name: "Setup CUDA"
uses: Jimver/cuda-toolkit@v0.2.22
with:
cuda: 12.8.1
sub-packages: '[ "cudart", "nvrtc", "nvrtc_dev", "nvjitlink", "nvcc", "nvtx" ]'
- name: "Setup Rust"
uses: actions-rust-lang/setup-rust-toolchain@v1.10.1
- name: "Setup Vulkan"
uses: johnnynunez/setup-vulkan-sdk@v1
with:
vulkan-query-version: 1.4.304.1
vulkan-components: Vulkan-Headers, Vulkan-Loader
vulkan-use-cache: true
- name: "Setup LLVM"
uses: ZhongRuoyu/setup-llvm@v0
with:
llvm-version: 20
- name: "Setup XMake"
uses: xmake-io/github-action-setup-xmake@v1
- name: "Configure and Build"
shell: cmd
run: |
if "${{ matrix.compiler }}" == "llvm" (
xmake f -p windows -a x64 --toolchain=llvm --sdk="C:/Program Files/LLVM" -m ${{ matrix.config }} --lc_vk_backend=true --lc_dx_backend=true --lc_cuda_backend=true --lc_enable_dsl=true --lc_enable_gui=true --lc_enable_unity_build=false --lc_enable_tests=true --lc_sdk_dir=../luisa_compute_sdks --check -c -y
) else (
xmake f -p windows -a x64 --toolchain=${{ matrix.compiler }} -m ${{ matrix.config }} --lc_vk_backend=true --lc_dx_backend=true --lc_cuda_backend=true --lc_enable_dsl=true --lc_enable_gui=true --lc_enable_unity_build=false --lc_enable_tests=true --lc_sdk_dir=../luisa_compute_sdks --check -c -y
)
xmake