variables:
  FDO_UPSTREAM_REPO: mesa/mesa
  MESA_TEMPLATES_COMMIT: &ci-templates-commit 290b79e0e78eab67a83766f4e9691be554fc4afd
  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
  MINIO_HOST: minio-packet.freedesktop.org

include:
  - project: 'freedesktop/ci-templates'
    ref: 79c325922670137e8f0a4dc5f6f097e0eb57c1af
    file:
      - '/templates/ci-fairy.yml'
  - project: 'freedesktop/ci-templates'
    ref: *ci-templates-commit
    file:
      - '/templates/debian.yml'
  - local: '.gitlab-ci/lava-gitlab-ci.yml'
  - local: '.gitlab-ci/test-source-dep.yml'
  - local: 'src/amd/ci/gitlab-ci.yml'
  - local: 'src/broadcom/ci/gitlab-ci.yml'
  - local: 'src/freedreno/ci/gitlab-ci.yml'
  - local: 'src/gallium/drivers/iris/ci/gitlab-ci.yml'
  - local: 'src/gallium/drivers/lima/ci/gitlab-ci.yml'
  - local: 'src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml'
  - local: 'src/gallium/drivers/panfrost/ci/gitlab-ci.yml'
  - local: 'src/gallium/drivers/radeonsi/ci/gitlab-ci.yml'
  - local: 'src/gallium/drivers/softpipe/ci/gitlab-ci.yml'
  - local: 'src/gallium/drivers/virgl/ci/gitlab-ci.yml'
  - local: 'src/gallium/drivers/zink/ci/gitlab-ci.yml'
  - local: 'src/gallium/frontends/lavapipe/ci/gitlab-ci.yml'

stages:
  - sanity
  - container
  - container-2
  - git-archive
  - meson-x86_64
  - build-misc
  - amd
  - intel
  - arm
  - broadcom
  - freedreno
  - software-renderer
  - layered-backends
  - deploy
  - 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:
    - .fdo.ci-fairy
    - .ci-run-policy
  script:
  - apk --no-cache add graphviz
  - pip3 install sphinx sphinx_rtd_theme
  - sphinx-build -W -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-forked-branch
      changes: *docs-or-ci
      when: manual
    # Other cases default to never

test-docs-mr:
  extends:
    - test-docs
  needs:
    - sanity
  artifacts:
    expose_as: 'Documentation preview'
    paths:
    - public/
  rules:
    - if: *is-pre-merge
      changes: *docs-or-ci
      when: on_success
    # 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/**/*
      # 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/meson-logs/*.txt
      - _build/meson-logs/strace


# Docker image tag helper templates

.incorporate-templates-commit:
  variables:
    FDO_DISTRIBUTION_TAG: "${MESA_IMAGE_TAG}--${MESA_TEMPLATES_COMMIT}"

.incorporate-base-tag+templates-commit:
  variables:
    FDO_BASE_IMAGE: "${CI_REGISTRY_IMAGE}/${MESA_BASE_IMAGE}:${MESA_BASE_TAG}--${MESA_TEMPLATES_COMMIT}"
    FDO_DISTRIBUTION_TAG: "${MESA_IMAGE_TAG}--${MESA_BASE_TAG}--${MESA_TEMPLATES_COMMIT}"

.set-image:
  variables:
    MESA_IMAGE: "$CI_REGISTRY_IMAGE/${MESA_IMAGE_PATH}:${MESA_IMAGE_TAG}--${MESA_TEMPLATES_COMMIT}"
  image: "$MESA_IMAGE"

.set-image-base-tag:
  extends:
    - .set-image
    - .incorporate-base-tag+templates-commit
  variables:
    MESA_IMAGE: "$CI_REGISTRY_IMAGE/${MESA_IMAGE_PATH}:${MESA_IMAGE_TAG}--${MESA_BASE_TAG}--${MESA_TEMPLATES_COMMIT}"


# Build the CI docker images.
#
# MESA_IMAGE_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
    - .incorporate-templates-commit
  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: bullseye-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

.use-base-image:
  extends:
    - .container
    - .incorporate-base-tag+templates-commit
    # Don't want the .container rules
    - .ci-run-policy
  stage: container-2

# Debian 11 based x86 build image base
x86_build-base:
  extends:
    - .fdo.container-build@debian
    - .container
  variables:
    MESA_IMAGE_TAG: &x86_build-base "2021-03-31-bullseye"

