mirror of https://gitlab.freedesktop.org/mesa/mesa
694 lines
19 KiB
YAML
694 lines
19 KiB
YAML
# Shared between windows and Linux
|
|
.build-common:
|
|
extends: .container+build-rules
|
|
# Cancel job if a newer commit is pushed to the same branch
|
|
interruptible: true
|
|
# Build jobs don't take more than 1-3 minutes. 5-8 min max on a fresh runner
|
|
# without a populated ccache.
|
|
# These jobs are never slow, either they finish within reasonable time or
|
|
# something has gone wrong and the job will never terminate, so we should
|
|
# instead timeout so that the retry mechanism can kick in.
|
|
# A few exception are made, see `timeout:` overrides in the rest of this
|
|
# file.
|
|
timeout: 30m
|
|
artifacts:
|
|
name: "mesa_${CI_JOB_NAME}"
|
|
when: always
|
|
paths:
|
|
- _build/meson-logs/*.txt
|
|
- _build/meson-logs/strace
|
|
- artifacts
|
|
|
|
# Just Linux
|
|
.build-linux:
|
|
extends: .build-common
|
|
variables:
|
|
CCACHE_COMPILERCHECK: "content"
|
|
CCACHE_COMPRESS: "true"
|
|
CCACHE_DIR: /cache/mesa/ccache
|
|
# Use ccache transparently, and print stats before/after
|
|
before_script:
|
|
- !reference [default, before_script]
|
|
- |
|
|
export PATH="/usr/lib/ccache:$PATH"
|
|
export CCACHE_BASEDIR="$PWD"
|
|
if test -x /usr/bin/ccache; then
|
|
section_start ccache_before "ccache stats before build"
|
|
ccache --show-stats
|
|
section_end ccache_before
|
|
fi
|
|
after_script:
|
|
- if test -x /usr/bin/ccache; then ccache --show-stats | grep "Hits:"; fi
|
|
- !reference [default, after_script]
|
|
|
|
.build-windows:
|
|
extends:
|
|
- .build-common
|
|
- .windows-docker-tags
|
|
cache:
|
|
key: ${CI_JOB_NAME}
|
|
paths:
|
|
- subprojects/packagecache
|
|
|
|
.meson-build:
|
|
extends:
|
|
- .build-linux
|
|
- .use-debian/x86_64_build
|
|
stage: build-x86_64
|
|
variables:
|
|
LLVM_VERSION: 15
|
|
script:
|
|
- .gitlab-ci/meson/build.sh
|
|
|
|
debian-testing:
|
|
extends:
|
|
- .meson-build
|
|
- .ci-deqp-artifacts
|
|
variables:
|
|
UNWIND: "enabled"
|
|
DRI_LOADERS: >
|
|
-D glx=dri
|
|
-D gbm=enabled
|
|
-D egl=enabled
|
|
-D platforms=x11,wayland
|
|
GALLIUM_ST: >
|
|
-D dri3=enabled
|
|
-D gallium-nine=true
|
|
-D gallium-va=enabled
|
|
-D gallium-rusticl=true
|
|
GALLIUM_DRIVERS: "swrast,virgl,radeonsi,zink,crocus,iris,i915,r300,svga"
|
|
VULKAN_DRIVERS: "swrast,amd,intel,intel_hasvk,virtio,nouveau"
|
|
BUILDTYPE: "debugoptimized"
|
|
EXTRA_OPTION: >
|
|
-D spirv-to-dxil=true
|
|
-D valgrind=disabled
|
|
-D perfetto=true
|
|
-D tools=drm-shim
|
|
S3_ARTIFACT_NAME: mesa-x86_64-default-${BUILDTYPE}
|
|
LLVM_VERSION: 15
|
|
script:
|
|
- .gitlab-ci/meson/build.sh
|
|
- .gitlab-ci/prepare-artifacts.sh
|
|
artifacts:
|
|
reports:
|
|
junit: artifacts/ci_scripts_report.xml
|
|
|
|
debian-testing-asan:
|
|
extends:
|
|
- debian-testing
|
|
variables:
|
|
C_ARGS: >
|
|
-Wno-error=stringop-truncation
|
|
EXTRA_OPTION: >
|
|
-D b_sanitize=address
|
|
-D valgrind=disabled
|
|
-D tools=dlclose-skip
|
|
-D intel-clc=system
|
|
S3_ARTIFACT_NAME: ""
|
|
ARTIFACTS_DEBUG_SYMBOLS: 1
|
|
# Do a host build for intel-clc (asan complains not being loaded
|
|
# as the first library)
|
|
HOST_BUILD_OPTIONS: >
|
|
-D build-tests=false
|
|
-D enable-glcpp-tests=false
|
|
-D gallium-opencl=disabled
|
|
-D gallium-drivers=
|
|
-D vulkan-drivers=
|
|
-D video-codecs=
|
|
-D glx=disabled
|
|
-D platforms=
|
|
-D intel-clc=enabled
|
|
-D install-intel-clc=true
|
|
|
|
debian-testing-msan:
|
|
# https://github.com/google/sanitizers/wiki/MemorySanitizerLibcxxHowTo
|
|
# msan cannot fully work until it's used together with msan libc
|
|
extends:
|
|
- debian-clang
|
|
variables:
|
|
# l_undef is incompatible with msan
|
|
EXTRA_OPTION:
|
|
-D b_sanitize=memory
|
|
-D b_lundef=false
|
|
-D intel-clc=system
|
|
S3_ARTIFACT_NAME: ""
|
|
ARTIFACTS_DEBUG_SYMBOLS: 1
|
|
# Don't run all the tests yet:
|
|
# GLSL has some issues in sexpression reading.
|
|
# gtest has issues in its test initialization.
|
|
MESON_TEST_ARGS: "--suite glcpp --suite format"
|
|
GALLIUM_DRIVERS: "freedreno,iris,nouveau,kmsro,r300,r600,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink,radeonsi,tegra,d3d12,crocus"
|
|
VULKAN_DRIVERS: intel,amd,broadcom,virtio
|
|
# Do a host build for intel-clc (msan complains about
|
|
# uninitialized values in the LLVM libs)
|
|
HOST_BUILD_OPTIONS: >
|
|
-D build-tests=false
|
|
-D enable-glcpp-tests=false
|
|
-D gallium-opencl=disabled
|
|
-D gallium-drivers=
|
|
-D vulkan-drivers=
|
|
-D video-codecs=
|
|
-D glx=disabled
|
|
-D platforms=
|
|
-D intel-clc=enabled
|
|
-D install-intel-clc=true
|
|
|
|
debian-build-testing:
|
|
extends: .meson-build
|
|
variables:
|
|
BUILDTYPE: debug
|
|
UNWIND: "enabled"
|
|
DRI_LOADERS: >
|
|
-D glx=dri
|
|
-D gbm=enabled
|
|
-D egl=enabled
|
|
-D platforms=x11,wayland
|
|
GALLIUM_ST: >
|
|
-D dri3=enabled
|
|
-D gallium-extra-hud=true
|
|
-D gallium-vdpau=enabled
|
|
-D gallium-omx=bellagio
|
|
-D gallium-va=enabled
|
|
-D gallium-xa=enabled
|
|
-D gallium-nine=true
|
|
-D gallium-rusticl=false
|
|
GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink,d3d12,asahi,crocus"
|
|
VULKAN_DRIVERS: swrast
|
|
EXTRA_OPTION: >
|
|
-D spirv-to-dxil=true
|
|
-D osmesa=true
|
|
-D tools=drm-shim,etnaviv,freedreno,glsl,intel,intel-ui,nir,nouveau,lima,panfrost,asahi
|
|
-D b_lto=true
|
|
LLVM_VERSION: 15
|
|
S3_ARTIFACT_NAME: debian-build-testing
|
|
script: |
|
|
section_start lava-pytest "lava-pytest"
|
|
.gitlab-ci/lava/lava-pytest.sh
|
|
section_switch shellcheck "shellcheck"
|
|
.gitlab-ci/run-shellcheck.sh
|
|
section_switch yamllint "yamllint"
|
|
.gitlab-ci/run-yamllint.sh
|
|
section_switch meson "meson"
|
|
.gitlab-ci/meson/build.sh
|
|
.gitlab-ci/prepare-artifacts.sh
|
|
timeout: 15m
|
|
|
|
shader-db:
|
|
stage: code-validation
|
|
extends:
|
|
- .use-debian/x86_64_build
|
|
- .container+build-rules
|
|
needs:
|
|
- debian-build-testing
|
|
variables:
|
|
S3_ARTIFACT_NAME: debian-build-testing
|
|
before_script:
|
|
- !reference [.download_s3, before_script]
|
|
script: |
|
|
section_switch shader-db "shader-db"
|
|
.gitlab-ci/run-shader-db.sh
|
|
artifacts:
|
|
paths:
|
|
- shader-db
|
|
timeout: 15m
|
|
|
|
# Test a release build with -Werror so new warnings don't sneak in.
|
|
debian-release:
|
|
extends: .meson-build
|
|
variables:
|
|
LLVM_VERSION: 15
|
|
UNWIND: "enabled"
|
|
C_ARGS: >
|
|
-Wno-error=stringop-overread
|
|
DRI_LOADERS: >
|
|
-D glx=dri
|
|
-D gbm=enabled
|
|
-D egl=enabled
|
|
-D platforms=x11,wayland
|
|
GALLIUM_ST: >
|
|
-D dri3=enabled
|
|
-D gallium-extra-hud=true
|
|
-D gallium-vdpau=enabled
|
|
-D gallium-omx=disabled
|
|
-D gallium-va=enabled
|
|
-D gallium-xa=enabled
|
|
-D gallium-nine=false
|
|
-D gallium-rusticl=false
|
|
-D llvm=enabled
|
|
GALLIUM_DRIVERS: "i915,iris,nouveau,kmsro,freedreno,r300,svga,swrast,v3d,vc4,virgl,etnaviv,panfrost,lima,zink,d3d12,crocus"
|
|
VULKAN_DRIVERS: "amd,imagination-experimental,microsoft-experimental"
|
|
EXTRA_OPTION: >
|
|
-D spirv-to-dxil=true
|
|
-D osmesa=true
|
|
-D tools=all
|
|
-D intel-clc=enabled
|
|
-D intel-rt=enabled
|
|
-D imagination-srv=true
|
|
BUILDTYPE: "release"
|
|
S3_ARTIFACT_NAME: "mesa-x86_64-default-${BUILDTYPE}"
|
|
script:
|
|
- .gitlab-ci/meson/build.sh
|
|
- 'if [ -n "$MESA_CI_PERFORMANCE_ENABLED" ]; then .gitlab-ci/prepare-artifacts.sh; fi'
|
|
|
|
alpine-build-testing:
|
|
extends:
|
|
- .meson-build
|
|
- .use-alpine/x86_64_build
|
|
stage: build-x86_64
|
|
variables:
|
|
BUILDTYPE: "release"
|
|
C_ARGS: >
|
|
-Wno-error=cpp
|
|
-Wno-error=array-bounds
|
|
-Wno-error=stringop-overread
|
|
DRI_LOADERS: >
|
|
-D glx=disabled
|
|
-D gbm=enabled
|
|
-D egl=enabled
|
|
-D glvnd=disabled
|
|
-D platforms=wayland
|
|
LLVM_VERSION: "16"
|
|
GALLIUM_DRIVERS: "crocus,etnaviv,freedreno,iris,kmsro,lima,nouveau,panfrost,r300,r600,radeonsi,svga,swrast,tegra,v3d,vc4,virgl,zink"
|
|
GALLIUM_ST: >
|
|
-D dri3=enabled
|
|
-D gallium-extra-hud=true
|
|
-D gallium-vdpau=disabled
|
|
-D gallium-omx=disabled
|
|
-D gallium-va=enabled
|
|
-D gallium-xa=disabled
|
|
-D gallium-nine=true
|
|
-D gallium-rusticl=false
|
|
-D gles1=disabled
|
|
-D gles2=enabled
|
|
-D llvm=enabled
|
|
-D microsoft-clc=disabled
|
|
-D shared-llvm=enabled
|
|
UNWIND: "disabled"
|
|
VULKAN_DRIVERS: "amd,broadcom,freedreno,intel,imagination-experimental"
|
|
|
|
fedora-release:
|
|
extends:
|
|
- .meson-build
|
|
- .use-fedora/x86_64_build
|
|
variables:
|
|
BUILDTYPE: "release"
|
|
C_LINK_ARGS: >
|
|
-Wno-error=stringop-overflow
|
|
-Wno-error=stringop-overread
|
|
CPP_ARGS: >
|
|
-Wno-error=dangling-reference
|
|
-Wno-error=overloaded-virtual
|
|
CPP_LINK_ARGS: >
|
|
-Wno-error=stringop-overflow
|
|
-Wno-error=stringop-overread
|
|
DRI_LOADERS: >
|
|
-D glx=dri
|
|
-D gbm=enabled
|
|
-D egl=enabled
|
|
-D glvnd=enabled
|
|
-D platforms=x11,wayland
|
|
EXTRA_OPTION: >
|
|
-D b_lto=true
|
|
-D osmesa=true
|
|
-D selinux=true
|
|
-D tools=drm-shim,etnaviv,freedreno,glsl,intel,nir,nouveau,lima,panfrost,imagination
|
|
-D vulkan-layers=device-select,overlay
|
|
-D intel-rt=enabled
|
|
-D imagination-srv=true
|
|
-D teflon=true
|
|
GALLIUM_DRIVERS: "crocus,etnaviv,freedreno,i915,iris,kmsro,lima,nouveau,panfrost,r300,r600,radeonsi,svga,swrast,tegra,v3d,vc4,virgl,zink"
|
|
GALLIUM_ST: >
|
|
-D dri3=enabled
|
|
-D gallium-extra-hud=true
|
|
-D gallium-vdpau=enabled
|
|
-D gallium-omx=disabled
|
|
-D gallium-va=enabled
|
|
-D gallium-xa=enabled
|
|
-D gallium-nine=false
|
|
-D gallium-rusticl=true
|
|
-D gles1=disabled
|
|
-D gles2=enabled
|
|
-D llvm=enabled
|
|
-D microsoft-clc=disabled
|
|
-D shared-llvm=enabled
|
|
LLVM_VERSION: ""
|
|
UNWIND: "disabled"
|
|
VULKAN_DRIVERS: "amd,broadcom,freedreno,imagination-experimental,intel,intel_hasvk"
|
|
|
|
debian-android:
|
|
extends:
|
|
- .meson-cross
|
|
- .use-debian/android_build
|
|
- .ci-deqp-artifacts
|
|
variables:
|
|
BUILDTYPE: debug
|
|
UNWIND: "disabled"
|
|
C_ARGS: >
|
|
-Wno-error=asm-operand-widths
|
|
-Wno-error=constant-conversion
|
|
-Wno-error=enum-conversion
|
|
-Wno-error=initializer-overrides
|
|
-Wno-error=sometimes-uninitialized
|
|
CPP_ARGS: >
|
|
-Wno-error=c99-designator
|
|
-Wno-error=unused-variable
|
|
-Wno-error=unused-but-set-variable
|
|
-Wno-error=self-assign
|
|
DRI_LOADERS: >
|
|
-D glx=disabled
|
|
-D gbm=disabled
|
|
-D egl=enabled
|
|
-D platforms=android
|
|
EXTRA_OPTION: >
|
|
-D android-stub=true
|
|
-D llvm=disabled
|
|
-D platform-sdk-version=33
|
|
-D valgrind=disabled
|
|
-D android-libbacktrace=disabled
|
|
-D intel-clc=system
|
|
GALLIUM_ST: >
|
|
-D dri3=disabled
|
|
-D gallium-vdpau=disabled
|
|
-D gallium-omx=disabled
|
|
-D gallium-va=disabled
|
|
-D gallium-xa=disabled
|
|
-D gallium-nine=false
|
|
-D gallium-rusticl=false
|
|
LLVM_VERSION: "15"
|
|
PKG_CONFIG_LIBDIR: "/disable/non/android/system/pc/files"
|
|
HOST_BUILD_OPTIONS: >
|
|
-D build-tests=false
|
|
-D enable-glcpp-tests=false
|
|
-D gallium-opencl=disabled
|
|
-D gallium-drivers=
|
|
-D vulkan-drivers=
|
|
-D video-codecs=
|
|
-D glx=disabled
|
|
-D platforms=
|
|
-D intel-clc=enabled
|
|
-D install-intel-clc=true
|
|
ARTIFACTS_DEBUG_SYMBOLS: 1
|
|
S3_ARTIFACT_NAME: mesa-x86_64-android-${BUILDTYPE}
|
|
script:
|
|
- CROSS=aarch64-linux-android GALLIUM_DRIVERS=etnaviv,freedreno,lima,panfrost,vc4,v3d VULKAN_DRIVERS=freedreno,broadcom,virtio .gitlab-ci/meson/build.sh
|
|
# x86_64 build:
|
|
# Can't do Intel because gen_decoder.c currently requires libexpat, which
|
|
# is not a dependency that AOSP wants to accept. Can't do Radeon Gallium
|
|
# drivers because they requires LLVM, which we don't have an Android build
|
|
# of.
|
|
- CROSS=x86_64-linux-android GALLIUM_DRIVERS=iris,virgl VULKAN_DRIVERS=amd,intel .gitlab-ci/meson/build.sh
|
|
- .gitlab-ci/prepare-artifacts.sh
|
|
|
|
.meson-cross:
|
|
extends:
|
|
- .meson-build
|
|
stage: build-misc
|
|
variables:
|
|
UNWIND: "disabled"
|
|
DRI_LOADERS: >
|
|
-D glx=dri
|
|
-D gbm=enabled
|
|
-D egl=enabled
|
|
-D platforms=x11,wayland
|
|
-D osmesa=false
|
|
GALLIUM_ST: >
|
|
-D dri3=enabled
|
|
-D gallium-vdpau=disabled
|
|
-D gallium-omx=disabled
|
|
-D gallium-va=disabled
|
|
-D gallium-xa=disabled
|
|
-D gallium-nine=false
|
|
|
|
.meson-arm:
|
|
extends:
|
|
- .meson-cross
|
|
- .use-debian/arm64_build
|
|
needs:
|
|
- debian/arm64_build
|
|
variables:
|
|
VULKAN_DRIVERS: freedreno,broadcom
|
|
GALLIUM_DRIVERS: "etnaviv,freedreno,kmsro,lima,nouveau,panfrost,swrast,tegra,v3d,vc4,zink"
|
|
BUILDTYPE: "debugoptimized"
|
|
tags:
|
|
- aarch64
|
|
|
|
debian-arm32:
|
|
extends:
|
|
- .meson-arm
|
|
- .ci-deqp-artifacts
|
|
variables:
|
|
CROSS: armhf
|
|
EXTRA_OPTION: >
|
|
-D llvm=disabled
|
|
-D valgrind=disabled
|
|
S3_ARTIFACT_NAME: mesa-arm32-default-${BUILDTYPE}
|
|
# The strip command segfaults, failing to strip the binary and leaving
|
|
# tempfiles in our artifacts.
|
|
ARTIFACTS_DEBUG_SYMBOLS: 1
|
|
script:
|
|
- .gitlab-ci/meson/build.sh
|
|
- .gitlab-ci/prepare-artifacts.sh
|
|
|
|
debian-arm32-asan:
|
|
extends:
|
|
- debian-arm32
|
|
variables:
|
|
EXTRA_OPTION: >
|
|
-D llvm=disabled
|
|
-D b_sanitize=address
|
|
-D valgrind=disabled
|
|
-D tools=dlclose-skip
|
|
ARTIFACTS_DEBUG_SYMBOLS: 1
|
|
S3_ARTIFACT_NAME: mesa-arm32-asan-${BUILDTYPE}
|
|
MESON_TEST_ARGS: "--no-suite mesa:compiler --no-suite mesa:util"
|
|
|
|
debian-arm64:
|
|
extends:
|
|
- .meson-arm
|
|
- .ci-deqp-artifacts
|
|
variables:
|
|
C_ARGS: >
|
|
-Wno-error=array-bounds
|
|
-Wno-error=stringop-truncation
|
|
VULKAN_DRIVERS: "freedreno,broadcom,panfrost,imagination-experimental"
|
|
EXTRA_OPTION: >
|
|
-D llvm=disabled
|
|
-D valgrind=disabled
|
|
-D imagination-srv=true
|
|
-D perfetto=true
|
|
-D freedreno-kmds=msm,virtio
|
|
-D teflon=true
|
|
S3_ARTIFACT_NAME: mesa-arm64-default-${BUILDTYPE}
|
|
script:
|
|
- .gitlab-ci/meson/build.sh
|
|
- .gitlab-ci/prepare-artifacts.sh
|
|
|
|
debian-arm64-asan:
|
|
extends:
|
|
- debian-arm64
|
|
variables:
|
|
EXTRA_OPTION: >
|
|
-D llvm=disabled
|
|
-D b_sanitize=address
|
|
-D valgrind=disabled
|
|
-D tools=dlclose-skip
|
|
ARTIFACTS_DEBUG_SYMBOLS: 1
|
|
S3_ARTIFACT_NAME: mesa-arm64-asan-${BUILDTYPE}
|
|
MESON_TEST_ARGS: "--no-suite mesa:compiler"
|
|
|
|
debian-arm64-build-test:
|
|
extends:
|
|
- .meson-arm
|
|
- .ci-deqp-artifacts
|
|
variables:
|
|
VULKAN_DRIVERS: "amd"
|
|
EXTRA_OPTION: >
|
|
-Dtools=panfrost,imagination
|
|
|
|
debian-arm64-release:
|
|
extends:
|
|
- debian-arm64
|
|
variables:
|
|
BUILDTYPE: release
|
|
S3_ARTIFACT_NAME: mesa-arm64-default-${BUILDTYPE}
|
|
C_ARGS: >
|
|
-Wno-error=array-bounds
|
|
-Wno-error=stringop-truncation
|
|
-Wno-error=stringop-overread
|
|
script:
|
|
- .gitlab-ci/meson/build.sh
|
|
- 'if [ -n "$MESA_CI_PERFORMANCE_ENABLED" ]; then .gitlab-ci/prepare-artifacts.sh; fi'
|
|
|
|
debian-clang:
|
|
extends: .meson-build
|
|
variables:
|
|
BUILDTYPE: debug
|
|
LLVM_VERSION: 15
|
|
UNWIND: "enabled"
|
|
C_ARGS: >
|
|
-Wno-error=constant-conversion
|
|
-Wno-error=enum-conversion
|
|
-Wno-error=initializer-overrides
|
|
-Wno-error=sometimes-uninitialized
|
|
-Werror=misleading-indentation
|
|
CPP_ARGS: >
|
|
-Wno-error=c99-designator
|
|
-Wno-error=overloaded-virtual
|
|
-Wno-error=tautological-constant-out-of-range-compare
|
|
-Wno-error=unused-private-field
|
|
DRI_LOADERS: >
|
|
-D glx=dri
|
|
-D gbm=enabled
|
|
-D egl=enabled
|
|
-D glvnd=enabled
|
|
-D platforms=x11,wayland
|
|
GALLIUM_ST: >
|
|
-D dri3=enabled
|
|
-D gallium-extra-hud=true
|
|
-D gallium-vdpau=enabled
|
|
-D gallium-omx=bellagio
|
|
-D gallium-va=enabled
|
|
-D gallium-xa=enabled
|
|
-D gallium-nine=true
|
|
-D gles1=enabled
|
|
-D gles2=enabled
|
|
-D llvm=enabled
|
|
-D microsoft-clc=disabled
|
|
-D shared-llvm=enabled
|
|
-D opencl-spirv=true
|
|
-D shared-glapi=enabled
|
|
GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink,radeonsi,tegra,d3d12,crocus,i915,asahi"
|
|
VULKAN_DRIVERS: intel,amd,freedreno,broadcom,virtio,swrast,panfrost,imagination-experimental,microsoft-experimental,nouveau
|
|
EXTRA_OPTION:
|
|
-D spirv-to-dxil=true
|
|
-D osmesa=true
|
|
-D imagination-srv=true
|
|
-D tools=drm-shim,etnaviv,freedreno,glsl,intel,intel-ui,nir,nouveau,lima,panfrost,asahi,imagination
|
|
-D vulkan-layers=device-select,overlay
|
|
-D build-aco-tests=true
|
|
-D intel-clc=enabled
|
|
-D intel-rt=enabled
|
|
-D imagination-srv=true
|
|
-D teflon=true
|
|
CC: clang-${LLVM_VERSION}
|
|
CXX: clang++-${LLVM_VERSION}
|
|
|
|
debian-clang-release:
|
|
extends: debian-clang
|
|
variables:
|
|
BUILDTYPE: "release"
|
|
DRI_LOADERS: >
|
|
-D glx=xlib
|
|
-D platforms=x11,wayland
|
|
GALLIUM_ST: >
|
|
-D dri3=enabled
|
|
-D gallium-extra-hud=true
|
|
-D gallium-vdpau=enabled
|
|
-D gallium-omx=bellagio
|
|
-D gallium-va=enabled
|
|
-D gallium-xa=enabled
|
|
-D gallium-nine=true
|
|
-D gles1=disabled
|
|
-D gles2=disabled
|
|
-D llvm=enabled
|
|
-D microsoft-clc=disabled
|
|
-D shared-llvm=enabled
|
|
-D opencl-spirv=true
|
|
-D shared-glapi=disabled
|
|
|
|
windows-msvc:
|
|
extends:
|
|
- .build-windows
|
|
- .use-windows_build_msvc
|
|
- .windows-build-rules
|
|
stage: build-misc
|
|
script:
|
|
- pwsh -ExecutionPolicy RemoteSigned .\.gitlab-ci\windows\mesa_build.ps1
|
|
artifacts:
|
|
paths:
|
|
- _build/meson-logs/*.txt
|
|
- _install/
|
|
|
|
debian-vulkan:
|
|
extends: .meson-build
|
|
variables:
|
|
BUILDTYPE: debug
|
|
LLVM_VERSION: 15
|
|
UNWIND: "disabled"
|
|
DRI_LOADERS: >
|
|
-D glx=disabled
|
|
-D gbm=disabled
|
|
-D egl=disabled
|
|
-D opengl=false
|
|
-D gles1=disabled
|
|
-D gles2=disabled
|
|
-D platforms=x11,wayland
|
|
-D osmesa=false
|
|
GALLIUM_ST: >
|
|
-D dri3=enabled
|
|
-D gallium-vdpau=disabled
|
|
-D gallium-omx=disabled
|
|
-D gallium-va=disabled
|
|
-D gallium-xa=disabled
|
|
-D gallium-nine=false
|
|
-D gallium-rusticl=false
|
|
-D b_sanitize=undefined
|
|
-D c_args=-fno-sanitize-recover=all
|
|
-D cpp_args=-fno-sanitize-recover=all
|
|
UBSAN_OPTIONS: "print_stacktrace=1"
|
|
VULKAN_DRIVERS: amd,broadcom,freedreno,intel,intel_hasvk,panfrost,virtio,imagination-experimental,microsoft-experimental,nouveau
|
|
EXTRA_OPTION: >
|
|
-D vulkan-layers=device-select,overlay
|
|
-D build-aco-tests=true
|
|
-D intel-rt=disabled
|
|
-D imagination-srv=true
|
|
|
|
debian-x86_32:
|
|
extends:
|
|
- .meson-cross
|
|
- .use-debian/x86_32_build
|
|
variables:
|
|
BUILDTYPE: debug
|
|
CROSS: i386
|
|
VULKAN_DRIVERS: intel,amd,swrast,virtio
|
|
GALLIUM_DRIVERS: "iris,nouveau,r300,r600,radeonsi,swrast,virgl,zink,crocus,d3d12"
|
|
LLVM_VERSION: 15
|
|
EXTRA_OPTION: >
|
|
-D vulkan-layers=device-select,overlay
|
|
-D intel-clc=system
|
|
HOST_BUILD_OPTIONS: >
|
|
-D build-tests=false
|
|
-D enable-glcpp-tests=false
|
|
-D gallium-opencl=disabled
|
|
-D gallium-drivers=
|
|
-D vulkan-drivers=
|
|
-D video-codecs=
|
|
-D glx=disabled
|
|
-D platforms=
|
|
-D intel-clc=enabled
|
|
-D install-intel-clc=true
|
|
|
|
debian-s390x:
|
|
extends:
|
|
- debian-ppc64el
|
|
- .use-debian/s390x_build
|
|
- .s390x-rules
|
|
tags:
|
|
- kvm
|
|
variables:
|
|
CROSS: s390x
|
|
GALLIUM_DRIVERS: "swrast,zink"
|
|
LLVM_VERSION: 15
|
|
VULKAN_DRIVERS: "swrast"
|
|
|
|
debian-ppc64el:
|
|
extends:
|
|
- .meson-cross
|
|
- .use-debian/ppc64el_build
|
|
- .ppc64el-rules
|
|
variables:
|
|
BUILDTYPE: debug
|
|
CROSS: ppc64el
|
|
GALLIUM_DRIVERS: "nouveau,radeonsi,swrast,virgl,zink"
|
|
VULKAN_DRIVERS: "amd,swrast"
|