.build-linux: stage: build rules: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' image: $CI_REGISTRY/wine/vkd3d:debian-bookworm interruptible: true needs: - job: build-image 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 pipeline_failed ] ; then exit 1 ; 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: true 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: 'gcc -m32' VKD3D_SHADER_CONFIG: 'force_validation' build-llvmpipe-32: extends: .build-linux allow_failure: true variables: VK_LOADER_DRIVERS_SELECT: 'lvp_*' CC: 'gcc -m32' 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: build-image 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-mac: stage: build rules: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' allow_failure: true interruptible: true needs: [] dependencies: [] tags: - mac script: - git config --global --add safe.directory $CI_PROJECT_DIR - git clean -fdx - git reset --hard - rm -fr .git/rebase-merge # We use a custom ICD which is not marked as a portability driver, # so that test programs are not confused. - ./gitlab/patch_moltenvk_icd.sh - export VK_DRIVER_FILES="$PWD/gitlab/MoltenVK_icd.json" - mkdir artifacts - system_profiler SPSoftwareDataType SPHardwareDataType > artifacts/systeminfo.txt - vulkaninfo > artifacts/vulkaninfo.txt - export PATH="/usr/local/opt/bison/bin:/usr/local/opt/flex/bin:$PATH" - git clone --depth 1 --branch wine-3.21 https://gitlab.winehq.org/wine/wine.git - cd wine - mkdir build - cd build - ../configure --enable-win64 --without-x --without-freetype - make tools/widl/widl - cd ../.. - export PATH="$PWD/wine/build/tools/widl:$PATH" - git rebase $CI_MERGE_REQUEST_DIFF_BASE_SHA --exec ./gitlab/build-mac - if [ -f pipeline_failed ] ; then exit 1 ; fi variables: VKD3D_DISABLE_EXTENSIONS: "VK_EXT_descriptor_indexing" VKD3D_SHADER_CONFIG: 'force_validation' artifacts: when: always paths: - artifacts