variables:
  FDO_UPSTREAM_REPO: mesa/mesa
  CI_PRE_CLONE_SCRIPT: |-
          set -o xtrace
          /usr/bin/wget -q -O- ${CI_PROJECT_URL}/-/raw/${CI_COMMIT_SHA}/.gitlab-ci/download-git-cache.sh | sh -
          set +o xtrace

include:
  - project: 'freedesktop/ci-templates'
    ref: &ci-templates-sha 52dd4a94044449c8481d18dcdc221a3c636366d2
    file: '/templates/debian.yml'
  - project: 'freedesktop/ci-templates'
    ref: *ci-templates-sha
    file: '/templates/alpine.yml'
  - local: '.gitlab-ci/lava-gitlab-ci.yml'
  - local: '.gitlab-ci/test-source-dep.yml'

stages:
  - container
  - container-2
  - sanity
  - git-archive
  - deploy
  - meson-x86_64
  - scons
  - meson-misc
  - llvmpipe
  - softpipe
  - freedreno
  - panfrost
  - radv
  - lima
  - virgl
  - radeonsi
  - success

# Generic rule to not run the job during scheduled pipelines
# ----------------------------------------------------------
.scheduled_pipelines-rules:
  rules: &ignore_scheduled_pipelines
    if: &is-scheduled-pipeline '$CI_PIPELINE_SOURCE == "schedule"'
    when: never

# YAML anchors for rule conditions
# --------------------------------
.rules-anchors:
  rules:
    # For Marge Bot
    - if: &is-for-marge '$GITLAB_USER_LOGIN == "marge-bot"'
      when: never
    # Forked project branch
    - if: &is-forked-branch '$CI_PROJECT_NAMESPACE != "mesa" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_COMMIT_REF_NAME'
      when: manual
    # Forked project branch / pre-merge pipeline
    - if: &is-forked-branch-or-pre-merge '$CI_PROJECT_NAMESPACE != "mesa" || $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == $CI_COMMIT_REF_NAME'
      when: manual
    # Pipeline runs for the master branch of the main project
    - if: &is-main-master '$CI_PROJECT_NAMESPACE == "mesa" && $CI_COMMIT_REF_NAME == "master" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != "master"'
      when: always
    # Post-merge pipeline
    - if: &is-post-merge '$CI_PROJECT_NAMESPACE == "mesa" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_COMMIT_REF_NAME'
      when: on_success
    # Post-merge pipeline, not for Marge Bot
    - if: &is-post-merge-not-for-marge '$CI_PROJECT_NAMESPACE == "mesa" && $GITLAB_USER_LOGIN != "marge-bot" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_COMMIT_REF_NAME'
      when: on_success
    # Pre-merge pipeline
    - if: &is-pre-merge '$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == $CI_COMMIT_REF_NAME'
      when: on_success
    # Pre-merge pipeline for Marge Bot
    - if: &is-pre-merge-for-marge '$GITLAB_USER_LOGIN == "marge-bot" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == $CI_COMMIT_REF_NAME'
      when: on_success


.docs-base:
  extends: .ci-run-policy
  image: alpine
  script:
  - apk --no-cache add py3-pip graphviz
  - pip3 install sphinx sphinx_rtd_theme
  - sphinx-build -b html docs public

pages:
  extends: .docs-base
  stage: deploy
  artifacts:
    paths:
    - public
  needs: []
  rules:
    - *ignore_scheduled_pipelines
    - if: *is-main-master
      changes: &docs-or-ci
      - docs/**/*
      - .gitlab-ci.yml
      when: always
    # Other cases default to never

test-docs:
  extends: .docs-base
  # Cancel job if a newer commit is pushed to the same branch
  interruptible: true
  stage: deploy
  needs: []
  rules:
    - *ignore_scheduled_pipelines
    - if: *is-main-master
      changes: *docs-or-ci
      when: never
    - if: *is-pre-merge-for-marge
      changes: *docs-or-ci
      when: on_success
    - if: *is-post-merge-not-for-marge
      changes: *docs-or-ci
      when: on_success
    - if: *is-forked-branch-or-pre-merge
      changes: *docs-or-ci
      when: manual
    # Other cases default to never

# When to automatically run the CI
.ci-run-policy:
  rules:
    - *ignore_scheduled_pipelines
    # If any files affecting the pipeline are changed, build/test jobs run
    # automatically once all dependency jobs have passed
    - changes: &all_paths
      - VERSION
      - bin/git_sha1_gen.py
      - bin/install_megadrivers.py
      - bin/meson_get_version.py
      - bin/symbols-check.py
      # GitLab CI
      - .gitlab-ci.yml
      - .gitlab-ci/**/*
      # Meson
      - meson*
      - build-support/**/*
      - subprojects/**/*
      # SCons
      - SConstruct
      - scons/**/*
      - common.py
      # Source code
      - include/**/*
      - src/**/*
      when: on_success
    # Otherwise, build/test jobs won't run
    - when: never
  retry:
    max: 2
    when:
      - runner_system_failure

success:
  stage: success
  image: debian:stable-slim
  rules:
    - *ignore_scheduled_pipelines
    - if: *is-post-merge
      when: never
    - if: *is-for-marge
      changes: *docs-or-ci
      when: never
    - changes: *all_paths
      when: never
    - if: *is-pre-merge
      when: on_success
  variables:
    GIT_STRATEGY: none
  script:
    - echo "Dummy job to make sure every merge request pipeline runs at least one job"


.ci-deqp-artifacts:
  artifacts:
    name: "mesa_${CI_JOB_NAME}"
    when: always
    untracked: false
    paths:
      # Watch out!  Artifacts are relative to the build dir.
      # https://gitlab.com/gitlab-org/gitlab-ce/commit/8788fb925706cad594adf6917a6c5f6587dd1521
      - artifacts

