Eric Engestrom | 329f5cd | 2019-01-20 11:21:45 +0000 | [diff] [blame] | 1 | variables: |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 2 | FDO_UPSTREAM_REPO: mesa/mesa |
Benjamin Tissoires | 7f8a9a1 | 2019-04-02 09:24:00 +0200 | [diff] [blame] | 3 | |
| 4 | include: |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 5 | - project: 'freedesktop/ci-templates' |
Michel Dänzer | 1c79ac1 | 2020-04-29 18:47:08 +0200 | [diff] [blame] | 6 | ref: 59de540b620c45739871d1a073d76d5521989d11 |
Michel Dänzer | d00b1c4 | 2019-04-02 16:56:54 +0200 | [diff] [blame] | 7 | file: '/templates/debian.yml' |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 8 | - local: '.gitlab-ci/lava-gitlab-ci.yml' |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 9 | - local: '.gitlab-ci/test-source-dep.yml' |
Tomeu Vizoso | 7b01f72 | 2019-09-18 16:03:36 +0200 | [diff] [blame] | 10 | |
Eric Engestrom | 329f5cd | 2019-01-20 11:21:45 +0000 | [diff] [blame] | 11 | stages: |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 12 | - container |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 13 | - container-2 |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 14 | - meson-x86_64 |
| 15 | - scons |
| 16 | - meson-misc |
| 17 | - llvmpipe |
| 18 | - softpipe |
| 19 | - freedreno |
| 20 | - panfrost |
Samuel Pitoiset | 48e9203 | 2020-03-06 08:39:25 +0100 | [diff] [blame] | 21 | - radv |
| 22 | - lima |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 23 | - virgl |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 24 | - success |
Eric Engestrom | 329f5cd | 2019-01-20 11:21:45 +0000 | [diff] [blame] | 25 | |
| 26 | |
Eric Engestrom | 7f5d9c2 | 2019-02-22 15:52:08 +0000 | [diff] [blame] | 27 | # When to automatically run the CI |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 28 | .ci-run-policy: |
Michel Dänzer | 41797a1 | 2019-09-26 09:27:27 +0200 | [diff] [blame] | 29 | rules: |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 30 | # If any files affecting the pipeline are changed, build/test jobs run |
| 31 | # automatically once all dependency jobs have passed |
| 32 | - changes: &all_paths |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 33 | - VERSION |
Eric Engestrom | 576bff5 | 2020-05-14 22:51:38 +0200 | [diff] [blame] | 34 | - bin/git_sha1_gen.py |
| 35 | - bin/install_megadrivers.py |
| 36 | - bin/meson_get_version.py |
| 37 | - bin/symbols-check.py |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 38 | # GitLab CI |
| 39 | - .gitlab-ci.yml |
| 40 | - .gitlab-ci/**/* |
| 41 | # Meson |
| 42 | - meson* |
| 43 | - build-support/**/* |
| 44 | - subprojects/**/* |
| 45 | # SCons |
| 46 | - SConstruct |
| 47 | - scons/**/* |
| 48 | - common.py |
| 49 | # Source code |
| 50 | - include/**/* |
| 51 | - src/**/* |
| 52 | when: on_success |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 53 | # Otherwise, build/test jobs won't run |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 54 | - when: never |
Michel Dänzer | 6140ed3 | 2019-03-26 18:39:41 +0100 | [diff] [blame] | 55 | retry: |
| 56 | max: 2 |
| 57 | when: |
| 58 | - runner_system_failure |
Eric Engestrom | ac78ca4 | 2019-11-12 23:42:21 +0000 | [diff] [blame] | 59 | # Cancel CI run if a newer commit is pushed to the same branch |
| 60 | interruptible: true |
Eric Engestrom | 7f5d9c2 | 2019-02-22 15:52:08 +0000 | [diff] [blame] | 61 | |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 62 | success: |
| 63 | stage: success |
| 64 | image: debian:stable-slim |
| 65 | only: |
| 66 | - merge_requests |
| 67 | except: |
| 68 | changes: |
Michel Dänzer | c12576e | 2020-04-03 11:17:48 +0200 | [diff] [blame] | 69 | *all_paths |
Michel Dänzer | 2dd0cc6 | 2020-01-20 18:34:34 +0100 | [diff] [blame] | 70 | variables: |
| 71 | GIT_STRATEGY: none |
Michel Dänzer | 8775b74 | 2020-01-13 09:45:57 +0100 | [diff] [blame] | 72 | script: |
| 73 | - echo "Dummy job to make sure every merge request pipeline runs at least one job" |
| 74 | |
| 75 | |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 76 | .ci-deqp-artifacts: |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 77 | artifacts: |
Michel Dänzer | 0103f02 | 2020-03-06 12:35:17 +0100 | [diff] [blame] | 78 | name: "mesa_${CI_JOB_NAME}" |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 79 | when: always |
| 80 | untracked: false |
| 81 | paths: |
| 82 | # Watch out! Artifacts are relative to the build dir. |
| 83 | # https://gitlab.com/gitlab-org/gitlab-ce/commit/8788fb925706cad594adf6917a6c5f6587dd1521 |
| 84 | - artifacts |
Eric Engestrom | 7f5d9c2 | 2019-02-22 15:52:08 +0000 | [diff] [blame] | 85 | |
Tomeu Vizoso | 22d9764 | 2019-12-17 11:50:14 +0100 | [diff] [blame] | 86 | # Build the CI docker images. |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 87 | # |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 88 | # FDO_DISTRIBUTION_TAG is the tag of the docker image used by later stage jobs. If the |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 89 | # image doesn't exist yet, the container stage job generates it. |
| 90 | # |
| 91 | # In order to generate a new image, one should generally change the tag. |
| 92 | # While removing the image from the registry would also work, that's not |
| 93 | # recommended except for ephemeral images during development: Replacing |
| 94 | # an image after a significant amount of time might pull in newer |
| 95 | # versions of gcc/clang or other packages, which might break the build |
| 96 | # with older commits using the same tag. |
| 97 | # |
| 98 | # After merging a change resulting in generating a new image to the |
| 99 | # main repository, it's recommended to remove the image from the source |
| 100 | # repository's container registry, so that the image from the main |
| 101 | # repository's registry will be used there as well. |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 102 | |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 103 | .container: |
| 104 | stage: container |
| 105 | extends: |
| 106 | - .ci-run-policy |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 107 | rules: |
Michel Dänzer | 4176dfa | 2020-04-03 11:46:12 +0200 | [diff] [blame] | 108 | # Run pipeline by default if it was triggered by Marge Bot, is for a |
| 109 | # merge request, and any files affecting it were changed |
| 110 | - if: '$GITLAB_USER_LOGIN == "marge-bot" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == $CI_COMMIT_REF_NAME' |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 111 | changes: |
| 112 | *all_paths |
| 113 | when: on_success |
| 114 | # Run pipeline by default in the main project if any files affecting it were |
| 115 | # changed |
| 116 | - if: '$CI_PROJECT_PATH == "mesa/mesa"' |
| 117 | changes: |
| 118 | *all_paths |
| 119 | when: on_success |
Michel Dänzer | 4176dfa | 2020-04-03 11:46:12 +0200 | [diff] [blame] | 120 | # Allow triggering jobs manually for MRs or branches of forked projects if |
| 121 | # any files affecting the pipeline were changed |
| 122 | - changes: |
Michel Dänzer | 42fe600 | 2020-04-03 12:50:11 +0200 | [diff] [blame] | 123 | *all_paths |
| 124 | when: manual |
| 125 | # Otherwise, container jobs won't run |
| 126 | - when: never |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 127 | variables: |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 128 | FDO_DISTRIBUTION_VERSION: buster-slim |
Michel Dänzer | fcd3377 | 2020-03-23 18:16:07 +0100 | [diff] [blame] | 129 | FDO_REPO_SUFFIX: "debian/$CI_JOB_NAME" |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 130 | FDO_DISTRIBUTION_EXEC: 'bash .gitlab-ci/container/${CI_JOB_NAME}.sh' |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 131 | # no need to pull the whole repo to build the container image |
| 132 | GIT_STRATEGY: none |
| 133 | |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 134 | # Debian 10 based x86 build image |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 135 | x86_build: |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 136 | extends: |
Michel Dänzer | fcd3377 | 2020-03-23 18:16:07 +0100 | [diff] [blame] | 137 | - .fdo.container-build@debian |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 138 | - .container |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 139 | variables: |
Dylan Baker | c1a290b | 2020-04-24 10:58:53 -0700 | [diff] [blame] | 140 | FDO_DISTRIBUTION_TAG: &x86_build "2020-05-19" |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 141 | |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 142 | .use-x86_build: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 143 | variables: |
| 144 | TAG: *x86_build |
| 145 | image: "$CI_REGISTRY_IMAGE/debian/x86_build:$TAG" |
Michel Dänzer | eb86cba | 2019-10-10 15:27:17 +0200 | [diff] [blame] | 146 | needs: |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 147 | - x86_build |
Michel Dänzer | eb86cba | 2019-10-10 15:27:17 +0200 | [diff] [blame] | 148 | |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 149 | # Debian 10 based x86 test image base |
| 150 | x86_test-base: |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 151 | extends: x86_build |
Michel Dänzer | aebf43d | 2019-11-05 18:52:24 +0100 | [diff] [blame] | 152 | variables: |
Dylan Baker | c1a290b | 2020-04-24 10:58:53 -0700 | [diff] [blame] | 153 | FDO_DISTRIBUTION_TAG: &x86_test-base "2020-06-01" |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 154 | |
| 155 | .use-x86_test-base: |
| 156 | extends: |
| 157 | - x86_build |
| 158 | - .ci-run-policy |
| 159 | stage: container-2 |
| 160 | variables: |
| 161 | BASE_TAG: *x86_test-base |
| 162 | FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/x86_test-base:$BASE_TAG" |
| 163 | needs: |
| 164 | - x86_test-base |
| 165 | |
| 166 | # Debian 10 based x86 test image for GL |
| 167 | x86_test-gl: |
| 168 | extends: .use-x86_test-base |
| 169 | variables: |
Dylan Baker | c1a290b | 2020-04-24 10:58:53 -0700 | [diff] [blame] | 170 | FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-06-01" |
Michel Dänzer | aebf43d | 2019-11-05 18:52:24 +0100 | [diff] [blame] | 171 | |
Samuel Pitoiset | f2a594f | 2019-11-18 09:23:18 +0100 | [diff] [blame] | 172 | # Debian 10 based x86 test image for VK |
| 173 | x86_test-vk: |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 174 | extends: .use-x86_test-base |
Samuel Pitoiset | f2a594f | 2019-11-18 09:23:18 +0100 | [diff] [blame] | 175 | variables: |
Dylan Baker | c1a290b | 2020-04-24 10:58:53 -0700 | [diff] [blame] | 176 | FDO_DISTRIBUTION_TAG: &x86_test-vk "2020-06-01" |
Samuel Pitoiset | f2a594f | 2019-11-18 09:23:18 +0100 | [diff] [blame] | 177 | |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 178 | # Debian 9 based x86 build image (old LLVM) |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 179 | x86_build_old: |
| 180 | extends: x86_build |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 181 | variables: |
Dylan Baker | c1a290b | 2020-04-24 10:58:53 -0700 | [diff] [blame] | 182 | FDO_DISTRIBUTION_TAG: &x86_build_old "2020-04-27" |
Eric Anholt | af7dca3 | 2020-03-06 13:23:20 -0800 | [diff] [blame] | 183 | FDO_DISTRIBUTION_VERSION: stretch-slim |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 184 | |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 185 | .use-x86_build_old: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 186 | variables: |
| 187 | TAG: *x86_build_old |
| 188 | image: "$CI_REGISTRY_IMAGE/debian/x86_build_old:$TAG" |
Michel Dänzer | 88319f2 | 2019-09-18 16:17:01 +0200 | [diff] [blame] | 189 | needs: |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 190 | - x86_build_old |
Michel Dänzer | 88319f2 | 2019-09-18 16:17:01 +0200 | [diff] [blame] | 191 | |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 192 | # Debian 10 based ARM build image |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 193 | arm_build: |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 194 | extends: |
Michel Dänzer | fcd3377 | 2020-03-23 18:16:07 +0100 | [diff] [blame] | 195 | - .fdo.container-build@debian@arm64v8 |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 196 | - .container |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 197 | variables: |
Dylan Baker | c1a290b | 2020-04-24 10:58:53 -0700 | [diff] [blame] | 198 | FDO_DISTRIBUTION_TAG: &arm_build "2020-06-01" |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 199 | |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 200 | .use-arm_build: |
Michel Dänzer | b4d3ae2 | 2019-11-04 09:54:09 +0100 | [diff] [blame] | 201 | variables: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 202 | TAG: *arm_build |
| 203 | image: "$CI_REGISTRY_IMAGE/debian/arm_build:$TAG" |
| 204 | needs: |
| 205 | - arm_build |
| 206 | |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 207 | # x86 image with ARM rootfses for baremetal testing. |
Eric Anholt | 601a029 | 2020-05-22 20:00:07 -0700 | [diff] [blame] | 208 | arm_test: |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 209 | extends: x86_build |
| 210 | variables: |
Dylan Baker | c1a290b | 2020-04-24 10:58:53 -0700 | [diff] [blame] | 211 | FDO_DISTRIBUTION_TAG: &arm_test "2020-06-01" |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 212 | |
Eric Anholt | 601a029 | 2020-05-22 20:00:07 -0700 | [diff] [blame] | 213 | .use-arm_test: |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 214 | variables: |
Eric Anholt | 601a029 | 2020-05-22 20:00:07 -0700 | [diff] [blame] | 215 | TAG: *arm_test |
| 216 | image: "$CI_REGISTRY_IMAGE/debian/arm_test:$TAG" |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 217 | needs: |
Eric Anholt | 601a029 | 2020-05-22 20:00:07 -0700 | [diff] [blame] | 218 | - arm_test |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 219 | |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 220 | # Native Windows docker builds |
| 221 | # |
| 222 | # Unlike the above Linux-based builds - including MinGW/SCons builds which |
| 223 | # cross-compile for Windows - which use the freedesktop ci-templates, we |
| 224 | # cannot use the same scheme here. As Windows lacks support for |
| 225 | # Docker-in-Docker, and Podman does not run natively on Windows, we have |
| 226 | # to open-code much of the same ourselves. |
| 227 | # |
| 228 | # This is achieved by first running in a native Windows shell instance |
| 229 | # (host PowerShell) in the container stage to build and push the image, |
| 230 | # then in the build stage by executing inside Docker. |
| 231 | |
| 232 | .windows-docker-vs2019: |
| 233 | variables: |
Daniel Stone | 0f46a31 | 2020-05-05 15:49:22 +0100 | [diff] [blame] | 234 | WINDOWS_TAG: "2020-05-05-llvm" |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 235 | WINDOWS_IMAGE: "$CI_REGISTRY_IMAGE/windows/x64_build:$WINDOWS_TAG" |
| 236 | WINDOWS_UPSTREAM_IMAGE: "$CI_REGISTRY/$FDO_UPSTREAM_REPO/windows/x64_build:$WINDOWS_TAG" |
| 237 | |
Daniel Stone | 7911346 | 2020-04-16 14:56:18 +0100 | [diff] [blame] | 238 | windows_build_vs2019: |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 239 | extends: |
| 240 | - .container |
| 241 | - .windows-docker-vs2019 |
| 242 | stage: container |
| 243 | variables: |
| 244 | GIT_STRATEGY: fetch # we do actually need the full repository though |
Daniel Stone | 0f46a31 | 2020-05-05 15:49:22 +0100 | [diff] [blame] | 245 | timeout: 4h # LLVM takes ages |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 246 | tags: |
| 247 | - windows |
| 248 | - shell |
| 249 | - "1809" |
Daniel Stone | 2db1d73 | 2020-03-30 10:16:18 +0100 | [diff] [blame] | 250 | - mesa |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 251 | script: |
| 252 | - .\.gitlab-ci\windows\mesa_container.ps1 $CI_REGISTRY $CI_REGISTRY_USER $CI_REGISTRY_PASSWORD $WINDOWS_IMAGE $WINDOWS_UPSTREAM_IMAGE |
| 253 | |
| 254 | .use-windows_build_vs2019: |
| 255 | extends: .windows-docker-vs2019 |
| 256 | image: "$WINDOWS_IMAGE" |
| 257 | needs: |
Daniel Stone | 7911346 | 2020-04-16 14:56:18 +0100 | [diff] [blame] | 258 | - windows_build_vs2019 |
Eric Engestrom | 81b98e9 | 2019-10-14 23:04:14 +0100 | [diff] [blame] | 259 | |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 260 | # BUILD |
| 261 | |
Dylan Baker | 06e4647 | 2019-10-23 14:21:31 -0700 | [diff] [blame] | 262 | # Shared between windows and Linux |
| 263 | .build-common: |
Eric Engestrom | aba78c2 | 2019-10-14 23:52:58 +0100 | [diff] [blame] | 264 | extends: .ci-run-policy |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 265 | artifacts: |
Michel Dänzer | 0103f02 | 2020-03-06 12:35:17 +0100 | [diff] [blame] | 266 | name: "mesa_${CI_JOB_NAME}" |
Eric Anholt | dd3d0b2 | 2019-07-24 09:27:48 -0700 | [diff] [blame] | 267 | when: always |
| 268 | paths: |
| 269 | - _build/meson-logs/*.txt |
| 270 | # scons: |
Michel Dänzer | 5229f27 | 2019-07-26 12:20:41 +0200 | [diff] [blame] | 271 | - build/*/config.log |
Eric Anholt | f60defa | 2019-04-10 15:59:12 -0700 | [diff] [blame] | 272 | - shader-db |
Dylan Baker | 06e4647 | 2019-10-23 14:21:31 -0700 | [diff] [blame] | 273 | |
| 274 | # Just Linux |
| 275 | .build-linux: |
| 276 | extends: .build-common |
Michel Dänzer | e9de19f | 2019-04-04 18:01:27 +0200 | [diff] [blame] | 277 | variables: |
| 278 | CCACHE_COMPILERCHECK: "content" |
Michel Dänzer | 32618ee | 2019-11-20 09:11:35 +0100 | [diff] [blame] | 279 | CCACHE_COMPRESS: "true" |
| 280 | CCACHE_DIR: /cache/mesa/ccache |
Eric Engestrom | 23b485c | 2019-02-12 16:59:27 +0000 | [diff] [blame] | 281 | # Use ccache transparently, and print stats before/after |
| 282 | before_script: |
| 283 | - export PATH="/usr/lib/ccache:$PATH" |
| 284 | - export CCACHE_BASEDIR="$PWD" |
Michel Dänzer | 32618ee | 2019-11-20 09:11:35 +0100 | [diff] [blame] | 285 | - ccache --show-stats |
Eric Engestrom | 23b485c | 2019-02-12 16:59:27 +0000 | [diff] [blame] | 286 | after_script: |
Eric Engestrom | 23b485c | 2019-02-12 16:59:27 +0000 | [diff] [blame] | 287 | - ccache --show-stats |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 288 | |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 289 | .build-windows: |
| 290 | extends: .build-common |
| 291 | tags: |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 292 | - windows |
| 293 | - docker |
| 294 | - "1809" |
Daniel Stone | 9197fd5 | 2020-03-30 15:58:51 +0100 | [diff] [blame] | 295 | - mesa |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 296 | cache: |
| 297 | key: ${CI_JOB_NAME} |
| 298 | paths: |
| 299 | - subprojects/packagecache |
| 300 | |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 301 | .meson-build: |
Eric Engestrom | aba78c2 | 2019-10-14 23:52:58 +0100 | [diff] [blame] | 302 | extends: |
Dylan Baker | 06e4647 | 2019-10-23 14:21:31 -0700 | [diff] [blame] | 303 | - .build-linux |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 304 | - .use-x86_build |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 305 | stage: meson-x86_64 |
Michel Dänzer | 5f0ff00 | 2019-12-13 11:02:16 +0100 | [diff] [blame] | 306 | variables: |
| 307 | LLVM_VERSION: 9 |
Eric Engestrom | 23b485c | 2019-02-12 16:59:27 +0000 | [diff] [blame] | 308 | script: |
Michel Dänzer | cc2b3a9 | 2019-05-03 10:49:43 +0200 | [diff] [blame] | 309 | - .gitlab-ci/meson-build.sh |
Eric Engestrom | 46d23c0 | 2019-01-20 11:26:53 +0000 | [diff] [blame] | 310 | |
Eric Engestrom | 06b245b | 2019-01-23 15:46:10 +0000 | [diff] [blame] | 311 | .scons-build: |
Eric Engestrom | aba78c2 | 2019-10-14 23:52:58 +0100 | [diff] [blame] | 312 | extends: |
Dylan Baker | 06e4647 | 2019-10-23 14:21:31 -0700 | [diff] [blame] | 313 | - .build-linux |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 314 | - .use-x86_build |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 315 | stage: scons |
Eric Engestrom | 06b245b | 2019-01-23 15:46:10 +0000 | [diff] [blame] | 316 | variables: |
Eric Anholt | cb655d2 | 2019-11-06 11:14:14 -0800 | [diff] [blame] | 317 | SCONSFLAGS: "-j4" |
Eric Engestrom | 06b245b | 2019-01-23 15:46:10 +0000 | [diff] [blame] | 318 | script: |
Michel Dänzer | 0374aac | 2019-09-12 11:34:43 +0200 | [diff] [blame] | 319 | - .gitlab-ci/scons-build.sh |
Eric Engestrom | 06b245b | 2019-01-23 15:46:10 +0000 | [diff] [blame] | 320 | |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 321 | meson-testing: |
Michel Dänzer | e426f40 | 2019-09-06 17:35:52 +0200 | [diff] [blame] | 322 | extends: |
| 323 | - .meson-build |
| 324 | - .ci-deqp-artifacts |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 325 | variables: |
| 326 | UNWIND: "true" |
| 327 | DRI_LOADERS: > |
| 328 | -D glx=dri |
| 329 | -D gbm=true |
| 330 | -D egl=true |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 331 | -D platforms=x11,drm,surfaceless |
| 332 | GALLIUM_ST: > |
| 333 | -D dri3=true |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 334 | GALLIUM_DRIVERS: "swrast,virgl" |
Samuel Pitoiset | 40c6a56 | 2019-11-19 14:46:53 +0100 | [diff] [blame] | 335 | VULKAN_DRIVERS: amd |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 336 | BUILDTYPE: "debugoptimized" |
Eric Anholt | 3c7c021 | 2019-12-16 21:23:02 -0800 | [diff] [blame] | 337 | EXTRA_OPTION: > |
| 338 | -D werror=true |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 339 | script: |
| 340 | - .gitlab-ci/meson-build.sh |
| 341 | - .gitlab-ci/prepare-artifacts.sh |
| 342 | |
Michel Dänzer | c56f091 | 2020-03-12 12:29:40 +0100 | [diff] [blame] | 343 | meson-gallium: |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 344 | extends: .meson-build |
| 345 | variables: |
| 346 | UNWIND: "true" |
| 347 | DRI_LOADERS: > |
| 348 | -D glx=dri |
| 349 | -D gbm=true |
| 350 | -D egl=true |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 351 | -D platforms=x11,wayland,drm,surfaceless |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 352 | GALLIUM_ST: > |
| 353 | -D dri3=true |
| 354 | -D gallium-extra-hud=true |
| 355 | -D gallium-vdpau=true |
| 356 | -D gallium-xvmc=true |
| 357 | -D gallium-omx=bellagio |
| 358 | -D gallium-va=true |
| 359 | -D gallium-xa=true |
| 360 | -D gallium-nine=true |
| 361 | -D gallium-opencl=disabled |
Samuel Pitoiset | e6d26d7 | 2019-11-19 14:36:02 +0100 | [diff] [blame] | 362 | GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,swr,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink" |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 363 | EXTRA_OPTION: > |
| 364 | -D osmesa=gallium |
| 365 | -D tools=all |
Michel Dänzer | 59fcb01 | 2019-10-23 18:42:53 +0200 | [diff] [blame] | 366 | script: |
| 367 | - .gitlab-ci/meson-build.sh |
| 368 | - .gitlab-ci/run-shader-db.sh |
Michel Dänzer | 42f8d5a | 2019-08-28 12:01:02 +0200 | [diff] [blame] | 369 | |
Michel Dänzer | c56f091 | 2020-03-12 12:29:40 +0100 | [diff] [blame] | 370 | meson-classic: |
| 371 | extends: .meson-build |
| 372 | variables: |
| 373 | UNWIND: "true" |
| 374 | DRI_LOADERS: > |
| 375 | -D glx=dri |
| 376 | -D gbm=true |
| 377 | -D egl=true |
| 378 | -D platforms=x11,wayland,drm,surfaceless |
| 379 | DRI_DRIVERS: "auto" |
| 380 | EXTRA_OPTION: > |
| 381 | -D osmesa=classic |
| 382 | -D tools=all |
| 383 | |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 384 | .meson-cross: |
| 385 | extends: |
| 386 | - .meson-build |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 387 | stage: meson-misc |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 388 | variables: |
| 389 | UNWIND: "false" |
| 390 | DRI_LOADERS: > |
| 391 | -D glx=disabled |
| 392 | -D gbm=false |
| 393 | -D egl=true |
| 394 | -D platforms=surfaceless |
| 395 | -D osmesa=none |
| 396 | GALLIUM_ST: > |
| 397 | -D dri3=false |
| 398 | -D gallium-vdpau=false |
| 399 | -D gallium-xvmc=false |
| 400 | -D gallium-omx=disabled |
| 401 | -D gallium-va=false |
| 402 | -D gallium-xa=false |
| 403 | -D gallium-nine=false |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 404 | LLVM_VERSION: "8" |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 405 | |
Michel Dänzer | 163ec5d | 2019-10-08 19:46:11 +0200 | [diff] [blame] | 406 | .meson-arm: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 407 | extends: |
| 408 | - .meson-cross |
| 409 | - .use-arm_build |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 410 | variables: |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 411 | VULKAN_DRIVERS: freedreno |
Michel Dänzer | 793f6b3 | 2019-10-08 19:48:41 +0200 | [diff] [blame] | 412 | GALLIUM_DRIVERS: "etnaviv,freedreno,kmsro,lima,nouveau,panfrost,swrast,tegra,v3d,vc4" |
Tomeu Vizoso | 22d9764 | 2019-12-17 11:50:14 +0100 | [diff] [blame] | 413 | BUILDTYPE: "debugoptimized" |
Michel Dänzer | 163ec5d | 2019-10-08 19:46:11 +0200 | [diff] [blame] | 414 | tags: |
| 415 | - aarch64 |
| 416 | |
| 417 | meson-armhf: |
Tomeu Vizoso | 22d9764 | 2019-12-17 11:50:14 +0100 | [diff] [blame] | 418 | extends: |
| 419 | - .meson-arm |
| 420 | - .ci-deqp-artifacts |
Michel Dänzer | 163ec5d | 2019-10-08 19:46:11 +0200 | [diff] [blame] | 421 | variables: |
| 422 | CROSS: armhf |
Michel Dänzer | 793f6b3 | 2019-10-08 19:48:41 +0200 | [diff] [blame] | 423 | LLVM_VERSION: "7" |
Eric Anholt | 2574158 | 2020-02-24 10:31:33 -0800 | [diff] [blame] | 424 | EXTRA_OPTION: > |
| 425 | -D llvm=false |
Tomeu Vizoso | 22d9764 | 2019-12-17 11:50:14 +0100 | [diff] [blame] | 426 | script: |
| 427 | - .gitlab-ci/meson-build.sh |
| 428 | - .gitlab-ci/prepare-artifacts.sh |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 429 | |
| 430 | meson-arm64: |
Michel Dänzer | 163ec5d | 2019-10-08 19:46:11 +0200 | [diff] [blame] | 431 | extends: |
| 432 | - .meson-arm |
| 433 | - .ci-deqp-artifacts |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 434 | variables: |
Rohan Garg | 9c0bbba | 2020-02-20 16:37:48 +0100 | [diff] [blame] | 435 | VULKAN_DRIVERS: "freedreno" |
Eric Anholt | 2574158 | 2020-02-24 10:31:33 -0800 | [diff] [blame] | 436 | EXTRA_OPTION: > |
| 437 | -D llvm=false |
Michel Dänzer | 59fcb01 | 2019-10-23 18:42:53 +0200 | [diff] [blame] | 438 | script: |
| 439 | - .gitlab-ci/meson-build.sh |
| 440 | - .gitlab-ci/prepare-artifacts.sh |
Michel Dänzer | e536446 | 2019-09-13 11:59:43 +0200 | [diff] [blame] | 441 | |
Rohan Garg | 9c0bbba | 2020-02-20 16:37:48 +0100 | [diff] [blame] | 442 | meson-arm64-build-test: |
| 443 | extends: |
| 444 | - .meson-arm |
| 445 | - .ci-deqp-artifacts |
| 446 | variables: |
| 447 | VULKAN_DRIVERS: "amd" |
| 448 | script: |
| 449 | - .gitlab-ci/meson-build.sh |
| 450 | |
Michel Dänzer | a2cce70 | 2019-03-20 15:58:31 +0100 | [diff] [blame] | 451 | meson-clang: |
| 452 | extends: .meson-build |
| 453 | variables: |
| 454 | UNWIND: "true" |
Samuel Pitoiset | 7362176 | 2019-11-19 14:37:32 +0100 | [diff] [blame] | 455 | DRI_LOADERS: > |
| 456 | -D glvnd=true |
Michel Dänzer | a2cce70 | 2019-03-20 15:58:31 +0100 | [diff] [blame] | 457 | DRI_DRIVERS: "auto" |
| 458 | GALLIUM_DRIVERS: "auto" |
Eric Engestrom | 47f419d | 2019-05-01 12:09:26 +0100 | [diff] [blame] | 459 | VULKAN_DRIVERS: intel,amd,freedreno |
Michel Dänzer | 5f0ff00 | 2019-12-13 11:02:16 +0100 | [diff] [blame] | 460 | CC: "ccache clang-9" |
| 461 | CXX: "ccache clang++-9" |
Michel Dänzer | a2cce70 | 2019-03-20 15:58:31 +0100 | [diff] [blame] | 462 | |
Daniel Stone | 7911346 | 2020-04-16 14:56:18 +0100 | [diff] [blame] | 463 | meson-windows-vs2019: |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 464 | extends: |
| 465 | - .build-windows |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 466 | - .use-windows_build_vs2019 |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 467 | stage: meson-misc |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 468 | script: |
Daniel Stone | 07885cb | 2020-03-24 11:11:36 +0000 | [diff] [blame] | 469 | - . .\.gitlab-ci\windows\mesa_build.ps1 |
Dylan Baker | 19851c9 | 2019-10-23 14:36:19 -0700 | [diff] [blame] | 470 | |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 471 | scons-win64: |
| 472 | extends: .scons-build |
| 473 | variables: |
Jose Fonseca | 27d58a1 | 2020-03-28 10:36:28 +0000 | [diff] [blame] | 474 | SCONS_TARGET: platform=windows machine=x86_64 debug=1 |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 475 | SCONS_CHECK_COMMAND: "true" |
Jose Fonseca | 27d58a1 | 2020-03-28 10:36:28 +0000 | [diff] [blame] | 476 | allow_failure: true |
Eric Engestrom | 89a7467 | 2019-01-21 09:42:37 +0000 | [diff] [blame] | 477 | |
Michel Dänzer | 6897715 | 2019-05-03 10:58:48 +0200 | [diff] [blame] | 478 | meson-clover: |
Eric Engestrom | b5a70af | 2019-01-28 18:05:22 +0000 | [diff] [blame] | 479 | extends: .meson-build |
| 480 | variables: |
| 481 | UNWIND: "true" |
| 482 | DRI_LOADERS: > |
| 483 | -D glx=disabled |
| 484 | -D egl=false |
| 485 | -D gbm=false |
| 486 | GALLIUM_ST: > |
| 487 | -D dri3=false |
| 488 | -D gallium-vdpau=false |
| 489 | -D gallium-xvmc=false |
| 490 | -D gallium-omx=disabled |
| 491 | -D gallium-va=false |
| 492 | -D gallium-xa=false |
| 493 | -D gallium-nine=false |
| 494 | -D gallium-opencl=icd |
Michel Dänzer | 6897715 | 2019-05-03 10:58:48 +0200 | [diff] [blame] | 495 | script: |
| 496 | - export GALLIUM_DRIVERS="r600,radeonsi" |
| 497 | - .gitlab-ci/meson-build.sh |
Samuel Pitoiset | 7d1c091 | 2019-08-21 11:45:25 +0200 | [diff] [blame] | 498 | - LLVM_VERSION=8 .gitlab-ci/meson-build.sh |
Michel Dänzer | 6897715 | 2019-05-03 10:58:48 +0200 | [diff] [blame] | 499 | - export GALLIUM_DRIVERS="i915,r600" |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 500 | - LLVM_VERSION=6.0 .gitlab-ci/meson-build.sh |
| 501 | - LLVM_VERSION=7 .gitlab-ci/meson-build.sh |
| 502 | |
| 503 | meson-clover-old-llvm: |
Michel Dänzer | 88319f2 | 2019-09-18 16:17:01 +0200 | [diff] [blame] | 504 | extends: |
| 505 | - meson-clover |
Michel Dänzer | 3a48f45 | 2019-11-13 17:43:41 +0100 | [diff] [blame] | 506 | - .use-x86_build_old |
Michel Dänzer | 8a19992 | 2019-09-06 17:04:47 +0200 | [diff] [blame] | 507 | variables: |
| 508 | UNWIND: "false" |
| 509 | DRI_LOADERS: > |
| 510 | -D glx=disabled |
| 511 | -D egl=false |
| 512 | -D gbm=false |
| 513 | -D platforms=drm,surfaceless |
| 514 | GALLIUM_DRIVERS: "i915,r600" |
| 515 | script: |
Michel Dänzer | 6897715 | 2019-05-03 10:58:48 +0200 | [diff] [blame] | 516 | - LLVM_VERSION=3.9 .gitlab-ci/meson-build.sh |
| 517 | - LLVM_VERSION=4.0 .gitlab-ci/meson-build.sh |
| 518 | - LLVM_VERSION=5.0 .gitlab-ci/meson-build.sh |
Eric Engestrom | 8dab707 | 2019-01-28 18:09:24 +0000 | [diff] [blame] | 519 | |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 520 | meson-vulkan: |
| 521 | extends: .meson-build |
| 522 | variables: |
| 523 | UNWIND: "false" |
| 524 | DRI_LOADERS: > |
| 525 | -D glx=disabled |
| 526 | -D gbm=false |
| 527 | -D egl=false |
| 528 | -D platforms=x11,wayland,drm |
| 529 | -D osmesa=none |
| 530 | GALLIUM_ST: > |
| 531 | -D dri3=true |
| 532 | -D gallium-vdpau=false |
| 533 | -D gallium-xvmc=false |
| 534 | -D gallium-omx=disabled |
| 535 | -D gallium-va=false |
| 536 | -D gallium-xa=false |
| 537 | -D gallium-nine=false |
| 538 | -D gallium-opencl=disabled |
Michel Dänzer | 75cc8c0 | 2019-09-25 12:56:58 +0200 | [diff] [blame] | 539 | -D b_sanitize=undefined |
| 540 | -D c_args=-fno-sanitize-recover=all |
| 541 | -D cpp_args=-fno-sanitize-recover=all |
| 542 | UBSAN_OPTIONS: "print_stacktrace=1" |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 543 | VULKAN_DRIVERS: intel,amd,freedreno |
Eric Engestrom | 5f8d29a | 2019-05-08 18:17:23 +0200 | [diff] [blame] | 544 | EXTRA_OPTION: > |
| 545 | -D vulkan-overlay-layer=true |
Eric Anholt | 3c7c021 | 2019-12-16 21:23:02 -0800 | [diff] [blame] | 546 | -D werror=true |
Michel Dänzer | 82b3009 | 2019-05-03 18:19:25 +0200 | [diff] [blame] | 547 | |
Eric Anholt | 11aa32a | 2019-07-11 12:58:28 -0700 | [diff] [blame] | 548 | meson-i386: |
| 549 | extends: .meson-cross |
| 550 | variables: |
Eric Engestrom | 1c82fa0 | 2019-08-09 23:46:50 +0100 | [diff] [blame] | 551 | CROSS: i386 |
Samuel Pitoiset | 529c0ba | 2020-03-04 09:37:46 +0100 | [diff] [blame] | 552 | VULKAN_DRIVERS: intel,amd |
Michel Dänzer | a059186 | 2020-03-12 12:31:05 +0100 | [diff] [blame] | 553 | GALLIUM_DRIVERS: "iris,r300,radeonsi,swrast,virgl" |
Eric Anholt | 11aa32a | 2019-07-11 12:58:28 -0700 | [diff] [blame] | 554 | EXTRA_OPTION: > |
Eric Anholt | 11aa32a | 2019-07-11 12:58:28 -0700 | [diff] [blame] | 555 | -D vulkan-overlay-layer=true |
Eric Anholt | f6e5991 | 2019-12-16 21:23:02 -0800 | [diff] [blame] | 556 | -D werror=true |
Samuel Pitoiset | 529c0ba | 2020-03-04 09:37:46 +0100 | [diff] [blame] | 557 | script: |
| 558 | - dpkg -i /var/cache/apt/archives/$CROSS/*.deb |
| 559 | - .gitlab-ci/meson-build.sh |
Eric Anholt | 11aa32a | 2019-07-11 12:58:28 -0700 | [diff] [blame] | 560 | |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 561 | meson-s390x: |
| 562 | extends: |
| 563 | - .meson-cross |
Michel Dänzer | 130c0ba | 2020-03-18 18:41:43 +0100 | [diff] [blame] | 564 | tags: |
| 565 | - kvm |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 566 | variables: |
| 567 | CROSS: s390x |
Michel Dänzer | 6c99de98 | 2020-05-23 16:07:53 +0200 | [diff] [blame] | 568 | EXTRA_OPTION: > |
| 569 | -D werror=true |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 570 | GALLIUM_DRIVERS: "swrast" |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 571 | script: |
Samuel Pitoiset | 529c0ba | 2020-03-04 09:37:46 +0100 | [diff] [blame] | 572 | # For unknown reasons "too many" installed i386 libraries cause qemu to |
| 573 | # crash while executing llvm-config for s390x. |
Michel Dänzer | da3aee9 | 2020-04-27 12:42:58 +0200 | [diff] [blame] | 574 | - apt-get purge -y wine32 |
Andres Gomez | cb055c6 | 2020-04-22 16:51:48 +0300 | [diff] [blame] | 575 | - apt-get autoremove -y --purge |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 576 | - dpkg -i /var/cache/apt/archives/$CROSS/*.deb |
| 577 | - .gitlab-ci/meson-build.sh |
| 578 | |
| 579 | meson-ppc64el: |
| 580 | extends: |
| 581 | - meson-s390x |
| 582 | variables: |
| 583 | CROSS: ppc64el |
Michel Dänzer | 6c99de98 | 2020-05-23 16:07:53 +0200 | [diff] [blame] | 584 | EXTRA_OPTION: "" |
Michel Dänzer | 8be81f8 | 2020-01-31 16:07:10 +0100 | [diff] [blame] | 585 | GALLIUM_DRIVERS: "nouveau,radeonsi,swrast,virgl" |
Michel Dänzer | 8be81f8 | 2020-01-31 16:07:10 +0100 | [diff] [blame] | 586 | VULKAN_DRIVERS: "amd" |
Michel Dänzer | 65610ec | 2020-01-30 18:21:15 +0100 | [diff] [blame] | 587 | |
Dylan Baker | 449f831 | 2019-10-11 09:04:14 -0700 | [diff] [blame] | 588 | meson-mingw32-x86_64: |
Dylan Baker | d905d9b | 2019-09-19 10:21:51 -0700 | [diff] [blame] | 589 | extends: .meson-build |
Michel Dänzer | cc9493f | 2020-02-27 18:27:56 +0100 | [diff] [blame] | 590 | stage: meson-misc |
Dylan Baker | d905d9b | 2019-09-19 10:21:51 -0700 | [diff] [blame] | 591 | variables: |
| 592 | UNWIND: "false" |
| 593 | DRI_DRIVERS: "" |
| 594 | GALLIUM_DRIVERS: "swrast" |
| 595 | EXTRA_OPTION: > |
| 596 | -Dllvm=false |
| 597 | -Dosmesa=gallium |
| 598 | --cross-file=.gitlab-ci/x86_64-w64-mingw32 |
| 599 | |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 600 | .test: |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 601 | extends: |
| 602 | - .ci-run-policy |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 603 | variables: |
| 604 | GIT_STRATEGY: none # testing doesn't build anything from source |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 605 | before_script: |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 606 | # Note: Build dir (and thus install) may be dirty due to GIT_STRATEGY |
| 607 | - rm -rf install |
| 608 | - tar -xf artifacts/install.tar |
Samuel Pitoiset | eab328f | 2019-11-14 14:00:46 +0100 | [diff] [blame] | 609 | - LD_LIBRARY_PATH=install/lib find install/lib -name "*.so" -print -exec ldd {} \; |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 610 | artifacts: |
Rob Clark | fdaf777 | 2019-11-17 11:33:01 -0800 | [diff] [blame] | 611 | when: always |
Michel Dänzer | 0103f02 | 2020-03-06 12:35:17 +0100 | [diff] [blame] | 612 | name: "mesa_${CI_JOB_NAME}" |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 613 | paths: |
| 614 | - results/ |
Michel Dänzer | cccb68b | 2019-09-13 11:13:12 +0200 | [diff] [blame] | 615 | dependencies: |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 616 | - meson-testing |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 617 | |
| 618 | .test-gl: |
| 619 | extends: |
| 620 | - .test |
| 621 | variables: |
| 622 | TAG: *x86_test-gl |
| 623 | image: "$CI_REGISTRY_IMAGE/debian/x86_test-gl:$TAG" |
Michel Dänzer | c5aa271 | 2019-10-22 11:19:17 +0200 | [diff] [blame] | 624 | needs: |
Michel Dänzer | 43111ea | 2020-05-16 12:07:42 +0200 | [diff] [blame] | 625 | - x86_build |
Samuel Pitoiset | 66b5627 | 2019-11-19 12:23:41 +0100 | [diff] [blame] | 626 | - meson-testing |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 627 | - x86_test-base |
Samuel Pitoiset | 520a77d | 2019-11-18 09:15:12 +0100 | [diff] [blame] | 628 | - x86_test-gl |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 629 | |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 630 | .test-vk: |
| 631 | extends: |
| 632 | - .test |
| 633 | variables: |
| 634 | TAG: *x86_test-vk |
| 635 | image: "$CI_REGISTRY_IMAGE/debian/x86_test-vk:$TAG" |
| 636 | needs: |
Michel Dänzer | 43111ea | 2020-05-16 12:07:42 +0200 | [diff] [blame] | 637 | - x86_build |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 638 | - meson-testing |
Michel Dänzer | c2366f0 | 2020-05-16 17:17:23 +0200 | [diff] [blame] | 639 | - x86_test-base |
Samuel Pitoiset | 0b246d3 | 2019-11-18 09:30:27 +0100 | [diff] [blame] | 640 | - x86_test-vk |
| 641 | |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 642 | .piglit-test: |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 643 | extends: |
| 644 | - .test-gl |
| 645 | - .llvmpipe-rules |
Michel Dänzer | a3b3d3b | 2019-11-25 18:42:10 +0100 | [diff] [blame] | 646 | artifacts: |
| 647 | when: on_failure |
Michel Dänzer | 0103f02 | 2020-03-06 12:35:17 +0100 | [diff] [blame] | 648 | name: "mesa_${CI_JOB_NAME}" |
Michel Dänzer | a3b3d3b | 2019-11-25 18:42:10 +0100 | [diff] [blame] | 649 | paths: |
| 650 | - summary/ |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 651 | variables: |
| 652 | LIBGL_ALWAYS_SOFTWARE: 1 |
| 653 | PIGLIT_NO_WINDOW: 1 |
| 654 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 655 | - install/piglit/run.sh |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 656 | |
| 657 | piglit-quick_gl: |
| 658 | extends: .piglit-test |
| 659 | variables: |
| 660 | LP_NUM_THREADS: 0 |
Dave Airlie | e6b2af5 | 2019-12-03 15:23:45 +1000 | [diff] [blame] | 661 | NIR_VALIDATE: 0 |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 662 | PIGLIT_OPTIONS: > |
Michel Dänzer | 5585b8e | 2019-12-03 10:45:28 +0100 | [diff] [blame] | 663 | --process-isolation false |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 664 | -x arb_gpu_shader5 |
Eric Anholt | 3097efe | 2019-12-04 16:13:38 -0800 | [diff] [blame] | 665 | -x egl_ext_device_ |
| 666 | -x egl_ext_platform_device |
Matt Turner | 17c9ec9 | 2020-01-21 15:23:39 -0800 | [diff] [blame] | 667 | -x ext_timer_query@time-elapsed |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 668 | -x glx-multithread-clearbuffer |
| 669 | -x glx-multithread-shader-compile |
| 670 | -x max-texture-size |
| 671 | -x maxsize |
| 672 | PIGLIT_PROFILES: quick_gl |
| 673 | |
Michel Dänzer | 5585b8e | 2019-12-03 10:45:28 +0100 | [diff] [blame] | 674 | piglit-glslparser: |
| 675 | extends: .piglit-test |
| 676 | variables: |
| 677 | LP_NUM_THREADS: 0 |
Dave Airlie | e6b2af5 | 2019-12-03 15:23:45 +1000 | [diff] [blame] | 678 | NIR_VALIDATE: 0 |
Michel Dänzer | 5585b8e | 2019-12-03 10:45:28 +0100 | [diff] [blame] | 679 | PIGLIT_PROFILES: glslparser |
| 680 | |
| 681 | piglit-quick_shader: |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 682 | extends: .piglit-test |
| 683 | variables: |
| 684 | LP_NUM_THREADS: 1 |
Dave Airlie | e6b2af5 | 2019-12-03 15:23:45 +1000 | [diff] [blame] | 685 | NIR_VALIDATE: 0 |
Michel Dänzer | 5585b8e | 2019-12-03 10:45:28 +0100 | [diff] [blame] | 686 | PIGLIT_PROFILES: quick_shader |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 687 | |
Samuel Pitoiset | 16b999b | 2019-11-19 08:39:00 +0100 | [diff] [blame] | 688 | .deqp-test: |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 689 | variables: |
| 690 | DEQP_SKIPS: deqp-default-skips.txt |
| 691 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 692 | - ./install/deqp-runner.sh |
Michel Dänzer | 576f7b6 | 2019-10-22 17:16:52 +0200 | [diff] [blame] | 693 | |
Samuel Pitoiset | 16b999b | 2019-11-19 08:39:00 +0100 | [diff] [blame] | 694 | .deqp-test-gl: |
| 695 | extends: |
| 696 | - .test-gl |
| 697 | - .deqp-test |
| 698 | |
| 699 | .deqp-test-vk: |
| 700 | extends: |
| 701 | - .test-vk |
| 702 | - .deqp-test |
| 703 | variables: |
| 704 | DEQP_VER: vk |
| 705 | |
Samuel Pitoiset | 1cdb6ed | 2020-02-26 09:33:14 +0100 | [diff] [blame] | 706 | .fossilize-test: |
| 707 | extends: .test-vk |
| 708 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 709 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | 1cdb6ed | 2020-02-26 09:33:14 +0100 | [diff] [blame] | 710 | |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 711 | llvmpipe-gles2: |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 712 | variables: |
| 713 | DEQP_VER: gles2 |
Eric Anholt | f08c810 | 2019-11-04 10:54:41 -0800 | [diff] [blame] | 714 | DEQP_PARALLEL: 4 |
Dave Airlie | e6b2af5 | 2019-12-03 15:23:45 +1000 | [diff] [blame] | 715 | NIR_VALIDATE: 0 |
Eric Anholt | f08c810 | 2019-11-04 10:54:41 -0800 | [diff] [blame] | 716 | # Don't use threads inside llvmpipe, we've already got all 4 cores |
| 717 | # busy with DEQP_PARALLEL. |
| 718 | LP_NUM_THREADS: 0 |
Eric Anholt | 46daaca | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 719 | DEQP_EXPECTED_FAILS: deqp-llvmpipe-fails.txt |
| 720 | LIBGL_ALWAYS_SOFTWARE: "true" |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 721 | DEQP_EXPECTED_RENDERER: llvmpipe |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 722 | extends: |
| 723 | - .deqp-test-gl |
| 724 | - .llvmpipe-rules |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 725 | |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 726 | softpipe-gles2: |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 727 | extends: |
| 728 | - llvmpipe-gles2 |
| 729 | - .softpipe-rules |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 730 | variables: |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 731 | DEQP_EXPECTED_FAILS: deqp-softpipe-fails.txt |
Eric Anholt | f08c810 | 2019-11-04 10:54:41 -0800 | [diff] [blame] | 732 | DEQP_SKIPS: deqp-softpipe-skips.txt |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 733 | GALLIUM_DRIVER: "softpipe" |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 734 | DEQP_EXPECTED_RENDERER: softpipe |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 735 | |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 736 | softpipe-gles3: |
Eric Anholt | 52843ec | 2019-11-05 10:31:29 -0800 | [diff] [blame] | 737 | parallel: 2 |
Eric Anholt | 553cd82 | 2019-08-09 10:32:40 -0700 | [diff] [blame] | 738 | variables: |
| 739 | DEQP_VER: gles3 |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 740 | extends: softpipe-gles2 |
Eric Anholt | 52843ec | 2019-11-05 10:31:29 -0800 | [diff] [blame] | 741 | |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 742 | softpipe-gles31: |
Eric Anholt | 52843ec | 2019-11-05 10:31:29 -0800 | [diff] [blame] | 743 | parallel: 4 |
| 744 | variables: |
| 745 | DEQP_VER: gles31 |
Michel Dänzer | 71436f9 | 2020-03-03 18:17:12 +0100 | [diff] [blame] | 746 | extends: softpipe-gles2 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 747 | |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 748 | virgl-gles2: |
| 749 | variables: |
| 750 | DEQP_VER: gles2 |
| 751 | DEQP_PARALLEL: 4 |
| 752 | NIR_VALIDATE: 0 |
| 753 | DEQP_NO_SAVE_RESULTS: 1 |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 754 | # Don't use threads inside llvmpipe, we've already got all 4 cores |
| 755 | # busy with DEQP_PARALLEL. |
| 756 | LP_NUM_THREADS: 0 |
| 757 | DEQP_EXPECTED_FAILS: deqp-virgl-fails.txt |
| 758 | LIBGL_ALWAYS_SOFTWARE: "true" |
| 759 | GALLIUM_DRIVER: "virpipe" |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 760 | DEQP_EXPECTED_RENDERER: virgl |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 761 | extends: |
| 762 | - .deqp-test-gl |
| 763 | - .virgl-rules |
| 764 | |
| 765 | virgl-gles3: |
| 766 | variables: |
| 767 | DEQP_VER: gles3 |
| 768 | CI_NODE_INDEX: 1 |
| 769 | CI_NODE_TOTAL: 3 |
Eric Anholt | a9e6a3e | 2020-04-17 12:28:58 -0700 | [diff] [blame] | 770 | DEQP_RUNNER_OPTIONS: "--timeout 120" |
Tomeu Vizoso | ad3ef6d | 2020-04-01 09:17:25 +0200 | [diff] [blame] | 771 | extends: virgl-gles2 |
| 772 | |
Tomeu Vizoso | 5a5316e | 2020-04-21 14:51:59 +0200 | [diff] [blame] | 773 | virgl-gles31: |
| 774 | variables: |
| 775 | DEQP_VER: gles31 |
| 776 | CI_NODE_INDEX: 1 |
| 777 | CI_NODE_TOTAL: 10 |
| 778 | DEQP_OPTIONS: "--deqp-log-images=disable" |
Eric Anholt | a9e6a3e | 2020-04-17 12:28:58 -0700 | [diff] [blame] | 779 | DEQP_RUNNER_OPTIONS: "--timeout 120" |
Tomeu Vizoso | 5a5316e | 2020-04-21 14:51:59 +0200 | [diff] [blame] | 780 | MESA_GLES_VERSION_OVERRIDE: "3.1" |
| 781 | MESA_GLSL_VERSION_OVERRIDE: "310" |
| 782 | extends: virgl-gles2 |
| 783 | |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 784 | # Rules for tests that should not be present in MRs or the main |
| 785 | # project's pipeline (don't block marge or report red on |
| 786 | # mesa/mesamaster) but should be present on pipelines in personal |
| 787 | # branches (so you can opt in to running the flaky test when you want |
| 788 | # to). |
| 789 | .test-manual: |
| 790 | rules: |
Michel Dänzer | 6a8e5dd | 2020-04-11 15:32:02 +0200 | [diff] [blame] | 791 | - if: '$CI_PROJECT_PATH != "mesa/mesa" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_COMMIT_REF_NAME' |
| 792 | changes: |
| 793 | *all_paths |
| 794 | when: manual |
| 795 | - when: never |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 796 | |
Fritz Koenig | 2a98cf3 | 2020-02-12 19:31:24 +0000 | [diff] [blame] | 797 | arm64_a630_gles2: |
Michel Dänzer | c6c7652 | 2019-11-11 18:13:28 +0100 | [diff] [blame] | 798 | extends: |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 799 | - arm64_a306_gles2 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 800 | variables: |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 801 | BM_KERNEL: /lava-files/cheza-kernel |
| 802 | BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init" |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 803 | DEQP_EXPECTED_FAILS: deqp-freedreno-a630-fails.txt |
| 804 | DEQP_SKIPS: deqp-freedreno-a630-skips.txt |
| 805 | NIR_VALIDATE: 0 |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 806 | DEQP_EXPECTED_RENDERER: FD630 |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 807 | DEQP_NO_SAVE_RESULTS: "" |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 808 | tags: |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 809 | - google-freedreno-cheza |
| 810 | script: |
| 811 | - .gitlab-ci/bare-metal/cros-servo.sh |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 812 | |
Fritz Koenig | 2a98cf3 | 2020-02-12 19:31:24 +0000 | [diff] [blame] | 813 | arm64_a630_gles31: |
| 814 | extends: arm64_a630_gles2 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 815 | variables: |
Michel Dänzer | 128581d | 2019-09-11 18:55:43 +0200 | [diff] [blame] | 816 | DEQP_VER: gles31 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 817 | |
Fritz Koenig | 2a98cf3 | 2020-02-12 19:31:24 +0000 | [diff] [blame] | 818 | arm64_a630_gles3: |
| 819 | extends: arm64_a630_gles2 |
Eric Anholt | 6f0dc08 | 2019-06-28 16:35:32 -0700 | [diff] [blame] | 820 | variables: |
| 821 | DEQP_VER: gles3 |
| 822 | |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 823 | # We almost always manage to lower UBOs back to constant uploads in |
| 824 | # the test suite, so get a little testing for it here. |
| 825 | arm64_a630_noubo: |
| 826 | extends: arm64_a630_gles31 |
Eric Anholt | 5082ac0 | 2020-04-17 12:02:37 -0700 | [diff] [blame] | 827 | variables: |
| 828 | DEQP_VER: gles31 |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 829 | IR3_SHADER_DEBUG: nouboopt |
| 830 | DEQP_CASELIST_FILTER: "functional.*ubo" |
| 831 | DEQP_EXPECTED_FAILS: deqp-freedreno-a630-noubo-fails.txt |
| 832 | |
| 833 | # The driver does some guessing as to whether to render using gmem |
| 834 | # or bypass, and some GLES3.1 features interact with either one. |
| 835 | # Do a little testing with gmem and bypass forced. |
| 836 | arm64_a630_bypass: |
| 837 | extends: arm64_a630_gles31 |
| 838 | variables: |
Eric Anholt | 5082ac0 | 2020-04-17 12:02:37 -0700 | [diff] [blame] | 839 | CI_NODE_INDEX: 1 |
| 840 | CI_NODE_TOTAL: 5 |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 841 | FD_MESA_DEBUG: nogmem |
| 842 | DEQP_EXPECTED_FAILS: deqp-freedreno-a630-bypass-fails.txt |
| 843 | |
| 844 | # Along with checking gmem path, check that we don't get obvious nir |
| 845 | # validation failures (though it's too expensive to have it on for the |
| 846 | # full CTS) |
| 847 | arm64_a630_gmem: |
| 848 | extends: arm64_a630_gles31 |
| 849 | variables: |
| 850 | CI_NODE_INDEX: 1 |
| 851 | CI_NODE_TOTAL: 5 |
| 852 | FD_MESA_DEBUG: nobypass |
| 853 | NIR_VALIDATE: 1 |
Eric Anholt | 5082ac0 | 2020-04-17 12:02:37 -0700 | [diff] [blame] | 854 | |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 855 | .baremetal-test: |
| 856 | extends: |
| 857 | - .ci-run-policy |
| 858 | stage: test |
Eric Anholt | 6f4fc4f | 2020-05-15 11:22:37 -0700 | [diff] [blame] | 859 | artifacts: |
| 860 | when: always |
| 861 | name: "mesa_${CI_JOB_NAME}" |
| 862 | paths: |
| 863 | - results/ |
| 864 | - serial*.txt |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 865 | |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 866 | arm64_a306_gles2: |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 867 | extends: |
| 868 | - .baremetal-test |
Eric Anholt | 601a029 | 2020-05-22 20:00:07 -0700 | [diff] [blame] | 869 | - .use-arm_test |
Eric Anholt | f778c48 | 2020-03-18 09:51:03 -0700 | [diff] [blame] | 870 | - .freedreno-rules |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 871 | variables: |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 872 | BM_KERNEL: /lava-files/Image.gz |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 873 | BM_DTB: /lava-files/apq8016-sbc.dtb |
| 874 | BM_ROOTFS: /lava-files/rootfs-arm64 |
| 875 | BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8" |
Eric Anholt | 3b5e71c | 2020-05-01 09:57:00 -0700 | [diff] [blame] | 876 | FLAKES_CHANNEL: "#freedreno-ci" |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 877 | DEQP_EXPECTED_FAILS: deqp-freedreno-a307-fails.txt |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 878 | DEQP_SKIPS: deqp-freedreno-a307-skips.txt |
| 879 | DEQP_VER: gles2 |
| 880 | DEQP_PARALLEL: 4 |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 881 | DEQP_EXPECTED_RENDERER: FD307 |
Eric Anholt | 46d9b50 | 2020-05-22 15:48:55 -0700 | [diff] [blame] | 882 | # Since we can't get artifacts back yet, skip making them. |
| 883 | DEQP_NO_SAVE_RESULTS: 1 |
Eric Anholt | b4bccbd | 2020-05-15 11:20:44 -0700 | [diff] [blame] | 884 | # NIR_VALIDATE=0 left intentionally unset as a3xx is fast enough at its small testsuite. |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 885 | script: |
| 886 | - .gitlab-ci/bare-metal/fastboot.sh |
| 887 | needs: |
Eric Anholt | 601a029 | 2020-05-22 20:00:07 -0700 | [diff] [blame] | 888 | - arm_test |
Eric Anholt | 68b3b5b | 2020-05-13 11:08:08 -0700 | [diff] [blame] | 889 | - arm_build |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 890 | - meson-arm64 |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 891 | tags: |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 892 | - google-freedreno-db410c |
| 893 | |
Eric Anholt | b4bccbd | 2020-05-15 11:20:44 -0700 | [diff] [blame] | 894 | # Fractional run, single threaded, due to flaky results |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 895 | arm64_a306_gles3: |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 896 | extends: |
| 897 | - arm64_a306_gles2 |
Eric Anholt | cf5ba9d | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 898 | variables: |
| 899 | DEQP_VER: gles3 |
Eric Anholt | fa49a50 | 2020-04-22 11:30:38 -0700 | [diff] [blame] | 900 | DEQP_PARALLEL: 1 |
| 901 | CI_NODE_INDEX: 1 |
Eric Anholt | b4bccbd | 2020-05-15 11:20:44 -0700 | [diff] [blame] | 902 | CI_NODE_TOTAL: 25 |
| 903 | NIR_VALIDATE: 0 |
Eric Anholt | aea8c9c | 2020-03-03 11:44:45 -0800 | [diff] [blame] | 904 | |
Eric Anholt | ae442c3 | 2020-05-15 16:15:07 -0700 | [diff] [blame] | 905 | # Fractional runs with debug options. Note that since we're not |
| 906 | # hitting the iommu faults, we can run in parallel (derive from gles2, not gles3). |
| 907 | arm64_a306_gles3_options: |
| 908 | extends: arm64_a306_gles2 |
| 909 | variables: |
| 910 | DEQP_VER: gles3 |
| 911 | script: |
| 912 | # Check that the non-constbuf UBO case works. |
| 913 | - DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_CASELIST_FILTER="functional.*ubo" .gitlab-ci/bare-metal/fastboot.sh |
| 914 | |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 915 | arm64_a530_gles2: |
| 916 | extends: |
| 917 | - arm64_a306_gles2 |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 918 | variables: |
| 919 | BM_KERNEL: /lava-files/db820c-kernel |
| 920 | BM_DTB: /lava-files/db820c.dtb |
Eric Anholt | 6033c10 | 2020-05-19 16:33:10 -0700 | [diff] [blame] | 921 | # Disable SMP because only CPU 0 is at a freq higher than 19mhz on |
| 922 | # current upstream kernel. |
| 923 | BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 nosmp" |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 924 | DEQP_EXPECTED_FAILS: deqp-freedreno-a530-fails.txt |
| 925 | DEQP_SKIPS: deqp-freedreno-a530-skips.txt |
Eric Anholt | 8b221e0 | 2020-04-17 12:39:32 -0700 | [diff] [blame] | 926 | DEQP_EXPECTED_RENDERER: FD530 |
Eric Anholt | b4bccbd | 2020-05-15 11:20:44 -0700 | [diff] [blame] | 927 | NIR_VALIDATE: 0 |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 928 | tags: |
| 929 | - google-freedreno-db820c |
| 930 | |
| 931 | arm64_a530_gles3: |
| 932 | extends: |
| 933 | - arm64_a530_gles2 |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 934 | variables: |
| 935 | DEQP_VER: gles3 |
Eric Anholt | fa49a50 | 2020-04-22 11:30:38 -0700 | [diff] [blame] | 936 | DEQP_PARALLEL: 1 |
| 937 | CI_NODE_INDEX: 1 |
Eric Anholt | 6bf40c2 | 2020-05-19 16:44:14 -0700 | [diff] [blame] | 938 | CI_NODE_TOTAL: 40 |
Eric Anholt | 4bc15e7 | 2020-03-03 14:38:09 -0800 | [diff] [blame] | 939 | |
Eric Anholt | 6c01152 | 2020-04-22 12:08:06 -0700 | [diff] [blame] | 940 | arm64_a530_gles31: |
| 941 | extends: |
| 942 | - arm64_a530_gles3 |
| 943 | variables: |
| 944 | DEQP_VER: gles31 |
Eric Anholt | 6bf40c2 | 2020-05-19 16:44:14 -0700 | [diff] [blame] | 945 | CI_NODE_INDEX: 1 |
| 946 | CI_NODE_TOTAL: 10 |
Eric Anholt | 6c01152 | 2020-04-22 12:08:06 -0700 | [diff] [blame] | 947 | |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 948 | # RADV CI |
| 949 | .test-radv: |
Samuel Pitoiset | 8f55439 | 2020-03-09 17:53:51 +0100 | [diff] [blame] | 950 | extends: .radv-rules |
Samuel Pitoiset | 48e9203 | 2020-03-06 08:39:25 +0100 | [diff] [blame] | 951 | stage: radv |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 952 | variables: |
| 953 | VK_DRIVER: radeon |
Samuel Pitoiset | ff2e11b | 2019-12-06 17:07:35 +0100 | [diff] [blame] | 954 | RADV_DEBUG: checkir |
Samuel Pitoiset | a44cfac | 2020-05-04 11:44:45 +0200 | [diff] [blame] | 955 | ACO_DEBUG: validateir,validatera |
Samuel Pitoiset | 42a3d82 | 2020-02-05 17:04:20 +0100 | [diff] [blame] | 956 | |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 957 | # Can only be triggered manually on personal branches because RADV is the only |
| 958 | # driver that does Vulkan testing at the moment. |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 959 | radv_polaris10_vkcts: |
| 960 | extends: |
| 961 | - .deqp-test-vk |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 962 | - .test-radv |
| 963 | - .test-manual |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 964 | variables: |
Samuel Pitoiset | c1a3627 | 2019-11-13 11:03:52 +0100 | [diff] [blame] | 965 | DEQP_SKIPS: deqp-radv-polaris10-skips.txt |
| 966 | tags: |
| 967 | - polaris10 |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 968 | |
Samuel Pitoiset | e22d562 | 2020-03-06 08:36:14 +0100 | [diff] [blame] | 969 | radv-fossils: |
| 970 | extends: |
| 971 | - .fossilize-test |
| 972 | - .test-radv |
| 973 | script: |
Samuel Pitoiset | f9dbca8 | 2020-05-04 11:48:46 +0200 | [diff] [blame] | 974 | # Pitcairn (GFX6) |
| 975 | - export RADV_FORCE_FAMILY="pitcairn" |
| 976 | - ./install/fossilize-runner.sh |
| 977 | - RADV_PERFTEST=aco ./install/fossilize-runner.sh |
| 978 | # Bonaire (GFX7) |
| 979 | - export RADV_FORCE_FAMILY="bonaire" |
| 980 | - ./install/fossilize-runner.sh |
| 981 | - RADV_PERFTEST=aco ./install/fossilize-runner.sh |
| 982 | # Polaris10 (GFX8) |
Samuel Pitoiset | e22d562 | 2020-03-06 08:36:14 +0100 | [diff] [blame] | 983 | - export RADV_FORCE_FAMILY="polaris10" |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 984 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | a44cfac | 2020-05-04 11:44:45 +0200 | [diff] [blame] | 985 | - RADV_PERFTEST=aco ./install/fossilize-runner.sh |
Samuel Pitoiset | f9dbca8 | 2020-05-04 11:48:46 +0200 | [diff] [blame] | 986 | # Vega10 (GFX9) |
Samuel Pitoiset | e22d562 | 2020-03-06 08:36:14 +0100 | [diff] [blame] | 987 | - export RADV_FORCE_FAMILY="gfx900" |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 988 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | a44cfac | 2020-05-04 11:44:45 +0200 | [diff] [blame] | 989 | - RADV_PERFTEST=aco ./install/fossilize-runner.sh |
Samuel Pitoiset | f9dbca8 | 2020-05-04 11:48:46 +0200 | [diff] [blame] | 990 | # Navi10 (GFX10) |
Samuel Pitoiset | e22d562 | 2020-03-06 08:36:14 +0100 | [diff] [blame] | 991 | - export RADV_FORCE_FAMILY="gfx1010" |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 992 | - ./install/fossilize-runner.sh |
Samuel Pitoiset | a44cfac | 2020-05-04 11:44:45 +0200 | [diff] [blame] | 993 | - RADV_PERFTEST=aco ./install/fossilize-runner.sh |
Samuel Pitoiset | 42a3d82 | 2020-02-05 17:04:20 +0100 | [diff] [blame] | 994 | |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 995 | # Traces CI |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 996 | .traces-test: |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 997 | cache: |
| 998 | key: ${CI_JOB_NAME} |
| 999 | paths: |
Rohan Garg | 90a39af | 2020-02-28 13:48:53 +0100 | [diff] [blame] | 1000 | - traces-db/ |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 1001 | |
| 1002 | .traces-test-gl: |
| 1003 | extends: |
| 1004 | - .test-gl |
| 1005 | - .traces-test |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 1006 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 1007 | - ./install/tracie-runner-gl.sh |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 1008 | |
| 1009 | .traces-test-vk: |
| 1010 | extends: |
| 1011 | - .test-vk |
| 1012 | - .traces-test |
| 1013 | script: |
Tomeu Vizoso | 92f3c51 | 2020-03-24 12:58:30 +0100 | [diff] [blame] | 1014 | - ./install/tracie-runner-vk.sh |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 1015 | |
| 1016 | llvmpipe-traces: |
Pierre-Eric Pelloux-Prayer | 2a9d6fd | 2019-10-30 20:39:08 +0100 | [diff] [blame] | 1017 | extends: |
| 1018 | - .traces-test-gl |
| 1019 | - .llvmpipe-rules |
Alexandros Frantzis | 803ab5d | 2020-01-08 17:46:46 +0200 | [diff] [blame] | 1020 | variables: |
| 1021 | LIBGL_ALWAYS_SOFTWARE: "true" |
| 1022 | GALLIUM_DRIVER: "llvmpipe" |
Andres Gomez | 1d75595 | 2020-02-20 17:32:08 +0200 | [diff] [blame] | 1023 | DEVICE_NAME: "gl-vmware-llvmpipe" |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 1024 | |
| 1025 | radv-polaris10-traces: |
| 1026 | extends: |
| 1027 | - .traces-test-vk |
Eric Anholt | 8edaa84 | 2020-03-19 11:45:01 -0700 | [diff] [blame] | 1028 | - .test-radv |
| 1029 | - .test-manual |
Andres Gomez | 0ac731b1 | 2020-02-20 18:26:30 +0200 | [diff] [blame] | 1030 | variables: |
| 1031 | DEVICE_NAME: "vk-amd-polaris10" |
| 1032 | tags: |
| 1033 | - polaris10 |
Tomeu Vizoso | 8cba1a1 | 2020-04-21 15:44:03 +0200 | [diff] [blame] | 1034 | |
| 1035 | virgl-traces: |
| 1036 | extends: |
| 1037 | - .traces-test-gl |
| 1038 | - .virgl-rules |
| 1039 | variables: |
| 1040 | LIBGL_ALWAYS_SOFTWARE: "true" |
| 1041 | GALLIUM_DRIVER: "virpipe" |
| 1042 | DEVICE_NAME: "gl-virgl" |
| 1043 | MESA_GLES_VERSION_OVERRIDE: "3.1" |
| 1044 | MESA_GLSL_VERSION_OVERRIDE: "310" |