.use-x86_build-base:
  extends:
    - .fdo.container-build@debian
    - .use-base-image
  variables:
    MESA_BASE_IMAGE: "debian/x86_build-base"
    MESA_BASE_TAG: *x86_build-base
  needs:
    - x86_build-base

# Debian 11 based x86 main build image
x86_build:
  extends:
    - .use-x86_build-base
  variables:
    MESA_IMAGE_TAG: &x86_build "2020-12-02"

.use-x86_build:
  extends:
    - .set-image-base-tag
  variables:
    MESA_BASE_TAG: *x86_build-base
    MESA_IMAGE_PATH: "debian/x86_build"
    MESA_IMAGE_TAG: *x86_build
  needs:
    - x86_build

# Debian 11 based i386 cross-build image
i386_build:
  extends:
    - .use-x86_build-base
  variables:
    MESA_IMAGE_TAG: &i386_build "2021-04-13-bullseye"

.use-i386_build:
  extends:
    - .set-image-base-tag
  variables:
    MESA_BASE_TAG: *x86_build-base
    MESA_IMAGE_PATH: "debian/i386_build"
    MESA_IMAGE_TAG: *i386_build
  needs:
    - i386_build

# Debian 11 based ppc64el cross-build image
ppc64el_build:
  extends:
    - .use-x86_build-base
  variables:
    MESA_IMAGE_TAG: &ppc64el_build "2021-04-13-bullseye"

.use-ppc64el_build:
  extends:
    - .set-image-base-tag
  variables:
    MESA_BASE_TAG: *x86_build-base
    MESA_IMAGE_PATH: "debian/ppc64el_build"
    MESA_IMAGE_TAG: *ppc64el_build
  needs:
    - ppc64el_build

# Debian 11 based s390x cross-build image
s390x_build:
  extends:
    - .use-x86_build-base
  variables:
    MESA_IMAGE_TAG: &s390x_build "2021-04-13-bullseye"

.use-s390x_build:
  extends:
    - .set-image-base-tag
  variables:
    MESA_BASE_TAG: *x86_build-base
    MESA_IMAGE_PATH: "debian/s390x_build"
    MESA_IMAGE_TAG: *s390x_build
  needs:
    - s390x_build

# Android NDK cross-build image
android_build:
  extends:
    - .use-x86_build-base
  variables:
    MESA_IMAGE_TAG: &android_build "2021-04-08-libdrm"

.use-android_build:
  extends:
    - .set-image-base-tag
  variables:
    MESA_BASE_TAG: *x86_build-base
    MESA_IMAGE_PATH: "debian/android_build"
    MESA_IMAGE_TAG: *android_build
  needs:
    - android_build

# Debian 11 based x86 test image base
x86_test-base:
  extends: x86_build-base
  variables:
    MESA_IMAGE_TAG: &x86_test-base "2021-03-31-cargo"

.use-x86_test-base:
  extends:
    - .fdo.container-build@debian
    - .use-base-image
  variables:
    MESA_BASE_IMAGE: "debian/x86_test-base"
    MESA_BASE_TAG: *x86_test-base
  needs:
    - x86_test-base

# Debian 11 based x86 test image for GL
x86_test-gl:
  extends: .use-x86_test-base
  variables:
    MESA_IMAGE_TAG: &x86_test-gl "2021-04-14-cargo"

# Debian 11 based x86 test image for VK
x86_test-vk:
  extends: .use-x86_test-base
  variables:
    MESA_IMAGE_TAG: &x86_test-vk "2021-04-14-cargo"

# Debian 11 based ARM build image
arm_build:
  extends:
    - .fdo.container-build@debian
    - .container
  tags:
    - aarch64
  variables:
    MESA_IMAGE_TAG: &arm_build "2021-04-13-bullseye"

.use-arm_build:
  extends:
    - .set-image
  variables:
    MESA_IMAGE_PATH: "debian/arm_build"
    MESA_IMAGE_TAG: *arm_build
  needs:
    - arm_build

# Kernel & rootfs for ARM64 baremetal testing
kernel+rootfs_arm64-baremetal:
  extends:
    - .use-arm_build
    - .kernel+rootfs
  tags:
    - aarch64
  variables:
    DEBIAN_ARCH: "arm64"
    KERNEL_URL: "https://github.com/anholt/linux/archive/mesa-ci-2021-04-01-5.11.tar.gz"
    MESA_ROOTFS_TAG: &arm-baremetal "2021-04-14-librenderdoc"
    MINIO_SUFFIX: "baremetal"