# Build the CI docker images.
#
# FDO_DISTRIBUTION_TAG is the tag of the docker image used by later stage jobs. If the
# image doesn't exist yet, the container stage job generates it.
#
# In order to generate a new image, one should generally change the tag.
# While removing the image from the registry would also work, that's not
# recommended except for ephemeral images during development: Replacing
# an image after a significant amount of time might pull in newer
# versions of gcc/clang or other packages, which might break the build
# with older commits using the same tag.
#
# After merging a change resulting in generating a new image to the
# main repository, it's recommended to remove the image from the source
# repository's container registry, so that the image from the main
# repository's registry will be used there as well.

.container:
  stage: container
  extends:
    - .ci-run-policy
  rules:
    - *ignore_scheduled_pipelines
    # Run pipeline by default in the main project if any CI pipeline
    # configuration files were changed, to ensure docker images are up to date
    - if: *is-post-merge
      changes:
      - .gitlab-ci.yml
      - .gitlab-ci/**/*
      when: on_success
    # Run pipeline by default if it was triggered by Marge Bot, is for a
    # merge request, and any files affecting the pipeline were changed
    - if: *is-pre-merge-for-marge
      changes:
        *all_paths
      when: on_success
    # Run pipeline by default in the main project if it was not triggered by
    # Marge Bot, and any files affecting the pipeline were changed
    - if: *is-post-merge-not-for-marge
      changes:
        *all_paths
      when: on_success
    # Allow triggering jobs manually in other cases if any files affecting the
    # pipeline were changed
    - changes:
        *all_paths
      when: manual
    # Otherwise, container jobs won't run
    - when: never
  variables:
    FDO_DISTRIBUTION_VERSION: buster-slim
    FDO_REPO_SUFFIX: "debian/$CI_JOB_NAME"
    FDO_DISTRIBUTION_EXEC: 'env FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash .gitlab-ci/container/${CI_JOB_NAME}.sh'
    # no need to pull the whole repo to build the container image
    GIT_STRATEGY: none

# Debian 10 based x86 build image base
x86_build-base:
  extends:
    - .fdo.container-build@debian
    - .container
  variables:
    FDO_DISTRIBUTION_TAG: &x86_build-base "2020-10-06-clang10-2"

.use-x86_build-base:
  extends:
    - x86_build-base
    - .ci-run-policy
  stage: container-2
  variables:
    BASE_TAG: *x86_build-base
    FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/x86_build-base:$BASE_TAG"
  needs:
    - x86_build-base

# Debian 10 based x86 main build image
x86_build:
  extends:
    - .use-x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_build "2020-10-09-spvtools-1"

.use-x86_build:
  variables:
    TAG: *x86_build
  image: "$CI_REGISTRY_IMAGE/debian/x86_build:$TAG"
  needs:
    - x86_build

# Debian 10 based i386 cross-build image
i386_build:
  extends:
    - .use-x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &i386_build "2020-10-06-clang10-2"

.use-i386_build:
  variables:
    TAG: *i386_build
  image: "$CI_REGISTRY_IMAGE/debian/i386_build:$TAG"
  needs:
    - i386_build

# Debian 10 based ppc64el cross-build image
ppc64el_build:
  extends:
    - .use-x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &ppc64el_build "2020-10-06-clang10-2"

.use-ppc64el_build:
  variables:
    TAG: *ppc64el_build
  image: "$CI_REGISTRY_IMAGE/debian/ppc64el_build:$TAG"
  needs:
    - ppc64el_build

# Debian 10 based s390x cross-build image
s390x_build:
  extends:
    - .use-x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &s390x_build "2020-10-06-clang10-2"

.use-s390x_build:
  variables:
    TAG: *s390x_build
  image: "$CI_REGISTRY_IMAGE/debian/s390x_build:$TAG"
  needs:
    - s390x_build

# Android NDK cross-build image
android_build:
  extends:
    - .use-x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &android_build "2020-10-05-shrink"

.use-android_build:
  variables:
    TAG: *android_build
  image: "$CI_REGISTRY_IMAGE/debian/android_build:$TAG"
  needs:
    - android_build

# Debian 10 based x86 test image base
x86_test-base:
  extends: x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_test-base "2020-10-06-clang10-2"

.use-x86_test-base:
  extends:
    - x86_build-base
    - .ci-run-policy
  stage: container-2
  variables:
    BASE_TAG: *x86_test-base
    FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/x86_test-base:$BASE_TAG"
  needs:
    - x86_test-base

# Debian 10 based x86 test image for GL
x86_test-gl:
  extends: .use-x86_test-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-10-09-spvtools-1"

# Debian 10 based x86 test image for VK
x86_test-vk:
  extends: .use-x86_test-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_test-vk "2020-10-06-clang10-2"

# Debian 9 based x86 build image (old LLVM)
x86_build_old:
  extends: x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_build_old "2020-08-13-gold"
    FDO_DISTRIBUTION_VERSION: stretch-slim

.use-x86_build_old:
  variables:
    TAG: *x86_build_old
  image: "$CI_REGISTRY_IMAGE/debian/x86_build_old:$TAG"
  needs:
    - x86_build_old

# Debian 10 based ARM build image
arm_build:
  extends:
    - .fdo.container-build@debian@arm64v8
    - .container
  variables:
    FDO_DISTRIBUTION_TAG: &arm_build "2020-09-10-libdrm"

.use-arm_build:
  variables:
    TAG: *arm_build
  image: "$CI_REGISTRY_IMAGE/debian/arm_build:$TAG"
  needs:
    - arm_build

