1 # -*- coding: utf-8 -*-
3 #-------------------------------------------------------------------------
5 # Copyright 2015 The Android Open Source Project
6 # Copyright (C) 2016 The Khronos Group Inc
8 # Licensed under the Apache License, Version 2.0 (the "License");
9 # you may not use this file except in compliance with the License.
10 # You may obtain a copy of the License at
12 # http://www.apache.org/licenses/LICENSE-2.0
14 # Unless required by applicable law or agreed to in writing, software
15 # distributed under the License is distributed on an "AS IS" BASIS,
16 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 # See the License for the specific language governing permissions and
18 # limitations under the License.
20 #-------------------------------------------------------------------------
25 from collections import OrderedDict
27 from build_caselists import Module, getModuleByName, DEFAULT_BUILD_DIR, DEFAULT_TARGET
28 from mustpass import Project, Package, Mustpass, Configuration, include, exclude, genMustpassLists
30 sys.path.append(os.path.join(os.path.dirname(__file__), "..", "..", "..", "scripts"))
32 from build.common import DEQP_DIR
33 from build.config import ANY_GENERATOR, BuildConfig
36 COPYRIGHT_DECLARATION = """\
37 /* Copyright (C) 2016-2017 The Khronos Group Inc
39 * Licensed under the Apache License, Version 2.0 (the "License");
40 * you may not use this file except in compliance with the License.
41 * You may obtain a copy of the License at
43 * http://www.apache.org/licenses/LICENSE-2.0
45 * Unless required by applicable law or agreed to in writing, software
46 * distributed under the License is distributed on an "AS IS" BASIS,
47 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
48 * See the License for the specific language governing permissions and
49 * limitations under the License.
52 buildPath = DEFAULT_BUILD_DIR.format(targetName = DEFAULT_TARGET, buildType = "Release")
54 #-------------------------------------------------- ES MUSTPASS----------------------------------------------------------------------
56 CTS_AOSP_MP_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gles", "aosp_mustpass")
58 CTS_AOSP_MP_DEVICE_DIR = "gl_cts/data/mustpass/gles/aosp_mustpass"
60 CTS_MP_INC_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "modules", "runner")
62 CTS_AOSP_MP_ES_PROJECT = Project(name = "AOSP Mustpass ES", path = CTS_AOSP_MP_DATA_DIR, incpath = CTS_MP_INC_DIR, devicepath = CTS_AOSP_MP_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
64 CTS_KHR_MP_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gles", "khronos_mustpass")
66 CTS_KHR_MP_DEVICE_DIR = "gl_cts/data/mustpass/gles/khronos_mustpass"
68 CTS_KHR_MP_ES_PROJECT = Project(name = "Khronos Mustpass ES", path = CTS_KHR_MP_DATA_DIR, incpath = CTS_MP_INC_DIR, devicepath = CTS_KHR_MP_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
70 CTS_AOSP_MP_EGL_DEVICE_DIR = "gl_cts/data/mustpass/egl/aosp_mustpass"
72 CTS_AOSP_MP_EGL_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "egl", "aosp_mustpass")
74 CTS_AOSP_MP_EGL_PROJECT = Project(name = "AOSP Mustpass EGL", path = CTS_AOSP_MP_EGL_DATA_DIR, incpath = CTS_MP_INC_DIR, devicepath = CTS_AOSP_MP_EGL_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
76 CTS_KHR_MP_NOCTX_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gles", "khronos_mustpass_noctx")
78 CTS_KHR_MP_NOCTX_DEVICE_DIR = "gl_cts/data/mustpass/gles/khronos_mustpass_noctx"
80 CTS_KHR_MP_NOCTX_ES_PROJECT = Project(name = "Khronos Mustpass ES NoContext", path = CTS_KHR_MP_NOCTX_DATA_DIR, incpath = CTS_MP_INC_DIR, devicepath = CTS_KHR_MP_NOCTX_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
82 EGL_MODULE = getModuleByName("dEQP-EGL")
83 ES2CTS_MODULE = getModuleByName("dEQP-GLES2")
84 ES3CTS_MODULE = getModuleByName("dEQP-GLES3")
85 ES31CTS_MODULE = getModuleByName("dEQP-GLES31")
87 ES2KHR_MODULE = getModuleByName("KHR-GLES2")
88 ES3KHR_MODULE = getModuleByName("KHR-GLES3")
89 ES31KHR_MODULE = getModuleByName("KHR-GLES31")
90 ES32KHR_MODULE = getModuleByName("KHR-GLES32")
91 NOCTX_ES2_KHR_MODULE = getModuleByName("KHR-NOCTX-ES2")
92 NOCTX_ES32_KHR_MODULE = getModuleByName("KHR-NOCTX-ES32")
94 ES2GTF_MODULE = getModuleByName("GTF-GLES2")
95 ES3GTF_MODULE = getModuleByName("GTF-GLES3")
96 ES31GTF_MODULE = getModuleByName("GTF-GLES31")
98 GLCTS_GLES2_PKG = Package(module = ES2CTS_MODULE, configurations = [
100 Configuration(name = "master",
101 glconfig = "rgba8888d24s8ms0",
102 rotation = "unspecified",
103 surfacewidth = "256",
104 surfaceheight = "256",
105 filters = [include("gles2-master.txt")]),
107 GLCTS_3_2_2_GLES3_PKG = Package(module = ES3CTS_MODULE, configurations = [
109 Configuration(name = "master",
110 glconfig = "rgba8888d24s8ms0",
111 rotation = "unspecified",
112 surfacewidth = "256",
113 surfaceheight = "256",
114 filters = [include("gles3-master.txt")]),
117 Configuration(name = "rotate-portrait",
118 glconfig = "rgba8888d24s8ms0",
120 surfacewidth = "256",
121 surfaceheight = "256",
123 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
124 Configuration(name = "rotate-landscape",
125 glconfig = "rgba8888d24s8ms0",
127 surfacewidth = "256",
128 surfaceheight = "256",
130 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
131 Configuration(name = "rotate-reverse-portrait",
132 glconfig = "rgba8888d24s8ms0",
134 surfacewidth = "256",
135 surfaceheight = "256",
137 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
138 Configuration(name = "rotate-reverse-landscape",
139 glconfig = "rgba8888d24s8ms0",
141 surfacewidth = "256",
142 surfaceheight = "256",
144 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
147 Configuration(name = "multisample",
148 glconfig = "rgba8888d24s8ms4",
149 rotation = "unspecified",
150 surfacewidth = "256",
151 surfaceheight = "256",
152 filters = [include("gles3-master.txt"),
153 include("gles3-multisample.txt"),
154 exclude("gles3-multisample-issues.txt")]),
157 Configuration(name = "565-no-depth-no-stencil",
158 glconfig = "rgb565d0s0ms0",
159 rotation = "unspecified",
160 surfacewidth = "256",
161 surfaceheight = "256",
162 filters = [include("gles3-master.txt"),
163 include("gles3-pixelformat.txt"),
164 exclude("gles3-pixelformat-issues.txt")]),
166 GLCTS_3_2_2_GLES31_PKG = Package(module = ES31CTS_MODULE, configurations = [
168 Configuration(name = "master",
169 glconfig = "rgba8888d24s8ms0",
170 rotation = "unspecified",
171 surfacewidth = "256",
172 surfaceheight = "256",
173 filters = [include("gles31-master.txt")]),
175 Configuration(name = "rotate-portrait",
176 glconfig = "rgba8888d24s8ms0",
178 surfacewidth = "256",
179 surfaceheight = "256",
181 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
182 Configuration(name = "rotate-landscape",
183 glconfig = "rgba8888d24s8ms0",
185 surfacewidth = "256",
186 surfaceheight = "256",
188 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
189 Configuration(name = "rotate-reverse-portrait",
190 glconfig = "rgba8888d24s8ms0",
192 surfacewidth = "256",
193 surfaceheight = "256",
195 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
196 Configuration(name = "rotate-reverse-landscape",
197 glconfig = "rgba8888d24s8ms0",
199 surfacewidth = "256",
200 surfaceheight = "256",
202 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
205 Configuration(name = "multisample",
206 glconfig = "rgba8888d24s8ms4",
207 rotation = "unspecified",
208 surfacewidth = "256",
209 surfaceheight = "256",
210 filters = [include("gles31-master.txt"), include("gles31-multisample.txt")]),
213 Configuration(name = "565-no-depth-no-stencil",
214 glconfig = "rgb565d0s0ms0",
215 rotation = "unspecified",
216 surfacewidth = "256",
217 surfaceheight = "256",
218 filters = [include("gles31-master.txt"), include("gles31-pixelformat.txt")]),
222 GLCTS_3_2_3_EGL_COMMON_FILTERS = [include("egl-master.txt"),
223 exclude("egl-test-issues.txt"),
224 exclude("egl-internal-api-tests.txt"),
225 exclude("egl-driver-issues.txt")
227 GLCTS_3_2_3_EGL_PKG = Package(module = EGL_MODULE, configurations = [
229 Configuration(name = "master",
230 glconfig = "rgba8888d24s8ms0",
231 rotation = "unspecified",
232 surfacewidth = "256",
233 surfaceheight = "256",
234 filters = GLCTS_3_2_3_EGL_COMMON_FILTERS),
237 GLCTS_3_2_3_GLES2_COMMON_FILTERS = [
238 include("gles2-master.txt"),
239 exclude("gles2-test-issues.txt"),
240 exclude("gles2-spec-issues.txt"),
241 exclude("gles2-driver-issues.txt"),
242 exclude("gles2-hw-issues.txt")
244 GLCTS_3_2_3_GLES2_PKG = Package(module = ES2CTS_MODULE, configurations = [
246 Configuration(name = "master",
247 glconfig = "rgba8888d24s8ms0",
248 rotation = "unspecified",
249 surfacewidth = "256",
250 surfaceheight = "256",
251 filters = GLCTS_3_2_3_GLES2_COMMON_FILTERS),
254 GLCTS_3_2_3_GLES3_COMMON_FILTERS = [
255 include("gles3-master.txt"),
256 exclude("gles3-test-issues.txt"),
257 exclude("gles3-spec-issues.txt"),
258 exclude("gles3-driver-issues.txt"),
261 GLCTS_3_2_3_GLES3_PKG = Package(module = ES3CTS_MODULE, configurations = [
263 Configuration(name = "master",
264 glconfig = "rgba8888d24s8ms0",
265 rotation = "unspecified",
266 surfacewidth = "256",
267 surfaceheight = "256",
268 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [exclude("gles3-hw-issues.txt")]),
270 Configuration(name = "rotate-portrait",
271 glconfig = "rgba8888d24s8ms0",
273 surfacewidth = "256",
274 surfaceheight = "256",
276 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
277 Configuration(name = "rotate-landscape",
278 glconfig = "rgba8888d24s8ms0",
280 surfacewidth = "256",
281 surfaceheight = "256",
283 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
284 Configuration(name = "rotate-reverse-portrait",
285 glconfig = "rgba8888d24s8ms0",
287 surfacewidth = "256",
288 surfaceheight = "256",
290 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
291 Configuration(name = "rotate-reverse-landscape",
292 glconfig = "rgba8888d24s8ms0",
294 surfacewidth = "256",
295 surfaceheight = "256",
297 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
300 Configuration(name = "multisample",
301 glconfig = "rgba8888d24s8ms4",
302 rotation = "unspecified",
303 surfacewidth = "256",
304 surfaceheight = "256",
305 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-multisample.txt"), exclude("gles3-multisample-hw-issues.txt")]),
308 Configuration(name = "565-no-depth-no-stencil",
309 glconfig = "rgb565d0s0ms0",
310 rotation = "unspecified",
311 surfacewidth = "256",
312 surfaceheight = "256",
313 filters = GLCTS_3_2_3_GLES3_COMMON_FILTERS + [include("gles3-pixelformat.txt")]),
317 GLCTS_3_2_3_GLES31_COMMON_FILTERS = [
318 include("gles31-master.txt"),
319 exclude("gles31-test-issues.txt"),
320 exclude("gles31-spec-issues.txt"),
321 exclude("gles31-driver-issues.txt"),
322 exclude("gles31-hw-issues.txt")
325 GLCTS_3_2_3_GLES31_PKG = Package(module = ES31CTS_MODULE, configurations = [
327 Configuration(name = "master",
328 glconfig = "rgba8888d24s8ms0",
329 rotation = "unspecified",
330 surfacewidth = "256",
331 surfaceheight = "256",
332 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS),
335 Configuration(name = "rotate-portrait",
336 glconfig = "rgba8888d24s8ms0",
338 surfacewidth = "256",
339 surfaceheight = "256",
341 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
342 Configuration(name = "rotate-landscape",
343 glconfig = "rgba8888d24s8ms0",
345 surfacewidth = "256",
346 surfaceheight = "256",
348 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
349 Configuration(name = "rotate-reverse-portrait",
350 glconfig = "rgba8888d24s8ms0",
352 surfacewidth = "256",
353 surfaceheight = "256",
355 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
356 Configuration(name = "rotate-reverse-landscape",
357 glconfig = "rgba8888d24s8ms0",
359 surfacewidth = "256",
360 surfaceheight = "256",
362 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
365 Configuration(name = "multisample",
366 glconfig = "rgba8888d24s8ms4",
367 rotation = "unspecified",
368 surfacewidth = "256",
369 surfaceheight = "256",
370 filters = [include("gles31-master.txt"),
371 include("gles31-multisample.txt"),
372 exclude("gles31-multisample-test-issues.txt")]),
375 Configuration(name = "565-no-depth-no-stencil",
376 glconfig = "rgb565d0s0ms0",
377 rotation = "unspecified",
378 surfacewidth = "256",
379 surfaceheight = "256",
380 filters = GLCTS_3_2_3_GLES31_COMMON_FILTERS + [include("gles31-pixelformat.txt")]),
383 GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS = [
384 include("gles32-khr-master.txt"),
385 exclude("gles32-khr-test-issues.txt"),
386 exclude("gles32-khr-spec-issues.txt")
389 GLCTS_3_2_3_GLES32_KHR_PKG_1CFG = Package(module = ES32KHR_MODULE, configurations = [
391 Configuration(name = "khr-master",
393 surfaceheight = "64",
395 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
396 Configuration(name = "khr-master",
397 surfacewidth = "113",
398 surfaceheight = "47",
400 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
401 Configuration(name = "khr-master",
403 surfaceheight = "-1",
405 fboconfig = "rgba8888d24s8",
406 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
407 Configuration(name = "khr-master",
409 surfaceheight = "64",
411 fboconfig = "rgba8888d24s8",
412 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
415 GLCTS_3_2_3_GLES32_KHR_PKG_N1CFG = Package(module = ES32KHR_MODULE, useforfirsteglconfig = False, configurations = [
417 Configuration(name = "khr-master",
419 surfaceheight = "64",
421 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
422 Configuration(name = "khr-master",
423 surfacewidth = "113",
424 surfaceheight = "47",
426 filters = GLCTS_3_2_3_GLES32_KHR_COMMON_FILTERS),
431 MASTER_EGL_COMMON_FILTERS = [include("egl-master.txt"),
432 exclude("egl-test-issues.txt"),
433 exclude("egl-internal-api-tests.txt")]
434 MASTER_EGL_PKG = Package(module = EGL_MODULE, configurations = [
436 Configuration(name = "master",
437 glconfig = "rgba8888d24s8ms0",
438 rotation = "unspecified",
439 surfacewidth = "256",
440 surfaceheight = "256",
441 filters = MASTER_EGL_COMMON_FILTERS),
444 MASTER_GLES2_COMMON_FILTERS = [
445 include("gles2-master.txt"),
446 exclude("gles2-test-issues.txt")
448 MASTER_GLES2_PKG = Package(module = ES2CTS_MODULE, configurations = [
450 Configuration(name = "master",
451 glconfig = "rgba8888d24s8ms0",
452 rotation = "unspecified",
453 surfacewidth = "256",
454 surfaceheight = "256",
455 filters = MASTER_GLES2_COMMON_FILTERS),
458 MASTER_GLES3_COMMON_FILTERS = [
459 include("gles3-master.txt"),
460 exclude("gles3-test-issues.txt"),
461 exclude("gles3-spec-issues.txt")
463 MASTER_GLES3_PKG = Package(module = ES3CTS_MODULE, configurations = [
465 Configuration(name = "master",
466 glconfig = "rgba8888d24s8ms0",
467 rotation = "unspecified",
468 surfacewidth = "256",
469 surfaceheight = "256",
470 filters = MASTER_GLES3_COMMON_FILTERS),
472 Configuration(name = "rotate-portrait",
473 glconfig = "rgba8888d24s8ms0",
475 surfacewidth = "256",
476 surfaceheight = "256",
478 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
479 Configuration(name = "rotate-landscape",
480 glconfig = "rgba8888d24s8ms0",
482 surfacewidth = "256",
483 surfaceheight = "256",
485 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
486 Configuration(name = "rotate-reverse-portrait",
487 glconfig = "rgba8888d24s8ms0",
489 surfacewidth = "256",
490 surfaceheight = "256",
492 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
493 Configuration(name = "rotate-reverse-landscape",
494 glconfig = "rgba8888d24s8ms0",
496 surfacewidth = "256",
497 surfaceheight = "256",
499 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")]),
502 Configuration(name = "multisample",
503 glconfig = "rgba8888d24s8ms4",
504 rotation = "unspecified",
505 surfacewidth = "256",
506 surfaceheight = "256",
507 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-multisample.txt")]),
510 Configuration(name = "565-no-depth-no-stencil",
511 glconfig = "rgb565d0s0ms0",
512 rotation = "unspecified",
513 surfacewidth = "256",
514 surfaceheight = "256",
515 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-pixelformat.txt")]),
517 MASTER_GLES31_COMMON_FILTERS = [
518 include("gles31-master.txt"),
519 exclude("gles31-test-issues.txt"),
520 exclude("gles31-spec-issues.txt")
523 MASTER_GLES31_PKG = Package(module = ES31CTS_MODULE, configurations = [
525 Configuration(name = "master",
526 glconfig = "rgba8888d24s8ms0",
527 rotation = "unspecified",
528 surfacewidth = "256",
529 surfaceheight = "256",
530 filters = MASTER_GLES31_COMMON_FILTERS),
533 Configuration(name = "rotate-portrait",
534 glconfig = "rgba8888d24s8ms0",
536 surfacewidth = "256",
537 surfaceheight = "256",
539 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
540 Configuration(name = "rotate-landscape",
541 glconfig = "rgba8888d24s8ms0",
543 surfacewidth = "256",
544 surfaceheight = "256",
546 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
547 Configuration(name = "rotate-reverse-portrait",
548 glconfig = "rgba8888d24s8ms0",
550 surfacewidth = "256",
551 surfaceheight = "256",
553 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
554 Configuration(name = "rotate-reverse-landscape",
555 glconfig = "rgba8888d24s8ms0",
557 surfacewidth = "256",
558 surfaceheight = "256",
560 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")]),
563 Configuration(name = "multisample",
564 glconfig = "rgba8888d24s8ms4",
565 rotation = "unspecified",
566 surfacewidth = "256",
567 surfaceheight = "256",
568 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-multisample.txt")]),
571 Configuration(name = "565-no-depth-no-stencil",
572 glconfig = "rgb565d0s0ms0",
573 rotation = "unspecified",
574 surfacewidth = "256",
575 surfaceheight = "256",
576 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-pixelformat.txt")]),
579 GLCTS_GLES2_KHR_PKG_1CFG = Package(module = ES2KHR_MODULE, configurations = [
581 Configuration(name = "khr-master",
583 surfaceheight = "64",
585 filters = [include("gles2-khr-master.txt")]),
588 GLCTS_GLES2_DEQP_PKG_1CFG = Package(module = ES2CTS_MODULE, configurations = [
590 Configuration(name = "deqp-master",
592 surfaceheight = "64",
594 filters = [include("gles2-deqp-master.txt")]),
597 GLCTS_GLES2_GTF_PKG_1CFG = Package(module = ES2GTF_MODULE, configurations = [
599 Configuration(name = "gtf-master",
601 surfaceheight = "64",
603 filters = [include("gles2-gtf-master.txt")]),
604 Configuration(name = "gtf-master",
605 surfacewidth = "113",
606 surfaceheight = "47",
608 filters = [include("gles2-gtf-master.txt")]),
609 Configuration(name = "gtf-master",
611 surfaceheight = "-1",
613 fboconfig = "rgba8888d24s8",
614 filters = [include("gles2-gtf-master.txt")]),
615 Configuration(name = "gtf-master",
617 surfaceheight = "64",
619 fboconfig = "rgba8888d24s8",
620 filters = [include("gles2-gtf-master.txt")]),
621 Configuration(name = "gtf-egl",
623 surfaceheight = "64",
625 filters = [include("gles2-gtf-egl.txt")]),
626 Configuration(name = "gtf-egl",
627 surfacewidth = "113",
628 surfaceheight = "47",
630 filters = [include("gles2-gtf-egl.txt")]),
633 GLCTS_GLES2_KHR_PKG_N1CFG = Package(module = ES2KHR_MODULE, useforfirsteglconfig = False, configurations = [
635 Configuration(name = "khr-master",
637 surfaceheight = "64",
639 filters = [include("gles2-khr-master.txt")]),
642 GLCTS_GLES2_DEQP_PKG_N1CFG = Package(module = ES2CTS_MODULE, useforfirsteglconfig = False, configurations = [
644 Configuration(name = "deqp-master",
646 surfaceheight = "64",
648 filters = [include("gles2-deqp-master.txt")]),
651 GLCTS_GLES2_GTF_PKG_N1CFG = Package(module = ES2GTF_MODULE, useforfirsteglconfig = False, configurations = [
653 Configuration(name = "gtf-master",
655 surfaceheight = "64",
657 filters = [include("gles2-gtf-master.txt")]),
658 Configuration(name = "gtf-master",
659 surfacewidth = "113",
660 surfaceheight = "47",
662 filters = [include("gles2-gtf-master.txt")]),
665 GLCTS_GLES3_DEQP_PKG_1CFG = Package(module = ES3CTS_MODULE, configurations = [
667 Configuration(name = "deqp-master",
669 surfaceheight = "64",
671 filters = [include("gles3-deqp-master.txt")]),
674 GLCTS_GLES3_KHR_PKG_1CFG = Package(module = ES3KHR_MODULE, configurations = [
676 Configuration(name = "khr-master",
678 surfaceheight = "64",
680 filters = [include("gles3-khr-master.txt")]),
683 GLCTS_GLES3_GTF_PKG_1CFG = Package(module = ES3GTF_MODULE, configurations = [
685 Configuration(name = "gtf-master",
687 surfaceheight = "64",
689 filters = [include("gles3-gtf-master.txt")]),
690 Configuration(name = "gtf-master",
691 surfacewidth = "113",
692 surfaceheight = "47",
694 filters = [include("gles3-gtf-master.txt")]),
695 Configuration(name = "gtf-master",
697 surfaceheight = "-1",
699 fboconfig = "rgba8888d24s8",
700 filters = [include("gles3-gtf-master.txt")]),
701 Configuration(name = "gtf-master",
703 surfaceheight = "64",
705 fboconfig = "rgba8888d24s8",
706 filters = [include("gles3-gtf-master.txt")]),
709 GLCTS_GLES3_DEQP_PKG_N1CFG = Package(module = ES3CTS_MODULE, useforfirsteglconfig = False, configurations = [
711 Configuration(name = "deqp-master",
713 surfaceheight = "64",
715 filters = [include("gles3-deqp-master.txt")]),
718 GLCTS_GLES3_KHR_PKG_N1CFG = Package(module = ES3KHR_MODULE, useforfirsteglconfig = False, configurations = [
720 Configuration(name = "khr-master",
722 surfaceheight = "64",
724 filters = [include("gles3-khr-master.txt")]),
726 GLCTS_GLES3_GTF_PKG_N1CFG = Package(module = ES3GTF_MODULE, useforfirsteglconfig = False, configurations = [
728 Configuration(name = "gtf-master",
730 surfaceheight = "64",
732 filters = [include("gles3-gtf-master.txt")]),
733 Configuration(name = "gtf-master",
734 surfacewidth = "113",
735 surfaceheight = "47",
737 filters = [include("gles3-gtf-master.txt")]),
740 GLCTS_GLES31_DEQP_PKG_1CFG = Package(module = ES31CTS_MODULE, configurations = [
742 Configuration(name = "deqp-master",
744 surfaceheight = "64",
746 filters = [include("gles31-deqp-master.txt")]),
749 GLCTS_GLES31_KHR_PKG_1CFG = Package(module = ES31KHR_MODULE, configurations = [
751 Configuration(name = "khr-master",
753 surfaceheight = "64",
755 filters = [include("gles31-khr-master.txt")]),
758 GLCTS_GLES31_GTF_PKG_1CFG = Package(module = ES31GTF_MODULE, configurations = [
760 Configuration(name = "gtf-master",
762 surfaceheight = "64",
764 filters = [include("gles31-gtf-master.txt")]),
765 Configuration(name = "gtf-master",
766 surfacewidth = "113",
767 surfaceheight = "47",
769 filters = [include("gles31-gtf-master.txt")]),
770 Configuration(name = "gtf-master",
772 surfaceheight = "-1",
774 fboconfig = "rgba8888d24s8",
775 filters = [include("gles31-gtf-master.txt")]),
776 Configuration(name = "gtf-master",
778 surfaceheight = "64",
780 fboconfig = "rgba8888d24s8",
781 filters = [include("gles31-gtf-master.txt")]),
784 GLCTS_GLES31_KHR_PKG_N1CFG = Package(module = ES31KHR_MODULE, useforfirsteglconfig = False, configurations = [
786 Configuration(name = "khr-master",
788 surfaceheight = "64",
790 filters = [include("gles31-khr-master.txt")]),
793 GLCTS_GLES31_DEQP_PKG_N1CFG = Package(module = ES31CTS_MODULE, useforfirsteglconfig = False, configurations = [
795 Configuration(name = "deqp-master",
797 surfaceheight = "64",
799 filters = [include("gles31-deqp-master.txt")]),
802 GLCTS_GLES31_GTF_PKG_N1CFG = Package(module = ES31GTF_MODULE, useforfirsteglconfig = False, configurations = [
804 Configuration(name = "gtf-master",
806 surfaceheight = "64",
808 filters = [include("gles31-gtf-master.txt")]),
809 Configuration(name = "gtf-master",
810 surfacewidth = "113",
811 surfaceheight = "47",
813 filters = [include("gles31-gtf-master.txt")]),
816 GLCTS_GLES32_KHR_PKG_1CFG = Package(module = ES32KHR_MODULE, configurations = [
818 Configuration(name = "khr-master",
820 surfaceheight = "64",
822 filters = [include("gles32-khr-master.txt")]),
823 Configuration(name = "khr-master",
824 surfacewidth = "113",
825 surfaceheight = "47",
827 filters = [include("gles32-khr-master.txt")]),
828 Configuration(name = "khr-master",
830 surfaceheight = "-1",
832 fboconfig = "rgba8888d24s8",
833 filters = [include("gles32-khr-master.txt")]),
834 Configuration(name = "khr-master",
836 surfaceheight = "64",
838 fboconfig = "rgba8888d24s8",
839 filters = [include("gles32-khr-master.txt")]),
842 GLCTS_GLES32_KHR_PKG_N1CFG = Package(module = ES32KHR_MODULE, useforfirsteglconfig = False, configurations = [
844 Configuration(name = "khr-master",
846 surfaceheight = "64",
848 filters = [include("gles32-khr-master.txt")]),
849 Configuration(name = "khr-master",
850 surfacewidth = "113",
851 surfaceheight = "47",
853 filters = [include("gles32-khr-master.txt")]),
856 GLCTS_NOCTX_ES2_KHR_PKG = Package(module = NOCTX_ES2_KHR_MODULE, configurations = [
858 Configuration(name = "khr-master",
860 surfaceheight = "64",
862 filters = [include("gles2-khr-master.txt")]),
865 GLCTS_NOCTX_ES32_KHR_PKG = Package(module = NOCTX_ES32_KHR_MODULE, configurations = [
867 Configuration(name = "khr-master",
869 surfaceheight = "64",
871 filters = [include("gles32-khr-master.txt")]),
874 ES_MUSTPASS_LISTS = [
876 Mustpass(project = CTS_KHR_MP_ES_PROJECT, version = "3.2.2.x", isCurrent=False,
877 packages = [GLCTS_GLES2_KHR_PKG_1CFG,
878 GLCTS_GLES2_DEQP_PKG_1CFG,
879 GLCTS_GLES2_GTF_PKG_1CFG,
880 GLCTS_GLES2_KHR_PKG_N1CFG,
881 GLCTS_GLES2_DEQP_PKG_N1CFG,
882 GLCTS_GLES2_GTF_PKG_N1CFG,
883 GLCTS_GLES3_KHR_PKG_1CFG,
884 GLCTS_GLES3_DEQP_PKG_1CFG,
885 GLCTS_GLES3_GTF_PKG_1CFG,
886 GLCTS_GLES3_KHR_PKG_N1CFG,
887 GLCTS_GLES3_DEQP_PKG_N1CFG,
888 GLCTS_GLES3_GTF_PKG_N1CFG,
889 GLCTS_GLES31_KHR_PKG_1CFG,
890 GLCTS_GLES31_DEQP_PKG_1CFG,
891 GLCTS_GLES31_GTF_PKG_1CFG,
892 GLCTS_GLES31_KHR_PKG_N1CFG,
893 GLCTS_GLES31_DEQP_PKG_N1CFG,
894 GLCTS_GLES31_GTF_PKG_N1CFG,
895 GLCTS_GLES32_KHR_PKG_1CFG,
896 GLCTS_GLES32_KHR_PKG_N1CFG,
899 Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "3.2.2.x", isCurrent=False,
900 packages = [GLCTS_GLES2_PKG, GLCTS_3_2_2_GLES3_PKG, GLCTS_3_2_2_GLES31_PKG]),
903 Mustpass(project = CTS_KHR_MP_ES_PROJECT, version = "3.2.3.x", isCurrent=False,
904 packages = [GLCTS_GLES2_KHR_PKG_1CFG,
905 GLCTS_GLES2_GTF_PKG_1CFG,
906 GLCTS_GLES2_KHR_PKG_N1CFG,
907 GLCTS_GLES2_GTF_PKG_N1CFG,
908 GLCTS_GLES3_KHR_PKG_1CFG,
909 GLCTS_GLES3_GTF_PKG_1CFG,
910 GLCTS_GLES3_KHR_PKG_N1CFG,
911 GLCTS_GLES3_GTF_PKG_N1CFG,
912 GLCTS_GLES31_KHR_PKG_1CFG,
913 GLCTS_GLES31_GTF_PKG_1CFG,
914 GLCTS_GLES31_KHR_PKG_N1CFG,
915 GLCTS_GLES31_GTF_PKG_N1CFG,
916 GLCTS_3_2_3_GLES32_KHR_PKG_1CFG,
917 GLCTS_3_2_3_GLES32_KHR_PKG_N1CFG,
920 Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "3.2.3.x", isCurrent=False,
921 packages = [GLCTS_3_2_3_GLES2_PKG, GLCTS_3_2_3_GLES3_PKG, GLCTS_3_2_3_GLES31_PKG]),
923 Mustpass(project = CTS_AOSP_MP_EGL_PROJECT, version = "3.2.3.x", isCurrent=False,
924 packages = [GLCTS_3_2_3_EGL_PKG]),
927 Mustpass(project = CTS_KHR_MP_ES_PROJECT, version = "3.2.4.x", isCurrent=True,
928 packages = [GLCTS_GLES2_KHR_PKG_1CFG,
929 GLCTS_GLES2_KHR_PKG_N1CFG,
930 GLCTS_GLES3_KHR_PKG_1CFG,
931 GLCTS_GLES3_KHR_PKG_N1CFG,
932 GLCTS_GLES31_KHR_PKG_1CFG,
933 GLCTS_GLES31_KHR_PKG_N1CFG,
934 GLCTS_3_2_3_GLES32_KHR_PKG_1CFG,
935 GLCTS_3_2_3_GLES32_KHR_PKG_N1CFG,
939 Mustpass(project = CTS_KHR_MP_NOCTX_ES_PROJECT, version = "3.2.4.x", isCurrent=True,
940 packages = [GLCTS_NOCTX_ES2_KHR_PKG, GLCTS_NOCTX_ES32_KHR_PKG]),
942 Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "3.2.4.x", isCurrent=True,
943 packages = [GLCTS_3_2_3_GLES2_PKG, GLCTS_3_2_3_GLES3_PKG, GLCTS_3_2_3_GLES31_PKG]),
945 Mustpass(project = CTS_AOSP_MP_EGL_PROJECT, version = "3.2.4.x", isCurrent=True,
946 packages = [GLCTS_3_2_3_EGL_PKG]),
950 Mustpass(project = CTS_KHR_MP_ES_PROJECT, version = "master", isCurrent=False,
951 packages = [GLCTS_GLES2_KHR_PKG_1CFG,
952 GLCTS_GLES2_KHR_PKG_N1CFG,
953 GLCTS_GLES3_KHR_PKG_1CFG,
954 GLCTS_GLES3_KHR_PKG_N1CFG,
955 GLCTS_GLES31_KHR_PKG_1CFG,
956 GLCTS_GLES31_KHR_PKG_N1CFG,
957 GLCTS_GLES32_KHR_PKG_1CFG,
958 GLCTS_GLES32_KHR_PKG_N1CFG,
961 Mustpass(project = CTS_KHR_MP_NOCTX_ES_PROJECT, version = "master", isCurrent=False,
962 packages = [GLCTS_NOCTX_ES2_KHR_PKG, GLCTS_NOCTX_ES32_KHR_PKG]),
964 Mustpass(project = CTS_AOSP_MP_ES_PROJECT, version = "master", isCurrent=False,
965 packages = [MASTER_GLES2_PKG, MASTER_GLES3_PKG, MASTER_GLES31_PKG]),
967 Mustpass(project = CTS_AOSP_MP_EGL_PROJECT, version = "master", isCurrent=False,
968 packages = [MASTER_EGL_PKG])
972 ES_BUILD_CONFIG = BuildConfig(buildPath, "Debug", ["-DDEQP_TARGET=%s" % DEFAULT_TARGET, "-DGLCTS_GTF_TARGET=gles32"])
974 #-------------------------------------------------- GL MUSTPASS----------------------------------------------------------------------
976 GL_CTS_MP_INC_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "modules", "runner")
978 GL_CTS_KHR_MP_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gl", "khronos_mustpass")
980 GL_CTS_KHR_MP_DEVICE_DIR = "gl_cts/data/mustpass/gl/khronos_mustpass"
982 GL_CTS_KHR_MP_PROJECT = Project(name = "Khronos Mustpass GL", path = GL_CTS_KHR_MP_DATA_DIR, incpath = GL_CTS_MP_INC_DIR, devicepath = GL_CTS_KHR_MP_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
984 GL_CTS_KHR_MP_NOCTX_DATA_DIR = os.path.join(DEQP_DIR, "external", "openglcts", "data", "mustpass", "gl", "khronos_mustpass_noctx")
986 GL_CTS_KHR_MP_NOCTX_DEVICE_DIR = "gl_cts/data/mustpass/gl/khronos_mustpass_noctx"
988 GL_CTS_NOCTX_PROJECT = Project(name = "Khronos Mustpass GL NoContext", path = GL_CTS_KHR_MP_NOCTX_DATA_DIR, incpath = GL_CTS_MP_INC_DIR, devicepath = GL_CTS_KHR_MP_NOCTX_DEVICE_DIR, copyright = COPYRIGHT_DECLARATION)
990 GL_MODULES = OrderedDict([
991 ('KHR-GL45', ['master', [include('gl45-master.txt'), exclude('gl45-test-issues.txt')]]),
992 ('KHR-GL44', ['master', [include('gl44-master.txt'), exclude('gl44-test-issues.txt')]]),
993 ('KHR-GL43', ['master', [include('gl43-master.txt'), exclude('gl43-test-issues.txt')]]),
994 ('KHR-GL42', ['master', [include('gl42-master.txt'), exclude('gl42-test-issues.txt')]]),
995 ('KHR-GL41', ['master', [include('gl41-master.txt'), exclude('gl41-test-issues.txt')]]),
996 ('KHR-GL40', ['master', [include('gl40-master.txt'), exclude('gl40-test-issues.txt')]]),
997 ('KHR-GL33', ['master', [include('gl33-master.txt')]]),
998 ('KHR-GL32', ['master', [include('gl32-master.txt')]]),
999 ('KHR-GL31', ['master', [include('gl31-master.txt')]]),
1000 ('KHR-GL30', ['master', [include('gl30-master.txt')]]),
1001 ('GTF-GL45', ['gtf-master', [include('gl45-gtf-master.txt')]]),
1002 ('GTF-GL44', ['gtf-master', [include('gl44-gtf-master.txt')]]),
1003 ('GTF-GL43', ['gtf-master', [include('gl43-gtf-master.txt')]]),
1004 ('GTF-GL42', ['gtf-master', [include('gl42-gtf-master.txt')]]),
1005 ('GTF-GL41', ['gtf-master', [include('gl41-gtf-master.txt')]]),
1006 ('GTF-GL40', ['gtf-master', [include('gl40-gtf-master.txt')]]),
1007 ('GTF-GL33', ['gtf-master', [include('gl33-gtf-master.txt')]]),
1008 ('GTF-GL32', ['gtf-master', [include('gl32-gtf-master.txt')]]),
1009 ('GTF-GL31', ['gtf-master', [include('gl31-gtf-master.txt')]]),
1010 ('GTF-GL30', ['gtf-master', [include('gl30-gtf-master.txt')]])
1013 NOCTX_GL30_KHR_MODULE = getModuleByName("KHR-NOCTX-GL30")
1014 NOCTX_GL45_KHR_MODULE = getModuleByName("KHR-NOCTX-GL45")
1016 GLCTS_NOCTX_GL30_KHR_PKG = Package(module = NOCTX_GL30_KHR_MODULE, configurations = [
1018 Configuration(name = "khr-master",
1019 surfacewidth = "64",
1020 surfaceheight = "64",
1022 filters = [include("gl30-khr-master.txt")]),
1025 GLCTS_NOCTX_GL45_KHR_PKG = Package(module = NOCTX_GL45_KHR_MODULE, configurations = [
1027 Configuration(name = "khr-master",
1028 surfacewidth = "64",
1029 surfaceheight = "64",
1031 filters = [include("gl45-khr-master.txt")]),
1034 def generateGLMustpass():
1036 for packageName in GL_MODULES:
1037 cfgName = GL_MODULES[packageName][0]
1038 cfgFilter = GL_MODULES[packageName][1]
1039 config_w64xh64 = Configuration(name = cfgName, surfacewidth = "64", surfaceheight = "64", baseseed = "1", filters = cfgFilter)
1040 config_w113xh47 = Configuration(name = cfgName, surfacewidth = "113", surfaceheight = "47", baseseed = "2", filters = cfgFilter)
1041 config_w64 = Configuration(name = cfgName, surfacewidth = "64", surfaceheight = "-1", baseseed = "3", fboconfig = "rgba8888d24s8", filters = cfgFilter)
1042 config_h64 = Configuration(name = cfgName, surfacewidth = "-1", surfaceheight = "64", baseseed = "3", fboconfig = "rgba8888d24s8", filters = cfgFilter)
1044 pkgModule = getModuleByName(packageName)
1045 pkg0 = Package(module = pkgModule,
1046 useforfirsteglconfig = True,
1048 config_w64xh64, config_w113xh47, config_w64, config_h64
1051 pkg1 = Package(module = pkgModule,
1052 useforfirsteglconfig = False,
1054 config_w64xh64, config_w113xh47,
1057 gl_packages.append(pkg0)
1058 gl_packages.append(pkg1)
1060 mustpass = [Mustpass(project = GL_CTS_KHR_MP_PROJECT, version = "4.5.5.x", isCurrent=True, packages = gl_packages),
1061 Mustpass(project = GL_CTS_NOCTX_PROJECT, version = "4.5.5.x", isCurrent=True, packages = [GLCTS_NOCTX_GL30_KHR_PKG, GLCTS_NOCTX_GL45_KHR_PKG]),
1065 GL_BUILD_CONFIG = BuildConfig(buildPath, "Debug", ["-DDEQP_TARGET=%s" % DEFAULT_TARGET, "-DGLCTS_GTF_TARGET=gl"])
1067 if __name__ == "__main__":
1068 gtfCMakeLists = os.path.join(DEQP_DIR, "external", "kc-cts", "src", "GTF_ES", "CMakeLists.txt")
1069 if os.path.isfile(gtfCMakeLists) == False:
1070 raise Exception("GTF sources not found. GTF module is required to build the mustpass files")
1071 genMustpassLists(ES_MUSTPASS_LISTS, ANY_GENERATOR, ES_BUILD_CONFIG)
1072 gl_mustpass_lists = generateGLMustpass()
1073 genMustpassLists(gl_mustpass_lists, ANY_GENERATOR, GL_BUILD_CONFIG)