# Kernel & rootfs for armhf baremetal testing
kernel+rootfs_armhf-baremetal:
  extends:
    - kernel+rootfs_arm64-baremetal
  variables:
    DEBIAN_ARCH: "armhf"
    MESA_ROOTFS_TAG: *arm-baremetal

# x86 image with ARM64 & armhf kernel & rootfs for baremetal testing
arm_test:
  extends:
    - .fdo.container-build@debian
    - .container
    # Don't want the .container rules
    - .ci-run-policy
  stage: build-misc
  needs:
    - kernel+rootfs_arm64-baremetal
    - kernel+rootfs_armhf-baremetal
  variables:
    FDO_DISTRIBUTION_EXEC: 'env ARTIFACTS_PREFIX=https://${MINIO_HOST}/mesa-lava ARTIFACTS_SUFFIX=baremetal/${MESA_ROOTFS_TAG}--${MESA_ARM_BUILD_TAG}--${MESA_TEMPLATES_COMMIT} CI_PROJECT_PATH=${CI_PROJECT_PATH} FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} FDO_UPSTREAM_REPO=${FDO_UPSTREAM_REPO} bash .gitlab-ci/container/${CI_JOB_NAME}.sh'
    FDO_DISTRIBUTION_TAG: "${MESA_IMAGE_TAG}--${MESA_ROOTFS_TAG}--${MESA_ARM_BUILD_TAG}--${MESA_TEMPLATES_COMMIT}"
    MESA_ARM_BUILD_TAG: *arm_build
    MESA_IMAGE_TAG: &arm_test "2021-04-14-librenderdoc"
    MESA_ROOTFS_TAG: *arm-baremetal

.use-arm_test:
  image: "$CI_REGISTRY_IMAGE/${MESA_IMAGE_PATH}:${MESA_IMAGE_TAG}--${MESA_ROOTFS_TAG}--${MESA_ARM_BUILD_TAG}--${MESA_TEMPLATES_COMMIT}"
  variables:
    MESA_ARM_BUILD_TAG: *arm_build
    MESA_IMAGE_PATH: "debian/arm_test"
    MESA_IMAGE_TAG: *arm_test
    MESA_ROOTFS_TAG: *arm-baremetal
  needs:
    - arm_test

# Native Windows docker builds
#
# Unlike the above Linux-based builds - including MinGW 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:
  extends:
    - .set-image
  variables:
    MESA_IMAGE: "$CI_REGISTRY_IMAGE/${MESA_IMAGE_PATH}:${MESA_IMAGE_TAG}"
    MESA_IMAGE_PATH: "windows/x64_build"
    MESA_IMAGE_TAG: "2021-03-15-tls"
    MESA_UPSTREAM_IMAGE: "$CI_REGISTRY/$FDO_UPSTREAM_REPO/$MESA_IMAGE_PATH:${MESA_IMAGE_TAG}"

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

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


# Git archive

make git archive:
  extends:
    - .fdo.ci-fairy
  stage: git-archive
  rules:
    - if: *is-scheduled-pipeline
      when: on_success
  # ensure we are running on packet
  tags:
    - packet.net
  script:
    # Compactify the .git directory
    - git gc --aggressive
    # 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_HOST/git-cache/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME/$CI_PROJECT_NAME.tar.gz


# Sanity checks of MR settings and commit logs
sanity:
  extends:
    - .fdo.ci-fairy
  stage: sanity
  rules:
    - if: *is-pre-merge
      when: on_success
    # Other cases default to never
  variables:
    GIT_STRATEGY: none
  script:
    # ci-fairy check-commits --junit-xml=check-commits.xml
    - ci-fairy check-merge-request --require-allow-collaboration --junit-xml=check-merge-request.xml
  artifacts:
    when: on_failure
    reports:
      junit: check-*.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
      - _build/meson-logs/strace
      - 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: 11
  script:
    - .gitlab-ci/meson/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,zink,iris"
    VULKAN_DRIVERS: "swrast,amd"
    BUILDTYPE: "debugoptimized"
    EXTRA_OPTION: >
      -D valgrind=false
      -D werror=true
    MINIO_ARTIFACT_NAME: mesa-amd64
  script:
    - .gitlab-ci/meson/build.sh
    - .gitlab-ci/prepare-artifacts.sh