# Debian 10 based x86 baremetal image base
arm_test-base:
  extends:
    - .fdo.container-build@debian
    - .container
  variables:
    FDO_DISTRIBUTION_TAG: &arm_test-base "2020-10-06-clang10-2"

.use-arm_test-base:
  extends:
    - arm_test-base
    - .ci-run-policy
  stage: container-2
  variables:
    BASE_TAG: *arm_test-base
    FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/arm_test-base:$BASE_TAG"
  needs:
    - arm_test-base

# x86 image with ARM64 rootfs for baremetal testing.
arm64_test:
  extends:
    - .use-arm_test-base
  variables:
    FDO_DISTRIBUTION_TAG: &arm64_test "2020-09-28-deqp-surfaceless-fix"

.use-arm64_test:
  variables:
    TAG: *arm64_test
  image: "$CI_REGISTRY_IMAGE/debian/arm64_test:$TAG"
  needs:
    - arm64_test

# Native Windows docker builds
#
# Unlike the above Linux-based builds - including MinGW/SCons builds which
# cross-compile for Windows - which use the freedesktop ci-templates, we
# cannot use the same scheme here. As Windows lacks support for
# Docker-in-Docker, and Podman does not run natively on Windows, we have
# to open-code much of the same ourselves.
#
# This is achieved by first running in a native Windows shell instance
# (host PowerShell) in the container stage to build and push the image,
# then in the build stage by executing inside Docker.

.windows-docker-vs2019:
  variables:
    WINDOWS_TAG: "2020-05-05-llvm"
    WINDOWS_IMAGE: "$CI_REGISTRY_IMAGE/windows/x64_build:$WINDOWS_TAG"
    WINDOWS_UPSTREAM_IMAGE: "$CI_REGISTRY/$FDO_UPSTREAM_REPO/windows/x64_build:$WINDOWS_TAG"

.windows_build_vs2019:
  extends:
    - .container
    - .windows-docker-vs2019
  stage: container
  variables:
    GIT_STRATEGY: fetch # we do actually need the full repository though
  timeout: 4h # LLVM takes ages
  tags:
    - windows
    - shell
    - "1809"
    - mesa
  script:
    - .\.gitlab-ci\windows\mesa_container.ps1 $CI_REGISTRY $CI_REGISTRY_USER $CI_REGISTRY_PASSWORD $WINDOWS_IMAGE $WINDOWS_UPSTREAM_IMAGE

.use-windows_build_vs2019:
  extends: .windows-docker-vs2019
  image: "$WINDOWS_IMAGE"
  needs:
    - windows_build_vs2019

git_archive:
  extends: .fdo.container-build@alpine
  stage: container
  rules:
    - if: *is-scheduled-pipeline
      when: always
    - if: *is-pre-merge
      when: on_success
    - if: *is-forked-branch
      when: manual
    # Other cases default to never
  variables:
    FDO_REPO_SUFFIX: &git-archive-suffix "alpine/git_archive"
    FDO_DISTRIBUTION_EXEC: 'pip3 install git+http://gitlab.freedesktop.org/freedesktop/ci-templates@6f5af7e5574509726c79109e3c147cee95e81366'
    # no need to pull the whole repo to build the container image
    GIT_STRATEGY: none
    FDO_DISTRIBUTION_TAG: &git-archive-tag "2020-07-07"
    FDO_DISTRIBUTION_PACKAGES: git py3-pip

.use-git_archive:
  extends: .fdo.suffixed-image@alpine
  variables:
    FDO_DISTRIBUTION_TAG: *git-archive-tag
    FDO_REPO_SUFFIX: *git-archive-suffix
  needs:
    - git_archive


# Git archive

make git archive:
  extends: .use-git_archive
  stage: git-archive
  rules:
    - if: *is-scheduled-pipeline
      when: on_success
  # ensure we are running on packet
  tags:
    - packet.net
  script:
    # compress the current folder
    - tar -cvzf ../$CI_PROJECT_NAME.tar.gz .

    # login with the JWT token
    - ci-fairy minio login $CI_JOB_JWT
    - ci-fairy minio cp ../$CI_PROJECT_NAME.tar.gz minio://minio-packet.freedesktop.org/git-cache/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/$CI_PROJECT_NAME.tar.gz


# Sanity checks of MR settings and commit logs
.sanity-check:
  extends: .use-git_archive
  stage: sanity
  artifacts:
    when: on_failure
    reports:
      junit: check-*.xml

check mr:
  extends: .sanity-check
  rules:
    - if: *is-pre-merge
      when: on_success
    # Other cases default to never
  variables:
    GIT_STRATEGY: none
  script:
    - ci-fairy check-merge-request --require-allow-collaboration --junit-xml=check-merge-request.xml

.check commits:
  extends: .sanity-check
  rules:
    - if: *is-pre-merge
      when: on_success
    - if: *is-forked-branch
      when: manual
    # Other cases default to never
  script:
    - ci-fairy check-commits --junit-xml=check-commits.xml


# BUILD

# Shared between windows and Linux
.build-common:
  extends: .ci-run-policy
  # Cancel job if a newer commit is pushed to the same branch
  interruptible: true
  artifacts:
    name: "mesa_${CI_JOB_NAME}"
    when: always
    paths:
      - _build/meson-logs/*.txt
      # scons:
      - build/*/config.log
      - shader-db

# 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:
    - export PATH="/usr/lib/ccache:$PATH"
    - export CCACHE_BASEDIR="$PWD"
    - ccache --show-stats
  after_script:
    - ccache --show-stats

.build-windows:
  extends: .build-common
  tags:
    - windows
    - docker
    - "1809"
    - mesa
  cache:
    key: ${CI_JOB_NAME}
    paths:
      - subprojects/packagecache

