mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2024-11-21 16:46:41 -08:00
72394d9ae3
ERR is used to indicate internal inconsistencies in vkd3d. Here that's not the case, we simply have to forward the error condition to the caller. This fixes failures on the CI with llvmpipe, because the build we use is compiled without support for VK_KHR_surface and related extensions.
173 lines
4.8 KiB
YAML
173 lines
4.8 KiB
YAML
.build-linux:
|
|
stage: build
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
|
|
image: $CI_REGISTRY/wine/vkd3d:debian-bookworm
|
|
interruptible: true
|
|
needs:
|
|
- job: image-linux
|
|
optional: true
|
|
dependencies: []
|
|
script:
|
|
- git config --global --add safe.directory $CI_PROJECT_DIR
|
|
- git clean -fdx
|
|
- git reset --hard
|
|
- rm -fr .git/rebase-merge
|
|
- mkdir artifacts
|
|
- cat /proc/cpuinfo > artifacts/cpuinfo.txt
|
|
- cat /proc/meminfo > artifacts/meminfo.txt
|
|
- vulkaninfo > artifacts/vulkaninfo.txt
|
|
- git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./gitlab/build-linux
|
|
- if [ -f build_failed ] ; then exit 1 ; fi
|
|
- if [ -f tests_failed ] ; then exit 2 ; fi
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- artifacts
|
|
|
|
build-radv-64:
|
|
extends: .build-linux
|
|
tags:
|
|
- amd-gpu
|
|
variables:
|
|
VK_LOADER_DRIVERS_SELECT: 'radeon_*'
|
|
VKD3D_SHADER_CONFIG: 'force_validation'
|
|
|
|
build-llvmpipe-64:
|
|
extends: .build-linux
|
|
allow_failure:
|
|
exit_codes:
|
|
- 2
|
|
variables:
|
|
VK_LOADER_DRIVERS_SELECT: 'lvp_*'
|
|
VKD3D_SHADER_CONFIG: 'force_validation'
|
|
|
|
build-radv-32:
|
|
extends: .build-linux
|
|
tags:
|
|
- amd-gpu
|
|
variables:
|
|
VK_LOADER_DRIVERS_SELECT: 'radeon_*'
|
|
CC: 'i686-linux-gnu-gcc'
|
|
VKD3D_SHADER_CONFIG: 'force_validation'
|
|
|
|
build-llvmpipe-32:
|
|
extends: .build-linux
|
|
allow_failure:
|
|
exit_codes:
|
|
- 2
|
|
variables:
|
|
VK_LOADER_DRIVERS_SELECT: 'lvp_*'
|
|
CC: 'i686-linux-gnu-gcc'
|
|
VKD3D_SHADER_CONFIG: 'force_validation'
|
|
|
|
build-llvmpipe-64-mesa24:
|
|
extends: .build-linux
|
|
variables:
|
|
VK_DRIVER_FILES: '/opt/mesa24/share/vulkan/icd.d/lvp_icd.x86_64.json'
|
|
LD_LIBRARY_PATH: '/opt/mesa24/lib/x86_64-linux-gnu'
|
|
__EGL_VENDOR_LIBRARY_FILENAMES: '/opt/mesa24/share/glvnd/egl_vendor.d/50_mesa.json'
|
|
VKD3D_SHADER_CONFIG: 'force_validation'
|
|
|
|
build-crosstest:
|
|
stage: build
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
|
|
image: $CI_REGISTRY/wine/vkd3d:debian-bookworm
|
|
interruptible: true
|
|
needs:
|
|
- job: image-linux
|
|
optional: true
|
|
dependencies: []
|
|
script:
|
|
- git config --global --add safe.directory $CI_PROJECT_DIR
|
|
- git clean -fdx
|
|
- git reset --hard
|
|
- rm -fr .git/rebase-merge
|
|
- mkdir artifacts
|
|
- cat /proc/cpuinfo > artifacts/cpuinfo.txt
|
|
- cat /proc/meminfo > artifacts/meminfo.txt
|
|
- vulkaninfo > artifacts/vulkaninfo.txt
|
|
- git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./gitlab/build-crosstest
|
|
- if [ -f pipeline_failed ] ; then exit 1 ; fi
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- artifacts
|
|
|
|
.build-mingw:
|
|
stage: build
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
|
|
image: $CI_REGISTRY/wine/vkd3d:debian-bookworm
|
|
interruptible: true
|
|
needs:
|
|
- job: image-linux
|
|
optional: true
|
|
dependencies: []
|
|
script:
|
|
- git config --global --add safe.directory $CI_PROJECT_DIR
|
|
- git clean -fdx
|
|
- git reset --hard
|
|
- rm -fr .git/rebase-merge
|
|
- mkdir artifacts
|
|
- cat /proc/cpuinfo > artifacts/cpuinfo.txt
|
|
- cat /proc/meminfo > artifacts/meminfo.txt
|
|
- git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./gitlab/build-mingw
|
|
- if [ -f pipeline_failed ] ; then exit 1 ; fi
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- artifacts
|
|
|
|
build-mingw-64:
|
|
extends: .build-mingw
|
|
variables:
|
|
HOST: "x86_64-w64-mingw32"
|
|
|
|
build-mingw-32:
|
|
extends: .build-mingw
|
|
variables:
|
|
HOST: "i686-w64-mingw32"
|
|
|
|
build-mac:
|
|
stage: build
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == 'merge_request_event'
|
|
image: winehq-sonoma-pristine
|
|
allow_failure: true
|
|
interruptible: true
|
|
needs:
|
|
- job: image-mac
|
|
optional: true
|
|
dependencies: []
|
|
tags:
|
|
- mac
|
|
script:
|
|
- brew install vulkan-tools libtool spirv-headers vulkan-loader mingw-w64
|
|
- git config --global --add safe.directory $CI_PROJECT_DIR
|
|
- git clean -fdx
|
|
- git reset --hard
|
|
- rm -fr .git/rebase-merge
|
|
- curl -o image.zip https://gitlab.winehq.org/api/v4/projects/wine%2Fvkd3d/jobs/artifacts/master/download?job=image-mac
|
|
- unzip image.zip
|
|
- mkdir artifacts
|
|
- export PATH="/opt/homebrew/opt/bison/bin:/opt/homebrew/opt/flex/bin:$PATH"
|
|
- export VK_DRIVER_FILES="$PWD/image/moltenvk/MoltenVK_icd.json"
|
|
- export SONAME_LIBDXCOMPILER="$PWD/image/dxc/libdxcompiler.dylib"
|
|
- system_profiler SPSoftwareDataType SPHardwareDataType > artifacts/systeminfo.txt
|
|
- vulkaninfo > artifacts/vulkaninfo.txt
|
|
- git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./gitlab/build-mac
|
|
- if [ -f build_failed ] ; then exit 1 ; fi
|
|
- if [ -f tests_failed ] ; then exit 2 ; fi
|
|
variables:
|
|
VKD3D_DISABLE_EXTENSIONS: "VK_EXT_descriptor_indexing"
|
|
VKD3D_SHADER_CONFIG: 'force_validation'
|
|
MVK_CONFIG_LOG_LEVEL: 2
|
|
SONAME_LIBVULKAN: "/opt/homebrew/opt/vulkan-loader/lib/libvulkan.1.dylib"
|
|
WIDL: "x86_64-w64-mingw32-widl"
|
|
artifacts:
|
|
when: always
|
|
paths:
|
|
- artifacts
|