meson-testing-asan:
  extends:
    - meson-testing
  variables:
    EXTRA_OPTION: >
      -D b_sanitize=address
      -D valgrind=false
    MINIO_ARTIFACT_NAME: ""
    ARTIFACTS_DEBUG_SYMBOLS: 1

meson-clover-testing:
  extends:
    - .meson-build
    - .ci-deqp-artifacts
  variables:
    UNWIND: "enabled"
    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"
    EXTRA_OPTION: >
      -D valgrind=false
      -D werror=true
  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,d3d12"
    VULKAN_DRIVERS: swrast
    EXTRA_OPTION: >
      -D osmesa=true
      -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: "iris,nouveau,kmsro,freedreno,r300,svga,swrast,v3d,vc4,virgl,etnaviv,panfrost,lima,zink,d3d12"
    BUILDTYPE: "release"
    EXTRA_OPTION: >
      -D osmesa=true
      -D tools=all
      -D werror=true
  script:
    - .gitlab-ci/meson/build.sh

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
      -D valgrind=false
    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: ""
    PKG_CONFIG_LIBDIR: "/disable/non/android/system/pc/files"
  script:
    - 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,vc4,v3d VULKAN_DRIVERS=freedreno,broadcom,virtio-experimental .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: build-misc
  variables:
    UNWIND: "disabled"
    DRI_LOADERS: >
      -D glx=dri
      -D gbm=enabled
      -D egl=enabled
      -D platforms=x11
      -D osmesa=false
    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

.meson-arm:
  extends:
    - .meson-cross
    - .use-arm_build
  needs:
    - 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
    EXTRA_OPTION: >
      -D llvm=disabled
      -D valgrind=false
    MINIO_ARTIFACT_NAME: mesa-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
      -D valgrind=false
    MINIO_ARTIFACT_NAME: mesa-arm64
  script:
    - .gitlab-ci/meson/build.sh
    - .gitlab-ci/prepare-artifacts.sh

meson-arm64-asan:
  extends:
    - meson-arm64
  variables:
    EXTRA_OPTION: >
      -D llvm=disabled
      -D b_sanitize=address
      -D valgrind=false
    ARTIFACTS_DEBUG_SYMBOLS: 1
    MINIO_ARTIFACT_NAME: mesa-arm64-asan
    MESON_TEST_ARGS: "--no-suite mesa:compiler"

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,d3d12"
    VULKAN_DRIVERS: intel,amd,freedreno,broadcom,virtio-experimental
    CC: clang
    CXX: clang++

meson-windows-vs2019:
  extends:
    - .build-windows
    - .use-windows_build_vs2019
    - .windows-build-rules
  stage: build-misc
  script:
    - . .\.gitlab-ci\windows\mesa_build.ps1
  artifacts:
    paths:
      - _install/

test-d3d12-windows:
  extends:
    - .build-windows
    - .use-windows_build_vs2019
    - .windows-test-rules
  stage: layered-backends
  dependencies:
    - meson-windows-vs2019
  needs:
    - meson-windows-vs2019
  variables:
    GIT_STRATEGY: none # testing doesn't build anything from source
    GALLIUM_DRIVER: d3d12
    PIGLIT_PROFILE: quick_gl
    PIGLIT_TESTS: -x nv_copy_depth_to_color -x repeat-wait -x arb_timer_query@timestamp-get
  script:
    - . _install/piglit_run.ps1
  artifacts:
    when: on_failure
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - summary/

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
    EXTRA_OPTION: >
      -D valgrind=false
      -D werror=true
  script:
    - 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=false
    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,virtio-experimental
    EXTRA_OPTION: >
      -D vulkan-layers=device-select,overlay
      -D build-aco-tests=true
      -D werror=true

meson-i386:
  extends:
    - .meson-cross
    - .use-i386_build
  variables:
    CROSS: i386
    VULKAN_DRIVERS: intel,amd,swrast,virtio-experimental
    GALLIUM_DRIVERS: "iris,nouveau,r300,r600,radeonsi,swrast,virgl,zink"
    DRI_DRIVERS: "i915,i965,r100,r200,nouveau"
    EXTRA_OPTION: >
      -D vulkan-layers=device-select,overlay
      -D werror=true

meson-s390x:
  extends:
    - meson-ppc64el
    - .use-s390x_build
  tags:
    - kvm
  variables:
    CROSS: s390x
    EXTRA_OPTION: >
      -D werror=true
    GALLIUM_DRIVERS: "swrast,zink"
    # The lp_test_blend test times out with LLVM 11
    LLVM_VERSION: 9
    VULKAN_DRIVERS: "swrast"