.meson-build:
  extends:
    - .build-linux
    - .use-x86_build
  stage: meson-x86_64
  variables:
    LLVM_VERSION: 10
  script:
    - .gitlab-ci/meson-build.sh

.scons-build:
  extends:
    - .build-linux
    - .use-x86_build
  stage: scons
  script:
    - env SCONSFLAGS="-j${FDO_CI_CONCURRENT:-4}" .gitlab-ci/scons-build.sh

meson-testing:
  extends:
    - .meson-build
    - .ci-deqp-artifacts
  variables:
    UNWIND: "enabled"
    DRI_LOADERS: >
      -D glx=dri
      -D gbm=enabled
      -D egl=enabled
      -D platforms=x11
    GALLIUM_ST: >
      -D dri3=enabled
    GALLIUM_DRIVERS: "swrast,virgl,radeonsi"
    VULKAN_DRIVERS: amd
    BUILDTYPE: "debugoptimized"
    EXTRA_OPTION: >
      -D werror=true
    UPLOAD_FOR_LAVA: 1
    DEBIAN_ARCH: amd64
  script:
    - .gitlab-ci/meson-build.sh
    - .gitlab-ci/prepare-artifacts.sh

meson-clover-testing:
  extends:
    - .meson-build
    - .ci-deqp-artifacts
  variables:
    UNWIND: "enabled"
    LLVM_VERSION: 10
    DRI_LOADERS: >
      -D glx=disabled
      -D egl=disabled
      -D gbm=disabled
    GALLIUM_ST: >
      -D gallium-opencl=icd
      -D opencl-spirv=true
    GALLIUM_DRIVERS: "swrast"
    BUILDTYPE: "debugoptimized"
  script:
    - .gitlab-ci/meson-build.sh
    - .gitlab-ci/prepare-artifacts.sh

meson-gallium:
  extends: .meson-build
  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-extra-hud=true
      -D gallium-vdpau=enabled
      -D gallium-xvmc=enabled
      -D gallium-omx=bellagio
      -D gallium-va=enabled
      -D gallium-xa=enabled
      -D gallium-nine=true
      -D gallium-opencl=disabled
    GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,swr,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink"
    VULKAN_DRIVERS: swrast
    EXTRA_OPTION: >
      -D osmesa=gallium
      -D tools=all
      -D werror=true
  script:
    - .gitlab-ci/meson-build.sh
    - .gitlab-ci/run-shader-db.sh
    - src/freedreno/.gitlab-ci/run-fdtools.sh

# Test a release build with -Werror so new warnings don't sneak in.
meson-release:
  extends: .meson-build
  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-extra-hud=true
      -D gallium-vdpau=enabled
      -D gallium-xvmc=disabled
      -D gallium-omx=disabled
      -D gallium-va=enabled
      -D gallium-xa=enabled
      -D gallium-nine=false
      -D gallium-opencl=disabled
      -D llvm=false
    GALLIUM_DRIVERS: "nouveau,kmsro,r300,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink"
    BUILDTYPE: "release"
    EXTRA_OPTION: >
      -D osmesa=none
      -D tools=all
      -D werror=true
  script:
    - .gitlab-ci/meson-build.sh

meson-classic:
  extends: .meson-build
  variables:
    UNWIND: "enabled"
    DRI_LOADERS: >
      -D glx=dri
      -D gbm=enabled
      -D egl=enabled
      -D platforms=x11,wayland,drm,surfaceless
    DRI_DRIVERS: "auto"
    EXTRA_OPTION: >
      -D osmesa=classic
      -D tools=all
      -D werror=true

meson-android:
  extends:
    - .meson-cross
    - .use-android_build
  variables:
    UNWIND: "disabled"
    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=26
    GALLIUM_ST: >
      -D dri3=disabled
      -D gallium-vdpau=disabled
      -D gallium-xvmc=disabled
      -D gallium-omx=disabled
      -D gallium-va=disabled
      -D gallium-xa=disabled
      -D gallium-nine=false
      -D gallium-opencl=disabled
    LLVM_VERSION: ""
  script:
    # arm64 build: Can't build v3d/vc4 because they require expat for v3d_decode.
    - PKG_CONFIG_PATH=/usr/local/lib/aarch64-linux-android/pkgconfig/:/android-ndk-r21d/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/lib/aarch64-linux-android/pkgconfig/ CROSS=aarch64-linux-android GALLIUM_DRIVERS=etnaviv,freedreno,lima,panfrost VULKAN_DRIVERS=freedreno .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 because
    # it requires LLVM, which we don't have an Android build of.
    # - PKG_CONFIG_PATH=/usr/local/lib/x86_64-linux-android/pkgconfig/ CROSS=x86_64-linux-android GALLIUM_DRIVERS=iris VULKAN_DRIVERS=intel .gitlab-ci/meson-build.sh

.meson-cross:
  extends:
    - .meson-build
  stage: meson-misc
  variables:
    UNWIND: "disabled"
    DRI_LOADERS: >
      -D glx=disabled
      -D gbm=disabled
      -D egl=enabled
      -D platforms=[]
      -D osmesa=none
    GALLIUM_ST: >
      -D dri3=disabled
      -D gallium-vdpau=disabled
      -D gallium-xvmc=disabled
      -D gallium-omx=disabled
      -D gallium-va=disabled
      -D gallium-xa=disabled
      -D gallium-nine=false
    LLVM_VERSION: "8"

.meson-arm:
  extends:
    - .meson-cross
    - .use-arm_build
  variables:
    VULKAN_DRIVERS: freedreno,broadcom
    GALLIUM_DRIVERS: "etnaviv,freedreno,kmsro,lima,nouveau,panfrost,swrast,tegra,v3d,vc4"
    BUILDTYPE: "debugoptimized"
  tags:
    - aarch64

