gitlab-ci: Use new needs: keyword

This way, the test jobs can start running before all build+test jobs
have finished, once the meson-main job has.

Idea suggested by Daniel Stone on IRC.

See https://docs.gitlab.com/ce/ci/directed_acyclic_graph/ and
https://docs.gitlab.com/ce/ci/yaml/README.html#needs for details.

v2:
* Improve commit log (Daniel Stone, Eric Engestrom)

Reviewed-by: Eric Engestrom <eric.engestrom@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fd80edb..6a5dde8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -353,6 +353,7 @@
   extends: .deqp-test
   dependencies:
     - meson-main
+  needs: [meson-main]
 
 test-softpipe-gles2:
   parallel: 4
@@ -365,6 +366,7 @@
   extends: .deqp-test
   dependencies:
     - meson-main
+  needs: [meson-main]
 
 # The GLES2 CTS run takes about 8 minutes of CPU time, while GLES3 is
 # 25 minutes.  Until we can get its runtime down, just do a partial
@@ -381,3 +383,4 @@
   extends: .deqp-test
   dependencies:
     - meson-main
+  needs: [meson-main]