meson-ppc64el:
  extends:
    - .meson-cross
    - .use-ppc64el_build
  variables:
    CROSS: ppc64el
    EXTRA_OPTION: >
      -D werror=true
    GALLIUM_DRIVERS: "nouveau,radeonsi,swrast,virgl,zink"
    VULKAN_DRIVERS: "amd,swrast"

meson-mingw32-x86_64:
  extends: .meson-build
  stage: build-misc
  variables:
    UNWIND: "disabled"
    DRI_DRIVERS: ""
    GALLIUM_DRIVERS: "swrast"
    EXTRA_OPTION: >
      -Dllvm=disabled
      -Dzlib=disabled
      -Dosmesa=true
      --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
    - .set-image-base-tag
  variables:
    MESA_BASE_TAG: *x86_test-base
    MESA_IMAGE_PATH: "debian/x86_test-gl"
    MESA_IMAGE_TAG: *x86_test-gl
  needs:
    - x86_test-gl

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

.test-vk:
  extends:
    - .test
    - .set-image-base-tag
  variables:
    MESA_BASE_TAG: *x86_test-base
    MESA_IMAGE_PATH: "debian/x86_test-vk"
    MESA_IMAGE_TAG: *x86_test-vk
  needs:
    - meson-testing
    - x86_test-vk

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

.piglit-test:
  artifacts:
    when: on_failure
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - results/summary/
      - results/*.txt
  variables:
    PIGLIT_NO_WINDOW: 1
  script:
    - install/piglit/run.sh

.piglit-traces-test:
  extends:
    - .piglit-test
  cache:
    key: ${CI_JOB_NAME}
    paths:
      - replayer-db/
  artifacts:
    when: on_failure
    name: "mesa_${CI_JOB_NAME}"
    reports:
      junit: results/junit.xml
  variables:
    PIGLIT_PROFILES: replay
    PIGLIT_REPLAY_UPLOAD_TO_MINIO: 1
    PIGLIT_REPLAY_EXTRA_ARGS:  --keep-image --db-path ${CI_PROJECT_DIR}/replayer-db/
    PIGLIT_REPLAY_REFERENCE_IMAGES_BASE_URL: "/mesa-tracie-results/$FDO_UPSTREAM_REPO"
    PIGLIT_REPLAY_ARTIFACTS_BASE_URL: "/artifacts/$CI_PROJECT_PATH/$CI_PIPELINE_ID/$CI_JOB_ID"
    PIGLIT_HTML_SUMMARY: 0
    PIGLIT_JUNIT_RESULTS: 1

.deqp-test:
  script:
    - ./install/deqp-runner.sh
  artifacts:
    reports:
      junit: results/junit.xml

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

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

# 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
  variables:
    GIT_STRATEGY: none

.baremetal-test:
  extends:
    - .ci-run-policy
    - .test
  # Cancel job if a newer commit is pushed to the same branch
  interruptible: true
  stage: test
  before_script:
    # Use this instead of gitlab's artifacts download because it hits packet.net
    # instead of fd.o.  Set FDO_HTTP_CACHE_URI to an http cache for your test lab to
    # improve it even more (see https://docs.mesa3d.org/ci/bare-metal.html for
    # setup).
    - wget ${FDO_HTTP_CACHE_URI:-}https://minio-packet.freedesktop.org/artifacts/${CI_PROJECT_PATH}/${CI_PIPELINE_ID}/${MINIO_ARTIFACT_NAME}.tar.gz -S --progress=dot:giga -O- | tar -xz
  artifacts:
    when: always
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - results/
      - serial*.txt
    exclude:
      - results/*.shader_cache
    reports:
      junit: results/junit.xml

.baremetal-test-armhf:
  extends:
    - .baremetal-test
  variables:
    MINIO_ARTIFACT_NAME: mesa-armhf

.baremetal-arm64-asan-test:
  variables:
    TEST_LD_PRELOAD: libasan.so.6
    MINIO_ARTIFACT_NAME: mesa-arm64-asan
  needs:
    - arm_test
    - job: meson-arm64-asan
      artifacts: false

.baremetal-deqp-test:
  variables:
    BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh"
    DEQP_SKIPS: deqp-default-skips.txt
    DEQP_PARALLEL: 0 # Default to number of CPUs