meson-armhf:
  extends:
    - .meson-arm
    - .ci-deqp-artifacts
  variables:
    CROSS: armhf
    LLVM_VERSION: "7"
    EXTRA_OPTION: >
      -D llvm=disabled
    UPLOAD_FOR_LAVA: 1
    DEBIAN_ARCH: armhf
  script:
    - .gitlab-ci/meson-build.sh
    - .gitlab-ci/prepare-artifacts.sh

meson-arm64:
  extends:
    - .meson-arm
    - .ci-deqp-artifacts
  variables:
    VULKAN_DRIVERS: "freedreno,broadcom"
    EXTRA_OPTION: >
      -D llvm=disabled
    UPLOAD_FOR_LAVA: 1
    DEBIAN_ARCH: arm64
  script:
    - .gitlab-ci/meson-build.sh
    - .gitlab-ci/prepare-artifacts.sh

meson-arm64-build-test:
  extends:
    - .meson-arm
    - .ci-deqp-artifacts
  variables:
    VULKAN_DRIVERS: "amd"
    EXTRA_OPTION: >
      -Dtools=panfrost
      -D werror=true
  script:
    - .gitlab-ci/meson-build.sh

meson-clang:
  extends: .meson-build
  variables:
    UNWIND: "enabled"
    DRI_LOADERS: >
      -D glvnd=true
    DRI_DRIVERS: "auto"
    GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,swr,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink,radeonsi,tegra"
    VULKAN_DRIVERS: intel,amd,freedreno,broadcom
    CC: "ccache clang-10"
    CXX: "ccache clang++-10"

.meson-windows-vs2019:
  extends:
    - .build-windows
    - .use-windows_build_vs2019
  stage: meson-misc
  script:
    - . .\.gitlab-ci\windows\mesa_build.ps1

scons-win64:
  extends: .scons-build
  variables:
    SCONS_TARGET: platform=windows machine=x86_64 debug=1
    SCONS_CHECK_COMMAND: "true"
  allow_failure: true

meson-clover:
  extends: .meson-build
  variables:
    UNWIND: "enabled"
    DRI_LOADERS: >
      -D glx=disabled
      -D egl=disabled
      -D gbm=disabled
    GALLIUM_DRIVERS: "r600,radeonsi"
    GALLIUM_ST: >
      -D dri3=disabled
      -D gallium-vdpau=disabled
      -D gallium-xvmc=disabled
      -D gallium-omx=disabled
      -D gallium-va=disabled
      -D gallium-xa=disabled
      -D gallium-nine=false
      -D gallium-opencl=icd
  script:
    - LLVM_VERSION=8 .gitlab-ci/meson-build.sh
    - LLVM_VERSION=9 .gitlab-ci/meson-build.sh
    - .gitlab-ci/meson-build.sh

meson-vulkan:
  extends: .meson-build
  variables:
    UNWIND: "disabled"
    DRI_LOADERS: >
      -D glx=disabled
      -D gbm=disabled
      -D egl=disabled
      -D platforms=x11,wayland
      -D osmesa=none
    GALLIUM_ST: >
      -D dri3=enabled
      -D gallium-vdpau=disabled
      -D gallium-xvmc=disabled
      -D gallium-omx=disabled
      -D gallium-va=disabled
      -D gallium-xa=disabled
      -D gallium-nine=false
      -D gallium-opencl=disabled
      -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: intel,amd,freedreno,broadcom
    EXTRA_OPTION: >
      -D vulkan-overlay-layer=true
      -D build-aco-tests=true
      -D werror=true

meson-i386:
  extends:
    - .meson-cross
    - .use-i386_build
  variables:
    CROSS: i386
    VULKAN_DRIVERS: intel,amd
    GALLIUM_DRIVERS: "iris,r300,radeonsi,swrast,virgl"
    EXTRA_OPTION: >
      -D vulkan-overlay-layer=true
      -D werror=true

meson-s390x:
  extends:
    - .meson-cross
    - .use-s390x_build
  tags:
    - kvm
  variables:
    CROSS: s390x
    EXTRA_OPTION: >
      -D werror=true
    GALLIUM_DRIVERS: "swrast"

meson-ppc64el:
  extends:
    - meson-s390x
    - .use-ppc64el_build
  variables:
    CROSS: ppc64el
    EXTRA_OPTION: ""
    GALLIUM_DRIVERS: "nouveau,radeonsi,swrast,virgl"
    VULKAN_DRIVERS: "amd"

meson-mingw32-x86_64:
  extends: .meson-build
  stage: meson-misc
  variables:
    UNWIND: "disabled"
    DRI_DRIVERS: ""
    GALLIUM_DRIVERS: "swrast"
    EXTRA_OPTION: >
      -Dllvm=disabled
      -Dosmesa=gallium
      --cross-file=.gitlab-ci/x86_64-w64-mingw32

.test:
  extends:
    - .ci-run-policy
  # Cancel job if a newer commit is pushed to the same branch
  interruptible: true
  variables:
    GIT_STRATEGY: none # testing doesn't build anything from source
  before_script:
    # Note: Build dir (and thus install) may be dirty due to GIT_STRATEGY
    - rm -rf install
    - tar -xf artifacts/install.tar
    - LD_LIBRARY_PATH=install/lib find install/lib -name "*.so" -print -exec ldd {} \;
  artifacts:
    when: always
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - results/

.use-x86_test-gl:
  extends:
    - .test
  variables:
    TAG: *x86_test-gl
  image: "$CI_REGISTRY_IMAGE/debian/x86_test-gl:$TAG"
  needs:
    - x86_test-gl

.test-gl:
  extends:
    - .use-x86_test-gl
  needs:
    - x86_test-gl
    - meson-testing

.test-vk:
  extends:
    - .test
  variables:
    TAG: *x86_test-vk
  image: "$CI_REGISTRY_IMAGE/debian/x86_test-vk:$TAG"
  needs:
    - meson-testing
    - x86_test-vk

.test-cl:
  extends:
    - .use-x86_test-gl
  needs:
    - x86_test-gl
    - meson-clover-testing

.piglit-test:
  extends:
    - .test-gl
    - .llvmpipe-rules
  artifacts:
    when: on_failure
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - summary/
  variables:
    LIBGL_ALWAYS_SOFTWARE: 1
    PIGLIT_NO_WINDOW: 1
  script:
    - install/piglit/run.sh

piglit-cl:
  extends:
    - .piglit-test
    - .test-cl
  variables:
    LP_CL: 1
    LP_NUM_THREADS: 1
    PIGLIT_PROFILES: cl
    PIGLIT_OPTIONS: >
      -x bswap -x phatk
  script:
    - install/piglit/run_cl.sh

piglit-quick_gl:
  extends: .piglit-test
  variables:
    LP_NUM_THREADS: 0
    PIGLIT_OPTIONS: >
      --process-isolation false
      -x egl_ext_device_
      -x egl_ext_platform_device
      -x ext_timer_query@time-elapsed
      -x glx-multithread-clearbuffer
      -x glx-multithread-shader-compile
      -x max-texture-size
      -x maxsize
    PIGLIT_PROFILES: quick_gl

piglit-glslparser:
  extends: .piglit-test
  variables:
    LP_NUM_THREADS: 0
    PIGLIT_PROFILES: glslparser

piglit-quick_shader:
  extends: .piglit-test
  variables:
    LP_NUM_THREADS: 1
    PIGLIT_PROFILES: quick_shader

.deqp-test:
  variables:
    DEQP_SKIPS: deqp-default-skips.txt
  script:
    - ./install/deqp-runner.sh

.deqp-test-gl:
  extends:
    - .test-gl
    - .deqp-test

.deqp-test-vk:
  extends:
    - .test-vk
    - .deqp-test
  variables:
    DEQP_VER: vk

.fossilize-test:
  extends: .test-vk
  script:
    - ./install/fossilize-runner.sh
  artifacts:
    when: on_failure
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - results/

llvmpipe-gles2:
  variables:
    DEQP_VER: gles2
    # Don't use threads inside llvmpipe, we've already got all cores
    # busy at the deqp-runner level.
    LP_NUM_THREADS: 0
    DEQP_EXPECTED_FAILS: deqp-llvmpipe-fails.txt
    LIBGL_ALWAYS_SOFTWARE: "true"
    DEQP_EXPECTED_RENDERER: llvmpipe
  extends:
    - .deqp-test-gl
    - .llvmpipe-rules

softpipe-gles2:
  extends:
    - llvmpipe-gles2
    - .softpipe-rules
  variables:
    DEQP_EXPECTED_FAILS: deqp-softpipe-fails.txt
    DEQP_SKIPS: deqp-softpipe-skips.txt
    GALLIUM_DRIVER: "softpipe"
    DEQP_EXPECTED_RENDERER: softpipe

softpipe-gles3:
  variables:
    DEQP_VER: gles3
  extends: softpipe-gles2

softpipe-gles31:
  parallel: 2
  variables:
    DEQP_VER: gles31
  extends: softpipe-gles2

# Note that KHR-GL3* test sets include all tests from the previous
# version, so we only need to run one test list (unlike dEQP-GLES,
# where the test sets are separate).
softpipe-gl:
  variables:
    DEQP_VER: gl33
  extends:
    - softpipe-gles2

virgl-gles2-on-gl:
  variables:
    DEQP_VER: gles2
    DEQP_NO_SAVE_RESULTS: 1
    DEQP_SKIPS: deqp-virgl-gl-skips.txt
    # Don't use threads inside llvmpipe, we've already got all cores
    # busy at the deqp-runner level.
    LP_NUM_THREADS: 0
    DEQP_EXPECTED_FAILS: deqp-virgl-gl-fails.txt
    DEQP_OPTIONS: "--deqp-log-images=disable"
    LIBGL_ALWAYS_SOFTWARE: "true"
    GALLIUM_DRIVER: "virpipe"
    DEQP_EXPECTED_RENDERER: virgl
  extends:
    - .deqp-test-gl
    - .virgl-rules

virgl-gles3-on-gl:
  variables:
    DEQP_VER: gles3
    DEQP_RUNNER_OPTIONS: "--timeout 180"
  extends: virgl-gles2-on-gl

virgl-gles31-on-gl:
  parallel: 2
  variables:
    DEQP_VER: gles31
    MESA_GLES_VERSION_OVERRIDE: "3.1"
    MESA_GLSL_VERSION_OVERRIDE: "310"
    MESA_EXTENSION_OVERRIDE: "-GL_OES_tessellation_shader"
  extends: virgl-gles3-on-gl

virgl-gl30-on-gl:
  variables:
    DEQP_VER: gl30
  extends: virgl-gles2-on-gl

virgl-gl31-on-gl:
  variables:
    DEQP_VER: gl31
  extends: virgl-gles2-on-gl

virgl-gl32-on-gl:
  variables:
    DEQP_VER: gl32
  extends: virgl-gles2-on-gl

# Rules for tests that should not be present in MRs or the main
# project's pipeline (don't block marge or report red on
# mesa/mesamaster) but should be present on pipelines in personal
# branches (so you can opt in to running the flaky test when you want
# to).
.test-manual:
  rules:
    - *ignore_scheduled_pipelines
    - if: *is-forked-branch
      changes:
        *all_paths
      when: manual
    - when: never

virgl-gles2-on-gles:
  variables:
    VIRGL_HOST_API: GLES
    DEQP_EXPECTED_FAILS: deqp-virgl-gles-fails.txt
  extends:
    - virgl-gles2-on-gl
    - .test-manual

virgl-gles3-on-gles:
  variables:
    VIRGL_HOST_API: GLES
    DEQP_EXPECTED_FAILS: deqp-virgl-gles-fails.txt
  extends:
    - virgl-gles3-on-gl
    - .test-manual

virgl-gles31-on-gles:
  variables:
    VIRGL_HOST_API: GLES
    DEQP_EXPECTED_FAILS: deqp-virgl-gles-fails.txt
  extends:
    - virgl-gles31-on-gl
    - .test-manual

arm64_a630_gles2:
  extends:
    - arm64_a306_gles2
  variables:
    BM_KERNEL: /lava-files/cheza-kernel
    BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init"
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-fails.txt
    DEQP_FLAKES: deqp-freedreno-a630-flakes.txt
    GIT_STRATEGY: none
    DEQP_EXPECTED_RENDERER: FD630
    DEQP_NO_SAVE_RESULTS: ""
  tags:
    - google-freedreno-cheza
  script:
    - ./install/bare-metal/cros-servo.sh

arm64_a630_gles31:
  extends: arm64_a630_gles2
  variables:
    DEQP_VER: gles31

arm64_a630_gles3:
  extends: arm64_a630_gles2
  variables:
    DEQP_VER: gles3

# We almost always manage to lower UBOs back to constant uploads in
# the test suite, so get a little testing for it here.
arm64_a630_noubo:
  extends: arm64_a630_gles31
  variables:
    DEQP_VER: gles31
    IR3_SHADER_DEBUG: nouboopt
    DEQP_CASELIST_FILTER: "functional.*ubo"

# The driver does some guessing as to whether to render using gmem
# or bypass, and some GLES3.1 features interact with either one.
# Do a little testing with gmem and bypass forced.
arm64_a630_bypass:
  extends: arm64_a630_gles31
  variables:
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 5
    FD_MESA_DEBUG: nogmem
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-bypass-fails.txt

arm64_a630_traces:
  extends:
    - arm64_a630_gles2
  variables:
    BARE_METAL_TEST_SCRIPT: "/install/tracie-runner-gl.sh"
    DEVICE_NAME: "freedreno-a630"
    DRIVER_NAME: "freedreno"
    TRACIE_NO_UNIT_TESTS: 1
    TRACIE_UPLOAD_TO_MINIO: 1
    # This lets us run several more traces which don't use any features we're
    # missing.
    MESA_GLSL_VERSION_OVERRIDE: "460"
    MESA_GL_VERSION_OVERRIDE: "4.6"
  artifacts:
    reports:
      junit: results/junit.xml

# Along with checking gmem path, check that we don't get obvious nir
# validation failures (though it's too expensive to have it on for the
# full CTS)
arm64_a630_gmem:
  extends: arm64_a630_gles31
  variables:
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 5
    FD_MESA_DEBUG: nobypass

arm64_a630_gl:
  extends: arm64_a630_gles2
  variables:
    DEQP_VER: gl30

# disabled pending https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1859
.arm64_a630_gles3_multisample:
  extends: arm64_a630_gles3
  variables:
    DEQP_CONFIG: rgba8888d24s8ms4
    DEQP_VARIANT: multisample
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-multisample-fails.txt

# disabled pending https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/1859
.arm64_a630_gles31_multisample:
  extends: arm64_a630_gles31
  variables:
    DEQP_CONFIG: rgba8888d24s8ms4
    DEQP_VARIANT: multisample
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-multisample-fails.txt

arm64_a630_gles3_565nozs:
  extends: arm64_a630_gles3
  variables:
    DEQP_CONFIG: rgb565d0s0ms0
    DEQP_VARIANT: 565-no-depth-no-stencil
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-565nozs-fails.txt

arm64_a630_gles31_565nozs:
  extends: arm64_a630_gles31
  variables:
    DEQP_CONFIG: rgb565d0s0ms0
    DEQP_VARIANT: 565-no-depth-no-stencil
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-565nozs-fails.txt

arm64_a630_vk:
  extends: arm64_a630_gles2
  variables:
    DEQP_VER: vk
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 50
    VK_DRIVER: freedreno
    # Force binning in the main run, which makes sure we render at
    # least 2 bins.  This is the path that impacts the most different
    # features.  However, we end up with flaky results in
    # dEQP-VK.binding_model.*.geometry and dEQP-VK.glsl.*_vertex.
    TU_DEBUG: forcebin

# Do a separate sysmem pass over the testcases that really affect sysmem
# rendering.  This is currently very flaky, leave it as an option for devs
# to click play on in their branches.
arm64_a630_vk_sysmem:
  extends:
    - arm64_a630_vk
  variables:
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 10
    DEQP_CASELIST_FILTER: "dEQP-VK.renderpass.*"
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-bypass-fails.txt
    TU_DEBUG: sysmem

.baremetal-test:
  extends:
    - .ci-run-policy
    - .test
  # Cancel job if a newer commit is pushed to the same branch
  interruptible: true
  stage: test
  artifacts:
    when: always
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - results/
      - serial*.txt

arm64_a306_gles2:
  extends:
    - .baremetal-test
    - .use-arm64_test
    - .freedreno-rules
  variables:
    BM_KERNEL: /lava-files/Image.gz
    BM_DTB: /lava-files/apq8016-sbc.dtb
    BM_ROOTFS: /lava-files/rootfs-arm64
    BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8"
    FLAKES_CHANNEL: "#freedreno-ci"
    BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh"
    DEQP_EXPECTED_FAILS: deqp-freedreno-a307-fails.txt
    DEQP_SKIPS: deqp-default-skips.txt
    DEQP_FLAKES: deqp-freedreno-a307-flakes.txt
    DEQP_VER: gles2
    DEQP_PARALLEL: 4
    DEQP_EXPECTED_RENDERER: FD307
    # Since we can't get artifacts back yet, skip making them.
    DEQP_NO_SAVE_RESULTS: 1
  script:
    - ./install/bare-metal/fastboot.sh
  needs:
    - arm64_test
    - meson-arm64
  tags:
    - google-freedreno-db410c

# Fractional run, single threaded, due to flaky results
arm64_a306_gles3:
  extends:
    - arm64_a306_gles2
  variables:
    DEQP_VER: gles3
    DEQP_PARALLEL: 1
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 25

# Fractional runs with debug options.  Note that since we're not
# hitting the iommu faults, we can run in parallel (derive from gles2, not gles3).
arm64_a306_gles3_options:
  extends: arm64_a306_gles2
  variables:
    DEQP_VER: gles3
  script:
    # Check that the non-constbuf UBO case works.
    - DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_CASELIST_FILTER="functional.*ubo" ./install/bare-metal/fastboot.sh

.arm64_a530_deqp:
  extends:
    - arm64_a306_gles2
  variables:
    BM_KERNEL: /lava-files/db820c-kernel
    BM_DTB: /lava-files/db820c.dtb
    # Disable SMP because only CPU 0 is at a freq higher than 19mhz on
    # current upstream kernel.
    BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 nosmp"
    DEQP_EXPECTED_FAILS: deqp-freedreno-a530-fails.txt
    DEQP_FLAKES: deqp-freedreno-a530-flakes.txt
    DEQP_EXPECTED_RENDERER: FD530
  tags:
    - google-freedreno-db820c

arm64_a530_gles2:
  extends:
    - .arm64_a530_deqp
  parallel: 2

arm64_a530_gles3:
  extends:
    - .arm64_a530_deqp
  variables:
    DEQP_VER: gles3
    DEQP_PARALLEL: 1
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 40

arm64_a530_gles31:
  extends:
    - arm64_a530_gles3
  variables:
    DEQP_VER: gles31
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 10

# RADV CI
.test-radv:
  extends: .radv-rules
  stage: radv
  variables:
    VK_DRIVER: radeon
    ACO_DEBUG: validateir,validatera

# Can only be triggered manually on personal branches because RADV is the only
# driver that does Vulkan testing at the moment.
radv_polaris10_vkcts:
  extends:
    - .deqp-test-vk
    - .test-radv
    - .test-manual
  variables:
    DEQP_SKIPS: deqp-radv-polaris10-skips.txt
  tags:
    - polaris10

radv-fossils:
  extends:
    - .fossilize-test
    - .test-radv
  script:
    # Pitcairn (GFX6)
    - export RADV_FORCE_FAMILY="pitcairn"
    - ./install/fossilize-runner.sh
    # Bonaire (GFX7)
    - export RADV_FORCE_FAMILY="bonaire"
    - ./install/fossilize-runner.sh
    # Polaris10 (GFX8)
    - export RADV_FORCE_FAMILY="polaris10"
    - ./install/fossilize-runner.sh
    # Vega10 (GFX9)
    - export RADV_FORCE_FAMILY="gfx900"
    - ./install/fossilize-runner.sh
    # Navi10 (GFX10)
    - export RADV_FORCE_FAMILY="gfx1010"
    - ./install/fossilize-runner.sh
    # Sienna Cichlid (GFX10)
    - export RADV_FORCE_FAMILY="gfx1030"
    - ./install/fossilize-runner.sh

# Traces CI
.traces-test:
  cache:
    key: ${CI_JOB_NAME}
    paths:
      - traces-db/
  variables:
    TRACIE_UPLOAD_TO_MINIO: 1
  artifacts:
    reports:
      junit: results/junit.xml

.traces-test-gl:
  extends:
    - .test-gl
    - .traces-test
  script:
    - ./install/tracie-runner-gl.sh

.traces-test-vk:
  extends:
    - .test-vk
    - .traces-test
  script:
    - ./install/tracie-runner-vk.sh

llvmpipe-traces:
  extends:
    - .traces-test-gl
    - .llvmpipe-rules
  variables:
    LIBGL_ALWAYS_SOFTWARE: "true"
    GALLIUM_DRIVER: "llvmpipe"
    DEVICE_NAME: "gl-vmware-llvmpipe"
    DRIVER_NAME: "llvmpipe"

radv-polaris10-traces:
  extends:
    - .traces-test-vk
    - .test-radv
    - .test-manual
  variables:
    DEVICE_NAME: "vk-amd-polaris10"
    DRIVER_NAME: "radv"
  tags:
    - polaris10

radv-raven-traces:
  extends:
    - .traces-test-vk
    - .test-radv
    - .test-manual
  variables:
    DEVICE_NAME: "vk-amd-raven"
    DRIVER_NAME: "radv"
  tags:
    - raven

virgl-traces:
  extends:
    - .traces-test-gl
    - .virgl-rules
  variables:
    LIBGL_ALWAYS_SOFTWARE: "true"
    GALLIUM_DRIVER: "virpipe"
    DEVICE_NAME: "gl-virgl"
    DRIVER_NAME: "virgl"
    MESA_GLES_VERSION_OVERRIDE: "3.1"
    MESA_GLSL_VERSION_OVERRIDE: "310"
